sandeco-loop は、コーディングエージェントの手取り足取りをやめよ:逐一のプロンプトに代わるループのエンジニアリング に付随する成果物として公開されたオープンなスキルである。同論文の原則とアンチパターンを、ループ仕様をオーサリングするための再現可能な手順へと落とし込んでいる。論文は、このスキルがループを実行するのではなく、ループの仕様を書くものであることを強調している。それは、トリガー、ゴール、チェック、停止ルール、メモリを記述した単一のドキュメントであり、人間が読み、バージョン管理し、エージェントハーネスに渡すことができる。

機能

このスキルは段階的に動作する。まず、各ターンの結果が次の行動を変えるかどうかを問うことでタスクをトリアージする。変えないのであればそのように伝え、ループではなく単純なスケジュール実行のプロンプトを返す。トリアージを通過したタスクについては、1 度に 1 問ずつ短いインタビューを行う。その内容は、ゴールと成功が検証可能かどうか、具体的なチェック、トリガー、成功以外の名前付きの停止状態、名前付きのスキルとネストしたサブループの有無、ターン間で状態をどこに保持するか、そして反復回数や予算の上限、人間の承認を必要とするポイントといったガードレールである。

続いて堅牢化パスが、論文のアンチパターンに対応する形で適用される。自己採点ではなく外部のチェックを求め、作成者と確認者を別個に保ち、エラーや予算の枯渇が決して成功とみなされない終了状態を要求し、1 ターンにつき 1 つの変更を、最も悪い項目から順に行うことを強制し、ネストしたサブループに乗算的な上限を設けてサブループが呼び出し元を呼び出すことを禁止し、状態をディスク上に置き、受け入れられた変更 1 件あたりのコストを健全性の指標として記録する。

出力は、決まった骨格を持つ単一の <name>-loop.md ドキュメントである。その骨格は、説明と「使用する場面」、ゴールと検証、1 ターンのステップ、名前付きの停止状態、ガードレール、メモリの場所、サブループ、「なぜうまくいくのか」を述べる短いセクション、そして起動条項からなる。起動の方法は、作業が単一のコンテキストウィンドウに収まる場合は /goal コマンド、単一のコンテキストでは劣化してしまうほど作業が長い場合は、新しいコンテキストで動作する Ralph Loop の骨格のいずれかである。スキルはオプションで /loop-<name> コマンドを出力することもできる。論文の実例はテストカバレッジのループであり、その終了状態は、カバレッジ 100% での成功、成果のないラウンドが 2 回続いた後の進捗なし、そしてターン数の上限に達した後の枯渇である。

採用とエコシステム

論文はこのスキルを、評価済みの貢献としてではなく、原則を書き出せる成果物へとつなぐ橋渡しとして提示しており、その利用データは報告していない。このようにして書かれた仕様が成果を改善するかどうかは、未解決の実証的な問いとして残されている。スキルは著者の GitHub 上のプロンプト用リポジトリで公開されている。