Skip to content
← すべての章

章 04

スキルとエージェント

DWP はエージェント非依存ですが、二つの繰り返し現れる構成要素、すなわちスキルとエージェント、そしてあらゆる作業が始まる前にリポジトリの中で方向感覚をつかむための意図的な方法を前提とします。

スキルかエージェントか

両者は混同しやすいものの、異なる目的に役立ちます。

  • スキルは、名前で呼び出される再利用可能な手順です。スキルは、テストの実行、リントの修正、コンポーネントの作成といった繰り返し可能なワークフローをパッケージ化し、エージェントと人が毎回同じやり方で呼び出せるようにします。
  • エージェントは、定義された役割を持つ専門化されたワーカーです。レビュアー、エグゼキューター、アーキテクトなどです。各エージェントは絞られた責務を持ち、自身のスコープの中で動きます。

便利な言い換え。スキルは繰り返し現れるタスクを どう 行うかであり、エージェントは、ある種類の作業に が責任を持つかです。

生きたキット — リポジトリが独自のスキルを育てる

オンボーディングはリポジトリをエージェントハーネスに変えますが、それを凍結させはしません。キットは、リポジトリのワークフローが明確になるにつれて育つことを意図しています。DWP は /skill-create/agent-create を通じて呼び出される author サブスキルを提供します。これはリポジトリの既存の .agents/ レイアウトと規約を推論し、それらに合致する新しいスキル、エージェント、あるいは薄いコマンド委譲を書きます。リポジトリは汎用のキットを受け継ぐのではなく、独自のキットを著します。

author サブスキルは適合性に意を払います。人が手で実行する繰り返し可能な手順にはスキルを、固有のモデルやツールを必要とする繰り返し現れる役割にはエージェントを、そしてスキルやエージェントへ振り分ける薄い入口としてのみコマンドを作ります。実際のワークフローに合致しない汎用的なものは飛ばし、追加するものに合わせて .agents/docs/ のカタログを同期し続けます。同じサブスキルが必須の Skills & Agents Discovery タスクを支え、これはカタログをディスク上に実際にあるものと突き合わせます。そして /dwp-verify がその突き合わせを客観的に確認し、カタログとファイルが食い違えば不合格にします。

メンテナンスアドオン

著すこと以外に、DWP はオプトイン式のメンテナンスアドオンを備えます。これはリポジトリが AI-first であるために必須となることは決してありません。dependency-upgrade アドオンが代表例です。これはパッケージマネージャーを決めつけるのではなく、リポジトリの 実際の パッケージマネージャー(ncu を伴う npm、pnpm、yarn。pip、poetry、uv。Cargo。Go modules。Bundler。Composer)を推論し、小さなバッチで更新し、各バッチのあとにリポジトリの実際の検証ゲートを実行し、失敗したバッチを取り消し、自動コミットせずに要約します。アドオンはオンボーディング中に明示的に受け入れられます。一つを辞退しても、リポジトリは完全に適合したままです。

推論にもとづくリポジトリのオンボーディング

計画を作成または実行する前に、エージェントはリポジトリにオンボーディングします。オンボーディングはスクリプトにもとづくのではなく、推論にもとづきます。エージェントは固定のセットアップスクリプトを実行するのではなく、リポジトリの構造、ドキュメント、設定を読んでメンタルモデルを構築します。

オンボーディングの最中に、エージェントはリポジトリのアーキタイプ(個別かオーケストレーターか)、ビルド、テスト、リントのコマンド、スタイル、構造、命名に関する既存の規約、そしてすでに利用可能なスキルとエージェントを特定します。この理解こそが、エージェントがリポジトリに逆らうのではなく、それに適合するかたちで計画し実行することを可能にします。

.agents/ ディレクトリと .claude → .agents シンボリックリンク

DWP は、エージェントの振る舞いを定義するすべて、すなわちスキル、コマンド、エージェント定義、内部ドキュメント、設定を、単一の正規ディレクトリ .agents/ の配下に集めます。この名前は、その内容がどの一つのツールに結びつくのでもなく、エージェント横断で共有されることを示しています。

歴史的に .claude/ から読んできたツールとの後方互換性のため、そのパスは .agents/ へのシンボリックリンクです。

ls -la .claude
# .claude -> .agents

すべての .claude/... パスは、その .agents/... に相当するものへ透過的に解決されます。これにより、古いツールは動き続け、新しい内容は正規の .agents/ の場所を参照します。スキルとエージェントは、シンボリックリンク経由ではなく、.agents/ 配下の実ファイルを通じて編集します。