mta-mcp 1.9.1 → 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 (106) hide show
  1. package/README.md +140 -2
  2. package/bin/mta.cjs +43 -0
  3. package/dist/index.cjs +4784 -0
  4. package/dist/index.cjs.map +1 -0
  5. package/dist/index.d.cts +1 -0
  6. package/dist/index.d.ts +1 -0
  7. package/dist/index.js +4769 -0
  8. package/dist/index.js.map +1 -0
  9. package/package.json +44 -16
  10. package/build/core/agentTemplate.d.ts +0 -33
  11. package/build/core/agentTemplate.d.ts.map +0 -1
  12. package/build/core/agentTemplate.js +0 -158
  13. package/build/core/agentTemplate.js.map +0 -1
  14. package/build/core/autoInitializer.d.ts +0 -34
  15. package/build/core/autoInitializer.d.ts.map +0 -1
  16. package/build/core/autoInitializer.js +0 -145
  17. package/build/core/autoInitializer.js.map +0 -1
  18. package/build/core/codeValidator.d.ts +0 -82
  19. package/build/core/codeValidator.d.ts.map +0 -1
  20. package/build/core/codeValidator.js +0 -287
  21. package/build/core/codeValidator.js.map +0 -1
  22. package/build/core/githubClient.d.ts +0 -26
  23. package/build/core/githubClient.d.ts.map +0 -1
  24. package/build/core/githubClient.js +0 -60
  25. package/build/core/githubClient.js.map +0 -1
  26. package/build/core/i18nDetector.d.ts +0 -47
  27. package/build/core/i18nDetector.d.ts.map +0 -1
  28. package/build/core/i18nDetector.js +0 -314
  29. package/build/core/i18nDetector.js.map +0 -1
  30. package/build/core/projectContextManager.d.ts +0 -39
  31. package/build/core/projectContextManager.d.ts.map +0 -1
  32. package/build/core/projectContextManager.js +0 -147
  33. package/build/core/projectContextManager.js.map +0 -1
  34. package/build/core/smartAgentMatcher.d.ts +0 -51
  35. package/build/core/smartAgentMatcher.d.ts.map +0 -1
  36. package/build/core/smartAgentMatcher.js +0 -493
  37. package/build/core/smartAgentMatcher.js.map +0 -1
  38. package/build/core/standardsManager.d.ts +0 -130
  39. package/build/core/standardsManager.d.ts.map +0 -1
  40. package/build/core/standardsManager.js +0 -600
  41. package/build/core/standardsManager.js.map +0 -1
  42. package/build/core/types.d.ts +0 -55
  43. package/build/core/types.d.ts.map +0 -1
  44. package/build/core/types.js +0 -21
  45. package/build/core/types.js.map +0 -1
  46. package/build/index.d.ts +0 -3
  47. package/build/index.d.ts.map +0 -1
  48. package/build/index.js +0 -463
  49. package/build/index.js.map +0 -1
  50. package/build/tools/analyzeProject.d.ts +0 -12
  51. package/build/tools/analyzeProject.d.ts.map +0 -1
  52. package/build/tools/analyzeProject.js +0 -85
  53. package/build/tools/analyzeProject.js.map +0 -1
  54. package/build/tools/autoSetup.d.ts +0 -15
  55. package/build/tools/autoSetup.d.ts.map +0 -1
  56. package/build/tools/autoSetup.js +0 -291
  57. package/build/tools/autoSetup.js.map +0 -1
  58. package/build/tools/generateConfig.d.ts +0 -16
  59. package/build/tools/generateConfig.d.ts.map +0 -1
  60. package/build/tools/generateConfig.js +0 -379
  61. package/build/tools/generateConfig.js.map +0 -1
  62. package/build/tools/generateProjectAgent.d.ts +0 -15
  63. package/build/tools/generateProjectAgent.d.ts.map +0 -1
  64. package/build/tools/generateProjectAgent.js +0 -348
  65. package/build/tools/generateProjectAgent.js.map +0 -1
  66. package/build/tools/getCompactStandards.d.ts +0 -20
  67. package/build/tools/getCompactStandards.d.ts.map +0 -1
  68. package/build/tools/getCompactStandards.js +0 -367
  69. package/build/tools/getCompactStandards.js.map +0 -1
  70. package/build/tools/getSmartStandards.d.ts +0 -17
  71. package/build/tools/getSmartStandards.d.ts.map +0 -1
  72. package/build/tools/getSmartStandards.js +0 -190
  73. package/build/tools/getSmartStandards.js.map +0 -1
  74. package/build/tools/healthCheck.d.ts +0 -14
  75. package/build/tools/healthCheck.d.ts.map +0 -1
  76. package/build/tools/healthCheck.js +0 -237
  77. package/build/tools/healthCheck.js.map +0 -1
  78. package/build/tools/listAgents.d.ts +0 -10
  79. package/build/tools/listAgents.d.ts.map +0 -1
  80. package/build/tools/listAgents.js +0 -79
  81. package/build/tools/listAgents.js.map +0 -1
  82. package/build/tools/matchAgents.d.ts +0 -14
  83. package/build/tools/matchAgents.d.ts.map +0 -1
  84. package/build/tools/matchAgents.js +0 -70
  85. package/build/tools/matchAgents.js.map +0 -1
  86. package/build/tools/usePreset.d.ts +0 -23
  87. package/build/tools/usePreset.d.ts.map +0 -1
  88. package/build/tools/usePreset.js +0 -163
  89. package/build/tools/usePreset.js.map +0 -1
  90. package/src/core/autoInitializer.ts +0 -170
  91. package/src/core/codeValidator.ts +0 -357
  92. package/src/core/githubClient.ts +0 -64
  93. package/src/core/i18nDetector.ts +0 -357
  94. package/src/core/smartAgentMatcher.ts +0 -490
  95. package/src/core/standardsManager.ts +0 -769
  96. package/src/core/types.ts +0 -72
  97. package/src/index.ts +0 -519
  98. package/src/tools/analyzeProject.ts +0 -94
  99. package/src/tools/autoSetup.ts +0 -312
  100. package/src/tools/generateConfig.ts +0 -429
  101. package/src/tools/getCompactStandards.ts +0 -413
  102. package/src/tools/getSmartStandards.ts +0 -214
  103. package/src/tools/healthCheck.ts +0 -261
  104. package/src/tools/listAgents.ts +0 -91
  105. package/src/tools/matchAgents.ts +0 -80
  106. package/src/tools/usePreset.ts +0 -180
package/package.json CHANGED
@@ -1,37 +1,62 @@
1
1
  {
2
2
  "name": "mta-mcp",
3
- "version": "1.9.1",
4
- "description": "MTA - 智能项目分析与编码规范管理 MCP 服务器(v1.9.1: 自动配置+精简规范)",
3
+ "version": "2.3.0",
4
+ "description": "MTA - 智能项目分析与编码规范管理 MCP 服务器,为 GitHub Copilot 和 Claude 提供项目分析、规范匹配、模板管理功能",
5
5
  "type": "module",
6
- "main": "build/index.js",
6
+ "main": "./dist/index.cjs",
7
+ "module": "./dist/index.js",
8
+ "types": "./dist/index.d.ts",
9
+ "exports": {
10
+ ".": {
11
+ "require": "./dist/index.cjs",
12
+ "import": "./dist/index.js",
13
+ "types": "./dist/index.d.ts"
14
+ }
15
+ },
7
16
  "bin": {
8
- "mta": "build/index.js"
17
+ "mta": "./bin/mta.cjs"
9
18
  },
10
19
  "files": [
11
- "build/",
12
- "src/",
20
+ "bin/",
21
+ "dist/",
13
22
  "standards/",
14
23
  "agents/",
15
- "common/"
24
+ "common/",
25
+ "templates/",
26
+ "README.md"
16
27
  ],
17
28
  "scripts": {
18
- "build": "tsc",
19
- "watch": "tsc --watch",
20
- "start": "node build/index.js",
21
- "dev": "tsc --watch",
29
+ "build": "tsup",
30
+ "watch": "tsup --watch",
31
+ "start": "node bin/mta.js",
32
+ "dev": "tsup --watch",
22
33
  "prepare": "npm run build",
23
- "clean": "rm -rf build"
34
+ "clean": "rm -rf dist build",
35
+ "test": "vitest run",
36
+ "test:watch": "vitest",
37
+ "test:coverage": "vitest run --coverage",
38
+ "prepublishOnly": "npm run build && npm test"
24
39
  },
25
40
  "keywords": [
26
41
  "mcp",
42
+ "model-context-protocol",
27
43
  "copilot",
44
+ "github-copilot",
45
+ "claude",
28
46
  "ai",
29
47
  "agents",
30
- "github",
31
- "claude"
48
+ "coding-standards",
49
+ "project-analysis",
50
+ "typescript",
51
+ "vue",
52
+ "react"
32
53
  ],
33
54
  "author": "ForLear",
34
55
  "license": "MIT",
56
+ "homepage": "https://github.com/ForLear/copilot-prompts#readme",
57
+ "bugs": {
58
+ "url": "https://github.com/ForLear/copilot-prompts/issues"
59
+ },
35
60
  "dependencies": {
36
61
  "@modelcontextprotocol/sdk": "^1.24.3",
37
62
  "axios": "^1.6.5",
@@ -39,10 +64,13 @@
39
64
  },
40
65
  "devDependencies": {
41
66
  "@types/node": "^20.11.0",
42
- "typescript": "^5.3.3"
67
+ "@vitest/coverage-v8": "^4.0.16",
68
+ "tsup": "^8.5.1",
69
+ "typescript": "^5.3.3",
70
+ "vitest": "^4.0.16"
43
71
  },
44
72
  "engines": {
45
- "node": ">=18.0.0"
73
+ "node": ">=12.20.0"
46
74
  },
47
75
  "repository": {
48
76
  "type": "git",
@@ -1,33 +0,0 @@
1
- import { AgentMetadata } from './types.js';
2
- /**
3
- * Agent 模板生成器
4
- * 用于为项目生成专属的开发 Agent,自动加载规范
5
- */
6
- export interface AgentTemplateConfig {
7
- projectName: string;
8
- projectPath: string;
9
- techStack: {
10
- frameworks: string[];
11
- languages: string[];
12
- libraries: string[];
13
- };
14
- configId?: string;
15
- matchedAgents: AgentMetadata[];
16
- }
17
- /**
18
- * 生成项目专属 Agent 文件内容
19
- */
20
- export declare function generateProjectAgent(config: AgentTemplateConfig): string;
21
- /**
22
- * 获取 Agent 文件路径
23
- */
24
- export declare function getAgentFilePath(projectPath: string, projectName: string): string;
25
- /**
26
- * 提取技术栈信息摘要
27
- */
28
- export declare function extractTechStackSummary(features: any): {
29
- frameworks: string[];
30
- languages: string[];
31
- libraries: string[];
32
- };
33
- //# sourceMappingURL=agentTemplate.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"agentTemplate.d.ts","sourceRoot":"","sources":["../../src/core/agentTemplate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C;;;GAGG;AAEH,MAAM,WAAW,mBAAmB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE;QACP,UAAU,EAAE,MAAM,EAAE,CAAC;QACrB,SAAS,EAAE,MAAM,EAAE,CAAC;QACpB,SAAS,EAAE,MAAM,EAAE,CAAC;KACvB,CAAC;IACF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,aAAa,EAAE,CAAC;CAClC;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,mBAAmB,GAAG,MAAM,CA4JxE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAGjF;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,GAAG,GAAG;IACpD,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,EAAE,MAAM,EAAE,CAAC;CACvB,CAaA"}
@@ -1,158 +0,0 @@
1
- import * as path from 'path';
2
- /**
3
- * 生成项目专属 Agent 文件内容
4
- */
5
- export function generateProjectAgent(config) {
6
- const { projectName, projectPath, techStack, configId, matchedAgents } = config;
7
- let content = '';
8
- // frontmatter
9
- content += `---\n`;
10
- content += `description: '${projectName} 项目开发代理 - 自动加载项目规范'\n`;
11
- content += `tools: ['mcp_mta_get_smart_standards', 'mcp_mta_get_compact_standards', 'mcp_mta_get_relevant_standards', 'edit', 'search', 'new', 'runCommands', 'problems', 'changes', 'usages']\n`;
12
- content += `---\n\n`;
13
- // 标题和描述
14
- content += `# ${projectName} 开发 Agent\n\n`;
15
- content += `> 此 Agent 专为 ${projectName} 项目配置,会自动加载项目规范和最佳实践\n\n`;
16
- // 🚀 自动初始化 - 核心功能
17
- content += `## 🚀 自动初始化\n\n`;
18
- content += `**每次对话开始时,自动执行以下操作:**\n\n`;
19
- // 根据技术栈生成初始化指令
20
- content += `### 1️⃣ 智能加载规范(推荐)\n\n`;
21
- content += `使用 Token 优化版工具,根据当前文件类型自动加载相关规范:\n\n`;
22
- content += `\`\`\`typescript\n`;
23
- content += `// 根据当前编辑的文件自动识别并加载规范\n`;
24
- content += `mcp_mta_get_compact_standards({\n`;
25
- content += ` currentFile: "{当前文件路径}",\n`;
26
- content += ` mode: "key-rules" // 推荐:只返回关键规则,节省 85% token\n`;
27
- content += `})\n`;
28
- content += `\`\`\`\n\n`;
29
- content += `### 2️⃣ 按场景加载(特定需求时)\n\n`;
30
- // 根据技术栈生成具体的调用示例
31
- if (techStack.frameworks.includes('vue') || techStack.frameworks.includes('vue3')) {
32
- content += `**Vue 3 开发:**\n`;
33
- content += `\`\`\`typescript\n`;
34
- content += `// Vue 组件开发\n`;
35
- content += `mcp_mta_get_relevant_standards({ fileType: "vue" })\n\n`;
36
- if (techStack.libraries.some(lib => lib.includes('element'))) {
37
- content += `// 使用 Element Plus 组件\n`;
38
- content += `mcp_mta_get_relevant_standards({ \n`;
39
- content += ` imports: ["element-plus"]`;
40
- if (configId) {
41
- content += `,\n config: "${configId}"`;
42
- }
43
- content += ` \n})\n\n`;
44
- }
45
- if (techStack.libraries.includes('pinia')) {
46
- content += `// Pinia 状态管理\n`;
47
- content += `mcp_mta_get_relevant_standards({ imports: ["pinia"] })\n\n`;
48
- }
49
- content += `\`\`\`\n\n`;
50
- }
51
- if (techStack.frameworks.includes('flutter') || techStack.languages.includes('dart')) {
52
- content += `**Flutter 开发:**\n`;
53
- content += `\`\`\`typescript\n`;
54
- content += `// Flutter Widget 开发\n`;
55
- content += `mcp_mta_get_relevant_standards({ \n`;
56
- content += ` fileType: "dart",\n`;
57
- content += ` imports: ["flutter"]\n`;
58
- content += `})\n\n`;
59
- content += `// Dart 代码\n`;
60
- content += `mcp_mta_get_relevant_standards({ fileType: "dart" })\n`;
61
- content += `\`\`\`\n\n`;
62
- }
63
- if (techStack.frameworks.includes('react')) {
64
- content += `**React 开发:**\n`;
65
- content += `\`\`\`typescript\n`;
66
- content += `// React 组件\n`;
67
- content += `mcp_mta_get_relevant_standards({ fileType: "tsx" })\n`;
68
- content += `\`\`\`\n\n`;
69
- }
70
- // TypeScript 通用
71
- if (techStack.languages.includes('typescript')) {
72
- content += `**TypeScript 代码:**\n`;
73
- content += `\`\`\`typescript\n`;
74
- content += `mcp_mta_get_relevant_standards({ fileType: "ts" })\n`;
75
- content += `\`\`\`\n\n`;
76
- }
77
- content += `---\n\n`;
78
- // 项目信息
79
- content += `## 📋 项目信息\n\n`;
80
- content += `- **项目名称**: ${projectName}\n`;
81
- content += `- **项目路径**: \`${projectPath}\`\n`;
82
- content += `- **技术栈**:\n`;
83
- content += ` - 框架: ${techStack.frameworks.join(', ') || '未检测到'}\n`;
84
- content += ` - 语言: ${techStack.languages.join(', ') || '未检测到'}\n`;
85
- content += ` - 库: ${techStack.libraries.join(', ') || '未检测到'}\n`;
86
- if (configId) {
87
- content += `- **配置方案**: ${configId}\n`;
88
- }
89
- content += `\n`;
90
- // 匹配的 Agents 信息
91
- if (matchedAgents.length > 0) {
92
- content += `### 引用的通用 Agents\n\n`;
93
- content += `本项目基于以下通用 Agents 配置:\n\n`;
94
- matchedAgents.forEach(agent => {
95
- content += `- **${agent.title}** (\`${agent.id}\`)\n`;
96
- if (agent.description) {
97
- content += ` - ${agent.description}\n`;
98
- }
99
- });
100
- content += `\n`;
101
- }
102
- content += `---\n\n`;
103
- // 强制工作流
104
- content += `## ⚠️ 强制工作流\n\n`;
105
- content += `**在编写任何代码前,必须:**\n\n`;
106
- content += `1. ✅ 调用上述 MCP 工具加载相关规范\n`;
107
- content += `2. ✅ 确认规范加载成功\n`;
108
- content += `3. ✅ 严格遵循规范编写代码\n`;
109
- content += `4. ✅ 编写完成后进行自检\n\n`;
110
- content += `### 禁止行为\n\n`;
111
- content += `- ❌ 未加载规范就开始编写代码\n`;
112
- content += `- ❌ 忽略规范中的强制要求\n`;
113
- content += `- ❌ 使用不符合项目规范的代码风格\n\n`;
114
- content += `---\n\n`;
115
- // 使用提示
116
- content += `## 💡 使用提示\n\n`;
117
- content += `1. **选择此 Agent**: 在 Copilot Chat 中输入 \`@${projectName.toLowerCase()}-dev\`\n`;
118
- content += `2. **自动加载**: Agent 会自动加载项目规范,无需手动调用工具\n`;
119
- content += `3. **开始编码**: 直接描述需求,Agent 会遵循项目规范编写代码\n\n`;
120
- content += `### 常见场景\n\n`;
121
- content += `- **创建新组件**: "创建一个用户列表组件"\n`;
122
- content += `- **修复 Bug**: "修复登录表单验证问题"\n`;
123
- content += `- **重构代码**: "优化这段代码的性能"\n`;
124
- content += `- **添加功能**: "添加导出功能"\n\n`;
125
- content += `---\n\n`;
126
- // 元信息
127
- content += `## 📝 元信息\n\n`;
128
- content += `- **生成时间**: ${new Date().toISOString().split('T')[0]}\n`;
129
- content += `- **生成工具**: Copilot Prompts MCP Server\n`;
130
- content += `- **Agent 类型**: 项目专属开发 Agent\n`;
131
- content += `- **维护**: 由 MCP 工具自动更新,如需修改请重新生成\n\n`;
132
- content += `---\n\n`;
133
- content += `**Powered by [Copilot Prompts](https://github.com/yourusername/copilot-prompts)**\n`;
134
- return content;
135
- }
136
- /**
137
- * 获取 Agent 文件路径
138
- */
139
- export function getAgentFilePath(projectPath, projectName) {
140
- const agentFileName = `${projectName.toLowerCase().replace(/[^a-z0-9]+/g, '-')}-dev.agent.md`;
141
- return path.join(projectPath, '.github', 'agents', agentFileName);
142
- }
143
- /**
144
- * 提取技术栈信息摘要
145
- */
146
- export function extractTechStackSummary(features) {
147
- return {
148
- frameworks: features.frameworks || [],
149
- languages: features.languages || [],
150
- libraries: [...(features.tools || []), ...(features.keywords || [])]
151
- .filter((item) => item.includes('element') ||
152
- item.includes('pinia') ||
153
- item.includes('router') ||
154
- item.includes('axios') ||
155
- item.includes('vite'))
156
- };
157
- }
158
- //# sourceMappingURL=agentTemplate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"agentTemplate.js","sourceRoot":"","sources":["../../src/core/agentTemplate.ts"],"names":[],"mappings":"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"}
@@ -1,34 +0,0 @@
1
- import { Logger } from './types.js';
2
- /**
3
- * 自动初始化器
4
- * 在工具调用前检查项目配置,如果不存在则自动生成
5
- */
6
- export declare class AutoInitializer {
7
- private logger?;
8
- private initialized;
9
- constructor(logger?: Logger | undefined);
10
- /**
11
- * 检查并初始化项目配置
12
- * @param workspacePath 工作区路径
13
- * @returns 是否需要初始化(返回 true 表示已执行初始化)
14
- */
15
- ensureProjectConfig(workspacePath?: string): Promise<{
16
- needsInit: boolean;
17
- initialized: boolean;
18
- message: string;
19
- }>;
20
- /**
21
- * 检测工作区路径
22
- */
23
- private detectWorkspacePath;
24
- /**
25
- * 判断是否是有效的项目目录
26
- */
27
- private isValidProject;
28
- /**
29
- * 重置初始化状态(用于测试)
30
- */
31
- reset(): void;
32
- private log;
33
- }
34
- //# sourceMappingURL=autoInitializer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"autoInitializer.d.ts","sourceRoot":"","sources":["../../src/core/autoInitializer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEpC;;;GAGG;AACH,qBAAa,eAAe;IAGZ,OAAO,CAAC,MAAM,CAAC;IAF3B,OAAO,CAAC,WAAW,CAAmC;gBAElC,MAAM,CAAC,EAAE,MAAM,YAAA;IAEnC;;;;OAIG;IACG,mBAAmB,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QACvD,SAAS,EAAE,OAAO,CAAC;QACnB,WAAW,EAAE,OAAO,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC;KACnB,CAAC;IA8EF;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA2B3B;;OAEG;IACH,OAAO,CAAC,cAAc;IAoBtB;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb,OAAO,CAAC,GAAG;CAOd"}
@@ -1,145 +0,0 @@
1
- import * as fs from 'fs';
2
- import * as path from 'path';
3
- import { analyzeProject } from '../tools/analyzeProject.js';
4
- import { generateConfig } from '../tools/generateConfig.js';
5
- /**
6
- * 自动初始化器
7
- * 在工具调用前检查项目配置,如果不存在则自动生成
8
- */
9
- export class AutoInitializer {
10
- logger;
11
- initialized = new Map();
12
- constructor(logger) {
13
- this.logger = logger;
14
- }
15
- /**
16
- * 检查并初始化项目配置
17
- * @param workspacePath 工作区路径
18
- * @returns 是否需要初始化(返回 true 表示已执行初始化)
19
- */
20
- async ensureProjectConfig(workspacePath) {
21
- // 检测工作区路径
22
- const projectPath = workspacePath || this.detectWorkspacePath();
23
- if (!projectPath) {
24
- return {
25
- needsInit: false,
26
- initialized: false,
27
- message: '未检测到工作区路径'
28
- };
29
- }
30
- // 检查是否已经初始化过(避免重复)
31
- if (this.initialized.get(projectPath)) {
32
- return {
33
- needsInit: false,
34
- initialized: true,
35
- message: `项目已配置: ${path.basename(projectPath)}`
36
- };
37
- }
38
- // 检查是否存在配置文件
39
- const configPath = path.join(projectPath, '.github', 'copilot-instructions.md');
40
- const hasConfig = fs.existsSync(configPath);
41
- if (hasConfig) {
42
- this.initialized.set(projectPath, true);
43
- return {
44
- needsInit: false,
45
- initialized: true,
46
- message: `项目已有配置: ${path.basename(projectPath)}`
47
- };
48
- }
49
- // 需要初始化
50
- this.log(`🔍 检测到项目未配置,开始自动分析和生成配置...`);
51
- this.log(`📁 项目路径: ${projectPath}`);
52
- try {
53
- // 1. 分析项目
54
- this.log('1️⃣ 分析项目技术栈...');
55
- const analysisResult = await analyzeProject({ projectPath });
56
- if (analysisResult.content?.[0]?.text) {
57
- const analysis = JSON.parse(analysisResult.content[0].text);
58
- this.log(`✅ 检测到: ${analysis.frameworks?.join(', ') || '未知技术栈'}`);
59
- // 2. 生成配置
60
- this.log('2️⃣ 生成项目配置文件...');
61
- await generateConfig({
62
- projectPath,
63
- autoMatch: true
64
- });
65
- this.initialized.set(projectPath, true);
66
- return {
67
- needsInit: true,
68
- initialized: true,
69
- message: `✅ 项目配置已自动生成\n📁 路径: ${configPath}\n🎯 技术栈: ${analysis.frameworks?.join(', ')}`
70
- };
71
- }
72
- }
73
- catch (error) {
74
- this.log(`❌ 自动初始化失败: ${error}`);
75
- return {
76
- needsInit: true,
77
- initialized: false,
78
- message: `⚠️ 自动初始化失败: ${error instanceof Error ? error.message : String(error)}`
79
- };
80
- }
81
- return {
82
- needsInit: true,
83
- initialized: false,
84
- message: '⚠️ 无法完成自动初始化'
85
- };
86
- }
87
- /**
88
- * 检测工作区路径
89
- */
90
- detectWorkspacePath() {
91
- // 优先级 1: 环境变量
92
- if (process.env.WORKSPACE_PATH) {
93
- return process.env.WORKSPACE_PATH;
94
- }
95
- // 优先级 2: 当前工作目录
96
- const cwd = process.cwd();
97
- if (this.isValidProject(cwd)) {
98
- return cwd;
99
- }
100
- // 优先级 3: 尝试从常见位置检测
101
- const possiblePaths = [
102
- path.join(cwd, '..'),
103
- path.join(cwd, '../..'),
104
- ];
105
- for (const possiblePath of possiblePaths) {
106
- if (this.isValidProject(possiblePath)) {
107
- return possiblePath;
108
- }
109
- }
110
- return null;
111
- }
112
- /**
113
- * 判断是否是有效的项目目录
114
- */
115
- isValidProject(dirPath) {
116
- if (!fs.existsSync(dirPath)) {
117
- return false;
118
- }
119
- // 检查是否有项目标志文件
120
- const markers = [
121
- 'package.json',
122
- 'pubspec.yaml',
123
- 'pom.xml',
124
- 'go.mod',
125
- 'Cargo.toml',
126
- '.git'
127
- ];
128
- return markers.some(marker => fs.existsSync(path.join(dirPath, marker)));
129
- }
130
- /**
131
- * 重置初始化状态(用于测试)
132
- */
133
- reset() {
134
- this.initialized.clear();
135
- }
136
- log(message) {
137
- if (this.logger) {
138
- this.logger.log(message);
139
- }
140
- else {
141
- console.error(`[AutoInit] ${message}`);
142
- }
143
- }
144
- }
145
- //# sourceMappingURL=autoInitializer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"autoInitializer.js","sourceRoot":"","sources":["../../src/core/autoInitializer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAG5D;;;GAGG;AACH,MAAM,OAAO,eAAe;IAGJ;IAFZ,WAAW,GAAyB,IAAI,GAAG,EAAE,CAAC;IAEtD,YAAoB,MAAe;QAAf,WAAM,GAAN,MAAM,CAAS;IAAG,CAAC;IAEvC;;;;OAIG;IACH,KAAK,CAAC,mBAAmB,CAAC,aAAsB;QAK5C,UAAU;QACV,MAAM,WAAW,GAAG,aAAa,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAEhE,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,OAAO;gBACH,SAAS,EAAE,KAAK;gBAChB,WAAW,EAAE,KAAK;gBAClB,OAAO,EAAE,WAAW;aACvB,CAAC;QACN,CAAC;QAED,mBAAmB;QACnB,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YACpC,OAAO;gBACH,SAAS,EAAE,KAAK;gBAChB,WAAW,EAAE,IAAI;gBACjB,OAAO,EAAE,UAAU,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;aAClD,CAAC;QACN,CAAC;QAED,aAAa;QACb,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,yBAAyB,CAAC,CAAC;QAChF,MAAM,SAAS,GAAG,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QAE5C,IAAI,SAAS,EAAE,CAAC;YACZ,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YACxC,OAAO;gBACH,SAAS,EAAE,KAAK;gBAChB,WAAW,EAAE,IAAI;gBACjB,OAAO,EAAE,WAAW,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;aACnD,CAAC;QACN,CAAC;QAED,QAAQ;QACR,IAAI,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;QACvC,IAAI,CAAC,GAAG,CAAC,YAAY,WAAW,EAAE,CAAC,CAAC;QAEpC,IAAI,CAAC;YACD,UAAU;YACV,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;YAC3B,MAAM,cAAc,GAAG,MAAM,cAAc,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;YAE7D,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;gBACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC5D,IAAI,CAAC,GAAG,CAAC,UAAU,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,OAAO,EAAE,CAAC,CAAC;gBAEjE,UAAU;gBACV,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;gBAC5B,MAAM,cAAc,CAAC;oBACjB,WAAW;oBACX,SAAS,EAAE,IAAI;iBAClB,CAAC,CAAC;gBAEH,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;gBAExC,OAAO;oBACH,SAAS,EAAE,IAAI;oBACf,WAAW,EAAE,IAAI;oBACjB,OAAO,EAAE,uBAAuB,UAAU,aAAa,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;iBAC3F,CAAC;YACN,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,cAAc,KAAK,EAAE,CAAC,CAAC;YAChC,OAAO;gBACH,SAAS,EAAE,IAAI;gBACf,WAAW,EAAE,KAAK;gBAClB,OAAO,EAAE,eAAe,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;aACnF,CAAC;QACN,CAAC;QAED,OAAO;YACH,SAAS,EAAE,IAAI;YACf,WAAW,EAAE,KAAK;YAClB,OAAO,EAAE,cAAc;SAC1B,CAAC;IACN,CAAC;IAED;;OAEG;IACK,mBAAmB;QACvB,cAAc;QACd,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;YAC7B,OAAO,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;QACtC,CAAC;QAED,gBAAgB;QAChB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,OAAO,GAAG,CAAC;QACf,CAAC;QAED,mBAAmB;QACnB,MAAM,aAAa,GAAG;YAClB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC;YACpB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC;SAC1B,CAAC;QAEF,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;YACvC,IAAI,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,CAAC;gBACpC,OAAO,YAAY,CAAC;YACxB,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,OAAe;QAClC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1B,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,cAAc;QACd,MAAM,OAAO,GAAG;YACZ,cAAc;YACd,cAAc;YACd,SAAS;YACT,QAAQ;YACR,YAAY;YACZ,MAAM;SACT,CAAC;QAEF,OAAO,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CACzB,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAC5C,CAAC;IACN,CAAC;IAED;;OAEG;IACH,KAAK;QACD,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;IAC7B,CAAC;IAEO,GAAG,CAAC,OAAe;QACvB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,KAAK,CAAC,cAAc,OAAO,EAAE,CAAC,CAAC;QAC3C,CAAC;IACL,CAAC;CACJ"}
@@ -1,82 +0,0 @@
1
- /**
2
- * 代码验证器 (v1.1.0)
3
- * 用于检测和防止常见的代码生成错误
4
- */
5
- import { ConsoleLogger } from './types.js';
6
- /**
7
- * 验证结果接口
8
- */
9
- export interface ValidationResult {
10
- isValid: boolean;
11
- errors: ValidationError[];
12
- warnings: ValidationWarning[];
13
- }
14
- /**
15
- * 验证错误
16
- */
17
- export interface ValidationError {
18
- type: 'syntax' | 'completeness' | 'compatibility';
19
- message: string;
20
- line?: number;
21
- suggestion?: string;
22
- }
23
- /**
24
- * 验证警告
25
- */
26
- export interface ValidationWarning {
27
- type: 'best-practice' | 'performance' | 'compatibility' | 'completeness';
28
- message: string;
29
- suggestion?: string;
30
- }
31
- /**
32
- * 代码验证器类
33
- */
34
- export declare class CodeValidator {
35
- private logger;
36
- constructor(logger?: ConsoleLogger);
37
- /**
38
- * 验证生成的配置文件内容
39
- */
40
- validateConfigContent(content: string): ValidationResult;
41
- /**
42
- * 检查重复的HTML标签
43
- */
44
- private checkDuplicateTags;
45
- /**
46
- * 检查括号匹配
47
- */
48
- private checkBracketMatching;
49
- /**
50
- * 检查 Markdown 语法
51
- */
52
- private checkMarkdownSyntax;
53
- /**
54
- * 检查必要章节完整性
55
- */
56
- private checkRequiredSections;
57
- /**
58
- * 检查自定义内容标记
59
- */
60
- private checkCustomContentMarkers;
61
- /**
62
- * 验证 Agent 内容
63
- */
64
- validateAgentContent(content: string, agentId: string): ValidationResult;
65
- /**
66
- * 生成验证报告
67
- */
68
- generateValidationReport(result: ValidationResult): string;
69
- /**
70
- * 尝试自动修复简单的语法错误
71
- */
72
- attemptAutoFix(content: string): {
73
- fixed: boolean;
74
- content: string;
75
- changes: string[];
76
- };
77
- }
78
- /**
79
- * 创建默认验证器实例
80
- */
81
- export declare function createValidator(logger?: ConsoleLogger): CodeValidator;
82
- //# sourceMappingURL=codeValidator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"codeValidator.d.ts","sourceRoot":"","sources":["../../src/core/codeValidator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,QAAQ,EAAE,iBAAiB,EAAE,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,IAAI,EAAE,QAAQ,GAAG,cAAc,GAAG,eAAe,CAAC;IAClD,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,IAAI,EAAE,eAAe,GAAG,aAAa,GAAG,eAAe,GAAG,cAAc,CAAC;IACzE,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,qBAAa,aAAa;IACtB,OAAO,CAAC,MAAM,CAAgB;gBAElB,MAAM,CAAC,EAAE,aAAa;IAIlC;;OAEG;IACH,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB;IA0BxD;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA8B1B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAyE5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA8B3B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAiB7B;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAajC;;OAEG;IACH,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,gBAAgB;IAyBxE;;OAEG;IACH,wBAAwB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM;IAsC1D;;OAEG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE;CAyB1F;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,CAAC,EAAE,aAAa,GAAG,aAAa,CAErE"}