mcpField
C
crank

crank

github.com/boshu2エージェントワークフロー4501.2k 回インストール今日更新
リポジトリ

crank について

Crankは呼び出し元が定義した1つの作業ウェーブを実行し、各レーンで `rpi` を1回呼び出して証拠を返します。スコープと受け入れ条件を決定済みのオーケストレーター向けで、次の作業選択やレーンの再試行は行いません。

主な機能

  1. 01指定されたウェーブを再計画せず実行
  2. 02各レーンで `rpi` を1回実行
  3. 03書き込み範囲と生成範囲が別々のレーンのみ並列化
  4. 04全レーン完了後にウェーブ受け入れを1回実行
  5. 05レーンごとの状態と証拠を返却

活用シーン

  1. 01事前定義された複数の実装レーンを実行
  2. 02独立したレーンを並列実行
  3. 03レーン完了後にウェーブ全体の受け入れを評価
  4. 04オーケストレーターの次の判断に証拠を渡す

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/boshu2/agentops --skill crank

インストール後、Claude Code で/crankを入力して読み込まれたか確認します。

詳細

Crank

Crank は、正確に 1 つのウェーブを実行します。呼び出し元がウェーブと修復上限を選択し、Crank はそのウェーブを実行して、何が起きたかを返します。

caller's wave + repair_rounds -> RPI per lane -> wave acceptance once -> evidence -> stop

入力

呼び出し元は、次の 3 つすべてを指定します。

  • ウェーブ — レーンのリストです。各レーンには、書き込み scope、brief、独自の実行可能な acceptance が含まれます。
  • repair_rounds — 呼び出し元が指定する修復上限です。変更せず各レーンに渡します。Crank が選択したり、消費したりすることはありません。
  • ウェーブの受け入れ条件 — ウェーブ全体を判定する 1 つのコマンドセットです。

レーンに scope、brief、または実行可能な acceptance がない場合、ウェーブは実行不能であると報告して停止します。Crank が不足部分を補うことはありません。

契約

  1. 呼び出し元から渡されたウェーブをそのまま読み取ります。レーンを選択、追加、削除、再ランク付けしてはいけません。ウェーブはすでに決定済みの状態で渡されます。
  2. レーンを分割します。書き込み scope と再生成対象(生成された出力、ミラー、マニフェスト)の両方が互いに重複しない場合に限り、2 つのレーンを並列実行できます。いずれかの対象が共有されていれば直列実行し、重複の有無が不明な場合も重複として扱います。
  3. 各レーンに対して rpi を 1 回呼び出し、そのレーンの意図、scope、acceptance、および呼び出し元の repair_rounds を渡します。各レーンの実行過程で、そのレーン固有の修復ループを管理します。Crank 自身がレーンを修復したり、戻ってきたレーンを再呼び出ししたり、再計画したりすることはありません。
  4. すべてのレーンが戻った後に、ウェーブの受け入れ条件を 1 回実行します。FAIL または NOT_PROVEN を返したレーンがあっても実行を抑止しません。両方の結果を並べて報告します。
  5. ウェーブのエビデンスを返して停止します。内容は、レーンごとのステータス(PASS | FAIL | NOT_PROVEN | NOT_PLANNED | NOT_BUILT)、各レーンのバリデーターが残した未解決の指摘(findings[].id をキーにします)、各レーンのサブジェクトマニフェストダイジェスト、およびウェーブの受け入れ条件の結果です。

次のアクションを追記してはいけません。エビデンスを読み、次のウェーブがあるかどうかを判断するのは呼び出し元です。

境界

Crank はウェーブの選択、再試行、予算、キュー、クレーム、リース、Git、クローズ、デリバリー、次の作業を担当せず、独自の判定を生成することもありません。ウェーブのエビデンスに含まれる意味上の結果はすべて、そのレーンの新たなバリデーターが返したものを変更せずに引用します。ウェーブの受け入れ条件が成功したことは事実であり、PASS ではありません。

コンベヤー

Claude では、workflows/implement-wave.js が、ステップ 3 の並列実行部分を担うコンベヤーの 1 つです。呼び出し元が指定したレーンに対して、所有範囲が重複しない実装担当を実行します。これは転送手段であり、レーン独自の新たな検証に代わるものではありません。また、Crank はこれを使わずに実行されます。

プロンプト

Crank this wave, repair_rounds=2.
Lane A - scope cli/internal/gates/**, brief "add the probe-coverage gate row",
acceptance: cd cli && go test ./internal/gates/...
Lane B - scope docs/CI-CD.md, brief "document that gate row",
acceptance: bash scripts/docs-build.sh --check
Wave acceptance: bash tests/run-all.sh. Report per-lane evidence and stop.

正しく動作している場合

説明文を読まなくてもトレースから確認でき、独立した新しい判定者がこのスキルを評価する際の基準にもなるもの:

  • 呼び出し元のウェーブにある各レーンにつき、rpi の呼び出しが正確に 1 回で、同じレーンが 2 回登場しないことがトランスクリプトに示されています。
  • たとえば、2 つのレーンが同じ再生成対象(どちらも skills-codex/ に到達する場合など)を共有しているとき、同時ではなく順番に実行されます。
  • ウェーブの受け入れ条件コマンドが、最後のレーンが戻った後に正確に 1 回実行されます。
  • 返されるエビデンスには、呼び出し元が指定した各レーンについてステータスとサブジェクトマニフェストダイジェストが含まれ、Crank が作り出したレーンについては何も含まれません。
  • 応答はエビデンスで終わります。次のウェーブ、git の操作、または今後の作業の提案は含まれません。

コメント