Skip to main content
Glama
tetracoralla

context-surface-analyzer

by tetracoralla

Context Surface Analyzer

1つの明示的なAgentツールカタログスナップショットを測定し、2つのスナップショットを比較するための、ローカルで決定的なユーティリティです。

正規のUTF-8バイト列とSHA-256ダイジェスト、ツール/スキーマ数、完全一致する重複スキーマ、厳密な名前衝突、宣言済み予算のチェック、および差分を報告します。オプションのトークン数は外部で測定され、完全にラベル付けされたままです。本製品はバイト列からトークンを推測したり、ツールが有用かどうかを判断したりしません。

実行

Node.js 22 以降が必要で、サードパーティ製のランタイム依存関係はありません。

npm run check
node src/cli.js analyze examples/baseline.json
node src/cli.js diff examples/baseline.json examples/updated.json
npm start

Web画面は http://127.0.0.1:4173 で開きます。一時的なポートを選ぶには --port 0 を指定します。スナップショットは貼り付けるか、サイズ制限付きのローカルJSONファイルから読み込めます。ページを閉じた後、ブラウザがそのデータを保持することはありません。

Related MCP server: mcp-knowledge-server

スナップショットの取得元

各スナップショットは、現在のプロバイダー、ホスト、または承認されたエクスポーターから取得してください。本製品は、ホストの自動検出、任意のMCPサーバーの起動、ファイルのクロール、またはリポジトリのフィクスチャを現在インストール済みのカタログとして扱うことを意図的に行いません。分析の前に、エクスポートされたカタログをクローズドな context-surface.snapshot.v0.1 形式へ変換し、エクスポーター、プロバイダー、リビジョンを記録の正本として保持してください。

MCP

改行区切りのJSON-RPC stdio サーバーを起動します:

npm run mcp

読み取り専用のツールを2つ提供します。

  • context.analyze: 1つのスナップショットを1つの分析結果に;

  • context.diff: 以前のスナップショットと後のスナップショットを1つの比較に。

どちらのツールもスナップショットのJSONをサイズ制限付きの文字列として受け取るため、Agentルートには周辺のファイルシステムへの権限がありません。スナップショットの契約と正確な意味論は、[プロダクトモデル](docs/PRODUCT_MODEL.md)を参照してください。

このポータブルランタイムは、MCP 2025レガシー時代を意図的にリビジョン 2025-11-25 まで提供します。両世代対応のクライアントは server/discover のメソッド未検出(method-not-found)レスポンスから境界を識別し、initialize にフォールバックできます。2026年専用のモダントランスポートは、この依存を持たないプラグインでは対象外です。

ローカル Codex プラグイン

リポジトリローカルのプラグインをビルド・検証し、このリポジトリをローカルマーケットプレイスとして追加してから、プラグインをインストールします:

npm run check
codex plugin marketplace add <repository-root>
codex plugin add context-surface-analyzer@context-surface-analyzer

インストール後に新しいCodexタスクを開始してください。これにより、SkillツールとMCPツールが同じキャッシュ済みのプラグインバージョンから読み込まれます。

ステータス

これはローカルMVPです。開発チェック、直接のランタイムテスト、インストール済みCodexのルーティング、本番時の負荷挙動、公開リリースの準備状態、オーナーによる目視承認は、それぞれ独立した別の主張として扱われます。レビュー契約 と 最初の実カタログでのドッグフーディングメモ を参照してください。

ライセンス

Apache License 2.0です。 LICENSE と NOTICE を参照してください。

Related MCP Connectors

Related MCP Servers