Community研究&データ分析github.com

toyin-software-factory/audit

グリーンフィールドプロジェクト、ドキュメントが不足している既存のコードベース、または特定のエリア(/audit src/auth)に対して/auditを実行し、後続のすべてのスキルが読み取るプロジェクトのAIコンテキストとAGENTS.mdファイルをブートストラップします。ツールに依存しないAGENTS.mdと軽量なCLAUDE.mdポインタを作成し、不足しているものだけを追加します。既存のコンテンツを上書きすることはありません。

audit とは?

このスキルは、AIエージェントのためのプロジェクトコンテキストを初期化・保守する「コンテキストブートストラッパー」です。新しいプロジェクト(グリーンフィールド)、既存の無ドキュメントコードベース、または特定のエリアに対して、AIツール(Claude Code、Cursor、Codex等)が読み取るツール非依存の `AGENTS.md` ファイルを生成します。このスキルは、プロジェクトのスコープ設定やアーキテクチャ設計を担当する他のスキルと連携し、それらが出力した情報をもとにコンテキストファイルを作成します。また、 `CLAUDE.md` は `AGENTS.md` への軽量ポインタとしてのみ使用し、コンテンツの重複を防ぎます。グリーンフィールドプロジェクトではコーディング規約を質問し、既存プロジェクトでは不足しているドキュメントのみをギャップフィルします。マルチプラットフォーム対応、モノレポ対応、レガシードキュメントの移行機能も備えています。

対応✓Claude Code✓Codex CLI✓Cursor
npx skills add https://github.com/toyin-software-factory/factory-template/tree/HEAD/.claude/skills/audit

Installed? Explore more 研究&データ分析 skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

出力スタイル(平易な言葉、ダッシュなし、ハイフンなし)

このスキルが生成するファイルとメッセージは、すべて平易でシンプルな言葉で記述します。読み手には「あなた」として語りかけ、同僚のように温かく直接的で、各ステップは実行してもスキップしてもよい推奨として提示し、命令は決して行いません。実際の意味を持つ技術用語はそのまま使用しますが、平易な言葉で説明します。句読点としてダッシュやハイフンは使用しません。emダッシュ、enダッシュ、ハイフンでつなぐ複合語も使用しません。「read-only」ではなく「read only」と書きます。短い文、カンマ、括弧を使用します。明快さが賢さに勝ります。

このスキルの機能

コンテキストブートストラッパー:後続のすべてのスキルとAIツールが読み取る AGENTS.md ファイルを作成します。

  • グリーンフィールド(コードなし):コーディング規約を質問し、回答と、 /scope で設定されていればスコープヘッダーからのビルドアプローチ(名前と一行原則)に基づいてルート AGENTS.md をシードします。プロジェクトが選択されたスタックでスキャフォールドされた後に実行されます(/scope → /architect がスタックを決定 → スキャフォールド → /audit)。それより前では時期尚早です。
  • ブラウンフィールド、ドキュメントなし(コードはあるが AGENTS.md なし):プロジェクト全体をスキャンし、ルート AGENTS.md とネストされた <area>/AGENTS.md ファイルを作成し、何がグローバル(ルート)で何がエリア固有(ネスト)かを判断します。
  • ブラウンフィールド、部分的にドキュメントあり:既存のルートとネストされたドキュメントをコードベース全体と照合し、不足しているものだけを追加します(新しいグローバルな事実、ドキュメント化されていないエリアのネストされたドキュメント)。キュレーションされたコンテンツを決して上書きしません。

スペックの作成( /architect が担当)、変更後のファイル保守( /sync が担当)、機能スコープの記述( /scope が docs/scope/ を担当)は行いません。

コンテキストファイルの規則(AGENTS.mdが標準)

永続的なコンテキストは、ツールに依存しない AGENTS.md(ルートおよびネスト)に保存されます。すべてのエージェント(Codex、Cursor、Claude Codeなど)がこれを読み取ります。CLAUDE.md は、そのボディ全体がClaude Codeの @ インポートを介して兄弟の AGENTS.md をインポートするための1行のポインタに過ぎません(正確なポインタボディは agent-prompt.md にあります)。コンテンツは2つのファイル間で重複することはありません。

  • 知識は AGENTS.md に記述します。存在しない場合は作成します。既存の AGENTS.md を上書きしないでください(ユーザーまたはツールによって作成された可能性があります)。ギャップフィルは控えめに、許可を得て行います。
  • レガシーコンテンツの移行:コンテンツはあるが AGENTS.md がない CLAUDE.md → 許可を得て、そのコンテンツを新しい AGENTS.md に移動し、 CLAUDE.md をポインタに置き換えます。キュレーションされたコンテンツを黙って破棄しないでください。
  • ルートは短くグローバルに保ちます。ネストされた AGENTS.md は、実際の規約がある意味のあるエリアに対してのみ作成します(以前 CLAUDE.md に適用されたものと同じルート/ネストのルール)。

スコープ

エリアパス引数(例: auth、 src/payments)はフェーズ3をトリガーします。引数がない場合、以下の「事前チェック」シグナルは、フェーズ0(あいまい:新規か既存かを質問)、フェーズ1(グリーンフィールド:規約を質問し、ルートをシード)、フェーズ2(確立済み、ルートAGENTS.mdなし:リポジトリ全体をスキャン)、またはフェーズ4(ルートAGENTS.mdあり:ギャップフィル)にルーティングします。コンテンツはあるが AGENTS.md がないレガシー CLAUDE.md は移行され、その後フェーズ4として扱われます。

実行と質問

フェーズ1では、ルート AGENTS.md を作成する前に、MCQを介してコーディング規約の質問をします。フェーズ2は即座に実行し、質問はありません。ルートと、必要と判断したネストされたドキュメントを作成します。フェーズ3と4は探索のために実行しますが、既存のルート AGENTS.md を変更したり、レガシーな CLAUDE.md を移行したりする前に許可を求めます。フェーズ4は、最初にドキュメント化されていないエリアのネストされたドキュメント作成を報告し、確認後に適用します。

成果物の所有権

AGENTS.md ファイルがコンテンツを保持します。存在しない場合はルートを作成し(フェーズ1、2)、存在せず必要な場合は <area>/AGENTS.md を作成します(判断による、フェーズ2、3、4)。存在する場合は、許可を得てギャップフィルするか追加を提案します。決して上書きしません。CLAUDE.md ファイルはポインタのみです(ルートおよびエリア)。存在しない場合は作成します。コンテンツがあるレガシーなものは、許可を得て AGENTS.md に移行します。ネストされた AGENTS.md を作成する場合、ルート AGENTS.md の ## Context files の下に、ちょうど1行のポインタを追加します: - [<area>/AGENTS.md](<area>/AGENTS.md) (<1行の説明>)。サブフォルダごとに1つ作成するのではなく、明確な規約が存在する場合のみ作成します。

移植性(任意のOS、任意のエージェント)

  • コマンド: git は唯一必要なCLIであり、すべてのOSで同じです。その他のシェルスニペット(ファイル数、 find、 [ -f ])はPOSIXリファレンスであり、リテラルスクリプトではありません。エージェントのクロスプラットフォームファイルツール(検索/glob、読み取り、書き込み)を使用して、リスト、カウント、存在確認を行います。
  • バンドルファイルはこのスキルのフォルダにあります: agent-prompt.md、フェーズモードファイル(modes/*.md)、パターンプリセット(patterns/*.md)。フォルダを絶対パスに解決します。ルーティング時に対応するフェーズモードファイルを読み取り、書き込み時に agent-prompt.md と選択されたパターンプリセットを読み取ります。そのALL_CAPSプレースホルダー(PHASE、AREA、ADDITIONAL_STANDARDS、MONOREPO_OR_NO、INSTALLED_SKILLS、DECLINED_TOOLSなど)は、事前チェックと質問ラウンドで収集した入力です。読み取り時にそれぞれを適用します。
  • インタラクティブな質問機能がない場合? すべての多肢選択質問を、同じオプションを持つプレーンテキストとして質問します。

実行

メインスレッドがすべてのフェーズで書き込みを行います。 AGENTS.md の書き込みをサブエージェントに任せることはありません。唯一のサブエージェントは読み取り専用の「スカウト」(最も安価なモデル、Claude Code: haiku、セッションモデルは不可)であり、大規模なスキャン時にのみ生成されます。スカウトは、メインスレッドが書き込みに使用するコンパクトなマップを返します。小さなスキャフォールドや単一のエリアではスカウトは不要です。直接読み取ります。書き込む直前に、 agent-prompt.md(ペルソナ、フェーズごとの指示、テンプレート)と、フェーズ1では選択されたパターンプリセットを読み取り、それに従って書き込みます。 agent-prompt.md は書き込み時のみ読み取り、事前チェック中には読み取りません。

「事前チェック」(メインスレッドが何よりも先にこれを行います)

いくつかのシグナルを収集します(ファイル数だけでは誤解を招きます。スキャフォールドは数を膨らませ、なじみのない言語はゼロにします):

  1. コンテキストファイル:ルートAGENTS.mdが存在する → ROOT_EXISTS;コンテンツのみのCLAUDE.mdが存在する → ROOT_LEGACY;どちらもない → ROOT_MISSING。
  2. 一般的なエcosysteム全体のソース数( .ts/.tsx/.js/.jsx/.py/.go/.rs/.java/.rb/.swift/.kt/.php/.cs/.dart/.ex/.exs/.scala/.c/.cpp/.h/.lua/.clj などの拡張子)、ベンダー/生成ディレクトリ(node_modules、 .git、 dist、 build)と設定ファイル(*.config.*)を除く。
  3. 確立されたシグナル: git log --oneline によるコミット履歴の深さ;実際のマニフェスト(package.json、 pyproject.toml、 go.mod、 Cargo.toml、 composer.json、 *.csproj、 pubspec.yaml、 mix.exs、 Gemfile)。
  4. モノレポシグナル:ワークスペースマーカー(pnpm-workspace.yaml、 turbo.json、 package.json の `

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

関連スキル