@mycodemap/mycodemap 0.4.1 → 0.5.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.
Files changed (309) hide show
  1. package/CHANGELOG.md +100 -0
  2. package/README.md +307 -243
  3. package/dist/ai/claude.d.ts +38 -0
  4. package/dist/ai/claude.d.ts.map +1 -0
  5. package/dist/ai/claude.js +169 -0
  6. package/dist/ai/claude.js.map +1 -0
  7. package/dist/ai/codex.d.ts +38 -0
  8. package/dist/ai/codex.d.ts.map +1 -0
  9. package/dist/ai/codex.js +169 -0
  10. package/dist/ai/codex.js.map +1 -0
  11. package/dist/ai/factory.d.ts +48 -0
  12. package/dist/ai/factory.d.ts.map +1 -0
  13. package/dist/ai/factory.js +95 -0
  14. package/dist/ai/factory.js.map +1 -0
  15. package/dist/ai/index.d.ts +12 -0
  16. package/dist/ai/index.d.ts.map +1 -0
  17. package/dist/ai/index.js +29 -0
  18. package/dist/ai/index.js.map +1 -0
  19. package/dist/ai/provider.d.ts +70 -0
  20. package/dist/ai/provider.d.ts.map +1 -0
  21. package/dist/ai/provider.js +31 -0
  22. package/dist/ai/provider.js.map +1 -0
  23. package/dist/ai/subagent-caller.d.ts +90 -0
  24. package/dist/ai/subagent-caller.d.ts.map +1 -0
  25. package/dist/ai/subagent-caller.js +280 -0
  26. package/dist/ai/subagent-caller.js.map +1 -0
  27. package/dist/ai/types.d.ts +70 -0
  28. package/dist/ai/types.d.ts.map +1 -0
  29. package/dist/ai/types.js +5 -0
  30. package/dist/ai/types.js.map +1 -0
  31. package/dist/cli/commands/analyze-options.d.ts +36 -0
  32. package/dist/cli/commands/analyze-options.d.ts.map +1 -0
  33. package/dist/cli/commands/analyze-options.js +147 -0
  34. package/dist/cli/commands/analyze-options.js.map +1 -0
  35. package/dist/cli/commands/analyze.d.ts +93 -4
  36. package/dist/cli/commands/analyze.d.ts.map +1 -1
  37. package/dist/cli/commands/analyze.js +592 -176
  38. package/dist/cli/commands/analyze.js.map +1 -1
  39. package/dist/cli/commands/ci.d.ts +47 -1
  40. package/dist/cli/commands/ci.d.ts.map +1 -1
  41. package/dist/cli/commands/ci.js +208 -1
  42. package/dist/cli/commands/ci.js.map +1 -1
  43. package/dist/cli/commands/design.d.ts +47 -0
  44. package/dist/cli/commands/design.d.ts.map +1 -0
  45. package/dist/cli/commands/design.js +268 -0
  46. package/dist/cli/commands/design.js.map +1 -0
  47. package/dist/cli/commands/export.d.ts.map +1 -1
  48. package/dist/cli/commands/export.js +2 -2
  49. package/dist/cli/commands/export.js.map +1 -1
  50. package/dist/cli/commands/generate.d.ts +8 -2
  51. package/dist/cli/commands/generate.d.ts.map +1 -1
  52. package/dist/cli/commands/generate.js +151 -22
  53. package/dist/cli/commands/generate.js.map +1 -1
  54. package/dist/cli/commands/init.d.ts.map +1 -1
  55. package/dist/cli/commands/init.js +2 -13
  56. package/dist/cli/commands/init.js.map +1 -1
  57. package/dist/cli/commands/server.d.ts.map +1 -1
  58. package/dist/cli/commands/server.js +2 -5
  59. package/dist/cli/commands/server.js.map +1 -1
  60. package/dist/cli/commands/ship/checker.d.ts.map +1 -1
  61. package/dist/cli/commands/ship/checker.js +0 -3
  62. package/dist/cli/commands/ship/checker.js.map +1 -1
  63. package/dist/cli/commands/ship/pipeline.d.ts.map +1 -1
  64. package/dist/cli/commands/ship/pipeline.js +8 -1
  65. package/dist/cli/commands/ship/pipeline.js.map +1 -1
  66. package/dist/cli/commands/ship/publisher.d.ts +9 -1
  67. package/dist/cli/commands/ship/publisher.d.ts.map +1 -1
  68. package/dist/cli/commands/ship/publisher.js +149 -6
  69. package/dist/cli/commands/ship/publisher.js.map +1 -1
  70. package/dist/cli/commands/ship/rules/quality-rules.d.ts +0 -1
  71. package/dist/cli/commands/ship/rules/quality-rules.d.ts.map +1 -1
  72. package/dist/cli/commands/ship/rules/quality-rules.js +4 -76
  73. package/dist/cli/commands/ship/rules/quality-rules.js.map +1 -1
  74. package/dist/cli/commands/workflow.js +4 -4
  75. package/dist/cli/commands/workflow.js.map +1 -1
  76. package/dist/cli/config-loader.d.ts +31 -0
  77. package/dist/cli/config-loader.d.ts.map +1 -0
  78. package/dist/cli/config-loader.js +235 -0
  79. package/dist/cli/config-loader.js.map +1 -0
  80. package/dist/cli/design-contract-loader.d.ts +15 -0
  81. package/dist/cli/design-contract-loader.d.ts.map +1 -0
  82. package/dist/cli/design-contract-loader.js +175 -0
  83. package/dist/cli/design-contract-loader.js.map +1 -0
  84. package/dist/cli/design-contract-schema.d.ts +11 -0
  85. package/dist/cli/design-contract-schema.d.ts.map +1 -0
  86. package/dist/cli/design-contract-schema.js +75 -0
  87. package/dist/cli/design-contract-schema.js.map +1 -0
  88. package/dist/cli/design-handoff-builder.d.ts +15 -0
  89. package/dist/cli/design-handoff-builder.d.ts.map +1 -0
  90. package/dist/cli/design-handoff-builder.js +345 -0
  91. package/dist/cli/design-handoff-builder.js.map +1 -0
  92. package/dist/cli/design-scope-resolver.d.ts +8 -0
  93. package/dist/cli/design-scope-resolver.d.ts.map +1 -0
  94. package/dist/cli/design-scope-resolver.js +712 -0
  95. package/dist/cli/design-scope-resolver.js.map +1 -0
  96. package/dist/cli/design-verification-builder.d.ts +8 -0
  97. package/dist/cli/design-verification-builder.d.ts.map +1 -0
  98. package/dist/cli/design-verification-builder.js +369 -0
  99. package/dist/cli/design-verification-builder.js.map +1 -0
  100. package/dist/cli/index.js +20 -63
  101. package/dist/cli/index.js.map +1 -1
  102. package/dist/cli/removed-commands.d.ts +9 -0
  103. package/dist/cli/removed-commands.d.ts.map +1 -0
  104. package/dist/cli/removed-commands.js +48 -0
  105. package/dist/cli/removed-commands.js.map +1 -0
  106. package/dist/cli/storage-runtime.d.ts +8 -0
  107. package/dist/cli/storage-runtime.d.ts.map +1 -0
  108. package/dist/cli/storage-runtime.js +14 -0
  109. package/dist/cli/storage-runtime.js.map +1 -0
  110. package/dist/cli/tree-sitter-check.d.ts.map +1 -1
  111. package/dist/cli/tree-sitter-check.js +0 -1
  112. package/dist/cli/tree-sitter-check.js.map +1 -1
  113. package/dist/cli-new/commands/export.d.ts.map +1 -1
  114. package/dist/cli-new/commands/export.js +2 -2
  115. package/dist/cli-new/commands/export.js.map +1 -1
  116. package/dist/cli-new/commands/query.d.ts.map +1 -1
  117. package/dist/cli-new/commands/query.js +5 -4
  118. package/dist/cli-new/commands/query.js.map +1 -1
  119. package/dist/cli-new/commands/server.d.ts.map +1 -1
  120. package/dist/cli-new/commands/server.js +2 -6
  121. package/dist/cli-new/commands/server.js.map +1 -1
  122. package/dist/cli-new/index.d.ts.map +1 -1
  123. package/dist/cli-new/index.js +0 -2
  124. package/dist/cli-new/index.js.map +1 -1
  125. package/dist/core/analyzer.d.ts.map +1 -1
  126. package/dist/core/analyzer.js +7 -39
  127. package/dist/core/analyzer.js.map +1 -1
  128. package/dist/core/file-discovery.d.ts +17 -0
  129. package/dist/core/file-discovery.d.ts.map +1 -0
  130. package/dist/core/file-discovery.js +75 -0
  131. package/dist/core/file-discovery.js.map +1 -0
  132. package/dist/core/global-index.d.ts +5 -0
  133. package/dist/core/global-index.d.ts.map +1 -1
  134. package/dist/core/global-index.js +71 -21
  135. package/dist/core/global-index.js.map +1 -1
  136. package/dist/generator/ai-overview.d.ts +51 -0
  137. package/dist/generator/ai-overview.d.ts.map +1 -0
  138. package/dist/generator/ai-overview.js +160 -0
  139. package/dist/generator/ai-overview.js.map +1 -0
  140. package/dist/generator/index.d.ts.map +1 -1
  141. package/dist/generator/index.js +8 -0
  142. package/dist/generator/index.js.map +1 -1
  143. package/dist/infrastructure/parser/implementations/GoParser.d.ts +2 -5
  144. package/dist/infrastructure/parser/implementations/GoParser.d.ts.map +1 -1
  145. package/dist/infrastructure/parser/implementations/GoParser.js +2 -5
  146. package/dist/infrastructure/parser/implementations/GoParser.js.map +1 -1
  147. package/dist/infrastructure/parser/implementations/PythonParser.d.ts +1 -5
  148. package/dist/infrastructure/parser/implementations/PythonParser.d.ts.map +1 -1
  149. package/dist/infrastructure/parser/implementations/PythonParser.js +1 -5
  150. package/dist/infrastructure/parser/implementations/PythonParser.js.map +1 -1
  151. package/dist/infrastructure/parser/implementations/TypeScriptParser.d.ts +1 -5
  152. package/dist/infrastructure/parser/implementations/TypeScriptParser.d.ts.map +1 -1
  153. package/dist/infrastructure/parser/implementations/TypeScriptParser.js +1 -5
  154. package/dist/infrastructure/parser/implementations/TypeScriptParser.js.map +1 -1
  155. package/dist/infrastructure/storage/StorageFactory.d.ts +12 -6
  156. package/dist/infrastructure/storage/StorageFactory.d.ts.map +1 -1
  157. package/dist/infrastructure/storage/StorageFactory.js +59 -43
  158. package/dist/infrastructure/storage/StorageFactory.js.map +1 -1
  159. package/dist/infrastructure/storage/adapters/FileSystemStorage.d.ts.map +1 -1
  160. package/dist/infrastructure/storage/adapters/FileSystemStorage.js +24 -137
  161. package/dist/infrastructure/storage/adapters/FileSystemStorage.js.map +1 -1
  162. package/dist/infrastructure/storage/adapters/KuzuDBStorage.d.ts +10 -18
  163. package/dist/infrastructure/storage/adapters/KuzuDBStorage.d.ts.map +1 -1
  164. package/dist/infrastructure/storage/adapters/KuzuDBStorage.js +103 -146
  165. package/dist/infrastructure/storage/adapters/KuzuDBStorage.js.map +1 -1
  166. package/dist/infrastructure/storage/adapters/MemoryStorage.d.ts +0 -1
  167. package/dist/infrastructure/storage/adapters/MemoryStorage.d.ts.map +1 -1
  168. package/dist/infrastructure/storage/adapters/MemoryStorage.js +16 -136
  169. package/dist/infrastructure/storage/adapters/MemoryStorage.js.map +1 -1
  170. package/dist/infrastructure/storage/adapters/Neo4jStorage.d.ts +9 -17
  171. package/dist/infrastructure/storage/adapters/Neo4jStorage.d.ts.map +1 -1
  172. package/dist/infrastructure/storage/adapters/Neo4jStorage.js +78 -138
  173. package/dist/infrastructure/storage/adapters/Neo4jStorage.js.map +1 -1
  174. package/dist/infrastructure/storage/graph-helpers.d.ts +16 -0
  175. package/dist/infrastructure/storage/graph-helpers.d.ts.map +1 -0
  176. package/dist/infrastructure/storage/graph-helpers.js +161 -0
  177. package/dist/infrastructure/storage/graph-helpers.js.map +1 -0
  178. package/dist/infrastructure/storage/index.d.ts.map +1 -1
  179. package/dist/interface/config/index.d.ts +10 -1
  180. package/dist/interface/config/index.d.ts.map +1 -1
  181. package/dist/interface/types/design-contract.d.ts +68 -0
  182. package/dist/interface/types/design-contract.d.ts.map +1 -0
  183. package/dist/interface/types/design-contract.js +7 -0
  184. package/dist/interface/types/design-contract.js.map +1 -0
  185. package/dist/interface/types/design-handoff.d.ts +68 -0
  186. package/dist/interface/types/design-handoff.d.ts.map +1 -0
  187. package/dist/interface/types/design-handoff.js +4 -0
  188. package/dist/interface/types/design-handoff.js.map +1 -0
  189. package/dist/interface/types/design-mapping.d.ts +51 -0
  190. package/dist/interface/types/design-mapping.d.ts.map +1 -0
  191. package/dist/interface/types/design-mapping.js +4 -0
  192. package/dist/interface/types/design-mapping.js.map +1 -0
  193. package/dist/interface/types/design-verification.d.ts +49 -0
  194. package/dist/interface/types/design-verification.d.ts.map +1 -0
  195. package/dist/interface/types/design-verification.js +4 -0
  196. package/dist/interface/types/design-verification.js.map +1 -0
  197. package/dist/interface/types/index.d.ts +17 -0
  198. package/dist/interface/types/index.d.ts.map +1 -1
  199. package/dist/interface/types/storage.d.ts +1 -4
  200. package/dist/interface/types/storage.d.ts.map +1 -1
  201. package/dist/orchestrator/ai-feed-generator.d.ts +210 -0
  202. package/dist/orchestrator/ai-feed-generator.d.ts.map +1 -0
  203. package/dist/orchestrator/ai-feed-generator.js +377 -0
  204. package/dist/orchestrator/ai-feed-generator.js.map +1 -0
  205. package/dist/orchestrator/confidence.d.ts +9 -9
  206. package/dist/orchestrator/confidence.d.ts.map +1 -1
  207. package/dist/orchestrator/confidence.js +44 -67
  208. package/dist/orchestrator/confidence.js.map +1 -1
  209. package/dist/orchestrator/file-header-scanner.d.ts.map +1 -1
  210. package/dist/orchestrator/file-header-scanner.js +22 -31
  211. package/dist/orchestrator/file-header-scanner.js.map +1 -1
  212. package/dist/orchestrator/intent-router.d.ts +2 -11
  213. package/dist/orchestrator/intent-router.d.ts.map +1 -1
  214. package/dist/orchestrator/intent-router.js +58 -49
  215. package/dist/orchestrator/intent-router.js.map +1 -1
  216. package/dist/orchestrator/tool-orchestrator.d.ts.map +1 -1
  217. package/dist/orchestrator/tool-orchestrator.js +6 -4
  218. package/dist/orchestrator/tool-orchestrator.js.map +1 -1
  219. package/dist/orchestrator/types.d.ts +113 -2
  220. package/dist/orchestrator/types.d.ts.map +1 -1
  221. package/dist/orchestrator/types.js +29 -0
  222. package/dist/orchestrator/types.js.map +1 -1
  223. package/dist/orchestrator/workflow/config.d.ts +4 -12
  224. package/dist/orchestrator/workflow/config.d.ts.map +1 -1
  225. package/dist/orchestrator/workflow/config.js +4 -6
  226. package/dist/orchestrator/workflow/config.js.map +1 -1
  227. package/dist/orchestrator/workflow/git-analyzer.d.ts.map +1 -1
  228. package/dist/orchestrator/workflow/git-analyzer.js +9 -19
  229. package/dist/orchestrator/workflow/git-analyzer.js.map +1 -1
  230. package/dist/orchestrator/workflow/phase-inheritance.d.ts.map +1 -1
  231. package/dist/orchestrator/workflow/phase-inheritance.js +14 -23
  232. package/dist/orchestrator/workflow/phase-inheritance.js.map +1 -1
  233. package/dist/orchestrator/workflow/result-fusion.d.ts.map +1 -1
  234. package/dist/orchestrator/workflow/result-fusion.js +9 -11
  235. package/dist/orchestrator/workflow/result-fusion.js.map +1 -1
  236. package/dist/orchestrator/workflow/templates.d.ts +4 -1
  237. package/dist/orchestrator/workflow/templates.d.ts.map +1 -1
  238. package/dist/orchestrator/workflow/templates.js +49 -207
  239. package/dist/orchestrator/workflow/templates.js.map +1 -1
  240. package/dist/orchestrator/workflow/test-linker.d.ts.map +1 -1
  241. package/dist/orchestrator/workflow/test-linker.js +12 -24
  242. package/dist/orchestrator/workflow/test-linker.js.map +1 -1
  243. package/dist/orchestrator/workflow/types.d.ts +11 -8
  244. package/dist/orchestrator/workflow/types.d.ts.map +1 -1
  245. package/dist/orchestrator/workflow/types.js +8 -1
  246. package/dist/orchestrator/workflow/types.js.map +1 -1
  247. package/dist/orchestrator/workflow/visualizer.d.ts.map +1 -1
  248. package/dist/orchestrator/workflow/visualizer.js +7 -9
  249. package/dist/orchestrator/workflow/visualizer.js.map +1 -1
  250. package/dist/orchestrator/workflow/workflow-context.d.ts.map +1 -1
  251. package/dist/orchestrator/workflow/workflow-context.js +3 -5
  252. package/dist/orchestrator/workflow/workflow-context.js.map +1 -1
  253. package/dist/orchestrator/workflow/workflow-orchestrator.d.ts +0 -4
  254. package/dist/orchestrator/workflow/workflow-orchestrator.d.ts.map +1 -1
  255. package/dist/orchestrator/workflow/workflow-orchestrator.js +7 -99
  256. package/dist/orchestrator/workflow/workflow-orchestrator.js.map +1 -1
  257. package/dist/parser/index.d.ts.map +1 -1
  258. package/dist/parser/index.js +2 -2
  259. package/dist/parser/index.js.map +1 -1
  260. package/dist/plugins/index.d.ts +5 -3
  261. package/dist/plugins/index.d.ts.map +1 -1
  262. package/dist/plugins/index.js +19 -8
  263. package/dist/plugins/index.js.map +1 -1
  264. package/dist/plugins/plugin-loader.d.ts +21 -6
  265. package/dist/plugins/plugin-loader.d.ts.map +1 -1
  266. package/dist/plugins/plugin-loader.js +170 -54
  267. package/dist/plugins/plugin-loader.js.map +1 -1
  268. package/dist/plugins/plugin-registry.d.ts +7 -4
  269. package/dist/plugins/plugin-registry.d.ts.map +1 -1
  270. package/dist/plugins/plugin-registry.js +62 -14
  271. package/dist/plugins/plugin-registry.js.map +1 -1
  272. package/dist/plugins/types.d.ts +16 -6
  273. package/dist/plugins/types.d.ts.map +1 -1
  274. package/dist/plugins/types.js +2 -0
  275. package/dist/plugins/types.js.map +1 -1
  276. package/dist/server/handlers/AnalysisHandler.d.ts +16 -2
  277. package/dist/server/handlers/AnalysisHandler.d.ts.map +1 -1
  278. package/dist/server/handlers/AnalysisHandler.js +31 -47
  279. package/dist/server/handlers/AnalysisHandler.js.map +1 -1
  280. package/dist/server/routes/api.d.ts.map +1 -1
  281. package/dist/server/routes/api.js +31 -12
  282. package/dist/server/routes/api.js.map +1 -1
  283. package/docs/AI_ASSISTANT_SETUP.md +3 -1
  284. package/docs/SETUP_GUIDE.md +41 -17
  285. package/docs/ai-guide/COMMANDS.md +179 -102
  286. package/docs/ai-guide/INTEGRATION.md +23 -21
  287. package/docs/ai-guide/OUTPUT.md +621 -10
  288. package/docs/ai-guide/PATTERNS.md +77 -18
  289. package/docs/ai-guide/PROMPTS.md +24 -18
  290. package/docs/ai-guide/QUICKSTART.md +35 -19
  291. package/docs/ai-guide/README.md +22 -4
  292. package/docs/archive/test-report-symbol-search.md +384 -0
  293. package/docs/archive/test-scenario-4-complexity-analysis.md +460 -0
  294. package/docs/archive/test_report_scenario5.md +615 -0
  295. package/docs/archive/test_scenario_3_impact_analysis_report.md +520 -0
  296. package/docs/product-specs/DESIGN_CONTRACT_TEMPLATE.md +79 -0
  297. package/docs/product-specs/MVP3-ARCHITECTURE-COMPARISON.md +159 -434
  298. package/docs/product-specs/MVP3-ARCHITECTURE-REDESIGN-PRD.md +169 -261
  299. package/docs/product-specs/MVP3-ARCHITECTURE-REDESIGN-TECH-PRD.md +201 -1259
  300. package/docs/product-specs/README.md +9 -1
  301. package/docs/rules/architecture-guardrails.md +1 -2
  302. package/docs/rules/engineering-with-codex-openai.md +20 -10
  303. package/docs/rules/validation.md +29 -4
  304. package/mycodemap.config.schema.json +76 -5
  305. package/package.json +1 -1
  306. package/scripts/experiments/arcadedb-http-smoke.mjs +90 -0
  307. package/scripts/sync-analyze-docs.js +500 -0
  308. package/scripts/validate-ai-docs.js +54 -1
  309. package/scripts/validate-docs.js +992 -25
@@ -0,0 +1,147 @@
1
+ /**
2
+ * [META] since:2026-03-24 | owner:cli-team | stable:false
3
+ * [WHY] 统一 analyze 的 option schema,减少 commander/help/parse 三处事实漂移
4
+ */
5
+ import { Command } from 'commander';
6
+ import { PUBLIC_INTENTS } from '../../orchestrator/types.js';
7
+ export const ANALYZE_COMMAND_DESCRIPTION = '统一分析入口 - 支持多种分析意图';
8
+ export const ANALYZE_OPTION_DEFINITIONS = [
9
+ {
10
+ name: 'intent',
11
+ flags: '-i, --intent <type>',
12
+ description: `分析类型 (${PUBLIC_INTENTS.join('|')})`,
13
+ helpDescription: `分析类型 (${PUBLIC_INTENTS.join('|')})`,
14
+ docDescription: '分析类型:`find`/`read`/`link`/`show`(必填)',
15
+ parse: { type: 'string', short: 'i' },
16
+ },
17
+ {
18
+ name: 'targets',
19
+ flags: '-t, --targets <paths...>',
20
+ description: '目标文件/模块路径',
21
+ helpDescription: '目标文件/模块路径 (多个)',
22
+ docDescription: '目标路径(`read`/`link`/`show` 必填,`find` 可选)',
23
+ parse: { type: 'string', short: 't', multiple: true },
24
+ },
25
+ {
26
+ name: 'keywords',
27
+ flags: '-k, --keywords <words...>',
28
+ description: '搜索关键词',
29
+ helpDescription: '搜索关键词 (多个)',
30
+ docDescription: '搜索关键词(主要用于 `find`)',
31
+ parse: { type: 'string', short: 'k', multiple: true },
32
+ },
33
+ {
34
+ name: 'scope',
35
+ flags: '-s, --scope <scope>',
36
+ description: '范围 (direct|transitive)',
37
+ helpDescription: '范围 (direct|transitive)',
38
+ docDescription: '范围:`direct`(直接)/`transitive`(传递)',
39
+ docDefaultValue: 'direct',
40
+ parse: { type: 'string', short: 's' },
41
+ },
42
+ {
43
+ name: 'topK',
44
+ flags: '-n, --topK <number>',
45
+ description: '返回结果数量',
46
+ helpDescription: '返回结果数量 (默认 8, 最大 100)',
47
+ docDescription: '返回结果数量',
48
+ docDefaultValue: '8',
49
+ parse: { type: 'string', short: 'n' },
50
+ defaultValue: '8',
51
+ },
52
+ {
53
+ name: 'include-tests',
54
+ flags: '--include-tests',
55
+ description: '包含测试文件',
56
+ helpDescription: '包含测试文件',
57
+ docDescription: '包含测试文件关联',
58
+ parse: { type: 'boolean', default: false },
59
+ },
60
+ {
61
+ name: 'include-git-history',
62
+ flags: '--include-git-history',
63
+ description: '包含 Git 历史',
64
+ helpDescription: '包含 Git 历史',
65
+ docDescription: '包含 Git 历史分析',
66
+ parse: { type: 'boolean', default: false },
67
+ },
68
+ {
69
+ name: 'json',
70
+ flags: '--json',
71
+ description: 'JSON 格式输出',
72
+ helpDescription: 'JSON 格式输出',
73
+ docDescription: 'JSON 格式输出',
74
+ parse: { type: 'boolean', default: false },
75
+ },
76
+ {
77
+ name: 'structured',
78
+ flags: '--structured',
79
+ description: '输出完全结构化的 JSON(不包含自然语言字符串,需要配合 --json 或 --output-mode=machine 使用)',
80
+ helpDescription: '输出完全结构化的 JSON(移除自然语言字符串)',
81
+ docDescription: '纯结构化输出(移除自然语言字段,配合 `--json` 使用)',
82
+ parse: { type: 'boolean', default: false },
83
+ },
84
+ {
85
+ name: 'output-mode',
86
+ flags: '--output-mode <mode>',
87
+ description: '输出模式 (machine|human)',
88
+ helpDescription: '输出模式 (machine|human)',
89
+ docDescription: '输出模式:`machine`/`human`',
90
+ docDefaultValue: 'human',
91
+ parse: { type: 'string' },
92
+ },
93
+ {
94
+ name: 'help',
95
+ flags: '-h, --help',
96
+ description: '显示帮助',
97
+ helpDescription: '显示帮助',
98
+ parse: { type: 'boolean', short: 'h', default: false },
99
+ includeInCommander: false,
100
+ includeInDocs: false,
101
+ },
102
+ ];
103
+ export const ANALYZE_PARSE_OPTIONS = Object.fromEntries(ANALYZE_OPTION_DEFINITIONS.map(option => [option.name, option.parse]));
104
+ export function applyAnalyzeCliOptions(command) {
105
+ for (const option of ANALYZE_OPTION_DEFINITIONS) {
106
+ if (option.includeInCommander === false) {
107
+ continue;
108
+ }
109
+ if (option.defaultValue !== undefined) {
110
+ command.option(option.flags, option.description, option.defaultValue);
111
+ continue;
112
+ }
113
+ command.option(option.flags, option.description);
114
+ }
115
+ return command;
116
+ }
117
+ export function configureAnalyzeCommand(command) {
118
+ applyAnalyzeCliOptions(command);
119
+ command.addHelpText('after', renderAnalyzeAfterHelpText());
120
+ return command;
121
+ }
122
+ export function renderAnalyzeHelpOptions() {
123
+ const visibleOptions = ANALYZE_OPTION_DEFINITIONS.filter(option => option.helpDescription);
124
+ const maxFlagsLength = visibleOptions.reduce((max, option) => Math.max(max, option.flags.length), 0);
125
+ return visibleOptions
126
+ .map(option => ` ${option.flags.padEnd(maxFlagsLength)} ${option.helpDescription}`)
127
+ .join('\n');
128
+ }
129
+ export const ANALYZE_HELP_EXAMPLES = [
130
+ 'codemap analyze -i find -k "SourceLocation" --json --structured',
131
+ 'codemap analyze -i read -t src/index.ts --scope transitive --json',
132
+ 'codemap analyze -i link -t src/utils --json',
133
+ 'codemap analyze -i show -t src/ --output-mode human'
134
+ ];
135
+ export function renderAnalyzeHelpExamples() {
136
+ return ANALYZE_HELP_EXAMPLES.map(example => ` ${example}`).join('\n');
137
+ }
138
+ export function renderAnalyzeAfterHelpText() {
139
+ return `\n示例:\n${renderAnalyzeHelpExamples()}`;
140
+ }
141
+ export function getAnalyzeHelpText(programName = 'mycodemap') {
142
+ const root = new Command().name(programName);
143
+ const analyzeCommand = configureAnalyzeCommand(root.command('analyze').description(ANALYZE_COMMAND_DESCRIPTION));
144
+ const baseHelp = analyzeCommand.helpInformation();
145
+ return `${baseHelp}${renderAnalyzeAfterHelpText()}`;
146
+ }
147
+ //# sourceMappingURL=analyze-options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analyze-options.js","sourceRoot":"","sources":["../../../src/cli/commands/analyze-options.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * [META] AnalyzeCommand - 统一分析入口
3
3
  * [WHY] 为 CI 与人工调用提供统一分析输出,支持 machine/json 契约
4
4
  */
5
- import type { AnalyzeArgs, IntentType } from '../../orchestrator/types.js';
5
+ import { type AnalyzeArgs, type IntentType } from '../../orchestrator/types.js';
6
6
  /**
7
7
  * 错误码定义
8
8
  */
@@ -51,10 +51,102 @@ export declare class AnalyzeCommand {
51
51
  * 执行分析
52
52
  */
53
53
  execute(): Promise<unknown>;
54
+ /**
55
+ * `find` 优先走 orchestrator,失败时回退到 AstGrep 搜索
56
+ */
57
+ private executeFindWithFallback;
54
58
  /**
55
59
  * 使用编排器执行分析
56
60
  */
57
61
  private executeWithOrchestrator;
62
+ /**
63
+ * 为输出添加兼容期 warning
64
+ */
65
+ private withCompatibility;
66
+ /**
67
+ * 生成结构化兼容 warning
68
+ */
69
+ private buildCompatibilityWarnings;
70
+ /**
71
+ * find fallback
72
+ */
73
+ private executeFind;
74
+ /**
75
+ * 执行 read 聚合
76
+ */
77
+ private executeRead;
78
+ /**
79
+ * 执行 link 聚合
80
+ */
81
+ private executeLink;
82
+ /**
83
+ * 执行 show 聚合
84
+ */
85
+ private executeShow;
86
+ /**
87
+ * 创建空输出
88
+ */
89
+ private createEmptyOutput;
90
+ /**
91
+ * 聚合多个 Confidence
92
+ */
93
+ private combineConfidence;
94
+ /**
95
+ * 构建 Confidence
96
+ */
97
+ private buildConfidence;
98
+ /**
99
+ * 合并 UnifiedResult
100
+ */
101
+ private mergeUnifiedResults;
102
+ /**
103
+ * 加载 CodeMap 数据
104
+ */
105
+ private loadCodeMap;
106
+ /**
107
+ * 查找目标模块
108
+ */
109
+ private findMatchingModules;
110
+ /**
111
+ * 查找单个匹配模块
112
+ */
113
+ private findMatchingModule;
114
+ /**
115
+ * 构建 link dependency analysis
116
+ */
117
+ private buildLinkDependencyAnalysis;
118
+ /**
119
+ * 构建 link reference analysis
120
+ */
121
+ private buildLinkReferenceAnalysis;
122
+ /**
123
+ * 基于模块构建 reference item
124
+ */
125
+ private buildModuleReferenceItem;
126
+ /**
127
+ * 基于关键词构建 reference item
128
+ */
129
+ private buildKeywordReferenceItem;
130
+ /**
131
+ * 将 reference analysis 转为 results
132
+ */
133
+ private buildReferenceResults;
134
+ /**
135
+ * 构建 show 结果
136
+ */
137
+ private buildShowResults;
138
+ /**
139
+ * 转为相对路径
140
+ */
141
+ private toRelativePath;
142
+ /**
143
+ * 去除模块扩展名
144
+ */
145
+ private stripModuleExtension;
146
+ /**
147
+ * 判断 import source 是否引用目标模块
148
+ */
149
+ private matchesModuleSource;
58
150
  /**
59
151
  * 为 UnifiedResult 添加 location 字段
60
152
  */
@@ -84,9 +176,6 @@ export declare class AnalyzeCommand {
84
176
  */
85
177
  private printHumanOutput;
86
178
  }
87
- /**
88
- * 解析 CLI 参数
89
- */
90
179
  export declare function parseAnalyzeArgs(argv: string[]): AnalyzeArgs;
91
180
  /**
92
181
  * CLI 入口函数
@@ -1 +1 @@
1
- {"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/analyze.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAA4C,MAAM,6BAA6B,CAAC;AAUrH;;GAEG;AACH,oBAAY,gBAAgB;IAC1B,yBAAyB;IACzB,oBAAoB,UAAU;IAC9B,oBAAoB;IACpB,4BAA4B,UAAU;IACtC,qBAAqB;IACrB,sBAAsB,UAAU;IAChC,oBAAoB;IACpB,uBAAuB,UAAU;IACjC,oBAAoB;IACpB,sBAAsB,UAAU;IAChC,mBAAmB;IACnB,oBAAoB,UAAU;CAC/B;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAO3D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,UAAU,EASrC,CAAC;AAEF;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,IAAI,CAAc;IAE1B;;;OAGG;gBACS,IAAI,EAAE,WAAW;IAI7B;;;OAGG;IACH,OAAO,CAAC,QAAQ;IAkBhB;;OAEG;IACH,OAAO,CAAC,WAAW;IAMnB;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IA4BjC;;OAEG;YACW,uBAAuB;IA8DrC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAqB1B;;OAEG;YACW,aAAa;IAwD3B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAY3B;;OAEG;YACW,WAAW;IAqDzB;;OAEG;YACW,iBAAiB;IAqD/B;;OAEG;YACW,eAAe;IAmB7B;;OAEG;IACH,OAAO,CAAC,gBAAgB;CAuBzB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,WAAW,CA2E5D;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAuDlE;AAkCD,YAAY,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/analyze.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAaH,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,UAAU,EAahB,MAAM,6BAA6B,CAAC;AAUrC;;GAEG;AACH,oBAAY,gBAAgB;IAC1B,yBAAyB;IACzB,oBAAoB,UAAU;IAC9B,oBAAoB;IACpB,4BAA4B,UAAU;IACtC,qBAAqB;IACrB,sBAAsB,UAAU;IAChC,oBAAoB;IACpB,uBAAuB,UAAU;IACjC,oBAAoB;IACpB,sBAAsB,UAAU;IAChC,mBAAmB;IACnB,oBAAoB,UAAU;CAC/B;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAO3D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,UAAU,EAErC,CAAC;AAEF;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,IAAI,CAAc;IAE1B;;;OAGG;gBACS,IAAI,EAAE,WAAW;IAI7B;;;OAGG;IACH,OAAO,CAAC,QAAQ;IAiDhB;;OAEG;IACH,OAAO,CAAC,WAAW;IAMnB;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IAyBjC;;OAEG;YACW,uBAAuB;IAYrC;;OAEG;YACW,uBAAuB;IAuDrC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAezB;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAuBlC;;OAEG;YACW,WAAW;IAyBzB;;OAEG;YACW,WAAW;IAqDzB;;OAEG;YACW,WAAW;IAuCzB;;OAEG;YACW,WAAW;IAmCzB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAmBzB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAazB;;OAEG;IACH,OAAO,CAAC,eAAe;IAQvB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAgB3B;;OAEG;YACW,WAAW;IAUzB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAe3B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAO1B;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAiBnC;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAkClC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IA4ChC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAsCjC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAyB7B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAoDxB;;OAEG;IACH,OAAO,CAAC,cAAc;IAItB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAI5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAkB3B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAqB1B;;OAEG;YACW,aAAa;IAsC3B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAY3B;;OAEG;YACW,WAAW;IAoCzB;;OAEG;YACW,iBAAiB;IAoC/B;;OAEG;YACW,eAAe;IAmB7B;;OAEG;IACH,OAAO,CAAC,gBAAgB;CAuBzB;AAiBD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,WAAW,CA6B5D;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA0DlE;AAUD,YAAY,EAAE,WAAW,EAAE,CAAC"}