Fuga 使い方ガイド
← 会員ポータル(契約・アカウント)へ戻る
クラウド 5

結果と途中経過を見る(POST /result・/events)

結果を受け取る(POST /result)

curl -X POST "https://www.kamui.ai/api/cloud/result" \
  -H "x-kamui-api-key: kamui_sk_..." \
  -H "Content-Type: application/json" \
  -d '{ "runId": "<uuid>", "waitS": 25 }'
# → { "status": "done", "terminal": true,
#     "artifact": { "type": "git-branch", "repoUrl": "...", "branch": "kamui-cloud/ab12cd34" },
#     "resultText": "..." }   resultText は「成果テキスト」を許可したキーだけ
  • waitS は、1 回のリクエストで終わりを待つ秒数です。最大 25 秒です。0〜30 の整数を受け付け、25 を超えた分は 25 として扱います。
  • 1 回で終わらなくても、terminal が true になるまで呼び続けます。
  • リポジトリで作業した実行では、Git のブランチが正しい成果物です(git fetch origin kamui-cloud/…)。
  • repoUrl を省いた実行では、resultText が成果物そのものです(artifact は {"type":"text"})。
  • キーが成果テキストを許可していないときは、resultText が null になり、理由が resultTextWithheld に入ります。

応答の主な項目

項目 意味
status 実行の状態。queued、starting、running、waiting、done、failed、stopped のどれか。
terminal 終わったかどうか。done、failed、stopped のとき true。
artifact 成果物の種類。git-branch(repoUrl と branch 付き)か text。
resultText AI の最後の返事。キーが許可していないときは null。
resultTextWithheld resultText を返さなかった理由。許可していないキーのときだけ付く。
autoMerge 自動マージの結果。done でも取り込めていないことがあるので、ここで確かめる。
error 失敗したときの内容。

自分のものでない runId や、無い runId を指定すると、404 になります。

途中経過を見る(POST /events)

実行中の計画、パートの進み具合、作業ログを読むための窓口です。

オーケストラの実行では、計画の AI が作業をどう分けたか、各パートを今どのエンジンが進めているかが分かります。

curl -X POST "https://www.kamui.ai/api/cloud/events" \
  -H "x-kamui-api-key: kamui_sk_..." \
  -H "Content-Type: application/json" \
  -d '{ "runId": "<uuid>", "afterSeq": 0 }'
# → { "status": "running", "terminal": false, "mode": "progress", "maxSeq": 42,
#     "events": [ { "seq": 3, "kind": "orchestrate-plan", ... },
#                 { "seq": 7, "kind": "orchestrate-part-start", ... } ],
#     "gantt": [ ... ] }
項目 意味
runId 必須。/launch や /orchestrate が返した ID。
afterSeq この番号より後のものだけを返します。前回の応答の maxSeq を入れると、新しい分だけを受け取れます。0 以上の整数。既定は 0。
mode "progress"(既定)は、計画・パートの開始と完了・終わりの記録と、ガントの材料を返します。どの有効なキーでも読めます。"events" は作業ログの全文を返し、「成果テキスト」を許可したキーが要ります(許可していないキーは 403)。
limit 1 回で返す件数。1〜1000。既定は 500。応答が大きすぎると 503 になるので、作業ログの全文を読むときは小さめにします。

実行中は /events を afterSeq 付きで繰り返し呼び、terminal が true になったら /result で成果を受け取ります。