依頼と送信のコマンド
ここにあるコマンドは、ゴール担当やコーディネーターに依頼や相談を送ります。
submit は、Fuga に実行を送ります。
実行が始まることがあるので、「使うときの注意」も読んでください。
ゴール担当に依頼する
fuga-api goal-request <ゴール> --repo "<リポジトリの絶対パス>" --message "<依頼文>"
fuga-api goal-request <ゴール> --repo "<リポジトリの絶対パス>" --message "<依頼文>" --wait-ms 30000
--messageは必須です。--repoには、作業するリポジトリの絶対パスを指定します。省略できるのは、ゴールのリポジトリが 1 つに決まる場合だけです。未設定ならREPOSITORY_NOT_SET、複数ならREPOSITORY_AMBIGUOUSが返ります。--wait-msを付けないと、受け付けた時点の結果が返ります。stateはpending(stateLabelは「未処理」)、launchedはfalseです。依頼は記録に 1 通残り、処理は Fuga の画面側が行います。- ゴールの自動の動き(
autoRun)が on なら、すぐ実行が始まり、実行の ID(runId)が返ります。off なら提案として残ります。 --wait-msを付けると、その時間(1〜60000 ms、最大 60 秒)まで返事を待ち、返事があれば結果を返します。--spec(リポジトリ内の仕様書の相対パス)、--pool(エンジンの指定)、--parallel-runs(1〜5 の本数)も付けられます。- コーディネーターには依頼できません。
ゴール担当やコーディネーターに質問・相談する
fuga-api goal-ask <ゴール> --message "<質問文>"
fuga-api goal-coordinator-ask --message "<相談文>"
goal-askは、そのゴールの担当に質問を送ります。--wait-msを付けると、返事を待てます。goal-coordinator-askは、コーディネーター AI に相談を送ります。
仕様に沿った JSON を送る(上級)
fuga-api describe
fuga-api validate <file.json>
fuga-api submit <file.json>
fuga-api unarchive --file <sessionIds.json>
validateは、JSON が起動中の Fuga の仕様に合うかを確かめるだけです。送りません。submitは、JSON を検査してから、Fuga に実行を送ります。JSON にはexpectedProtocolVersionとexpectedDigestが必要です。値はdescribeやschemaで確かめます。unarchiveは、JSON の一覧にあるsessionIdを、順番に unarchive(アーカイブの解除)します。submitの応答が取れずRESULT_UNKNOWNになったら、表示されたreceiptのコマンドで確かめます。確かめるまで、同じ JSON を送り直さないでください。