mcpField
H
how

how

github.com/michael-denyer開発3.7k996 回インストール今日更新
リポジトリ

how について

コードベースを調査し、サブシステムの仕組みを説明するスキルです。アーキテクチャの全体像を把握したいエンジニア向けに、読み取り専用の調査と説明の進め方を定めています。

主な機能

  1. 01コードベースの調査
  2. 02複雑さに応じた調査
  3. 03読み取り専用サブエージェントの指針
  4. 04構造化されたアーキテクチャ説明

活用シーン

  1. 01未知のサブシステムの把握
  2. 02機能の動作経路の追跡
  3. 03コードベースへの習熟

インストール

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

$npx skills add https://github.com/michael-denyer/pstack-claude --skill how

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

同梱ファイルreferences/explainer-prompt.mdreferences/explorer-prompt.md

詳細

How

Codex では、このスキルに従う前に、スキルごとの注記を含め、プラットフォームマッピングを確認してください。

GitHub Copilot では、このスキルに従う前に、スキルごとの注記を含め、プラットフォームマッピングを確認してください。

Muse では、このスキルに従う前に、スキルごとの注記を含め、プラットフォームマッピングを確認してください。

「X はどのように動作しますか?」という質問に答えるため、コードベースを調べてください。サブシステムに加わったシニアエンジニア向けのレベルで、動作するメンタルモデルを構築するのに十分なアーキテクチャの説明を作成してください。注釈付きのソースコードのようにならない程度にとどめてください。

すべての起動対象は、subagent_type: "general-purpose" かつ readonly: true の Agent サブエージェントです。調査担当は pstack-models.md の how explorer 行(デフォルトは Models)、説明担当は how explainer 行(デフォルトは Models)を使用します。model にはその行の値を設定します。シートまたは該当行がない場合はデフォルトを使用します。値が auto または inherit-parent の場合、model は設定しないでください。Agent ツールがモデルのスラッグを受け付けない場合は、デフォルトを使い、その旨を伝えてください。デフォルトも受け付けない場合は、エラーメッセージにある同じファミリーの有効なスラッグのうち、最も近いものを使用してください。各サブエージェントの推論レベルは、poteto-mode スキルの Subagents セクションに従って選択してください。

1. 複雑さを評価する

対象範囲が曖昧な場合は、解釈を示して調査してください。ユーザーは方向を修正できます。

  • 単純(単一モジュール、小規模なユーティリティ、「関数 X はどのように動作しますか?」のような限定的な質問):調査担当は起動しません。references/explainer-prompt.md を基に、explorer-findings セクションを除いたプロンプトを使って、調査と説明を一度に行う説明担当を 1 人起動します。ステップ 4 に進みます。
  • 複雑(複数のファイルやサービスにまたがるサブシステム、横断的な機能、アーキテクチャ全体の概要):ステップ 2 に進みます。

迷った場合は、単純な経路を選んでください。

2. 調査する(複雑な場合のみ)

質問を、サブシステムの異なる側面を扱う 2~4 個の独立した切り口に分解します。それぞれについて、切り口を記入した references/explorer-prompt.md を使い、すべての調査担当を 1 回のメッセージで起動します。

3. 統合する(複雑な場合のみ)

すべての調査担当から回答が返ったら、各担当の調査結果をすべて記入した references/explainer-prompt.md を使い、説明担当を 1 人起動します。

4. 提示する

説明担当の出力を提示します。明瞭さや会話の文脈を補うための軽微な編集はかまいません。大幅な書き換えはしないでください。

出力形式

説明は references/explainer-prompt.md で定義されたセクションを使い、該当しないセクションは省略します:Overview、Key Concepts、How It Works、Where Things Live、Gotchas。

Models

役割ごとのデフォルト値は plugins/pstack/models.json から設定されます(変更後、tools/generate.mjs を再実行してください)。pstack-models.md の対応する役割の行がある場合、実行時に各デフォルト値を上書きします。/setup-pstack はそのファイルを書き込み、各ランタイムでファイルのパスを表示します。

  • how explorer:opus
  • how explainer:opus

Reasoning effort

オーバーライドシートの役割の値には、モデル名の後に推論レベルを指定できます。例:opus @xhigh。Claude Code で指定できるレベルは low、medium、high、xhigh、max です。使用できるレベルはモデルによって異なります。@ のない値では、シートの default effort 行にある値(レベルまたは session)を使います。その行もない場合は session です。session は推論レベルを設定しないため、通常どおり起動します。モデルを読み取る際は、接尾辞を取り除いてください。どのレベルでも inherit-parent または auto の場合は model を省略し、モデル名の場合は model として渡します。レベルは起動時の effort フィールドに渡し、通常使用する subagent_type はそのまま使います。Claude Code の Agent 呼び出しでは effort、Codex の spawn_agent では reasoning_effort です。Muse では Workflow の子に effort を指定します。subagent_spawn の起動では、セッションの推論レベルが引き継がれます。

コメント