AIDive

SuperpowersはClaude Codeに規律を入れる。ただし代償が一つある

AIDive · 公開

コーディングエージェント

280,000スターを集めたプラグイン

Superpowersは、1990年代からオープンソースの開発ツールを出し続けてきたJesse Vincentが書いたClaude Code向けのプラグインです。公開は10月で、1年も経たないうちにリポジトリは280,000スターと25,000フォークに達し、最後のプッシュは私たちが収録する2日前に入っています。プロジェクトはすでにメジャーバージョン6で、mainブランチには681コミットがあります。つまり、公開直後の盛り上がりの後に放置されたプロンプト集ではありません。

指標
GitHubスター 280,000
フォーク 25,000
メジャーバージョン 6
mainのコミット数 681
オープンなissue 125

Vincentの賭けは一文で言えます。コーディングエージェントに足りないのは能力ではなく、規律だ。その規律は、誰でも読み、フォークし、改変できるプレーンなmarkdownファイルとして届きます。私たちはプラグインをインストールし、14のスキルを一行ずつ全部読み、生産性、コードの信頼性、トークン消費、ドキュメントという4つの観点で何が変わるのかを確かめました。

Superpowersとは実際に何なのか

Superpowersは、Claude Code向けの無料のオープンソースプラグインです。Anthropic公式のプラグインマーケットプレイスに置かれていて、コマンド一つでインストールできます。同じ方法論は、CursorやCodex、Geminiを含む十数種類の他のハーネスにも用意されていて、それぞれに独自のインストール手順があります。

核心は14のスキルです。状況が合致するたびにエージェントが読み込む、markdownの指示ファイルです。ブレインストーミング、プラン作成、サブエージェント駆動開発、テスト駆動開発、体系的なデバッグのそれぞれが、独自のチェックリストとガードレールを備えた一つの完全な仕事の進め方を定義しています。デバッグのスキルは、根本原因を特定する前に修正を提案することを禁じます。検証スキルは、終わったと言うだけでなく、本当に終わったことをエージェントに証明させます。各スキルは読み込み時に自分の名前を宣言するので、エージェントが今どのモードで動いているかが常にわかります。

セッション開始時のフックが、毎タスクの前にこれらのスキルのどれかが当てはまらないかをClaudeに確認させます。ルールは入口のスキルに書かれています。関係する可能性が1%でもあれば、エージェントはそのスキルを読み込まねばなりません。結果として、ツールボックスというより、エージェントに注入された開発方法論として振る舞います。

Vincentはブログで誕生の経緯を語っています。自分のエージェントが学んだ教訓のmarkdownファイル2,249本を掘り起こしてスキルを組み上げ、草稿を同じアーカイブで徹底的に検証したのです。この方法論は理論から書かれたものではなく、実際のエージェントの失敗から抽出されたものです。

ブレインストーミング:コードの前に立つゲート

ブレインストーミングは、すべてが通過するスキルです。機能を頼んだ瞬間にClaudeはこれを読み込み、枠づけの会話が続く間、要件定義の専門家として振る舞います。手法全体が、読みやすい一つのファイルに収まっています。

ファイルは厳格なゲートから始まります。明示的な意図をあなたが承認するまで、コードも、足場も、実装系のスキルも一切なし。勘だけで作られるものはなく、このゲートはどんなに小さく見えるタスクにも適用されます。次にスキルは、すべての依頼を3つの経路のどれかに振り分けます。

経路 定義 成果物
スパイク 実現可能性の問い 答え。残すコードではない
バウンデッド リポジトリにすでにあるフローへの小さな変更 範囲を限定した変更
アーキテクチャル プロジェクトの組み立て方を再構成するもの全部 あなたが承認するspec、そして実装プラン

エージェントは分類を口に出すので、あなたが上書きできます。そしてラチェットは一方向にしか回りません。タスクの途中で見つかった隠れた複雑さは経路を格上げするだけで、逆は決してありません。ファイルには危険信号の表が付いていて、「設計が要るほど単純じゃない」といった考えの隣に反論が添えられています。単純なタスクこそ、検証しない前提が一番高くつく場所だ、と。スパイクにもガードレールは残ります。問いに答えるためにエージェントが作ったものは使い捨てのラベルのままで、そのコードを残すなら、分類すべき新しい依頼になります。

対話の間、エージェントはリードエンジニアがするような質問をし、設計を消化しやすいセクションに分けて提示します。私たちのパイプラインでも、この段階で、無駄に作るはずだった機能がいくつも消えました。

ハルシネーションできないほど小さなタスクで作るプラン

プラン作成のスキルは、トーンを決める指示から始まります。コードベースの文脈をまったく知らない腕のいい開発者に向けて書け、そして、ファイルの言葉を借りれば、「センスは怪しい」開発者に向けて書け、と。

具体的には、作業は各ステップが2分から5分で終わるタスクに切られます。失敗するテストを書き、実行して失敗を確かめ、通る最小のコードを書き、もう一度テストを回して、コミットする。一つの行動に一つの検証で、作業は細かいコミットで前に進みます。これはテスト駆動開発のサイクルで、プラグインの別のスキルが強制するため、すべてのタスクが自前のテストサイクルを持ちます。

各タスクには、作成または変更するファイルが行番号まで正確に列挙されます。プランは必須のヘッダーで始まります。一文のゴール、2、3文のアーキテクチャ、技術スタック、specへのリンク、そしてプロジェクトの全体制約を一字一句そのまま。specが独立した複数のサブシステムを扱うなら、スキルはサブシステムごとに別々のプランを要求し、それぞれが単体でテストできるソフトウェアを生むようにします。

タスクの粒度こそ、信頼性の議論の核心です。短いタスクなら、エージェントは作業を終える時点でコンテキストウィンドウがまだほとんど空のままです。セッションが溢れ、エージェントが筋を失い、存在しない関数をでっち上げ始める瞬間には決して至りません。5分のデモでは見えない問題ですが、実プロジェクトではこれがすべてを決めます。セッション終盤のエージェントの質は、最初のプロンプトでの質とは何の関係もありません。コンテキストが飽和しなければ、機械的にハルシネーションが減り、プランどおりに動くコードになります。

タスクごとに一つのサブエージェント、毎回一つのレビュー

実行時には、専用のスキルが作業をgitのworktree、つまりリポジトリの別の作業コピーに隔離します。隣であなたがしている作業を踏まずにプランが走ります。

実行スキルは、サブエージェントで開発を進めます。原則はファイルの一行に収まります。タスクごとに新しいサブエージェント、毎タスク後にレビュー、そして最後にブランチ全体の広範なレビュー。メインセッションはオーケストレーターになります。もうコードは書かず、指示を出すだけです。各サブエージェントに渡すのはタスクに必要な文脈だけで、あなたのセッションの履歴は決して渡しません。これがコンテキストの汚染を防ぎ、あなたのウィンドウを調整作業のために空けておきます。

サブエージェントは着手前に質問ができ、その後に実装、テスト、コミット、そして自分の作業のレビューを行います。終わると、オーケストレーターが2段階のレビューを行います。まずspecへの準拠、次にコード品質で、タスクごとに専任のレビュアー席が設けられます。即興は一切ありません。スキルには全役割(実装者、タスクレビュアー、修正を再確認するレビュアー)のテンプレートプロンプトが付いていて、オーケストレーターがそこにタスクの文脈を埋めます。

レビュー結果 何が起きるか
合格 オーケストレーターが台帳に完了を記録し、プランの次へ進む
不合格、1から3ラウンド目 元の実装者が再開する。コードと自分の判断をすでに知っているため
不合格、4ラウンド目 より高性能なモデルで新しい実装者が送り出される
不合格、5ラウンド目 ブレーカーが落ち、未解決の指摘はすべてオーケストレーター自身が裁定する

このスキルは逆の行き過ぎも避けます。細かい機械的タスクの束は一つのグループとして送り出され、一括でレビューされます。レビュアーを通らずにマージされるものはありません。結果として、人間のチームで言うコードレビューのプロセスができ、それがタスクごとに自動で回っていきます。

タスクごとに最適なモデル

この指示の仕組みが、3つ目の利点への扉を開きます。トークンの経済学です。スキルにはモデル選択のセクションがあり、一つのルールから始まります。各役割をこなせる、最も非力なモデルを使え。オーケストレーターはプラン内の各タスクの難しさを見積もり、それに合うモデルを割り当てます。

タスク モデルのティア
仕様が明確でファイル1、2個に触るだけの機械的タスク、または書くべきコードがすでに含まれているプラン 最安のティア(実装は書き写しとテストになる)
複数ファイルにまたがる調整、デバッグ 標準モデル
アーキテクチャ、最終のブランチレビュー 使える中で最も高性能なモデル

ファイルには2つの細かい点も書かれています。一つ目、送り出すときは必ずモデルを明示すること。指定のないサブエージェントはあなたのセッションのモデルを継承し、それは多くの場合最も高価なモデルなので、このセクション全体が静かに無意味になります。二つ目、ターン数はトークン単価に勝ること。最安のモデルは手順の多い作業でターン数が増え、結局は全体で高くつきます。だからレビュアーや、文章から作業する実装者には、最安ではなく一つ上のティアが下限として設定されます。

この構成は、直感に反することを可能にします。カタログで最も高価なモデルであるOpusやFableを、20ドルのProプランで回すことです。高価なモデルはそれに値する少数の判断だけを担い、残りのプランは、クォータをわずかしか使わないモデルで回ります。

コミットされるプラン:無料で手に入るドキュメント

最後の利点は、インストール時に誰も考えないものです。specとプランは、セッション終了で消えるチャットメッセージではありません。リポジトリ内に保存されたmarkdownファイルで、作業と一緒にコミットされます。スキルは置き場所まで決めています。日付付きのplansフォルダに機能ごとに一ファイル、ヘッダーにはゴール、アーキテクチャ、そしてspecへのリンク。

specはプランと一緒に移動し、両者が食い違えばspecが優先されます。権威は文書にあり、エージェントの記憶にはありません。gitの履歴は、何が変わったかだけを語るものではなくなります。なぜ変わったか、当時エージェントが何を決めたかまで語ります。半年後、プロンプトでプランファイルに触れれば、エージェントは元の機能の文脈をすぐに拾い直します。同じサブシステムに触れる新機能は、地形を再発見する代わりに、既存のspecの上に築かれます。

追跡されないタスクはもう存在しません。エージェントがコードベースにしたことはすべて、最初のブレインストーミングから最後のコミットまで、文書を残しています。プロジェクトは自らの哲学を2つの原則にまとめています。場当たりより体系、主張より証拠。ドキュメントはプロセスから自然に生まれます。

本当のコスト

限界は本物で、リポジトリはそれを宣伝していません。この規律すべてには固定コストがあり、そのコストは決してオフになりません。入口のスキルは率直です。少しでも疑わしければエージェントはスキルを読み込まねばならず、ブレインストーミングのファイルは、儀式はタスクに合わせて伸縮するが人間の承認は決して省かれない、と明言しています。

2行の修正でも、枠づけの質問に答え、2文の設計を承認し、修正を見るまでフルサイクルを待つことになります。設定ファイルのタイポ一つなら、フルプロセスは単純に、自分で直すより遅いです。オーケストレーション自体もトークンを消費します。指示のブリーフ、タスクごとの2回のレビュー、台帳は毎回払うもので、一番小さなタスクほど重く感じます。

逆の症状もあり、これはRedditの問いに直接答えるものです。使用統計でプラグインが数パーセントしかないなら、あなたの依頼はほとんどスキルを起動しておらず、毎セッション入口のチェック代を払いながら、利益には一度も触れていないことになります。5ラウンドを使い切る修正ループは、5つの差分、5回の追加レビュー、そして裁定で、数分で済むはずだったタスクのためにそれを払うのです。プロジェクト自体もじっとしていません。1年足らずでバージョン1から6まで進み、まだ125件のissueが開いています。今日読んだスキルは、次の更新で変わっているでしょう。

プラグインは自分の出口を用意しています。その指示では、あなたの命令がスキルより上位に置かれているので、プロセスを飛ばせとエージェントに明示すればいい。私たちのルールはこうです。機能開発ではSuperpowersをデフォルトでオン、小さな修正では意図的にスキップ。

私たちの結論

あなたのClaude Codeの使い方 結論
何時間もかかる機能 入れてください。枠づけが間違ったものの実装を防ぎ、短いタスクがエージェントをコンテキスト飽和から遠ざけ、モデル選択がクォータを引き延ばし、自分では絶対書かなかったドキュメントが手に入ります
使い捨てスクリプトと小さな修正 通り過ぎてください。必要のないタスクに、プロセスの固定コストを払うことになります
その中間 入れて、「スキップ」と言えるようになること。プロンプトの一文で、主導権があなたに戻ります

全部を採用せずに試したいなら、ブレインストーミングのスキルだけを数日動かしてみてください。利益の大半はそこにあり、他のスキルは後から自然に接ぎ木できます。このプラグインは、儀式に値する機能を与え続ける限り、4つの約束を守ります。私たちのプロジェクトでは今も動いていて、ブレインストーミングの段階はもう外せなくなりました。リポジトリは無料でオープンソースで、あなたの前には280,000人が並んでいます。

出典

よくある質問

Claude CodeのSuperpowersプラグインとは何ですか?
Jesse Vincentが作った無料のオープンソースプラグインで、Anthropic公式のプラグインマーケットプレイスにあります。状況が合致するとエージェントが読み込む14のmarkdownスキルで構成され、ブレインストーミング、プラン作成、サブエージェント駆動開発、テスト駆動開発、体系的なデバッグなどを含みます。セッション開始時のフックが、毎タスクの前にスキルが当てはまるかをClaudeに確認させます。
Superpowersは入れる価値がありますか、それともトークンの無駄ですか?
仕事の内容次第でどちらにもなります。何時間もかかる機能開発では、枠づけ、信頼性、トークン消費、ドキュメントの4つの面で元が取れます。小さな修正では固定の儀式がリターンより高くつきます。使用統計でプラグインが数パーセントしかないなら、スキルは一度も起動しておらず、利益なしに入口のチェック代を払っています。
SuperpowersはClaude Codeのハルシネーションをどう減らしますか?
プランを各ステップが2分から5分のタスクに切り、それぞれを新しいサブエージェントで実行することで減らします。エージェントはコンテキストウィンドウがまだほとんど空の状態で作業を終えるので、セッションが溢れて存在しない関数をでっち上げ始める地点には決して至りません。
Superpowersでトークンは節約できますか?
モデル選択のルールが、各役割をこなせる最も非力なモデルを割り当てます。仕様が明確な機械的タスクには最安のティア、調整とデバッグには標準モデル、アーキテクチャと最終のブランチレビューには最も高性能なモデルです。これで高価なモデルはそれに値する少数の判断だけを担います。
小さな修正でSuperpowersをスキップするにはどうすればいいですか?
プロセスを飛ばすようエージェントに明示的に伝えます。プラグインの指示はあなたの命令をスキルより上位に置いているので、プロンプトの一文で主導権があなたに戻ります。私たちのルールは、機能開発ではSuperpowersをデフォルトでオン、小さな修正では意図的にスキップです。
Superpowersのスキルはどれから試すべきですか?
ブレインストーミングです。すべてが通過するゲートで、明示的な意図を承認するまでコードは書かれず、スパイク、バウンデッド、アーキテクチャルの3つの経路があり、出口ではspecとプランが得られます。利益の大半はここにあり、他のスキルは後から自然に接ぎ木できます。

関連動画