mcpField
A
Agent Smith

Agent Smith

ローカル
github.com/jpoindexterAI・エージェント137 週間前に更新

Agent Smith について

Agent Smithはコードベースを解析し、AIコーディングツール向けのコンテキストをAGENTS.mdとして生成します。MCPサーバーとしても動作し、ツールやリソースからコードベース情報を提供します。

主な機能

  1. 01コードからAGENTS.mdを生成
  2. 02APIとGraphQLスキーマの抽出
  3. 03データベースモデルとフックの確認
  4. 04コードの複雑度分析
  5. 05ファイル監視とコンテキスト再生成

活用シーン

  1. 01コーディングエージェント向けのプロジェクト情報作成
  2. 02APIとデータベース構造の確認
  3. 03MCP経由でコンポーネントやコードを検索

MCP 対応

`agentsmith --mcp`でコードベースのツールとライブリソースを公開します。生成したAGENTS.md、APIスキーマ、データベースモデル、GraphQLスキーマ、複雑度レポートなどを利用できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"agentsmith": {
"command": "npx",
"args": [
"-y",
"@jpoindexter/agent-smith"
]
}
}
}
起動コマンドnpx -y @jpoindexter/agent-smith

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@jpoindexter/agent-smith

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

┏━┓┏━╸┏━╸┏┓╻╺┳╸   ┏━┓┏┳┓╻╺┳╸╻ ╻
┣━┫┃╺┓┣╸ ┃┗┫ ┃    ┗━┓┃┃┃┃ ┃ ┣━┫
╹ ╹┗━┛┗━╸╹ ╹ ╹    ┗━┛╹ ╹╹ ╹ ╹ ╹

agentsmith

コードベースから AGENTS.md を自動生成

AGENTS.md を手作業で書くのはやめましょう。agentsmith を実行すると、コードベースをスキャンして、AI コーディングツールが自動的に読み込む包括的なコンテキストファイルを生成します。

AGENTS.md とは?

AGENTS.md は、AI コーディングアシスタントにプロジェクトのコンテキストを伝えるためのオープンスタンダードです。60,000 以上のプロジェクトで採用されており、次のツールでサポートされています。

  • Cursor
  • GitHub Copilot
  • Claude Code
  • VS Code
  • Gemini CLI
  • その他 20 以上のツール

AI ツールは AGENTS.md ファイルを自動的に検出して読み込むため、設定は不要です。

agentsmith の機能

AGENTS.md を手作業で書く代わりに、agentsmith がコードベースをスキャンして生成します。

npx @jpoindexter/agent-smith

  agentsmith

  Scanning /Users/you/my-project...

  ✓ Found 279 components
  ✓ Found 5 components with CVA variants
  ✓ Found 37 color tokens
  ✓ Found 14 custom hooks
  ✓ Found 46 API routes (8 with schemas)
  ✓ Found 87 environment variables
  ✓ Detected Next.js (App Router)
  ✓ Detected shadcn/ui (26 Radix packages)
  ✓ Found cn() utility
  ✓ Found mode/design-system
  ✓ Detected 6 code patterns
  ✓ Found existing CLAUDE.md
  ✓ Found .ai/ folder (12 files)
  ✓ Found prisma schema (28 models)
  ✓ Scanned 1572 files (11.0 MB, 365,599 lines)
  ✓ Found 17 barrel exports
  ✓ Found 15 hub files (most imported)
  ✓ Found 20 Props types
  ✓ Found 40 test files (12% component coverage)

  ✓ Generated AGENTS.md
    ~11K tokens (9% of 128K context)
    Help improve agentsmith → github.com/jpoindexter/agentsmith/issues

インストール

# Run directly (no install needed)
npx @jpoindexter/agent-smith

# Or install globally
npm install -g @jpoindexter/agent-smith

使い方

# Generate AGENTS.md in current directory
agentsmith

# Generate for a specific directory
agentsmith ./my-project

# Preview without writing (dry run)
agentsmith --dry-run

# Custom output file
agentsmith --output CONTEXT.md

# Force overwrite existing file
agentsmith --force

フィードバックとバグ報告

agentsmith feedback

バグ、アイデア、質問、または取り組んでいることの共有など、どんなフィードバックも役立ちます。

agentsmith feedback を実行し、希望する操作を選択してください。バグの報告、機能のリクエスト、質問、アイデアの共有、作成したものの紹介ができます。バグ報告では診断情報が自動的に収集され、課題の内容が事前に入力されます。

プライバシー: agentsmith はデータを収集、送信、保存しません。すべてお使いのマシン上でローカルに実行されます。フィードバックコマンドでは、バグ報告に役立てるための基本情報(ツールのバージョン、OS、ファイル数の集計)が収集されますが、自動的に外部へ送信されることはありません。収集される情報はすべて確認でき、含めるかどうかはご自身で選択できます。ログを共有したくない場合は、簡単な説明だけでも大いに役立ちます。

次の方法で直接お問い合わせいただくこともできます。

出力モード

# Default - comprehensive output (~11K tokens)
agentsmith

# Compact - fewer details (~20% smaller)
agentsmith --compact

# Compress - signatures only (~40% smaller)
agentsmith --compress

# Minimal - ultra-compact (~3K tokens)
agentsmith --minimal

# XML format (industry standard, matches Repomix)
agentsmith --xml

# Include file tree visualization
agentsmith --tree

v1.1 の新機能

🎯 API スキーマ抽出

API ルートからZod バリデーションスキーマとTypeScript 型を検出するようになりました。

- `POST` `/api/contact`
  - **Request**: contactSchema {
      name: string (max: 100, min: 1, "Name is required")
      email: string (email: Invalid email address)
      subject: "sales" | "support" | "billing" | ...
    }

AI エージェントは、フィールド名を推測する代わりに API コントラクトを確認できるようになります。

🧠 認知的複雑度分析

コードベースの複雑度を分析し、AI モデルの適切な努力レベルを提案します。

**Complexity by Area:**
- 🔴 Database: Maximum effort (most capable model)
- 🟡 API Routes: Standard effort (balanced model)
- 🟢 Utilities: Minimal effort (fast, low-cost model)
🚀 パフォーマンスの向上
  • グローバルスキーマキャッシュ:O(n²) → O(n)(共有スキーマの場合)
  • 大規模なコードベースで20~40%高速化
🌐 GraphQL のサポート

.graphql ファイルと .gql ファイルから GraphQL スキーマ定義を抽出します。

🤖 AI プロバイダーに依存しない推奨

あらゆる AI プロバイダー(Claude、GPT、Gemini)で動作します。モデル名はハードコードされていません。

v1.0.0 の新機能

# Copy output to clipboard
agentsmith --copy

# Include uncommitted git changes
agentsmith --include-diffs

# Split large repos into chunks
agentsmith --split-output 100kb   # Creates AGENTS-001.md, AGENTS-002.md, etc.

# Include security audit (npm audit)
agentsmith --security

# Monorepo support - generate for each package
agentsmith --monorepo

# Start as MCP server for AI tool integration
agentsmith --mcp

すべてのオプション

フラグ説明
-o, --output <file>出力ファイルのパス(デフォルト:AGENTS.md)
--dry-runファイルに書き込まずにプレビュー
--force既存の AGENTS.md を上書き
--compact詳細を減らし、サイズを約 20%縮小
--compressシグネチャのみを出力し、サイズを約 40%縮小
--minimal超コンパクト(約 3K トークン)
--xmlXML 形式で出力
--treeファイルツリーを含める
--jsonAGENTS.index.json も生成
--copy出力をクリップボードにコピー
--include-diffs未コミットの Git 変更を含める
--include-git-log最近のコミットを含める
--split-output <size>チャンクに分割(例:100kb)
--securitynpm audit の結果を含める
--monorepo各ワークスペースパッケージ向けに生成
--mcpMCP サーバーとして起動
--remote <url>GitHub リポジトリを分析
--watchファイル変更時に自動再生成
--check-secrets出力前にシークレットをスキャン

サブコマンド:

コマンド説明
agentsmith feedback診断情報を自動収集して事前入力した GitHub の課題を開く

MCP サーバーモード

agentsmith は、AI ツールを統合するための MCP(Model Context Protocol)サーバーとして実行できます。

agentsmith --mcp

AI アシスタント向けの16 個のツール:

カテゴリツール
コアpack_codebase、read_agents
コンポーネントsearch_components、get_component_info
APIget_api_routes、get_route_details、search_routes
データベースget_database_models、get_model_details
GraphQLget_graphql_schemas
複雑度get_complexity_report、get_complex_files
フックget_hooks、get_hook_details
検索search_codebase、get_file_info

5 つの MCP リソース(キャッシュ付きライブサブスクリプション):

  • agents://agents-md - 自動生成された AGENTS.md
  • agents://api-schemas - すべての API ルートスキーマ
  • agents://database-schema - フィールドとリレーションを含むデータベースモデル
  • agents://graphql-schemas - GraphQL 型定義
  • agents://complexity-report - コードベースの複雑度分析

設定

プロジェクトのルートに agentsmith.config.json を作成します。

{
  "output": "AGENTS.md",
  "exclude": [
    "**/test/**",
    "**/stories/**",
    "**/fixtures/**"
  ]
}

スキャン対象

スキャナー検出内容
コンポーネントエクスポート、props、JSDoc、複雑度メトリクスを含む React コンポーネント
バリアントCVA のバリアントオプション(Button:default、destructive など)
依存関係コンポーネントのインポート(radix、デザインシステム、ユーティリティ)
バレル推奨されるインポートパスのための Index.ts の再エクスポート
トークンCSS 変数と Tailwind の設定
フッククライアント専用かどうかの検出を含むカスタムフック
API ルートメソッドと認証状態を含む Next.js ルート
API スキーマリクエスト/レスポンス用の Zod 検証スキーマと TypeScript 型
GraphQL.graphql/.gql ファイルの GraphQL スキーマ定義
データベースフィールドとリレーションを含む Prisma および Drizzle モデル
環境.env.example から取得した必須/任意の環境変数
パターンreact-hook-form、Zod、Zustand、tRPC、テストライブラリ
ユーティリティcn()、mode/デザインシステムの検出
フレームワークバージョンとルーターの種類を含む Next.js、Remix、Vite
複雑度AI モデルの推奨用の認知的複雑度分析
統計ファイル数、行数、サイズ、最大のファイル
既存ドキュメントCLAUDE.md、.ai/ フォルダー、.cursorrules
ファイルツリープロジェクト構造の可視化
インポートグラフハブファイル、循環依存、未使用コンポーネント
TypeScriptprops インターフェース、API 型、モデル型
テストテストフレームワークの検出、カバレッジのマッピング
セキュリティnpm audit の脆弱性、古いパッケージ

出力

生成される AGENTS.md には、以下が含まれます。

  • TL;DR - スタック、コンポーネント数、主要なインポート、影響の大きいファイル
  • はじめに - 自動生成されたセットアップ手順
  • プロジェクト概要 - フレームワーク、言語、スタイル、統計
  • 重要なルール - 誤った/正しいコード例付き
  • コンポーネント - カテゴリ別にまとめた全コンポーネント一覧
  • ハブファイル - 最も多くインポートされるファイル(変更の影響が広範囲に及びます)
  • 未使用コンポーネント - 未使用コードの可能性に関する警告
  • 推奨されるインポート - コードを整理するためのバレルインポート
  • カスタムフック - クライアント専用マーカー付き
  • API ルート - パス別にまとめたメソッド、認証、リクエスト/レスポンススキーマ
  • GraphQL スキーマ - .graphql/.gql ファイルの型定義
  • データベースモデル - フィールドとリレーション
  • 環境変数 - 必須と任意
  • コードパターン - 検出されたパターンと例
  • デザイントークン - 使用方法のガイダンス付きカラー�ークン
  • AI の推奨事項 - コードベースの複雑度に基づくモデルの作業量レベル
  • コマンド - npm スクリプト
  • セキュリティ - 脆弱性と古いパッケージ(--security 指定時)

出力例

# AGENTS.md

> Auto-generated by agentsmith

## TL;DR

- **Stack**: Next.js 16.0.10 + TypeScript 5 + Tailwind 4.0.9 + shadcn/ui
- **Components**: 279 total — USE EXISTING, don't create new
- **Key imports**: `cn()` from `@/lib/utils`, `mode` from `@/design-system`
- **High-impact files**: design-system/index, utils, button, card
- **Database**: prisma with 28 models
- **API**: 46 routes (31 protected)

## Getting Started

```bash
npm install

# Set up environment
cp .env.example .env.local

# Database setup
npm run db:push
npm run db:seed

# Start development
npm run dev

重要なルール

1. 既存のコンポーネントを使用する
// WRONG
<div className="rounded border p-4">...</div>

// RIGHT
<Card><CardContent>...</CardContent></Card>
2. デザイントークンを使用する
// WRONG
className="bg-blue-500 text-white"

// RIGHT
className="bg-primary text-primary-foreground"

## Why?

AI coding tools work better when they understand your codebase:

- ❌ AI generates `bg-blue-500` instead of your `bg-primary` token
- ❌ AI creates a new Button when you already have one with 9 variants
- ❌ AI ignores your patterns and conventions

With AGENTS.md:

- ✅ AI knows your components and uses them
- ✅ AI follows your design tokens
- ✅ AI matches your patterns

## Comparison

| Tool | Focus | Approach |
|------|-------|----------|
| **agentsmith** | AGENTS.md generation | Scans codebase, generates context |
| Repomix | Code packing | Packs files into single XML |
| Code2Prompt | Prompt building | Builds prompts from code |

agentsmith is specifically designed for the AGENTS.md standard with opinionated rules about component reuse and design tokens.

## Works great in

- Next.js + Tailwind + shadcn/ui projects
- React apps with component libraries
- Any TypeScript codebase with reusable components

## License

MIT

---

A [theft.studio](https://theft.studio) project

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。