@mycodemap/mycodemap 1.9.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +18 -0
- package/README.md +138 -928
- package/README.zh-CN.md +1096 -0
- package/dist/cli/commands/analyze-options.d.ts.map +1 -1
- package/dist/cli/commands/analyze-options.js +8 -0
- package/dist/cli/commands/analyze-options.js.map +1 -1
- package/dist/cli/commands/analyze.d.ts.map +1 -1
- package/dist/cli/commands/analyze.js +60 -41
- package/dist/cli/commands/analyze.js.map +1 -1
- package/dist/cli/commands/benchmark.d.ts +8 -0
- package/dist/cli/commands/benchmark.d.ts.map +1 -0
- package/dist/cli/commands/benchmark.js +150 -0
- package/dist/cli/commands/benchmark.js.map +1 -0
- package/dist/cli/commands/deps.d.ts +2 -1
- package/dist/cli/commands/deps.d.ts.map +1 -1
- package/dist/cli/commands/deps.js +107 -78
- package/dist/cli/commands/deps.js.map +1 -1
- package/dist/cli/commands/doctor.d.ts +3 -0
- package/dist/cli/commands/doctor.d.ts.map +1 -0
- package/dist/cli/commands/doctor.js +34 -0
- package/dist/cli/commands/doctor.js.map +1 -0
- package/dist/cli/commands/query.d.ts +1 -0
- package/dist/cli/commands/query.d.ts.map +1 -1
- package/dist/cli/commands/query.js +123 -140
- package/dist/cli/commands/query.js.map +1 -1
- package/dist/cli/doctor/check-agent.d.ts +3 -0
- package/dist/cli/doctor/check-agent.d.ts.map +1 -0
- package/dist/cli/doctor/check-agent.js +60 -0
- package/dist/cli/doctor/check-agent.js.map +1 -0
- package/dist/cli/doctor/check-ghost-commands.d.ts +3 -0
- package/dist/cli/doctor/check-ghost-commands.d.ts.map +1 -0
- package/dist/cli/doctor/check-ghost-commands.js +86 -0
- package/dist/cli/doctor/check-ghost-commands.js.map +1 -0
- package/dist/cli/doctor/check-native-deps.d.ts +3 -0
- package/dist/cli/doctor/check-native-deps.d.ts.map +1 -0
- package/dist/cli/doctor/check-native-deps.js +54 -0
- package/dist/cli/doctor/check-native-deps.js.map +1 -0
- package/dist/cli/doctor/check-workspace-drift.d.ts +3 -0
- package/dist/cli/doctor/check-workspace-drift.d.ts.map +1 -0
- package/dist/cli/doctor/check-workspace-drift.js +83 -0
- package/dist/cli/doctor/check-workspace-drift.js.map +1 -0
- package/dist/cli/doctor/formatter.d.ts +20 -0
- package/dist/cli/doctor/formatter.d.ts.map +1 -0
- package/dist/cli/doctor/formatter.js +91 -0
- package/dist/cli/doctor/formatter.js.map +1 -0
- package/dist/cli/doctor/index.d.ts +8 -0
- package/dist/cli/doctor/index.d.ts.map +1 -0
- package/dist/cli/doctor/index.js +9 -0
- package/dist/cli/doctor/index.js.map +1 -0
- package/dist/cli/doctor/orchestrator.d.ts +3 -0
- package/dist/cli/doctor/orchestrator.d.ts.map +1 -0
- package/dist/cli/doctor/orchestrator.js +37 -0
- package/dist/cli/doctor/orchestrator.js.map +1 -0
- package/dist/cli/doctor/types.d.ts +19 -0
- package/dist/cli/doctor/types.d.ts.map +1 -0
- package/dist/cli/doctor/types.js +4 -0
- package/dist/cli/doctor/types.js.map +1 -0
- package/dist/cli/index.js +72 -20
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/interface-contract/commands/analyze.d.ts +3 -0
- package/dist/cli/interface-contract/commands/analyze.d.ts.map +1 -0
- package/dist/cli/interface-contract/commands/analyze.js +138 -0
- package/dist/cli/interface-contract/commands/analyze.js.map +1 -0
- package/dist/cli/interface-contract/commands/benchmark.d.ts +3 -0
- package/dist/cli/interface-contract/commands/benchmark.d.ts.map +1 -0
- package/dist/cli/interface-contract/commands/benchmark.js +107 -0
- package/dist/cli/interface-contract/commands/benchmark.js.map +1 -0
- package/dist/cli/interface-contract/commands/deps.d.ts +3 -0
- package/dist/cli/interface-contract/commands/deps.d.ts.map +1 -0
- package/dist/cli/interface-contract/commands/deps.js +129 -0
- package/dist/cli/interface-contract/commands/deps.js.map +1 -0
- package/dist/cli/interface-contract/commands/doctor.d.ts +3 -0
- package/dist/cli/interface-contract/commands/doctor.d.ts.map +1 -0
- package/dist/cli/interface-contract/commands/doctor.js +59 -0
- package/dist/cli/interface-contract/commands/doctor.js.map +1 -0
- package/dist/cli/interface-contract/commands/index.d.ts +9 -0
- package/dist/cli/interface-contract/commands/index.d.ts.map +1 -0
- package/dist/cli/interface-contract/commands/index.js +18 -0
- package/dist/cli/interface-contract/commands/index.js.map +1 -0
- package/dist/cli/interface-contract/commands/init.d.ts +3 -0
- package/dist/cli/interface-contract/commands/init.d.ts.map +1 -0
- package/dist/cli/interface-contract/commands/init.js +87 -0
- package/dist/cli/interface-contract/commands/init.js.map +1 -0
- package/dist/cli/interface-contract/commands/query.d.ts +3 -0
- package/dist/cli/interface-contract/commands/query.d.ts.map +1 -0
- package/dist/cli/interface-contract/commands/query.js +185 -0
- package/dist/cli/interface-contract/commands/query.js.map +1 -0
- package/dist/cli/interface-contract/index.d.ts +22 -0
- package/dist/cli/interface-contract/index.d.ts.map +1 -0
- package/dist/cli/interface-contract/index.js +41 -0
- package/dist/cli/interface-contract/index.js.map +1 -0
- package/dist/cli/interface-contract/schema.d.ts +30 -0
- package/dist/cli/interface-contract/schema.d.ts.map +1 -0
- package/dist/cli/interface-contract/schema.js +72 -0
- package/dist/cli/interface-contract/schema.js.map +1 -0
- package/dist/cli/interface-contract/types.d.ts +76 -0
- package/dist/cli/interface-contract/types.d.ts.map +1 -0
- package/dist/cli/interface-contract/types.js +4 -0
- package/dist/cli/interface-contract/types.js.map +1 -0
- package/dist/cli/output/apply-suggestion.d.ts +12 -0
- package/dist/cli/output/apply-suggestion.d.ts.map +1 -0
- package/dist/cli/output/apply-suggestion.js +29 -0
- package/dist/cli/output/apply-suggestion.js.map +1 -0
- package/dist/cli/output/error-codes.d.ts +22 -0
- package/dist/cli/output/error-codes.d.ts.map +1 -0
- package/dist/cli/output/error-codes.js +82 -0
- package/dist/cli/output/error-codes.js.map +1 -0
- package/dist/cli/output/errors.d.ts +14 -0
- package/dist/cli/output/errors.d.ts.map +1 -0
- package/dist/cli/output/errors.js +170 -0
- package/dist/cli/output/errors.js.map +1 -0
- package/dist/cli/output/index.d.ts +13 -0
- package/dist/cli/output/index.d.ts.map +1 -0
- package/dist/cli/output/index.js +11 -0
- package/dist/cli/output/index.js.map +1 -0
- package/dist/cli/output/mode.d.ts +12 -0
- package/dist/cli/output/mode.d.ts.map +1 -0
- package/dist/cli/output/mode.js +23 -0
- package/dist/cli/output/mode.js.map +1 -0
- package/dist/cli/output/progress.d.ts +9 -0
- package/dist/cli/output/progress.d.ts.map +1 -0
- package/dist/cli/output/progress.js +65 -0
- package/dist/cli/output/progress.js.map +1 -0
- package/dist/cli/output/render.d.ts +11 -0
- package/dist/cli/output/render.d.ts.map +1 -0
- package/dist/cli/output/render.js +18 -0
- package/dist/cli/output/render.js.map +1 -0
- package/dist/cli/output/types.d.ts +53 -0
- package/dist/cli/output/types.d.ts.map +1 -0
- package/dist/cli/output/types.js +14 -0
- package/dist/cli/output/types.js.map +1 -0
- package/dist/cli/output/wasm-fallback.d.ts +13 -0
- package/dist/cli/output/wasm-fallback.d.ts.map +1 -0
- package/dist/cli/output/wasm-fallback.js +92 -0
- package/dist/cli/output/wasm-fallback.js.map +1 -0
- package/dist/cli/tree-sitter-check.d.ts +6 -1
- package/dist/cli/tree-sitter-check.d.ts.map +1 -1
- package/dist/cli/tree-sitter-check.js +23 -1
- package/dist/cli/tree-sitter-check.js.map +1 -1
- package/dist/infrastructure/storage/adapters/SQLiteStorage.d.ts.map +1 -1
- package/dist/infrastructure/storage/adapters/SQLiteStorage.js +2 -2
- package/dist/infrastructure/storage/adapters/SQLiteStorage.js.map +1 -1
- package/dist/infrastructure/storage/adapters/sqlite-loader.d.ts +23 -0
- package/dist/infrastructure/storage/adapters/sqlite-loader.d.ts.map +1 -0
- package/dist/infrastructure/storage/adapters/sqlite-loader.js +210 -0
- package/dist/infrastructure/storage/adapters/sqlite-loader.js.map +1 -0
- package/dist/orchestrator/types.d.ts +2 -0
- package/dist/orchestrator/types.d.ts.map +1 -1
- package/dist/orchestrator/types.js.map +1 -1
- package/dist/parser/implementations/tree-sitter-loader.d.ts +16 -0
- package/dist/parser/implementations/tree-sitter-loader.d.ts.map +1 -0
- package/dist/parser/implementations/tree-sitter-loader.js +105 -0
- package/dist/parser/implementations/tree-sitter-loader.js.map +1 -0
- package/dist/parser/implementations/tree-sitter-parser.d.ts +3 -0
- package/dist/parser/implementations/tree-sitter-parser.d.ts.map +1 -1
- package/dist/parser/implementations/tree-sitter-parser.js +8 -3
- package/dist/parser/implementations/tree-sitter-parser.js.map +1 -1
- package/dist/server/mcp/schema-adapter.d.ts +45 -0
- package/dist/server/mcp/schema-adapter.d.ts.map +1 -0
- package/dist/server/mcp/schema-adapter.js +290 -0
- package/dist/server/mcp/schema-adapter.js.map +1 -0
- package/dist/server/mcp/server.d.ts.map +1 -1
- package/dist/server/mcp/server.js +32 -2
- package/dist/server/mcp/server.js.map +1 -1
- package/docs/AI_ASSISTANT_SETUP.md +169 -12
- package/docs/README.md +40 -1
- package/docs/SETUP_GUIDE.md +11 -14
- package/docs/ai-guide/COMMANDS.md +68 -10
- package/docs/ai-guide/INTEGRATION.md +77 -10
- package/docs/ai-guide/OUTPUT.md +295 -2
- package/docs/ai-guide/PROMPTS.md +2 -2
- package/docs/ai-guide/QUICKSTART.md +28 -1
- package/docs/ai-guide/README.md +2 -2
- package/docs/archive/ideation/2026-04-15-executable-architecture-constitution-ideation-archive.md +70 -0
- package/docs/archive/ideation/2026-04-20-mycodemap-init-enhancements-ideation-archive.md +109 -0
- package/docs/archive/ideation/2026-04-22-rules-entry-docs-optimization-consolidated-ideation-archive.md +54 -0
- package/docs/ideation/2026-04-15-executable-architecture-constitution-ideation.md +10 -22
- package/docs/ideation/2026-04-20-mycodemap-init-enhancements-ideation.md +15 -60
- package/docs/ideation/2026-04-22-rules-entry-docs-optimization-consolidated-ideation.md +47 -52
- package/docs/ideation/2026-04-29-ux-install-agent-experience-ideation.md +256 -0
- package/docs/plans/2026-04-30-install-guide-and-repo-analyzer-design.md +394 -0
- package/docs/rules/README.md +1 -0
- package/docs/rules/architecture-guardrails.md +2 -1
- package/docs/rules/engineering-with-codex-openai.md +1 -1
- package/docs/rules/harness.md +106 -0
- package/docs/rules/pre-release-checklist.md +28 -0
- package/docs/rules/testing.md +51 -0
- package/examples/claude/skills/mycodemap-repo-analyzer/SKILL.md +294 -0
- package/examples/claude/skills/mycodemap-repo-analyzer/references/analysis-guide.md +166 -0
- package/examples/claude/skills/mycodemap-repo-analyzer/references/module-analysis-guide.md +150 -0
- package/package.json +7 -4
- package/scripts/sync-analyze-docs.js +2 -2
- package/scripts/validate-docs.js +113 -16
- package/docs/references/tmp.md +0 -527
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/server/mcp/server.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,oGAAoG;AAEpG,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/server/mcp/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,10 @@ MyCodeMap 可以与多种 AI 编程助手集成,让 AI 能够:
|
|
|
24
24
|
- 📊 **依赖分析** - 理解项目结构和模块关系
|
|
25
25
|
- ⚡ **影响评估** - 分析代码变更的影响范围
|
|
26
26
|
- 🛡️ **质量门禁** - 自动执行 CI 检查
|
|
27
|
+
- 🩺 **持续健康诊断** (`doctor`) - 安装 / 配置 / 运行时 / Agent 四类健康检查
|
|
28
|
+
- 🧬 **WASM 回退** - 当 Native 依赖不可用时自动切换 WASM 实现
|
|
29
|
+
- 📜 **接口契约自省** (`--schema`) - 输出完整 CLI 契约 JSON,供 Agent 动态发现能力
|
|
30
|
+
- 🔌 **MCP 自动网关** - 所有 Schema 定义的 CLI 命令自动暴露为 MCP tools,动态注册
|
|
27
31
|
|
|
28
32
|
### 快速选择
|
|
29
33
|
|
|
@@ -138,23 +142,20 @@ $CODEMAP_CMD complexity -f "<file-path>"
|
|
|
138
142
|
|
|
139
143
|
### 统一分析入口(analyze)
|
|
140
144
|
```bash
|
|
141
|
-
#
|
|
142
|
-
$CODEMAP_CMD analyze -i
|
|
145
|
+
# 符号查找
|
|
146
|
+
$CODEMAP_CMD analyze -i find -s "<symbol-name>"
|
|
143
147
|
|
|
144
|
-
#
|
|
145
|
-
$CODEMAP_CMD analyze -i
|
|
146
|
-
|
|
147
|
-
# 复杂度分析
|
|
148
|
-
$CODEMAP_CMD analyze -i complexity -t "<path>"
|
|
148
|
+
# 代码读取(含上下文)
|
|
149
|
+
$CODEMAP_CMD analyze -i read -t "<file-path>" --scope transitive
|
|
149
150
|
|
|
150
|
-
#
|
|
151
|
-
$CODEMAP_CMD analyze -i
|
|
151
|
+
# 依赖链接分析
|
|
152
|
+
$CODEMAP_CMD analyze -i link -t "<module-path>"
|
|
152
153
|
|
|
153
|
-
#
|
|
154
|
-
$CODEMAP_CMD analyze -i
|
|
154
|
+
# 项目概览展示
|
|
155
|
+
$CODEMAP_CMD analyze -i show -t "<path>"
|
|
155
156
|
|
|
156
157
|
# JSON 输出
|
|
157
|
-
$CODEMAP_CMD analyze -i
|
|
158
|
+
$CODEMAP_CMD analyze -i find -s "<symbol>" --json
|
|
158
159
|
```
|
|
159
160
|
|
|
160
161
|
### CI 门禁(ci)
|
|
@@ -808,6 +809,162 @@ npm install --save-dev @mycodemap/mycodemap
|
|
|
808
809
|
|
|
809
810
|
---
|
|
810
811
|
|
|
812
|
+
## AI CLI 一键安装引导
|
|
813
|
+
|
|
814
|
+
> 本章节面向 AI CLI 工具(Claude Code、Codex CLI 等),提供结构化安装引导。
|
|
815
|
+
> 当用户说"帮我安装 mycodemap"时,AI CLI 应按照以下步骤引导。
|
|
816
|
+
|
|
817
|
+
### Step 1: 前置条件检查 [CONFIRM]
|
|
818
|
+
|
|
819
|
+
在开始安装前,确认以下条件:
|
|
820
|
+
|
|
821
|
+
- Node.js >= 18 是否已安装(`node --version`)
|
|
822
|
+
- 当前项目是否有 package.json(`ls package.json`)
|
|
823
|
+
- 向用户确认:是项目级别安装还是全局安装
|
|
824
|
+
|
|
825
|
+
### Step 2: 安装依赖 [CONFIRM]
|
|
826
|
+
|
|
827
|
+
```bash
|
|
828
|
+
# 项目级别安装(推荐)
|
|
829
|
+
npm install @mycodemap/mycodemap
|
|
830
|
+
|
|
831
|
+
# 或全局安装
|
|
832
|
+
npm install -g @mycodemap/mycodemap
|
|
833
|
+
```
|
|
834
|
+
|
|
835
|
+
### Step 3: 初始化 [CONFIRM]
|
|
836
|
+
|
|
837
|
+
```bash
|
|
838
|
+
# 先预览配置(不写入文件)
|
|
839
|
+
mycodemap init
|
|
840
|
+
|
|
841
|
+
# 确认后写入
|
|
842
|
+
mycodemap init -y
|
|
843
|
+
```
|
|
844
|
+
|
|
845
|
+
### Step 4: 生成代码地图
|
|
846
|
+
|
|
847
|
+
```bash
|
|
848
|
+
mycodemap generate
|
|
849
|
+
```
|
|
850
|
+
|
|
851
|
+
安装完成后会生成:
|
|
852
|
+
- `.mycodemap/AI_MAP.md` — 项目全局概览
|
|
853
|
+
- `.mycodemap/codemap.json` — 结构化数据
|
|
854
|
+
- `.mycodemap/CONTEXT.md` — 上下文入口
|
|
855
|
+
|
|
856
|
+
### Step 5: 环境健康诊断 [CONFIRM]
|
|
857
|
+
|
|
858
|
+
运行 `codemap doctor` 验证环境健康状态:
|
|
859
|
+
|
|
860
|
+
```bash
|
|
861
|
+
# 运行全部诊断(安装 / 配置 / 运行时 / Agent)
|
|
862
|
+
codemap doctor
|
|
863
|
+
|
|
864
|
+
# 或按类别诊断
|
|
865
|
+
codemap doctor --category install
|
|
866
|
+
codemap doctor --category config
|
|
867
|
+
codemap doctor --category runtime
|
|
868
|
+
codemap doctor --category agent
|
|
869
|
+
```
|
|
870
|
+
|
|
871
|
+
诊断输出为结构化 JSON,包含 `rootCause` + `remediationPlan` + `confidence` + `nextCommand`。修复所有 HIGH 级别问题后再继续。
|
|
872
|
+
|
|
873
|
+
### Step 6: 查看接口契约 [CONFIRM]
|
|
874
|
+
|
|
875
|
+
运行 `codemap --schema` 查看完整 CLI 接口契约,供 Agent 自省:
|
|
876
|
+
|
|
877
|
+
```bash
|
|
878
|
+
# 输出完整契约 JSON
|
|
879
|
+
codemap --schema
|
|
880
|
+
|
|
881
|
+
# 或保存到文件供 skill 引用
|
|
882
|
+
codemap --schema > .mycodemap/interface-contract.json
|
|
883
|
+
```
|
|
884
|
+
|
|
885
|
+
契约包含所有命令、参数、输出格式的结构化定义,是 MCP Gateway 动态暴露 tools 的单一数据源。
|
|
886
|
+
|
|
887
|
+
### Step 7: 配置 AI 助手 skill [CONFIRM]
|
|
888
|
+
|
|
889
|
+
根据使用的 AI 助手,拷贝对应的 skill 文件:
|
|
890
|
+
|
|
891
|
+
**Claude Code:**
|
|
892
|
+
```bash
|
|
893
|
+
mkdir -p .claude/skills/codemap
|
|
894
|
+
cp node_modules/@mycodemap/mycodemap/examples/claude/codemap-skill.md .claude/skills/codemap/SKILL.md
|
|
895
|
+
|
|
896
|
+
# 可选:安装架构分析技能(Phase 48 已交付)
|
|
897
|
+
mkdir -p .claude/skills/mycodemap-repo-analyzer
|
|
898
|
+
cp node_modules/@mycodemap/mycodemap/examples/claude/skills/mycodemap-repo-analyzer/SKILL.md .claude/skills/mycodemap-repo-analyzer/SKILL.md
|
|
899
|
+
cp -r node_modules/@mycodemap/mycodemap/examples/claude/skills/mycodemap-repo-analyzer/references .claude/skills/mycodemap-repo-analyzer/
|
|
900
|
+
```
|
|
901
|
+
|
|
902
|
+
**Codex CLI:**
|
|
903
|
+
```bash
|
|
904
|
+
mkdir -p .agents/skills/codemap
|
|
905
|
+
cp node_modules/@mycodemap/mycodemap/examples/codex/codemap-agent.md .agents/skills/codemap/SKILL.md
|
|
906
|
+
```
|
|
907
|
+
|
|
908
|
+
### Step 8: 更新项目 rules [CONFIRM]
|
|
909
|
+
|
|
910
|
+
在项目的 `CLAUDE.md` 和 `AGENTS.md` 中追加以下内容:
|
|
911
|
+
|
|
912
|
+
```markdown
|
|
913
|
+
## CodeMap Skill
|
|
914
|
+
|
|
915
|
+
### 何时使用
|
|
916
|
+
- 需要理解项目整体结构或模块关系
|
|
917
|
+
- 分析代码变更的影响范围
|
|
918
|
+
- 查询符号定义、调用关系、依赖链
|
|
919
|
+
- 评估代码复杂度或检测循环依赖
|
|
920
|
+
|
|
921
|
+
### 何时不用
|
|
922
|
+
- 简单的单文件修改或调试
|
|
923
|
+
- 非代码文件操作(文档、配置等)
|
|
924
|
+
- 已有明确上下文的局部改动
|
|
925
|
+
|
|
926
|
+
### 如何使用
|
|
927
|
+
- 参考 .claude/skills/codemap/ 中的 skill 指令
|
|
928
|
+
- 使用 mycodemap CLI 命令(generate/query/impact/deps/cycles/complexity)
|
|
929
|
+
|
|
930
|
+
### 索引维护
|
|
931
|
+
- 代码变更后需运行 `mycodemap generate` 更新索引
|
|
932
|
+
- 在重大功能开发/重构完成后,主动更新一次
|
|
933
|
+
- 如发现 mycodemap 查询结果与代码不一致,先更新索引再使用
|
|
934
|
+
```
|
|
935
|
+
|
|
936
|
+
### Step 9: 验证安装
|
|
937
|
+
|
|
938
|
+
```bash
|
|
939
|
+
# 验证 CLI 可用
|
|
940
|
+
mycodemap query --help
|
|
941
|
+
|
|
942
|
+
# 验证 doctor 可用
|
|
943
|
+
codemap doctor --help
|
|
944
|
+
|
|
945
|
+
# 验证 schema 输出
|
|
946
|
+
codemap --schema | head -20
|
|
947
|
+
|
|
948
|
+
# 验证 skill 文件已就位
|
|
949
|
+
ls .claude/skills/codemap/SKILL.md
|
|
950
|
+
```
|
|
951
|
+
|
|
952
|
+
### 可选:MCP 服务器配置
|
|
953
|
+
|
|
954
|
+
CodeMap v2.0 采用 **CLI-as-MCP 自动网关**:所有 Schema 定义的 CLI 命令自动暴露为 MCP tools,无需手动维护 tool 列表。
|
|
955
|
+
|
|
956
|
+
```bash
|
|
957
|
+
# 安装 MCP 适配器(一次性)
|
|
958
|
+
codemap mcp install
|
|
959
|
+
|
|
960
|
+
# 验证动态 tool 注册(应列出 20+ 个 tools)
|
|
961
|
+
codemap mcp list-tools
|
|
962
|
+
```
|
|
963
|
+
|
|
964
|
+
配置完成后,AI 助手可通过 MCP 调用任意 `codemap` 命令(如 `doctor`、`benchmark`、`analyze`、`query` 等),Gateway 会根据 Interface Contract Schema 动态生成 tool 定义。无需再使用实验性的 2-tool 限制模式。
|
|
965
|
+
|
|
966
|
+
---
|
|
967
|
+
|
|
811
968
|
## 参考
|
|
812
969
|
|
|
813
970
|
- [SETUP_GUIDE.md](./SETUP_GUIDE.md) - 人类用户安装指南
|
package/docs/README.md
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# docs/ - 文档信息架构
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
> **v2.0 里程碑上下文**:当前文档体系对应 CodeMap v2.0(”agent-native-foundation”)。v2.0 引入了 CLI-as-MCP 自动网关、接口契约 Schema、WASM-first 构建基础等核心能力。详见下方 [v2.0 文档索引](#v20-文档索引)。
|
|
4
|
+
|
|
5
|
+
本目录采用”入口文档短、细节文档分层”的结构。
|
|
4
6
|
|
|
5
7
|
## 目录职责
|
|
6
8
|
|
|
@@ -11,6 +13,8 @@
|
|
|
11
13
|
- `docs/product-specs/`:当前仍有效的产品规格与验收边界。
|
|
12
14
|
- `docs/references/`:外部参考、设计系统、工具链资料。
|
|
13
15
|
- `docs/archive/`:历史方案、迁移遗留、过期文档索引。
|
|
16
|
+
- `docs/ai-guide/`:AI / Agent 集成指南(v2.0 新增)。
|
|
17
|
+
- `src/cli/interface-contract/`:接口契约 Schema 定义(单一 Schema 生成 parser、MCP tool 定义、`--help-json`、shell 补全)。
|
|
14
18
|
|
|
15
19
|
## 当前状态
|
|
16
20
|
|
|
@@ -19,6 +23,20 @@
|
|
|
19
23
|
- `docs/design-docs/` 与 `docs/product-specs/` 当前不再保留旧稿;历史内容请从 `docs/archive/README.md` 进入。
|
|
20
24
|
- 新增内容优先写入分层目录,不再把新设计或新计划继续堆到根层。
|
|
21
25
|
|
|
26
|
+
### v2.0 功能状态
|
|
27
|
+
|
|
28
|
+
v2.0("agent-native-foundation")已引入以下核心能力,相关文档已就位:
|
|
29
|
+
|
|
30
|
+
| 功能 | 状态 | 文档位置 |
|
|
31
|
+
|------|------|----------|
|
|
32
|
+
| **CLI-as-MCP 自动网关** | 已交付 | `docs/ai-guide/INTEGRATION.md` |
|
|
33
|
+
| `codemap doctor` 持续健康诊断 | 已交付 | `AI_GUIDE.md` + `src/cli/doctor/` |
|
|
34
|
+
| `codemap benchmark` WASM/Native 性能对比 | 已交付 | `AI_GUIDE.md` |
|
|
35
|
+
| `--schema` 接口契约输出 | 已交付 | `AI_GUIDE.md` + `src/cli/interface-contract/` |
|
|
36
|
+
| WASM-first 构建基础 | 已交付 | `AI_GUIDE.md` + `src/cli/loaders/` |
|
|
37
|
+
| AI-First 默认输出(JSON/NDJSON) | 已交付 | `AI_GUIDE.md` |
|
|
38
|
+
| Failure-to-Action 协议 | 已交付 | `docs/rules/harness.md` |
|
|
39
|
+
|
|
22
40
|
## 建议阅读顺序
|
|
23
41
|
|
|
24
42
|
1. `../AGENTS.md`
|
|
@@ -28,6 +46,27 @@
|
|
|
28
46
|
5. 与任务最相关的现行文档;如需历史背景,再看 `docs/archive/README.md`
|
|
29
47
|
6. 如需过程信息,再看 `docs/exec-plans/*`
|
|
30
48
|
|
|
49
|
+
## v2.0 文档索引
|
|
50
|
+
|
|
51
|
+
以下文档涵盖 v2.0 核心功能,按主题分类:
|
|
52
|
+
|
|
53
|
+
### AI / Agent 集成
|
|
54
|
+
- `docs/ai-guide/INTEGRATION.md` — CLI-as-MCP 自动网关配置指南(动态 tool 注册、20+ 命令自动暴露)
|
|
55
|
+
- `docs/ai-guide/AI_ASSISTANT_SETUP.md` — AI 助手(Kimi、Claude、Codex、Cursor、Copilot)集成配置
|
|
56
|
+
- `AI_GUIDE.md` — CodeMap CLI / MCP / AI 使用总览(含 `doctor`、`benchmark`、`--schema` 用法)
|
|
57
|
+
|
|
58
|
+
### 接口契约与 Schema
|
|
59
|
+
- `src/cli/interface-contract/` — 单一 Schema 源文件(生成 parser、MCP tool 定义、`--help-json`、shell 补全)
|
|
60
|
+
- 运行 `codemap --schema` 可输出完整契约 JSON,供 Agent 自省
|
|
61
|
+
|
|
62
|
+
### Harness 与 Agent 控制
|
|
63
|
+
- `docs/rules/harness.md` — Harness 设计、Agent 控制、上下文分层、权限升级策略
|
|
64
|
+
- `docs/rules/harness.md` — Failure-to-Action 协议(每个错误返回 `rootCause` + `remediationPlan` + `confidence` + `nextCommand`)
|
|
65
|
+
|
|
66
|
+
### 架构与构建
|
|
67
|
+
- `ARCHITECTURE.md` — 架构分层、依赖方向、模块边界
|
|
68
|
+
- `src/cli/loaders/` — WASM-first 构建基础(`tree-sitter` → `web-tree-sitter`;`better-sqlite3` → `node:sqlite` / `sql.js`)
|
|
69
|
+
|
|
31
70
|
## 维护规则
|
|
32
71
|
|
|
33
72
|
- 入口文档只做导航,不复述大段细节。
|
package/docs/SETUP_GUIDE.md
CHANGED
|
@@ -210,24 +210,21 @@ mycodemap impact -f src/cli/index.ts --transitive
|
|
|
210
210
|
### 统一分析(analyze)
|
|
211
211
|
|
|
212
212
|
```bash
|
|
213
|
-
#
|
|
214
|
-
mycodemap analyze -i
|
|
215
|
-
mycodemap analyze -i impact -t src/cli/index.ts --scope transitive --include-tests
|
|
213
|
+
# 搜索符号或文件
|
|
214
|
+
mycodemap analyze -i find -k "UnifiedResult" --topK 10
|
|
216
215
|
|
|
217
|
-
#
|
|
218
|
-
mycodemap analyze -i
|
|
216
|
+
# 读取代码范围
|
|
217
|
+
mycodemap analyze -i read -t src/cli/index.ts
|
|
218
|
+
mycodemap analyze -i read -t src/cli/index.ts --scope transitive --include-tests
|
|
219
219
|
|
|
220
|
-
#
|
|
221
|
-
mycodemap analyze -i
|
|
220
|
+
# 查看模块依赖关系
|
|
221
|
+
mycodemap analyze -i link -t src/orchestrator
|
|
222
222
|
|
|
223
|
-
#
|
|
224
|
-
mycodemap analyze -i
|
|
223
|
+
# 展示项目概览或复杂度
|
|
224
|
+
mycodemap analyze -i show -t src/
|
|
225
225
|
|
|
226
|
-
#
|
|
227
|
-
mycodemap analyze -i
|
|
228
|
-
|
|
229
|
-
# JSON 输出
|
|
230
|
-
mycodemap analyze -i impact -t src/index.ts --json
|
|
226
|
+
# JSON 结构化输出
|
|
227
|
+
mycodemap analyze -i find -k "UnifiedResult" --json --structured
|
|
231
228
|
```
|
|
232
229
|
|
|
233
230
|
### 工作流编排(workflow)
|
|
@@ -2,8 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
> 完整的 CLI 命令详解
|
|
4
4
|
>
|
|
5
|
-
> CodeMap 是 AI-
|
|
6
|
-
>
|
|
5
|
+
> CodeMap 是 AI-Native 优先、人类友好的代码架构治理基础设施。以下文档记录当前公开命令,并补充已移除命令的迁移提示。
|
|
6
|
+
> 命名规范:公开命令示例统一使用 `mycodemap`;`codemap` 只作为兼容别名保留,不作为新示例首选。
|
|
7
|
+
> v2.0 AI-First Default Output:默认输出 JSON/NDJSON(非 TTY 或显式 `--json`),人类阅读使用 `--human` 或 TTY 自动检测。
|
|
7
8
|
|
|
8
9
|
---
|
|
9
10
|
|
|
@@ -124,7 +125,9 @@ mycodemap impact -f "src/cli/index.ts" -j # JSON 输出
|
|
|
124
125
|
|
|
125
126
|
---
|
|
126
127
|
|
|
127
|
-
### mcp -
|
|
128
|
+
### mcp - MCP 集成 (CLI-as-MCP Automatic Gateway)
|
|
129
|
+
|
|
130
|
+
> v2.0 升级为 CLI-as-MCP Automatic Gateway。所有 20+ schema 定义的 CLI 命令自动暴露为 MCP tools;动态 tool 注册。
|
|
128
131
|
|
|
129
132
|
```bash
|
|
130
133
|
mycodemap mcp install # 把当前仓库写入 .mcp.json
|
|
@@ -134,14 +137,14 @@ mycodemap generate --symbol-level # 使用前必须先生成 symbol-leve
|
|
|
134
137
|
|
|
135
138
|
| 子命令 | 说明 |
|
|
136
139
|
|--------|------|
|
|
137
|
-
| `install` | 更新当前仓库根目录 `.mcp.json`,追加 `mycodemap
|
|
138
|
-
| `start` | 启动 local-only / read-only / stdio-first
|
|
140
|
+
| `install` | 更新当前仓库根目录 `.mcp.json`,追加 `mycodemap` server entry |
|
|
141
|
+
| `start` | 启动 local-only / read-only / stdio-first MCP server |
|
|
139
142
|
|
|
140
|
-
|
|
141
|
-
-
|
|
143
|
+
**v2.0 行为**:
|
|
144
|
+
- CLI-as-MCP Automatic Gateway:所有 schema 定义的命令(`generate`、`query`、`deps`、`impact`、`analyze`、`doctor`、`benchmark`、`design`、`check`、`ci`、`history`、`workflow` 等)自动映射为 MCP tools。
|
|
145
|
+
- 动态 tool 注册:新增命令无需手动更新 MCP server,schema 变更后自动生效。
|
|
142
146
|
- `mcp start` 的 `stdout` 只能承载 MCP 协议帧;欢迎信息、迁移提示与 runtime log 不会走这条流。
|
|
143
|
-
-
|
|
144
|
-
- `codemap_query` / `codemap_impact` 都会返回 `graph_status`、`generated_at` 与显式 `error.code`。
|
|
147
|
+
- 所有 MCP tools 返回 `graph_status`、`generated_at` 与显式 `error.code`。
|
|
145
148
|
- 若图尚未生成,会返回 `GRAPH_NOT_FOUND`;若符号不存在,返回 `SYMBOL_NOT_FOUND`;若同名符号无法消歧,返回 `AMBIGUOUS_EDGE`。
|
|
146
149
|
- 详细安装步骤见 `docs/ai-guide/INTEGRATION.md`;完整 output contract 见 `docs/ai-guide/OUTPUT.md`。
|
|
147
150
|
|
|
@@ -248,6 +251,7 @@ mycodemap analyze -i show -t "src/index.ts" --output-mode human
|
|
|
248
251
|
| `--include-tests` | 包含测试文件关联 | - |
|
|
249
252
|
| `--include-git-history` | 包含 Git 历史分析 | - |
|
|
250
253
|
| `--json` | JSON 格式输出 | - |
|
|
254
|
+
| `--human` | 强制人类可读输出(覆盖非 TTY 默认 JSON 行为) | - |
|
|
251
255
|
| `--structured` | 纯结构化输出(移除自然语言字段,配合 `--json` 使用) | - |
|
|
252
256
|
| `--output-mode <mode>` | 输出模式:`machine`/`human` | `human` |
|
|
253
257
|
<!-- END GENERATED: analyze-commands-options -->
|
|
@@ -515,6 +519,60 @@ mycodemap workflow template recommend "任务" # 推荐模板
|
|
|
515
519
|
|
|
516
520
|
---
|
|
517
521
|
|
|
522
|
+
## doctor - 持续健康诊断
|
|
523
|
+
|
|
524
|
+
> v2.0 新增。检测 ghost 命令、native 依赖问题、workspace drift、agent 连通性。
|
|
525
|
+
|
|
526
|
+
```bash
|
|
527
|
+
mycodemap doctor # 人类可读摘要
|
|
528
|
+
mycodemap doctor --json # 机器可读完整诊断
|
|
529
|
+
```
|
|
530
|
+
|
|
531
|
+
| 类别 | 检查项 | 说明 |
|
|
532
|
+
|------|--------|------|
|
|
533
|
+
| `install` | native 依赖完整性 | 检查 `better-sqlite3` 等 native 模块是否可加载 |
|
|
534
|
+
| `config` | workspace 完整性 | 检查 `.mycodemap/config.json`、图存储后端配置 |
|
|
535
|
+
| `runtime` | ghost 命令检测 | 检测已注册但无实际实现的命令 |
|
|
536
|
+
| `agent` | MCP 连通性 | 检查 MCP server 注册与工具发现是否正常 |
|
|
537
|
+
|
|
538
|
+
- 每个类别独立返回 `ok` / `warn` / `error` 状态
|
|
539
|
+
- `--json` 输出纯结构化 diagnostics,包含 `categories[]`、`summary`、`recommendations`
|
|
540
|
+
- `error` 级别诊断会设置非零 exit code
|
|
541
|
+
|
|
542
|
+
---
|
|
543
|
+
|
|
544
|
+
## benchmark - WASM vs Native 性能对比
|
|
545
|
+
|
|
546
|
+
> v2.0 新增。对比 WASM fallback 与 Native 实现的性能差异。
|
|
547
|
+
|
|
548
|
+
```bash
|
|
549
|
+
mycodemap benchmark # 完整对比(WASM + Native)
|
|
550
|
+
mycodemap benchmark --wasm # 仅 WASM 性能
|
|
551
|
+
mycodemap benchmark --native # 仅 Native 性能
|
|
552
|
+
mycodemap benchmark --json # JSON 输出
|
|
553
|
+
```
|
|
554
|
+
|
|
555
|
+
- 输出包含各分析阶段的耗时对比(generate、query、deps、impact 等)
|
|
556
|
+
- `--json` 输出结构化 benchmark 结果,便于 CI 集成与回归检测
|
|
557
|
+
- 用于决定是否启用 WASM fallback 或排查性能退化
|
|
558
|
+
|
|
559
|
+
---
|
|
560
|
+
|
|
561
|
+
## --schema - 接口契约输出
|
|
562
|
+
|
|
563
|
+
> v2.0 新增。输出完整的 Interface Contract Schema JSON,供 agent 自省与动态 tool 注册。
|
|
564
|
+
|
|
565
|
+
```bash
|
|
566
|
+
mycodemap --schema # 输出完整 schema JSON
|
|
567
|
+
mycodemap --schema | jq '.' # 格式化查看
|
|
568
|
+
```
|
|
569
|
+
|
|
570
|
+
- 单一 schema 同时生成:parser、MCP tools、`--help-json`、shell completions
|
|
571
|
+
- Agent 可通过读取 schema 动态发现所有可用命令及其参数契约
|
|
572
|
+
- 输出包含所有 20+ 命令的完整接口定义(参数、类型、返回值结构)
|
|
573
|
+
|
|
574
|
+
---
|
|
575
|
+
|
|
518
576
|
## 已移除的公共命令
|
|
519
577
|
|
|
520
578
|
以下命令已从 public CLI 移除;直接调用时,CLI 会显式失败并给出迁移提示,而不是继续执行旧功能。
|
|
@@ -544,7 +602,7 @@ mycodemap export json -o ./output.json # 指定输出
|
|
|
544
602
|
|
|
545
603
|
### ship - 一键智能发布(非代码地图首屏能力)
|
|
546
604
|
|
|
547
|
-
> `ship` 负责发布整合,不是
|
|
605
|
+
> `ship` 负责发布整合,不是 CodeMap 代码分析的首屏入口;首次接触项目时优先使用分析命令而非发布命令。
|
|
548
606
|
|
|
549
607
|
```bash
|
|
550
608
|
mycodemap ship # 完整发布流程
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# AI Guide - MCP / Agent 集成
|
|
2
2
|
|
|
3
|
-
>
|
|
3
|
+
> v2.0 更新:CLI-as-MCP Automatic Gateway。所有 schema 定义的 CLI 命令自动暴露为 MCP tools。
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
@@ -11,11 +11,16 @@
|
|
|
11
11
|
| transport | 本地 `stdio` |
|
|
12
12
|
| 读写权限 | **只读** |
|
|
13
13
|
| public surface | `mycodemap mcp install`、`mycodemap mcp start` |
|
|
14
|
-
| MCP tools |
|
|
14
|
+
| MCP tools | **ALL 20+ schema 定义的 CLI 命令** |
|
|
15
15
|
| 图前置条件 | 先执行 `mycodemap generate --symbol-level` |
|
|
16
|
-
| 稳定性 | **
|
|
16
|
+
| 稳定性 | **stable (v2.0)** |
|
|
17
17
|
| 非目标 | HTTP MCP、远程 transport、写操作、全局 host lifecycle |
|
|
18
18
|
|
|
19
|
+
### 动态 Tool 注册
|
|
20
|
+
|
|
21
|
+
- 向 `Interface Contract Schema` 添加新命令 → 重启 MCP server → 新 tool 自动出现在 host 中
|
|
22
|
+
- 无需手写 tool 定义、无需修改 MCP server 代码、无需重新安装
|
|
23
|
+
|
|
19
24
|
---
|
|
20
25
|
|
|
21
26
|
## 1.1 速查表
|
|
@@ -44,7 +49,7 @@ mycodemap generate --symbol-level
|
|
|
44
49
|
mycodemap mcp install
|
|
45
50
|
```
|
|
46
51
|
|
|
47
|
-
|
|
52
|
+
该命令在当前仓库根目录的 `.mcp.json` 里写入一个 v2.0 server entry。
|
|
48
53
|
|
|
49
54
|
### Step 3: 让 MCP host 启动 stdio server
|
|
50
55
|
|
|
@@ -57,6 +62,8 @@ mycodemap mcp start
|
|
|
57
62
|
- `stdout` 只承载 MCP 协议帧
|
|
58
63
|
- 欢迎信息、迁移提示、runtime log 不会混入 `stdout`
|
|
59
64
|
|
|
65
|
+
> **v2.0 关键变更**:所有在 `Interface Contract Schema` 中定义的命令自动作为 MCP tools 可用。无需手写 tool 定义,无需逐个注册。
|
|
66
|
+
|
|
60
67
|
---
|
|
61
68
|
|
|
62
69
|
## 3. `.mcp.json` 参考配置
|
|
@@ -66,7 +73,7 @@ mycodemap mcp start
|
|
|
66
73
|
```json
|
|
67
74
|
{
|
|
68
75
|
"mcpServers": {
|
|
69
|
-
"mycodemap
|
|
76
|
+
"mycodemap": {
|
|
70
77
|
"command": "node",
|
|
71
78
|
"args": ["dist/cli/index.js", "mcp", "start"],
|
|
72
79
|
"cwd": "/absolute/path/to/repo",
|
|
@@ -80,7 +87,7 @@ mycodemap mcp start
|
|
|
80
87
|
|
|
81
88
|
### 当前宿主支持边界
|
|
82
89
|
|
|
83
|
-
-
|
|
90
|
+
- 当前文档只保证 **repo-local `.mcp.json`** 这一路径
|
|
84
91
|
- 不承诺全局安装、升级覆盖策略或卸载命令
|
|
85
92
|
- 若你的 host 不读取 `.mcp.json`,请手动拷贝上面的 server entry 到宿主自己的 MCP 配置文件
|
|
86
93
|
|
|
@@ -88,7 +95,25 @@ mycodemap mcp start
|
|
|
88
95
|
|
|
89
96
|
## 4. MCP tool contract
|
|
90
97
|
|
|
91
|
-
###
|
|
98
|
+
### Gateway 模式
|
|
99
|
+
|
|
100
|
+
CLI-as-MCP Automatic Gateway 将所有 CLI 命令统一映射为 MCP tools:
|
|
101
|
+
|
|
102
|
+
| CLI 命令 | MCP tool 名 | 输入参数 |
|
|
103
|
+
|----------|-------------|----------|
|
|
104
|
+
| `mycodemap query -s X` | `codemap_query` | `{ symbol: string, filePath?: string }` |
|
|
105
|
+
| `mycodemap impact -f X` | `codemap_impact` | `{ symbol: string, filePath?: string, depth?: number, limit?: number }` |
|
|
106
|
+
| `mycodemap doctor` | `codemap_doctor` | `{ category?: string, json?: boolean }` |
|
|
107
|
+
| `mycodemap benchmark` | `codemap_benchmark` | `{ command?: string, json?: boolean }` |
|
|
108
|
+
| `mycodemap analyze -i find -k X` | `codemap_analyze` | `{ intent: string, keyword: string, ... }` |
|
|
109
|
+
| ... | ... | ... |
|
|
110
|
+
|
|
111
|
+
映射规则:
|
|
112
|
+
- CLI 命令名 → MCP tool 名前缀为 `codemap_`
|
|
113
|
+
- CLI 短选项(`-s`)和长选项(`--symbol`)→ MCP tool 参数名使用长选项名
|
|
114
|
+
- CLI 输出结构 → MCP tool 返回结构完全一致
|
|
115
|
+
|
|
116
|
+
### `codemap_query`(示例之一)
|
|
92
117
|
|
|
93
118
|
输入:
|
|
94
119
|
|
|
@@ -107,7 +132,7 @@ interface CodemapQueryInput {
|
|
|
107
132
|
- `generated_at`
|
|
108
133
|
- `error.code`(若失败)
|
|
109
134
|
|
|
110
|
-
### `codemap_impact
|
|
135
|
+
### `codemap_impact`(示例之一)
|
|
111
136
|
|
|
112
137
|
输入:
|
|
113
138
|
|
|
@@ -128,7 +153,7 @@ interface CodemapImpactInput {
|
|
|
128
153
|
- `generated_at`
|
|
129
154
|
- `error.code`(若失败)
|
|
130
155
|
|
|
131
|
-
> 完整输出类型见 `docs/ai-guide/OUTPUT.md
|
|
156
|
+
> 完整输出类型见 `docs/ai-guide/OUTPUT.md`。以上仅为 20+ tools 中的两个示例。
|
|
132
157
|
|
|
133
158
|
---
|
|
134
159
|
|
|
@@ -140,6 +165,40 @@ interface CodemapImpactInput {
|
|
|
140
165
|
| `SYMBOL_NOT_FOUND` | 请求的 symbol 不存在 | 检查拼写,或先用 `query -S` / `analyze -i find` 搜索 |
|
|
141
166
|
| `AMBIGUOUS_EDGE` | 同名 symbol 无法仅靠 `symbol` / `filePath` 消歧 | 补充更具体的 `filePath` |
|
|
142
167
|
|
|
168
|
+
### Failure-to-Action Protocol
|
|
169
|
+
|
|
170
|
+
v2.0 错误响应包含可执行的修复指引:
|
|
171
|
+
|
|
172
|
+
```typescript
|
|
173
|
+
interface McpError {
|
|
174
|
+
code: string;
|
|
175
|
+
message: string;
|
|
176
|
+
details?: Record<string, unknown>;
|
|
177
|
+
// Failure-to-Action Protocol 字段
|
|
178
|
+
rootCause?: string; // 根因分析
|
|
179
|
+
remediationPlan?: string[]; // 修复步骤(按优先级)
|
|
180
|
+
confidence: "high" | "medium" | "low";
|
|
181
|
+
nextCommand?: string; // 建议执行的下一步命令
|
|
182
|
+
}
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
示例:
|
|
186
|
+
|
|
187
|
+
```json
|
|
188
|
+
{
|
|
189
|
+
"code": "GRAPH_NOT_FOUND",
|
|
190
|
+
"message": "symbol-level 图不存在",
|
|
191
|
+
"rootCause": "未执行 mycodemap generate --symbol-level",
|
|
192
|
+
"remediationPlan": [
|
|
193
|
+
"mycodemap generate --symbol-level",
|
|
194
|
+
"mycodemap mcp install",
|
|
195
|
+
"重启 MCP host"
|
|
196
|
+
],
|
|
197
|
+
"confidence": "high",
|
|
198
|
+
"nextCommand": "mycodemap generate --symbol-level"
|
|
199
|
+
}
|
|
200
|
+
```
|
|
201
|
+
|
|
143
202
|
### `graph_status` 解读
|
|
144
203
|
|
|
145
204
|
| 值 | 含义 |
|
|
@@ -158,6 +217,8 @@ interface CodemapImpactInput {
|
|
|
158
217
|
mycodemap query -s "SymbolName" -j
|
|
159
218
|
mycodemap impact -f "src/file.ts" -j
|
|
160
219
|
mycodemap analyze -i find -k "SymbolName" --json --structured
|
|
220
|
+
mycodemap doctor --json
|
|
221
|
+
mycodemap benchmark --json
|
|
161
222
|
```
|
|
162
223
|
|
|
163
224
|
但要注意:
|
|
@@ -178,7 +239,7 @@ mycodemap generate --symbol-level
|
|
|
178
239
|
### `mcp install` 后看不到 server
|
|
179
240
|
|
|
180
241
|
- 确认 host 会读取当前仓库根目录的 `.mcp.json`
|
|
181
|
-
- 不会读取的话,手动复制 `mycodemap
|
|
242
|
+
- 不会读取的话,手动复制 `mycodemap` entry 到宿主配置
|
|
182
243
|
|
|
183
244
|
### `mcp start` 无法启动
|
|
184
245
|
|
|
@@ -200,6 +261,12 @@ npm ls better-sqlite3
|
|
|
200
261
|
- 先检查 `graph_status` 是否为 `partial`
|
|
201
262
|
- 再检查 symbol 是否真的唯一;必要时补 `filePath`
|
|
202
263
|
|
|
264
|
+
### 新增命令后 MCP host 看不到新 tool
|
|
265
|
+
|
|
266
|
+
- 确认新命令已注册到 `Interface Contract Schema`(`mycodemap --schema` 检查)
|
|
267
|
+
- 重启 MCP server(host 侧或 `mycodemap mcp start`)
|
|
268
|
+
- 不需要重新运行 `mcp install`,除非 server entry 本身有变更
|
|
269
|
+
|
|
203
270
|
### storage 运行时错误速查表
|
|
204
271
|
|
|
205
272
|
| 错误 / 信号 | 含义 | 处理方式 |
|