mta-mcp 2.2.0 → 2.3.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 (180) hide show
  1. package/bin/mta.cjs +43 -0
  2. package/dist/index.cjs +4784 -0
  3. package/dist/index.cjs.map +1 -0
  4. package/dist/index.d.cts +1 -0
  5. package/dist/index.d.ts +1 -0
  6. package/dist/index.js +4769 -0
  7. package/dist/index.js.map +1 -0
  8. package/package.json +21 -10
  9. package/build/core/agentTemplate.d.ts +0 -33
  10. package/build/core/agentTemplate.d.ts.map +0 -1
  11. package/build/core/agentTemplate.js +0 -158
  12. package/build/core/agentTemplate.js.map +0 -1
  13. package/build/core/analyzers/eslint.d.ts +0 -51
  14. package/build/core/analyzers/eslint.d.ts.map +0 -1
  15. package/build/core/analyzers/eslint.js +0 -259
  16. package/build/core/analyzers/eslint.js.map +0 -1
  17. package/build/core/analyzers/index.d.ts +0 -9
  18. package/build/core/analyzers/index.d.ts.map +0 -1
  19. package/build/core/analyzers/index.js +0 -9
  20. package/build/core/analyzers/index.js.map +0 -1
  21. package/build/core/analyzers/registry.d.ts +0 -59
  22. package/build/core/analyzers/registry.d.ts.map +0 -1
  23. package/build/core/analyzers/registry.js +0 -241
  24. package/build/core/analyzers/registry.js.map +0 -1
  25. package/build/core/analyzers/tsconfig.d.ts +0 -45
  26. package/build/core/analyzers/tsconfig.d.ts.map +0 -1
  27. package/build/core/analyzers/tsconfig.js +0 -197
  28. package/build/core/analyzers/tsconfig.js.map +0 -1
  29. package/build/core/analyzers/types.d.ts +0 -176
  30. package/build/core/analyzers/types.d.ts.map +0 -1
  31. package/build/core/analyzers/types.js +0 -39
  32. package/build/core/analyzers/types.js.map +0 -1
  33. package/build/core/analyzers/vite.d.ts +0 -46
  34. package/build/core/analyzers/vite.d.ts.map +0 -1
  35. package/build/core/analyzers/vite.js +0 -211
  36. package/build/core/analyzers/vite.js.map +0 -1
  37. package/build/core/autoInitializer.d.ts +0 -34
  38. package/build/core/autoInitializer.d.ts.map +0 -1
  39. package/build/core/autoInitializer.js +0 -145
  40. package/build/core/autoInitializer.js.map +0 -1
  41. package/build/core/codeValidator.d.ts +0 -82
  42. package/build/core/codeValidator.d.ts.map +0 -1
  43. package/build/core/codeValidator.js +0 -287
  44. package/build/core/codeValidator.js.map +0 -1
  45. package/build/core/enhancedProjectAnalyzer.d.ts +0 -102
  46. package/build/core/enhancedProjectAnalyzer.d.ts.map +0 -1
  47. package/build/core/enhancedProjectAnalyzer.js +0 -312
  48. package/build/core/enhancedProjectAnalyzer.js.map +0 -1
  49. package/build/core/errors.d.ts +0 -84
  50. package/build/core/errors.d.ts.map +0 -1
  51. package/build/core/errors.js +0 -151
  52. package/build/core/errors.js.map +0 -1
  53. package/build/core/githubClient.d.ts +0 -26
  54. package/build/core/githubClient.d.ts.map +0 -1
  55. package/build/core/githubClient.js +0 -60
  56. package/build/core/githubClient.js.map +0 -1
  57. package/build/core/i18nDetector.d.ts +0 -47
  58. package/build/core/i18nDetector.d.ts.map +0 -1
  59. package/build/core/i18nDetector.js +0 -314
  60. package/build/core/i18nDetector.js.map +0 -1
  61. package/build/core/index.d.ts +0 -11
  62. package/build/core/index.d.ts.map +0 -1
  63. package/build/core/index.js +0 -14
  64. package/build/core/index.js.map +0 -1
  65. package/build/core/logger.d.ts +0 -91
  66. package/build/core/logger.d.ts.map +0 -1
  67. package/build/core/logger.js +0 -164
  68. package/build/core/logger.js.map +0 -1
  69. package/build/core/mappings/index.d.ts +0 -5
  70. package/build/core/mappings/index.d.ts.map +0 -1
  71. package/build/core/mappings/index.js +0 -5
  72. package/build/core/mappings/index.js.map +0 -1
  73. package/build/core/mappings/scenarioMappings.d.ts +0 -51
  74. package/build/core/mappings/scenarioMappings.d.ts.map +0 -1
  75. package/build/core/mappings/scenarioMappings.js +0 -105
  76. package/build/core/mappings/scenarioMappings.js.map +0 -1
  77. package/build/core/matching/index.d.ts +0 -8
  78. package/build/core/matching/index.d.ts.map +0 -1
  79. package/build/core/matching/index.js +0 -8
  80. package/build/core/matching/index.js.map +0 -1
  81. package/build/core/matching/intentAnalyzer.d.ts +0 -78
  82. package/build/core/matching/intentAnalyzer.d.ts.map +0 -1
  83. package/build/core/matching/intentAnalyzer.js +0 -255
  84. package/build/core/matching/intentAnalyzer.js.map +0 -1
  85. package/build/core/matching/standardMatcher.d.ts +0 -101
  86. package/build/core/matching/standardMatcher.d.ts.map +0 -1
  87. package/build/core/matching/standardMatcher.js +0 -299
  88. package/build/core/matching/standardMatcher.js.map +0 -1
  89. package/build/core/matching/weights.d.ts +0 -64
  90. package/build/core/matching/weights.d.ts.map +0 -1
  91. package/build/core/matching/weights.js +0 -334
  92. package/build/core/matching/weights.js.map +0 -1
  93. package/build/core/projectContextManager.d.ts +0 -39
  94. package/build/core/projectContextManager.d.ts.map +0 -1
  95. package/build/core/projectContextManager.js +0 -147
  96. package/build/core/projectContextManager.js.map +0 -1
  97. package/build/core/scenarioDetector.d.ts +0 -2
  98. package/build/core/scenarioDetector.d.ts.map +0 -1
  99. package/build/core/scenarioDetector.js +0 -2
  100. package/build/core/scenarioDetector.js.map +0 -1
  101. package/build/core/smartAgentMatcher.d.ts +0 -51
  102. package/build/core/smartAgentMatcher.d.ts.map +0 -1
  103. package/build/core/smartAgentMatcher.js +0 -493
  104. package/build/core/smartAgentMatcher.js.map +0 -1
  105. package/build/core/standardsManager.d.ts +0 -130
  106. package/build/core/standardsManager.d.ts.map +0 -1
  107. package/build/core/standardsManager.js +0 -600
  108. package/build/core/standardsManager.js.map +0 -1
  109. package/build/core/templates/discovery.d.ts +0 -41
  110. package/build/core/templates/discovery.d.ts.map +0 -1
  111. package/build/core/templates/discovery.js +0 -262
  112. package/build/core/templates/discovery.js.map +0 -1
  113. package/build/core/templates/types.d.ts +0 -80
  114. package/build/core/templates/types.d.ts.map +0 -1
  115. package/build/core/templates/types.js +0 -10
  116. package/build/core/templates/types.js.map +0 -1
  117. package/build/core/types.d.ts +0 -57
  118. package/build/core/types.d.ts.map +0 -1
  119. package/build/core/types.js +0 -22
  120. package/build/core/types.js.map +0 -1
  121. package/build/index.d.ts +0 -3
  122. package/build/index.d.ts.map +0 -1
  123. package/build/index.js +0 -576
  124. package/build/index.js.map +0 -1
  125. package/build/tools/analyzeProject.d.ts +0 -12
  126. package/build/tools/analyzeProject.d.ts.map +0 -1
  127. package/build/tools/analyzeProject.js +0 -85
  128. package/build/tools/analyzeProject.js.map +0 -1
  129. package/build/tools/autoSetup.d.ts +0 -15
  130. package/build/tools/autoSetup.d.ts.map +0 -1
  131. package/build/tools/autoSetup.js +0 -291
  132. package/build/tools/autoSetup.js.map +0 -1
  133. package/build/tools/generateConfig.d.ts +0 -16
  134. package/build/tools/generateConfig.d.ts.map +0 -1
  135. package/build/tools/generateConfig.js +0 -379
  136. package/build/tools/generateConfig.js.map +0 -1
  137. package/build/tools/generateProjectAgent.d.ts +0 -15
  138. package/build/tools/generateProjectAgent.d.ts.map +0 -1
  139. package/build/tools/generateProjectAgent.js +0 -348
  140. package/build/tools/generateProjectAgent.js.map +0 -1
  141. package/build/tools/getCompactStandards.d.ts +0 -20
  142. package/build/tools/getCompactStandards.d.ts.map +0 -1
  143. package/build/tools/getCompactStandards.js +0 -367
  144. package/build/tools/getCompactStandards.js.map +0 -1
  145. package/build/tools/getSmartStandards.d.ts +0 -15
  146. package/build/tools/getSmartStandards.d.ts.map +0 -1
  147. package/build/tools/getSmartStandards.js +0 -201
  148. package/build/tools/getSmartStandards.js.map +0 -1
  149. package/build/tools/getStandardById.d.ts +0 -42
  150. package/build/tools/getStandardById.d.ts.map +0 -1
  151. package/build/tools/getStandardById.js +0 -289
  152. package/build/tools/getStandardById.js.map +0 -1
  153. package/build/tools/getTemplate.d.ts +0 -37
  154. package/build/tools/getTemplate.d.ts.map +0 -1
  155. package/build/tools/getTemplate.js +0 -78
  156. package/build/tools/getTemplate.js.map +0 -1
  157. package/build/tools/healthCheck.d.ts +0 -14
  158. package/build/tools/healthCheck.d.ts.map +0 -1
  159. package/build/tools/healthCheck.js +0 -237
  160. package/build/tools/healthCheck.js.map +0 -1
  161. package/build/tools/listAgents.d.ts +0 -10
  162. package/build/tools/listAgents.d.ts.map +0 -1
  163. package/build/tools/listAgents.js +0 -79
  164. package/build/tools/listAgents.js.map +0 -1
  165. package/build/tools/listTemplates.d.ts +0 -41
  166. package/build/tools/listTemplates.d.ts.map +0 -1
  167. package/build/tools/listTemplates.js +0 -81
  168. package/build/tools/listTemplates.js.map +0 -1
  169. package/build/tools/matchAgents.d.ts +0 -14
  170. package/build/tools/matchAgents.d.ts.map +0 -1
  171. package/build/tools/matchAgents.js +0 -70
  172. package/build/tools/matchAgents.js.map +0 -1
  173. package/build/tools/queryMappings.d.ts +0 -55
  174. package/build/tools/queryMappings.d.ts.map +0 -1
  175. package/build/tools/queryMappings.js +0 -119
  176. package/build/tools/queryMappings.js.map +0 -1
  177. package/build/tools/usePreset.d.ts +0 -23
  178. package/build/tools/usePreset.d.ts.map +0 -1
  179. package/build/tools/usePreset.js +0 -163
  180. package/build/tools/usePreset.js.map +0 -1
@@ -1,348 +0,0 @@
1
- import * as fs from 'fs';
2
- import * as path from 'path';
3
- import { SmartAgentMatcher } from '../core/smartAgentMatcher.js';
4
- import { I18nDetector } from '../core/i18nDetector.js';
5
- import { ConsoleLogger } from '../core/types.js';
6
- /**
7
- * 为项目生成专属的 MTA Agent
8
- * 包含技术栈标识和自动 MCP 工具调用指令
9
- */
10
- export async function generateProjectAgent(args) {
11
- const logger = new ConsoleLogger();
12
- try {
13
- // 自动检测项目路径
14
- let projectPath = args.projectPath;
15
- if (!projectPath) {
16
- projectPath = process.cwd();
17
- logger.log(`📍 未指定路径,使用当前目录: ${projectPath}`);
18
- }
19
- // 验证路径
20
- if (!fs.existsSync(projectPath)) {
21
- return {
22
- content: [{
23
- type: 'text',
24
- text: JSON.stringify({
25
- error: `项目路径不存在: ${projectPath}`
26
- }, null, 2)
27
- }]
28
- };
29
- }
30
- const projectName = path.basename(projectPath);
31
- logger.log(`🔍 正在分析项目: ${projectName}`);
32
- // 分析项目技术栈
33
- const matcher = new SmartAgentMatcher(logger);
34
- const workspaceFolder = {
35
- uri: { fsPath: projectPath },
36
- name: projectName,
37
- index: 0
38
- };
39
- const features = await matcher.analyzeProject(workspaceFolder);
40
- // 检测国际化配置
41
- const i18nConfig = await I18nDetector.detect(projectPath);
42
- // 读取 copilot-instructions.md 内容(如果需要集成)
43
- let instructionsContent = '';
44
- if (args.includeInstructions !== false) {
45
- const instructionsPath = path.join(projectPath, '.github', 'copilot-instructions.md');
46
- if (fs.existsSync(instructionsPath)) {
47
- instructionsContent = fs.readFileSync(instructionsPath, 'utf-8');
48
- logger.log(`📄 已读取 copilot-instructions.md`);
49
- }
50
- }
51
- // 确保 .github/agents 目录存在
52
- const agentsDir = path.join(projectPath, '.github', 'agents');
53
- if (!fs.existsSync(agentsDir)) {
54
- fs.mkdirSync(agentsDir, { recursive: true });
55
- logger.log(`📁 创建目录: .github/agents/`);
56
- }
57
- // 使用项目名作为 agent 名称(小写,替换特殊字符)
58
- const agentName = `mta-${projectName.toLowerCase().replace(/[^a-z0-9-]/g, '-')}`;
59
- const agentPath = path.join(agentsDir, `${agentName}.agent.md`);
60
- if (fs.existsSync(agentPath) && !args.force) {
61
- return {
62
- content: [{
63
- type: 'text',
64
- text: JSON.stringify({
65
- error: `Agent 文件已存在: ${agentPath}`,
66
- tip: '使用 force: true 参数强制覆盖'
67
- }, null, 2)
68
- }]
69
- };
70
- }
71
- // 生成 Agent 内容
72
- const agentContent = generateAgentContent(projectName, features, i18nConfig, instructionsContent);
73
- // 写入文件
74
- fs.writeFileSync(agentPath, agentContent, 'utf-8');
75
- logger.log(`✅ Agent 文件已生成: ${agentPath}`);
76
- // 更新项目的 settings.json
77
- const vscodeDir = path.join(projectPath, '.vscode');
78
- if (!fs.existsSync(vscodeDir)) {
79
- fs.mkdirSync(vscodeDir, { recursive: true });
80
- }
81
- const settingsPath = path.join(vscodeDir, 'settings.json');
82
- let settings = {};
83
- if (fs.existsSync(settingsPath)) {
84
- settings = JSON.parse(fs.readFileSync(settingsPath, 'utf-8'));
85
- }
86
- // 配置 agent 目录
87
- if (!settings['github.copilot.chat.agentDirectories']) {
88
- settings['github.copilot.chat.agentDirectories'] = [];
89
- }
90
- const agentDirPath = '.github/agents';
91
- if (!settings['github.copilot.chat.agentDirectories'].includes(agentDirPath)) {
92
- settings['github.copilot.chat.agentDirectories'].push(agentDirPath);
93
- fs.writeFileSync(settingsPath, JSON.stringify(settings, null, 2), 'utf-8');
94
- logger.log(`✅ 已更新 .vscode/settings.json`);
95
- }
96
- return {
97
- content: [{
98
- type: 'text',
99
- text: JSON.stringify({
100
- success: true,
101
- agentPath,
102
- agentName,
103
- projectName,
104
- techStack: {
105
- projectType: features.projectType,
106
- frameworks: features.frameworks,
107
- languages: features.languages,
108
- i18n: i18nConfig.enabled ? i18nConfig.type : 'none'
109
- },
110
- hasInstructions: !!instructionsContent,
111
- usage: `现在可以在 Copilot Chat 中使用 @${agentName} 开始对话`,
112
- nextSteps: [
113
- '在 VS Code 中重新加载窗口 (Cmd+Shift+P > Reload Window)',
114
- '打开 Copilot Chat (Cmd+Shift+I)',
115
- `输入 @${agentName} 开始使用智能助手`
116
- ]
117
- }, null, 2)
118
- }]
119
- };
120
- }
121
- catch (error) {
122
- logger.error(`生成 Agent 失败: ${error}`);
123
- return {
124
- content: [{
125
- type: 'text',
126
- text: JSON.stringify({
127
- error: error instanceof Error ? error.message : String(error)
128
- }, null, 2)
129
- }]
130
- };
131
- }
132
- }
133
- /**
134
- * 生成 Agent 文件内容
135
- */
136
- function generateAgentContent(projectName, features, i18nConfig, instructionsContent) {
137
- const date = new Date().toISOString().split('T')[0];
138
- // 生成技术栈标识符
139
- const techStackId = `${features.projectType}-${features.frameworks.join('-')}`.toLowerCase();
140
- // 生成 agent 名称
141
- const agentName = `mta-${projectName.toLowerCase().replace(/[^a-z0-9-]/g, '-')}`;
142
- // 根据技术栈生成 MCP 工具调用指令
143
- const mcpInstructions = generateMcpInstructions(features, i18nConfig);
144
- let content = `---
145
- description: '${projectName} 项目的智能开发助手 - 自动加载技术栈规范'
146
- tools: ['edit', 'search', 'new', 'runCommands', 'problems', 'changes', 'usages']
147
- ---
148
-
149
- # ${agentName} - ${projectName} 智能助手
150
-
151
- > **技术栈已检测** ✅
152
- > 生成时间: ${date}
153
-
154
- ---
155
-
156
- ## 🎯 项目技术栈
157
-
158
- \`\`\`yaml
159
- 项目类型: ${features.projectType}
160
- 框架: ${features.frameworks.join(', ')}
161
- 语言: ${features.languages.join(', ')}
162
- 工具: ${features.tools.join(', ')}
163
- 国际化: ${i18nConfig.enabled ? i18nConfig.type : '未配置'}
164
- 技术栈ID: ${techStackId}
165
- \`\`\`
166
-
167
- ---
168
-
169
- ## ⚠️ 强制初始化流程(首次对话必执行)
170
-
171
- **当用户首次使用 @${agentName} 时,必须按以下步骤执行:**
172
-
173
- ### 步骤 1: 加载项目规范 (必须)
174
-
175
- 根据当前文件类型和场景,调用对应的 MCP 工具:
176
-
177
- ${mcpInstructions}
178
-
179
- ### 步骤 2: 确认加载成功
180
-
181
- 在响应中明确告知用户:
182
- - ✅ 已加载规范: [工具名称]
183
- - 📦 当前技术栈: ${features.frameworks.join(', ')}
184
- - 🎯 适用场景: [根据用户问题说明]
185
-
186
- ### 步骤 3: 开始协助开发
187
-
188
- 加载规范后,才能进行:
189
- - 代码生成
190
- - 代码修改
191
- - 问题诊断
192
- - 架构建议
193
-
194
- ---
195
-
196
- ## 🔧 MCP 工具使用规范
197
-
198
- ### 日常开发(Token 优化)
199
-
200
- 使用 \`get_compact_standards\` 的 \`key-rules\` 模式(默认):
201
-
202
- \`\`\`typescript
203
- // 仅消耗 ~2000 tokens(比完整模式节省 85%)
204
- get_compact_standards({ currentFile: "当前文件路径" })
205
- \`\`\`
206
-
207
- ### 需要详细参考时
208
-
209
- \`\`\`typescript
210
- // 完整规范 ~15000 tokens
211
- get_compact_standards({ mode: "full", currentFile: "当前文件路径" })
212
- \`\`\`
213
-
214
- ### 场景化预设
215
-
216
- 使用预设快速获取特定场景规范:
217
-
218
- ${generatePresetExamples(features)}
219
-
220
- ### 智能推荐
221
-
222
- \`\`\`typescript
223
- // 零参数智能推荐(根据上下文自动判断)
224
- get_smart_standards()
225
- \`\`\`
226
-
227
- ---
228
-
229
- ## 📚 技术栈规范速查
230
-
231
- ${generateTechStackQuickRef(features)}
232
-
233
- ---
234
-
235
- ## 🚫 开发约束
236
-
237
- 1. **禁止跳过规范加载** - 任何代码生成前必须先调用 MCP 工具
238
- 2. **禁止创建文档** - 除非用户明确要求,否则不创建 .md 文件
239
- 3. **禁止表面修复** - 发现问题时,搜索全项目定位根因再修复
240
- 4. **强制语法检查** - 每次代码修改后必须验证标签配对、嵌套正确性
241
-
242
- ---
243
-
244
- ## 🔄 技术栈更新
245
-
246
- 如需添加新的框架或工具:
247
-
248
- 1. 用户说明新增技术(如 "项目新增了 Pinia 状态管理")
249
- 2. 助手调用 \`analyze_project\` 重新分析
250
- 3. 更新本文件的技术栈标识
251
- 4. 调整 MCP 工具调用指令
252
-
253
- ---
254
-
255
- ## 📝 使用记录
256
-
257
- <!-- 用户可在此记录常用命令或特殊配置 -->
258
-
259
- ---
260
-
261
- **生成工具**: Copilot Prompts MCP Server
262
- **维护**: 由 MCP 工具自动维护,可手动编辑
263
- `;
264
- // 如果有 copilot-instructions.md 内容,集成到 agent 中
265
- if (instructionsContent) {
266
- content += `
267
-
268
- ---
269
-
270
- ## 📖 项目开发规范(来自 copilot-instructions.md)
271
-
272
- `;
273
- // 提取自定义规范部分(CUSTOM_START 到 CUSTOM_END 之间的内容)
274
- const customMatch = instructionsContent.match(/<!-- CUSTOM_START -->([\s\S]*?)<!-- CUSTOM_END -->/m);
275
- if (customMatch) {
276
- content += `### 🎯 项目自定义规范\n\n${customMatch[1].trim()}\n\n`;
277
- }
278
- // 提取核心代码规范
279
- const coreRulesMatch = instructionsContent.match(/## 🎯 核心代码规范(自动加载)([\s\S]*?)---/m);
280
- if (coreRulesMatch) {
281
- content += `### 📝 核心代码规范\n\n${coreRulesMatch[1].trim()}\n\n`;
282
- }
283
- content += `> 💡 **提示**: 完整的项目规范请查看 \`.github/copilot-instructions.md\`\n`;
284
- }
285
- return content;
286
- }
287
- /**
288
- * 根据技术栈生成 MCP 工具调用指令
289
- */
290
- function generateMcpInstructions(features, i18nConfig) {
291
- const instructions = [];
292
- // Vue 相关
293
- if (features.frameworks.includes('vue3') || features.frameworks.includes('vue')) {
294
- instructions.push('**Vue 文件** → `get_compact_standards({ currentFile: "xxx.vue" })`');
295
- }
296
- // React 相关
297
- if (features.frameworks.includes('react')) {
298
- instructions.push('**React 组件** → `get_compact_standards({ currentFile: "xxx.tsx" })`');
299
- }
300
- // Flutter 相关
301
- if (features.frameworks.includes('flutter')) {
302
- instructions.push('**Flutter Widget** → `get_compact_standards({ currentFile: "xxx.dart" })`');
303
- }
304
- // TypeScript
305
- if (features.languages.includes('typescript')) {
306
- instructions.push('**TypeScript 文件** → `get_compact_standards({ currentFile: "xxx.ts" })`');
307
- }
308
- // 国际化
309
- if (i18nConfig.enabled) {
310
- instructions.push(`**国际化相关** → \`get_compact_standards({ scenario: "国际化 (${i18nConfig.type})" })\``);
311
- }
312
- // 通用场景
313
- instructions.push('**其他场景** → `get_smart_standards()` (智能推荐)');
314
- return instructions.map(i => `- ${i}`).join('\n');
315
- }
316
- /**
317
- * 生成预设示例
318
- */
319
- function generatePresetExamples(features) {
320
- const presets = [];
321
- if (features.frameworks.includes('vue3') || features.frameworks.includes('vue')) {
322
- presets.push('- `use_preset({ presetName: "vue3-component" })` - Vue 组件开发');
323
- presets.push('- `use_preset({ presetName: "vue3-form" })` - Vue 表单开发');
324
- }
325
- if (features.tools.includes('pinia')) {
326
- presets.push('- `use_preset({ presetName: "pinia-store" })` - 状态管理');
327
- }
328
- presets.push('- `use_preset({ presetName: "api-call" })` - API 调用封装');
329
- return presets.join('\n');
330
- }
331
- /**
332
- * 生成技术栈速查表
333
- */
334
- function generateTechStackQuickRef(features) {
335
- const refs = [];
336
- refs.push('| 技术 | 调用方式 |');
337
- refs.push('|------|----------|');
338
- features.frameworks.forEach(fw => {
339
- refs.push(`| ${fw} | \`get_compact_standards({ framework: "${fw}" })\` |`);
340
- });
341
- if (features.tools.length > 0) {
342
- features.tools.slice(0, 3).forEach(tool => {
343
- refs.push(`| ${tool} | \`get_compact_standards({ library: "${tool}" })\` |`);
344
- });
345
- }
346
- return refs.join('\n');
347
- }
348
- //# sourceMappingURL=generateProjectAgent.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generateProjectAgent.js","sourceRoot":"","sources":["../../src/tools/generateProjectAgent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAmB,MAAM,kBAAkB,CAAC;AAElE;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,IAI1C;IAGG,MAAM,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;IAEnC,IAAI,CAAC;QACD,WAAW;QACX,IAAI,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAEnC,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;YAC5B,MAAM,CAAC,GAAG,CAAC,oBAAoB,WAAW,EAAE,CAAC,CAAC;QAClD,CAAC;QAED,OAAO;QACP,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAC9B,OAAO;gBACH,OAAO,EAAE,CAAC;wBACN,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;4BACjB,KAAK,EAAE,YAAY,WAAW,EAAE;yBACnC,EAAE,IAAI,EAAE,CAAC,CAAC;qBACd,CAAC;aACL,CAAC;QACN,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC/C,MAAM,CAAC,GAAG,CAAC,cAAc,WAAW,EAAE,CAAC,CAAC;QAExC,UAAU;QACV,MAAM,OAAO,GAAG,IAAI,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,eAAe,GAAG;YACpB,GAAG,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE;YAC5B,IAAI,EAAE,WAAW;YACjB,KAAK,EAAE,CAAC;SACX,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,eAAsB,CAAC,CAAC;QAEtE,UAAU;QACV,MAAM,UAAU,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAE1D,wCAAwC;QACxC,IAAI,mBAAmB,GAAG,EAAE,CAAC;QAC7B,IAAI,IAAI,CAAC,mBAAmB,KAAK,KAAK,EAAE,CAAC;YACrC,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,yBAAyB,CAAC,CAAC;YACtF,IAAI,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBAClC,mBAAmB,GAAG,EAAE,CAAC,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;gBACjE,MAAM,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;YACjD,CAAC;QACL,CAAC;QAED,yBAAyB;QACzB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC9D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5B,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7C,MAAM,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;QAC3C,CAAC;QAED,8BAA8B;QAC9B,MAAM,SAAS,GAAG,OAAO,WAAW,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,EAAE,CAAC;QACjF,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,SAAS,WAAW,CAAC,CAAC;QAChE,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAC1C,OAAO;gBACH,OAAO,EAAE,CAAC;wBACN,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;4BACjB,KAAK,EAAE,gBAAgB,SAAS,EAAE;4BAClC,GAAG,EAAE,uBAAuB;yBAC/B,EAAE,IAAI,EAAE,CAAC,CAAC;qBACd,CAAC;aACL,CAAC;QACN,CAAC;QAED,cAAc;QACd,MAAM,YAAY,GAAG,oBAAoB,CAAC,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,mBAAmB,CAAC,CAAC;QAElG,OAAO;QACP,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;QACnD,MAAM,CAAC,GAAG,CAAC,kBAAkB,SAAS,EAAE,CAAC,CAAC;QAE1C,sBAAsB;QACtB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QACpD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5B,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACjD,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;QAC3D,IAAI,QAAQ,GAAQ,EAAE,CAAC;QACvB,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAC9B,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC;QAClE,CAAC;QAED,cAAc;QACd,IAAI,CAAC,QAAQ,CAAC,sCAAsC,CAAC,EAAE,CAAC;YACpD,QAAQ,CAAC,sCAAsC,CAAC,GAAG,EAAE,CAAC;QAC1D,CAAC;QACD,MAAM,YAAY,GAAG,gBAAgB,CAAC;QACtC,IAAI,CAAC,QAAQ,CAAC,sCAAsC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YAC3E,QAAQ,CAAC,sCAAsC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACpE,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YAC3E,MAAM,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;QAC9C,CAAC;QAED,OAAO;YACH,OAAO,EAAE,CAAC;oBACN,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACjB,OAAO,EAAE,IAAI;wBACb,SAAS;wBACT,SAAS;wBACT,WAAW;wBACX,SAAS,EAAE;4BACP,WAAW,EAAE,QAAQ,CAAC,WAAW;4BACjC,UAAU,EAAE,QAAQ,CAAC,UAAU;4BAC/B,SAAS,EAAE,QAAQ,CAAC,SAAS;4BAC7B,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;yBACtD;wBACD,eAAe,EAAE,CAAC,CAAC,mBAAmB;wBACtC,KAAK,EAAE,2BAA2B,SAAS,OAAO;wBAClD,SAAS,EAAE;4BACP,iDAAiD;4BACjD,+BAA+B;4BAC/B,OAAO,SAAS,WAAW;yBAC9B;qBACJ,EAAE,IAAI,EAAE,CAAC,CAAC;iBACd,CAAC;SACL,CAAC;IACN,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,gBAAgB,KAAK,EAAE,CAAC,CAAC;QACtC,OAAO;YACH,OAAO,EAAE,CAAC;oBACN,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACjB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;qBAChE,EAAE,IAAI,EAAE,CAAC,CAAC;iBACd,CAAC;SACL,CAAC;IACN,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB,CACzB,WAAmB,EACnB,QAAyB,EACzB,UAAe,EACf,mBAA4B;IAE5B,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAEpD,WAAW;IACX,MAAM,WAAW,GAAG,GAAG,QAAQ,CAAC,WAAW,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;IAE7F,cAAc;IACd,MAAM,SAAS,GAAG,OAAO,WAAW,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,EAAE,CAAC;IAEjF,qBAAqB;IACrB,MAAM,eAAe,GAAG,uBAAuB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAEtE,IAAI,OAAO,GAAG;gBACF,WAAW;;;;IAIvB,SAAS,MAAM,WAAW;;;UAGpB,IAAI;;;;;;;QAON,QAAQ,CAAC,WAAW;MACtB,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;MAC9B,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;MAC7B,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;OACxB,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;SAC1C,WAAW;;;;;;;aAOP,SAAS;;;;;;EAMpB,eAAe;;;;;;cAMH,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmC1C,sBAAsB,CAAC,QAAQ,CAAC;;;;;;;;;;;;;EAahC,yBAAyB,CAAC,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgCpC,CAAC;IAEE,6CAA6C;IAC7C,IAAI,mBAAmB,EAAE,CAAC;QACtB,OAAO,IAAI;;;;;;CAMlB,CAAC;QAEM,6CAA6C;QAC7C,MAAM,WAAW,GAAG,mBAAmB,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACrG,IAAI,WAAW,EAAE,CAAC;YACd,OAAO,IAAI,qBAAqB,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC;QAChE,CAAC;QAED,WAAW;QACX,MAAM,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACrF,IAAI,cAAc,EAAE,CAAC;YACjB,OAAO,IAAI,oBAAoB,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC;QAClE,CAAC;QAED,OAAO,IAAI,+DAA+D,CAAC;IAC/E,CAAC;IAED,OAAO,OAAO,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,SAAS,uBAAuB,CAAC,QAAyB,EAAE,UAAe;IACvE,MAAM,YAAY,GAAa,EAAE,CAAC;IAElC,SAAS;IACT,IAAI,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9E,YAAY,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;IAC1F,CAAC;IAED,WAAW;IACX,IAAI,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACxC,YAAY,CAAC,IAAI,CAAC,oEAAoE,CAAC,CAAC;IAC5F,CAAC;IAED,aAAa;IACb,IAAI,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1C,YAAY,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAC;IACnG,CAAC;IAED,aAAa;IACb,IAAI,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QAC5C,YAAY,CAAC,IAAI,CAAC,wEAAwE,CAAC,CAAC;IAChG,CAAC;IAED,MAAM;IACN,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;QACrB,YAAY,CAAC,IAAI,CAAC,yDAAyD,UAAU,CAAC,IAAI,SAAS,CAAC,CAAC;IACzG,CAAC;IAED,OAAO;IACP,YAAY,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;IAE/D,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACtD,CAAC;AAED;;GAEG;AACH,SAAS,sBAAsB,CAAC,QAAyB;IACrD,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,IAAI,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9E,OAAO,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;QAC5E,OAAO,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;IAC3E,CAAC;IAED,IAAI,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACnC,OAAO,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC;IACzE,CAAC;IAED,OAAO,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;IAEtE,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC;AAED;;GAEG;AACH,SAAS,yBAAyB,CAAC,QAAyB;IACxD,MAAM,IAAI,GAAa,EAAE,CAAC;IAE1B,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC3B,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAEjC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;QAC7B,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,4CAA4C,EAAE,UAAU,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;IAEH,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACtC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,0CAA0C,IAAI,UAAU,CAAC,CAAC;QACjF,CAAC,CAAC,CAAC;IACP,CAAC;IAED,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC"}
@@ -1,20 +0,0 @@
1
- /**
2
- * 紧凑规范工具 - Token 优化版
3
- *
4
- * 优化策略:
5
- * 1. 只返回规范摘要而非完整内容
6
- * 2. 提供规范 URI 供按需加载
7
- * 3. 针对特定场景返回精简的关键规则
8
- */
9
- export declare function getCompactStandards(args: {
10
- currentFile?: string;
11
- fileContent?: string;
12
- scenario?: string;
13
- mode?: 'summary' | 'key-rules' | 'full';
14
- }): Promise<{
15
- content: Array<{
16
- type: string;
17
- text: string;
18
- }>;
19
- }>;
20
- //# sourceMappingURL=getCompactStandards.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getCompactStandards.d.ts","sourceRoot":"","sources":["../../src/tools/getCompactStandards.ts"],"names":[],"mappings":"AAIA;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAC5C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,IAAI,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,MAAM,CAAC;CAC3C,GAAG,OAAO,CAAC;IACR,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAClD,CAAC,CAqDD"}