Skills

OpenProse

OpenProse は、AI セッションをオーケストレーションするための、移植可能で Markdown を中心としたワークフロー形式です。OpenClaw では、OpenProse のスキルパックと /prose スラッシュコマンドをインストールする Plugin として提供されます。プログラムは .prose ファイルに保存され、明示的な制御フローで複数のサブエージェントを起動できます。

インストール

  • Plugin を有効にする

    OpenProse はバンドルされていますが、デフォルトでは無効です。有効にするには、次を実行します。

    bash
    openclaw plugins enable open-prose
  • Gateway を再起動する

    bash
    openclaw gateway restart
  • 確認する

    bash
    openclaw plugins list | grep prose

    open-prose が有効として表示されます。これで、チャットで /prose スキルコマンドを使用できます。

  • リポジトリのチェックアウトから Plugin を直接インストールすることもできます。 openclaw plugins install ./extensions/open-prose

    スラッシュコマンド

    OpenProse は、ユーザーが呼び出せるスキルコマンドとして /prose を登録します。

    text
    /prose help/prose run <file.prose>/prose run <handle/slug>/prose run <https://example.com/file.prose>/prose compile <file.prose>/prose examples/prose update

    /prose run <handle/slug>https://p.prose.md/<handle>/<slug> に解決されます。 直接 URL は、web_fetch ツールを使用してそのまま取得されます。

    トップレベルのリモート実行は明示的に行われます。.prose プログラム内のリモートインポートは推移的なコード依存関係です。OpenProse がリモートの use ターゲットを取得する前に、解決済みのインポート一覧を表示し、その実行についてオペレーターが正確に approve remote prose imports と返信することを要求します。

    できること

    • 明示的な並列処理によるマルチエージェントの調査と統合。
    • 反復可能で承認を安全に行えるワークフロー(コードレビュー、インシデントのトリアージ、コンテンツパイプライン)。
    • サポートされているエージェントランタイム全体で実行できる、再利用可能な .prose プログラム。

    例:並列調査と統合

    prose
    # 2 つのエージェントを並列実行する調査と統合。 input topic: "何を調査しますか?" agent researcher:  model: sonnet  prompt: "徹底的に調査し、出典を引用します。" agent writer:  model: opus  prompt: "簡潔な要約を作成します。" parallel:  findings = session: researcher    prompt: "{topic}を調査してください。"  draft = session: writer    prompt: "{topic}を要約してください。" session "調査結果と下書きを統合して、最終回答を作成してください。"  context: { findings, draft }

    OpenClaw ランタイムへのマッピング

    OpenProse プログラムは、OpenClaw のプリミティブに次のように対応します。

    OpenProse の概念 OpenClaw ツール
    セッションの起動 / Task ツール sessions_spawn
    ファイルの読み取り / 書き込み read / write
    Web 取得 web_fetch(POST が必要な場合は exec + curl)

    ファイルの保存場所

    OpenProse は、ワークスペース内の .prose/ に状態を保存します。

    text
    .prose/├── .env                      # 設定(key=value)、例:OPENPROSE_POSTGRES_URL├── runs/│   └── {YYYYMMDD}-{HHMMSS}-{random}/│       ├── program.prose     # 実行中のプログラムのコピー│       ├── state.md          # 実行状態│       ├── bindings/│       ├── imports/          # ネストされたリモートプログラムの実行│       └── agents/└── agents/                   # プロジェクトスコープの永続エージェント

    プロジェクト間で共有されるユーザーレベルの永続エージェントは、次の場所に保存されます。

    text
    ~/.prose/agents/

    状態バックエンド

    filesystem(デフォルト)

    状態はワークスペース内の .prose/runs/... に書き込まれます。追加の依存関係は必要ありません。

    in-context

    コンテキストウィンドウに一時的な状態を保持します。--in-context で選択します。 小規模で短時間実行されるプログラムに適しています。

    sqlite(実験的)

    --state=sqlite で選択します。PATHsqlite3 バイナリが必要です (存在しない場合は filesystem にフォールバックします)。状態は .prose/runs/{id}/state.db に保存されます。

    postgres(実験的)

    --state=postgres で選択します。psql と、 OPENPROSE_POSTGRES_URL に接続文字列が必要です(.prose/.env で設定します)。

    セキュリティ

    .prose ファイルはコードとして扱ってください。リモートの use インポートも含め、実行前にレビューしてください。トップレベルの /prose run https://... リクエストは明示的ですが、推移的なリモートインポートについては、取得または実行される前に実行ごとの承認が必要です。副作用を制御するには、OpenClaw のツール許可リストと承認ゲートを使用してください。決定論的で承認ゲート付きのワークフローについては、Lobster と比較してください。

    関連項目

    公式サイト:https://www.prose.md

    Was this useful?
    On this page

    On this page