docs/ja-JP/skills/agent-architecture-audit/SKILL.md
エージェントおよび LLM アプリケーション向けのフルスタック診断。12 層のエージェントスタックにおけるラッパーリグレッション、メモリ汚染、ツール規律の失敗、隠れた修復ループ、レンダリング破損を監査します。重要度順の発見事項とコードファーストの修正を生成します。エージェントアプリケーション、自律ループ、または LLM を活用した機能を構築する開発者に必須です。
npx skillsauth add affaan-m/everything-claude-code agent-architecture-auditInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
ラッパー層、古いメモリ、リトライループ、トランスポート・レンダリングの変異の背後に失敗を隠すエージェントシステムのための診断ワークフロー。
必須の場合:
特に重要な場合:
使用しない場合:
agent-introspection-debugging を使用security-review または security-review/scan を使用agent-eval を使用すべてのエージェントシステムはこれらの層を持ちます。いずれも回答を破壊する可能性があります:
| # | 層 | 問題の内容 | |---|-------|----------------| | 1 | システムプロンプト | 矛盾する指示、指示の肥大化 | | 2 | セッション履歴 | 前のターンからの古いコンテキスト注入 | | 3 | 長期メモリ | セッション間の汚染、新しい会話に古いトピックが混入 | | 4 | 蒸留 | 圧縮されたアーティファクトが疑似事実として再投入 | | 5 | アクティブリコール | コンテキストを無駄にする冗長な再要約層 | | 6 | ツール選択 | 誤ったツールルーティング、モデルが必要なツールをスキップ | | 7 | ツール実行 | ハルシネーションによる実行 — 呼び出したと主張するが実際には呼び出していない | | 8 | ツール解釈 | ツール出力の誤読または無視 | | 9 | 回答整形 | 最終応答でのフォーマット破損 | | 10 | プラットフォームレンダリング | トランスポート層の変異(UI、API、CLI が有効な回答を変異させる) | | 11 | 隠れた修復ループ | サイレントなフォールバック・リトライエージェントが 2 回目の LLM パスを実行 | | 12 | 永続化 | 期限切れの状態またはキャッシュされたアーティファクトがライブエビデンスとして再利用 |
ベースモデルは正しい回答を生成するが、ラッパー層がそれを悪化させる。
症状:
履歴、メモリ検索、または蒸留を通じて古いトピックが新しい会話に漏れる。
症状:
ツールはプロンプトで宣言されているがコードでは強制されていない。モデルがそれをスキップするか実行をハルシネーションする。
症状:
エージェントの内部回答は正しいが、プラットフォーム層が配信中にそれを変異させる。
症状:
明示的なコントラクトなしにサイレントな修復、リトライ、要約、またはリコールエージェントが実行される。
症状:
監査対象を定義する:
コードベースからエビデンスを収集する:
rg を使用してアンチパターンを検索する:
# プロンプトテキストのみで表現されたツール要件(コードでなく)
rg "must.*tool|必须.*工具|required.*call" --type md
# バリデーションなしのツール実行
rg "tool_call|toolCall|tool_use" --type py --type ts
# メインエージェントループ外の隠れた LLM 呼び出し
rg "completion|chat\.create|messages\.create|llm\.invoke"
# ユーザー修正優先度なしのメモリ受付
rg "memory.*admit|long.*term.*update|persist.*memory" --type py --type ts
# 追加の LLM 呼び出しを実行するフォールバックループ
rg "fallback|retry.*llm|repair.*prompt|re-?prompt" --type py --type ts
# サイレントな出力変異
rg "mutate|rewrite.*response|transform.*output|shap" --type py --type ts
各発見事項について文書化する:
デフォルトの修正順序(コードファースト、プロンプトファーストではない):
| レベル | 意味 | アクション |
|-------|---------|--------|
| critical | エージェントが自信を持って誤った操作動作を生成できる | 次のリリース前に修正 |
| high | エージェントが頻繁に正確性や安定性を低下させる | このスプリントで修正 |
| medium | 正確性は通常維持されるが出力が脆弱または無駄 | 次のサイクルで計画 |
| low | 主に見た目または保守性の問題 | バックログ |
発見事項をユーザーにこの順序で提示する:
お世辞や要約から始めないこと。システムが壊れている場合は直接そう述べる。
エージェントシステムを監査する際、以下に答える:
| # | 質問 | Yes の場合 → | |---|----------|----------| | 1 | モデルが必要なツールをスキップして回答できるか? | ツールがコードゲートされていない | | 2 | 古い会話コンテンツが新しいターンに現れるか? | メモリ汚染 | | 3 | 同じ情報がシステムプロンプトとメモリと履歴にあるか? | コンテキストの重複 | | 4 | プラットフォームが配信前に 2 回目の LLM パスを実行するか? | 隠れた修復ループ | | 5 | 内部生成とユーザー配信で出力が異なるか? | レンダリング破損 | | 6 | 「ツール X を必ず使用する」ルールがプロンプトテキストのみか? | ツール規律の失敗 | | 7 | エージェント自身のモノローグが永続メモリになり得るか? | メモリポイズニング |
監査はこの形状に従った構造化されたレポートを生成すべきです:
{
"schema_version": "ecc.agent-architecture-audit.report.v1",
"executive_verdict": {
"overall_health": "high_risk",
"primary_failure_mode": "string",
"most_urgent_fix": "string"
},
"scope": {
"target_name": "string",
"model_stack": ["string"],
"layers_to_audit": ["string"]
},
"findings": [
{
"severity": "critical|high|medium|low",
"title": "string",
"mechanism": "string",
"source_layer": "string",
"root_cause": "string",
"evidence_refs": ["file:line"],
"confidence": 0.0,
"recommended_fix": "string"
}
],
"ordered_fix_plan": [
{ "order": 1, "goal": "string", "why_now": "string", "expected_effect": "string" }
]
}
agent-introspection-debugging — エージェントランタイムの失敗(ループ、タイムアウト、状態エラー)のデバッグagent-eval — エージェントパフォーマンスの対決ベンチマークsecurity-review — コードと設定のセキュリティ監査autonomous-agent-harness — 自律エージェント操作のセットアップagent-harness-construction — エージェントハーネスをゼロから構築data-ai
Design task-local harnesses, eval gates, and reusable skill extraction for Claude dynamic workflow mode and other adaptive agent harnesses.
development
React component testing with React Testing Library, Vitest/Jest, MSW for network mocking, accessibility assertions with axe, and the decision boundary between component tests and Playwright/Cypress end-to-end runs. Use when writing or fixing tests for React components, hooks, or pages.
tools
React and Next.js performance optimization patterns adapted from Vercel Engineering's React Best Practices (https://github.com/vercel-labs/agent-skills). Organizes 70+ rules across 8 priority categories — waterfalls, bundle size, server-side, client fetching, re-render, rendering, JS micro-perf, advanced. Use when writing, reviewing, or refactoring React/Next.js code for performance.
tools
React 18/19 patterns including hooks discipline, server/client component boundaries, Suspense + error boundaries, form actions, data fetching, state management decision trees, and accessibility-first composition. Use when writing or reviewing React components.