@mycodemap/mycodemap 0.4.1 → 0.4.2

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 (222) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/README.md +214 -221
  3. package/dist/cli/commands/analyze-options.d.ts +36 -0
  4. package/dist/cli/commands/analyze-options.d.ts.map +1 -0
  5. package/dist/cli/commands/analyze-options.js +147 -0
  6. package/dist/cli/commands/analyze-options.js.map +1 -0
  7. package/dist/cli/commands/analyze.d.ts +93 -4
  8. package/dist/cli/commands/analyze.d.ts.map +1 -1
  9. package/dist/cli/commands/analyze.js +592 -176
  10. package/dist/cli/commands/analyze.js.map +1 -1
  11. package/dist/cli/commands/ci.d.ts +47 -1
  12. package/dist/cli/commands/ci.d.ts.map +1 -1
  13. package/dist/cli/commands/ci.js +208 -1
  14. package/dist/cli/commands/ci.js.map +1 -1
  15. package/dist/cli/commands/export.d.ts.map +1 -1
  16. package/dist/cli/commands/export.js +2 -2
  17. package/dist/cli/commands/export.js.map +1 -1
  18. package/dist/cli/commands/generate.d.ts +8 -2
  19. package/dist/cli/commands/generate.d.ts.map +1 -1
  20. package/dist/cli/commands/generate.js +151 -22
  21. package/dist/cli/commands/generate.js.map +1 -1
  22. package/dist/cli/commands/init.d.ts.map +1 -1
  23. package/dist/cli/commands/init.js +2 -13
  24. package/dist/cli/commands/init.js.map +1 -1
  25. package/dist/cli/commands/ship/checker.d.ts.map +1 -1
  26. package/dist/cli/commands/ship/checker.js +0 -3
  27. package/dist/cli/commands/ship/checker.js.map +1 -1
  28. package/dist/cli/commands/ship/rules/quality-rules.d.ts +0 -1
  29. package/dist/cli/commands/ship/rules/quality-rules.d.ts.map +1 -1
  30. package/dist/cli/commands/ship/rules/quality-rules.js +4 -76
  31. package/dist/cli/commands/ship/rules/quality-rules.js.map +1 -1
  32. package/dist/cli/commands/workflow.js +4 -4
  33. package/dist/cli/commands/workflow.js.map +1 -1
  34. package/dist/cli/config-loader.d.ts +31 -0
  35. package/dist/cli/config-loader.d.ts.map +1 -0
  36. package/dist/cli/config-loader.js +235 -0
  37. package/dist/cli/config-loader.js.map +1 -0
  38. package/dist/cli/index.js +18 -63
  39. package/dist/cli/index.js.map +1 -1
  40. package/dist/cli/removed-commands.d.ts +9 -0
  41. package/dist/cli/removed-commands.d.ts.map +1 -0
  42. package/dist/cli/removed-commands.js +48 -0
  43. package/dist/cli/removed-commands.js.map +1 -0
  44. package/dist/cli/storage-runtime.d.ts +8 -0
  45. package/dist/cli/storage-runtime.d.ts.map +1 -0
  46. package/dist/cli/storage-runtime.js +14 -0
  47. package/dist/cli/storage-runtime.js.map +1 -0
  48. package/dist/cli/tree-sitter-check.d.ts.map +1 -1
  49. package/dist/cli/tree-sitter-check.js +0 -1
  50. package/dist/cli/tree-sitter-check.js.map +1 -1
  51. package/dist/cli-new/commands/export.d.ts.map +1 -1
  52. package/dist/cli-new/commands/export.js +2 -2
  53. package/dist/cli-new/commands/export.js.map +1 -1
  54. package/dist/cli-new/commands/query.d.ts.map +1 -1
  55. package/dist/cli-new/commands/query.js +5 -4
  56. package/dist/cli-new/commands/query.js.map +1 -1
  57. package/dist/cli-new/index.d.ts.map +1 -1
  58. package/dist/cli-new/index.js +0 -2
  59. package/dist/cli-new/index.js.map +1 -1
  60. package/dist/core/analyzer.d.ts.map +1 -1
  61. package/dist/core/analyzer.js +7 -39
  62. package/dist/core/analyzer.js.map +1 -1
  63. package/dist/core/file-discovery.d.ts +17 -0
  64. package/dist/core/file-discovery.d.ts.map +1 -0
  65. package/dist/core/file-discovery.js +75 -0
  66. package/dist/core/file-discovery.js.map +1 -0
  67. package/dist/core/global-index.d.ts +5 -0
  68. package/dist/core/global-index.d.ts.map +1 -1
  69. package/dist/core/global-index.js +71 -21
  70. package/dist/core/global-index.js.map +1 -1
  71. package/dist/generator/index.d.ts.map +1 -1
  72. package/dist/generator/index.js +8 -0
  73. package/dist/generator/index.js.map +1 -1
  74. package/dist/infrastructure/parser/implementations/GoParser.d.ts +2 -5
  75. package/dist/infrastructure/parser/implementations/GoParser.d.ts.map +1 -1
  76. package/dist/infrastructure/parser/implementations/GoParser.js +2 -5
  77. package/dist/infrastructure/parser/implementations/GoParser.js.map +1 -1
  78. package/dist/infrastructure/parser/implementations/PythonParser.d.ts +1 -5
  79. package/dist/infrastructure/parser/implementations/PythonParser.d.ts.map +1 -1
  80. package/dist/infrastructure/parser/implementations/PythonParser.js +1 -5
  81. package/dist/infrastructure/parser/implementations/PythonParser.js.map +1 -1
  82. package/dist/infrastructure/parser/implementations/TypeScriptParser.d.ts +1 -5
  83. package/dist/infrastructure/parser/implementations/TypeScriptParser.d.ts.map +1 -1
  84. package/dist/infrastructure/parser/implementations/TypeScriptParser.js +1 -5
  85. package/dist/infrastructure/parser/implementations/TypeScriptParser.js.map +1 -1
  86. package/dist/infrastructure/storage/StorageFactory.d.ts +0 -1
  87. package/dist/infrastructure/storage/StorageFactory.d.ts.map +1 -1
  88. package/dist/infrastructure/storage/StorageFactory.js +4 -29
  89. package/dist/infrastructure/storage/StorageFactory.js.map +1 -1
  90. package/dist/infrastructure/storage/adapters/FileSystemStorage.d.ts.map +1 -1
  91. package/dist/infrastructure/storage/adapters/FileSystemStorage.js +24 -137
  92. package/dist/infrastructure/storage/adapters/FileSystemStorage.js.map +1 -1
  93. package/dist/infrastructure/storage/adapters/KuzuDBStorage.d.ts +10 -18
  94. package/dist/infrastructure/storage/adapters/KuzuDBStorage.d.ts.map +1 -1
  95. package/dist/infrastructure/storage/adapters/KuzuDBStorage.js +103 -146
  96. package/dist/infrastructure/storage/adapters/KuzuDBStorage.js.map +1 -1
  97. package/dist/infrastructure/storage/adapters/MemoryStorage.d.ts +0 -1
  98. package/dist/infrastructure/storage/adapters/MemoryStorage.d.ts.map +1 -1
  99. package/dist/infrastructure/storage/adapters/MemoryStorage.js +16 -136
  100. package/dist/infrastructure/storage/adapters/MemoryStorage.js.map +1 -1
  101. package/dist/infrastructure/storage/graph-helpers.d.ts +16 -0
  102. package/dist/infrastructure/storage/graph-helpers.d.ts.map +1 -0
  103. package/dist/infrastructure/storage/graph-helpers.js +161 -0
  104. package/dist/infrastructure/storage/graph-helpers.js.map +1 -0
  105. package/dist/infrastructure/storage/index.d.ts.map +1 -1
  106. package/dist/interface/config/index.d.ts +10 -1
  107. package/dist/interface/config/index.d.ts.map +1 -1
  108. package/dist/interface/types/index.d.ts +13 -0
  109. package/dist/interface/types/index.d.ts.map +1 -1
  110. package/dist/interface/types/storage.d.ts +1 -4
  111. package/dist/interface/types/storage.d.ts.map +1 -1
  112. package/dist/orchestrator/confidence.d.ts +9 -9
  113. package/dist/orchestrator/confidence.d.ts.map +1 -1
  114. package/dist/orchestrator/confidence.js +44 -67
  115. package/dist/orchestrator/confidence.js.map +1 -1
  116. package/dist/orchestrator/file-header-scanner.d.ts.map +1 -1
  117. package/dist/orchestrator/file-header-scanner.js +22 -31
  118. package/dist/orchestrator/file-header-scanner.js.map +1 -1
  119. package/dist/orchestrator/intent-router.d.ts +2 -11
  120. package/dist/orchestrator/intent-router.d.ts.map +1 -1
  121. package/dist/orchestrator/intent-router.js +58 -49
  122. package/dist/orchestrator/intent-router.js.map +1 -1
  123. package/dist/orchestrator/tool-orchestrator.d.ts.map +1 -1
  124. package/dist/orchestrator/tool-orchestrator.js +6 -4
  125. package/dist/orchestrator/tool-orchestrator.js.map +1 -1
  126. package/dist/orchestrator/types.d.ts +113 -2
  127. package/dist/orchestrator/types.d.ts.map +1 -1
  128. package/dist/orchestrator/types.js +29 -0
  129. package/dist/orchestrator/types.js.map +1 -1
  130. package/dist/orchestrator/workflow/config.d.ts +4 -12
  131. package/dist/orchestrator/workflow/config.d.ts.map +1 -1
  132. package/dist/orchestrator/workflow/config.js +4 -6
  133. package/dist/orchestrator/workflow/config.js.map +1 -1
  134. package/dist/orchestrator/workflow/git-analyzer.d.ts.map +1 -1
  135. package/dist/orchestrator/workflow/git-analyzer.js +9 -19
  136. package/dist/orchestrator/workflow/git-analyzer.js.map +1 -1
  137. package/dist/orchestrator/workflow/phase-inheritance.d.ts.map +1 -1
  138. package/dist/orchestrator/workflow/phase-inheritance.js +14 -23
  139. package/dist/orchestrator/workflow/phase-inheritance.js.map +1 -1
  140. package/dist/orchestrator/workflow/result-fusion.d.ts.map +1 -1
  141. package/dist/orchestrator/workflow/result-fusion.js +9 -11
  142. package/dist/orchestrator/workflow/result-fusion.js.map +1 -1
  143. package/dist/orchestrator/workflow/templates.d.ts +4 -1
  144. package/dist/orchestrator/workflow/templates.d.ts.map +1 -1
  145. package/dist/orchestrator/workflow/templates.js +49 -207
  146. package/dist/orchestrator/workflow/templates.js.map +1 -1
  147. package/dist/orchestrator/workflow/test-linker.d.ts.map +1 -1
  148. package/dist/orchestrator/workflow/test-linker.js +12 -24
  149. package/dist/orchestrator/workflow/test-linker.js.map +1 -1
  150. package/dist/orchestrator/workflow/types.d.ts +11 -8
  151. package/dist/orchestrator/workflow/types.d.ts.map +1 -1
  152. package/dist/orchestrator/workflow/types.js +8 -1
  153. package/dist/orchestrator/workflow/types.js.map +1 -1
  154. package/dist/orchestrator/workflow/visualizer.d.ts.map +1 -1
  155. package/dist/orchestrator/workflow/visualizer.js +7 -9
  156. package/dist/orchestrator/workflow/visualizer.js.map +1 -1
  157. package/dist/orchestrator/workflow/workflow-context.d.ts.map +1 -1
  158. package/dist/orchestrator/workflow/workflow-context.js +3 -5
  159. package/dist/orchestrator/workflow/workflow-context.js.map +1 -1
  160. package/dist/orchestrator/workflow/workflow-orchestrator.d.ts +0 -4
  161. package/dist/orchestrator/workflow/workflow-orchestrator.d.ts.map +1 -1
  162. package/dist/orchestrator/workflow/workflow-orchestrator.js +7 -99
  163. package/dist/orchestrator/workflow/workflow-orchestrator.js.map +1 -1
  164. package/dist/parser/index.d.ts.map +1 -1
  165. package/dist/parser/index.js +2 -2
  166. package/dist/parser/index.js.map +1 -1
  167. package/dist/plugins/index.d.ts +5 -3
  168. package/dist/plugins/index.d.ts.map +1 -1
  169. package/dist/plugins/index.js +19 -8
  170. package/dist/plugins/index.js.map +1 -1
  171. package/dist/plugins/plugin-loader.d.ts +21 -6
  172. package/dist/plugins/plugin-loader.d.ts.map +1 -1
  173. package/dist/plugins/plugin-loader.js +170 -54
  174. package/dist/plugins/plugin-loader.js.map +1 -1
  175. package/dist/plugins/plugin-registry.d.ts +7 -4
  176. package/dist/plugins/plugin-registry.d.ts.map +1 -1
  177. package/dist/plugins/plugin-registry.js +62 -14
  178. package/dist/plugins/plugin-registry.js.map +1 -1
  179. package/dist/plugins/types.d.ts +16 -6
  180. package/dist/plugins/types.d.ts.map +1 -1
  181. package/dist/plugins/types.js +2 -0
  182. package/dist/plugins/types.js.map +1 -1
  183. package/dist/server/handlers/AnalysisHandler.d.ts +16 -2
  184. package/dist/server/handlers/AnalysisHandler.d.ts.map +1 -1
  185. package/dist/server/handlers/AnalysisHandler.js +31 -47
  186. package/dist/server/handlers/AnalysisHandler.js.map +1 -1
  187. package/dist/server/routes/api.d.ts.map +1 -1
  188. package/dist/server/routes/api.js +31 -12
  189. package/dist/server/routes/api.js.map +1 -1
  190. package/docs/AI_ASSISTANT_SETUP.md +3 -1
  191. package/docs/SETUP_GUIDE.md +41 -17
  192. package/docs/ai-guide/COMMANDS.md +106 -102
  193. package/docs/ai-guide/INTEGRATION.md +23 -21
  194. package/docs/ai-guide/OUTPUT.md +206 -10
  195. package/docs/ai-guide/PATTERNS.md +64 -15
  196. package/docs/ai-guide/PROMPTS.md +12 -12
  197. package/docs/ai-guide/QUICKSTART.md +35 -19
  198. package/docs/ai-guide/README.md +22 -4
  199. package/docs/product-specs/MVP3-ARCHITECTURE-COMPARISON.md +159 -434
  200. package/docs/product-specs/MVP3-ARCHITECTURE-REDESIGN-PRD.md +169 -261
  201. package/docs/product-specs/MVP3-ARCHITECTURE-REDESIGN-TECH-PRD.md +201 -1259
  202. package/docs/product-specs/README.md +8 -1
  203. package/docs/rules/architecture-guardrails.md +1 -2
  204. package/docs/rules/engineering-with-codex-openai.md +15 -9
  205. package/docs/rules/validation.md +26 -4
  206. package/mycodemap.config.schema.json +76 -5
  207. package/package.json +1 -1
  208. package/scripts/sync-analyze-docs.js +500 -0
  209. package/scripts/validate-ai-docs.js +54 -1
  210. package/scripts/validate-docs.js +746 -26
  211. package/dist/cli/commands/server.d.ts +0 -9
  212. package/dist/cli/commands/server.d.ts.map +0 -1
  213. package/dist/cli/commands/server.js +0 -68
  214. package/dist/cli/commands/server.js.map +0 -1
  215. package/dist/cli-new/commands/server.d.ts +0 -13
  216. package/dist/cli-new/commands/server.d.ts.map +0 -1
  217. package/dist/cli-new/commands/server.js +0 -94
  218. package/dist/cli-new/commands/server.js.map +0 -1
  219. package/dist/infrastructure/storage/adapters/Neo4jStorage.d.ts +0 -49
  220. package/dist/infrastructure/storage/adapters/Neo4jStorage.d.ts.map +0 -1
  221. package/dist/infrastructure/storage/adapters/Neo4jStorage.js +0 -222
  222. package/dist/infrastructure/storage/adapters/Neo4jStorage.js.map +0 -1
@@ -0,0 +1,36 @@
1
+ /**
2
+ * [META] since:2026-03-24 | owner:cli-team | stable:false
3
+ * [WHY] 统一 analyze 的 option schema,减少 commander/help/parse 三处事实漂移
4
+ */
5
+ import type { ParseArgsConfig } from 'node:util';
6
+ import { Command } from 'commander';
7
+ type AnalyzeParseOption = {
8
+ type: 'string' | 'boolean';
9
+ short?: string;
10
+ multiple?: boolean;
11
+ default?: boolean;
12
+ };
13
+ interface AnalyzeOptionDefinition {
14
+ name: string;
15
+ flags: string;
16
+ description: string;
17
+ helpDescription: string;
18
+ docDescription?: string;
19
+ docDefaultValue?: string;
20
+ parse: AnalyzeParseOption;
21
+ defaultValue?: string;
22
+ includeInCommander?: boolean;
23
+ includeInDocs?: boolean;
24
+ }
25
+ export declare const ANALYZE_COMMAND_DESCRIPTION = "\u7EDF\u4E00\u5206\u6790\u5165\u53E3 - \u652F\u6301\u591A\u79CD\u5206\u6790\u610F\u56FE";
26
+ export declare const ANALYZE_OPTION_DEFINITIONS: readonly AnalyzeOptionDefinition[];
27
+ export declare const ANALYZE_PARSE_OPTIONS: NonNullable<ParseArgsConfig["options"]>;
28
+ export declare function applyAnalyzeCliOptions(command: Command): Command;
29
+ export declare function configureAnalyzeCommand(command: Command): Command;
30
+ export declare function renderAnalyzeHelpOptions(): string;
31
+ export declare const ANALYZE_HELP_EXAMPLES: readonly ["codemap analyze -i find -k \"SourceLocation\" --json --structured", "codemap analyze -i read -t src/index.ts --scope transitive --json", "codemap analyze -i link -t src/utils --json", "codemap analyze -i show -t src/ --output-mode human"];
32
+ export declare function renderAnalyzeHelpExamples(): string;
33
+ export declare function renderAnalyzeAfterHelpText(): string;
34
+ export declare function getAnalyzeHelpText(programName?: string): string;
35
+ export {};
36
+ //# sourceMappingURL=analyze-options.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analyze-options.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/analyze-options.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,KAAK,kBAAkB,GAAG;IACxB,IAAI,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,UAAU,uBAAuB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE,kBAAkB,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,eAAO,MAAM,2BAA2B,4FAAsB,CAAC;AAE/D,eAAO,MAAM,0BAA0B,EAAE,SAAS,uBAAuB,EA8F/D,CAAC;AAEX,eAAO,MAAM,qBAAqB,EAE7B,WAAW,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC;AAE7C,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAehE;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAIjE;AAED,wBAAgB,wBAAwB,IAAI,MAAM,CAUjD;AAED,eAAO,MAAM,qBAAqB,2PAKxB,CAAC;AAEX,wBAAgB,yBAAyB,IAAI,MAAM,CAElD;AAED,wBAAgB,0BAA0B,IAAI,MAAM,CAEnD;AAED,wBAAgB,kBAAkB,CAAC,WAAW,GAAE,MAAoB,GAAG,MAAM,CAO5E"}
@@ -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"}