apifox-workspace-mcp 1.1.1 → 1.1.4

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 (61) hide show
  1. package/README.md +13 -20
  2. package/dist/__tests__/intent.test.js +0 -4
  3. package/dist/__tests__/intent.test.js.map +1 -1
  4. package/dist/__tests__/llms-parser.test.js.map +1 -1
  5. package/dist/__tests__/select-interfaces.test.js +2 -0
  6. package/dist/__tests__/select-interfaces.test.js.map +1 -1
  7. package/dist/__tests__/unified-cache-manager.test.js +2 -2
  8. package/dist/__tests__/unified-cache-manager.test.js.map +1 -1
  9. package/dist/core/cache/unified-cache-manager.d.ts +12 -3
  10. package/dist/core/cache/unified-cache-manager.d.ts.map +1 -1
  11. package/dist/core/cache/unified-cache-manager.js +97 -24
  12. package/dist/core/cache/unified-cache-manager.js.map +1 -1
  13. package/dist/core/client/apifox.js.map +1 -1
  14. package/dist/core/client/mcp-bridge.d.ts.map +1 -1
  15. package/dist/core/client/mcp-bridge.js.map +1 -1
  16. package/dist/core/config/manager.d.ts +6 -124
  17. package/dist/core/config/manager.d.ts.map +1 -1
  18. package/dist/core/config/manager.js +11 -288
  19. package/dist/core/config/manager.js.map +1 -1
  20. package/dist/core/generator/artifact.js +0 -1
  21. package/dist/core/generator/artifact.js.map +1 -1
  22. package/dist/core/intent.d.ts +4 -1
  23. package/dist/core/intent.d.ts.map +1 -1
  24. package/dist/core/intent.js +23 -8
  25. package/dist/core/intent.js.map +1 -1
  26. package/dist/core/parser/index.d.ts +1 -0
  27. package/dist/core/parser/index.d.ts.map +1 -1
  28. package/dist/core/parser/index.js +1 -0
  29. package/dist/core/parser/index.js.map +1 -1
  30. package/dist/core/parser/md-parser.d.ts +12 -0
  31. package/dist/core/parser/md-parser.d.ts.map +1 -0
  32. package/dist/core/parser/md-parser.js +100 -0
  33. package/dist/core/parser/md-parser.js.map +1 -0
  34. package/dist/server/handlers/assistant.d.ts.map +1 -1
  35. package/dist/server/handlers/assistant.js +3 -11
  36. package/dist/server/handlers/assistant.js.map +1 -1
  37. package/dist/server/handlers/generate-artifacts.js +1 -1
  38. package/dist/server/handlers/generate-artifacts.js.map +1 -1
  39. package/dist/server/handlers/get-interface-detail.d.ts +2 -0
  40. package/dist/server/handlers/get-interface-detail.d.ts.map +1 -1
  41. package/dist/server/handlers/get-interface-detail.js +83 -2
  42. package/dist/server/handlers/get-interface-detail.js.map +1 -1
  43. package/dist/server/handlers/list-projects.d.ts.map +1 -1
  44. package/dist/server/handlers/list-projects.js.map +1 -1
  45. package/dist/server/handlers/parse-and-add-project.d.ts +0 -1
  46. package/dist/server/handlers/parse-and-add-project.d.ts.map +1 -1
  47. package/dist/server/handlers/parse-and-add-project.js +104 -132
  48. package/dist/server/handlers/parse-and-add-project.js.map +1 -1
  49. package/dist/server/handlers/query-interfaces.d.ts.map +1 -1
  50. package/dist/server/handlers/query-interfaces.js +10 -5
  51. package/dist/server/handlers/query-interfaces.js.map +1 -1
  52. package/dist/server/handlers/utils.d.ts +3 -2
  53. package/dist/server/handlers/utils.d.ts.map +1 -1
  54. package/dist/server/handlers/utils.js +10 -3
  55. package/dist/server/handlers/utils.js.map +1 -1
  56. package/dist/server/index.js +13 -33
  57. package/dist/server/index.js.map +1 -1
  58. package/dist/types/index.d.ts +6 -3
  59. package/dist/types/index.d.ts.map +1 -1
  60. package/dist/types/index.js.map +1 -1
  61. package/package.json +1 -1
@@ -4,38 +4,32 @@ import { ApifoxClient, isValidApifoxUrl, parseApifoxUrl, ShareLinkType, UnifiedC
4
4
  */
5
5
  export async function handleParseAndAddProject(args, ctx) {
6
6
  const { url } = args;
7
- const { projectRoot, configManager, mcpBridge, contextStore, getApiBaseUrl } = ctx;
7
+ const { projectRoot, configManager, mcpBridge, contextStore } = ctx;
8
8
  const steps = [];
9
9
  const errors = [];
10
- let projectId;
11
10
  let projectName;
12
11
  let fullProjectInfo = null;
13
12
  let interfaceDetail = null;
14
- // 步骤 1: 先检查并创建配置文件
15
- steps.push('📋 步骤 1: 检查配置文件');
13
+ // 步骤 1: 检查访问令牌
14
+ steps.push('📋 步骤 1: 检查访问令牌');
16
15
  steps.push(` 📂 项目根目录: ${projectRoot}`);
17
- steps.push(` 📄 配置文件路径: ${configManager.getApifoxConfigPath()}`);
18
- const configStatus = configManager.checkConfigStatus();
19
- if (!configStatus.apifoxConfigExists) {
20
- steps.push(' ⚠️ 配置文件不存在,尝试创建...');
21
- const initResult = configManager.initializeConfig();
22
- if (initResult.apifoxConfigCreated) {
23
- steps.push(` ✅ 已创建 apifox-mcp.json 文件`);
24
- steps.push(` 📍 文件位置: ${initResult.configPath}`);
25
- }
26
- else if (!initResult.apifoxConfigExists) {
27
- errors.push(' ❌ 无法创建 apifox-mcp.json 文件');
28
- errors.push(` 📂 项目根目录: ${initResult.projectRoot}`);
29
- errors.push(` 📄 配置文件路径: ${initResult.configPath}`);
30
- }
31
- if (initResult.errors.length > 0) {
32
- errors.push(...initResult.errors.map((e) => ` - ${e}`));
33
- }
34
- }
35
- else {
36
- steps.push(' ✅ apifox-mcp.json 文件存在');
37
- steps.push(` 📍 文件位置: ${configManager.getApifoxConfigPath()}`);
16
+ const accessToken = configManager.getAccessToken();
17
+ if (!accessToken) {
18
+ return {
19
+ content: [
20
+ {
21
+ type: 'text',
22
+ text: `❌ 未找到 APIFOX_ACCESS_TOKEN\n\n` +
23
+ `${steps.join('\n')}\n\n` +
24
+ `请在 MCP 配置的 env 中配置 APIFOX_ACCESS_TOKEN:\n\n` +
25
+ `在 ~/.cursor/mcp.json 或项目根目录的 .cursor/mcp.json 中添加:\n\n` +
26
+ `\`\`\`json\n{\n "mcpServers": {\n "apifox-workspace-mcp": {\n "command": "node",\n "args": ["/path/to/dist/server/index.js"],\n "env": {\n "APIFOX_ACCESS_TOKEN": "your_token_here"\n }\n }\n }\n}\n\`\`\``,
27
+ },
28
+ ],
29
+ isError: true,
30
+ };
38
31
  }
32
+ steps.push(' ✅ Access Token 已配置');
39
33
  // 步骤 2: 验证和解析 URL
40
34
  steps.push('\n🔗 步骤 2: 验证和解析 URL');
41
35
  if (!isValidApifoxUrl(url)) {
@@ -63,7 +57,7 @@ export async function handleParseAndAddProject(args, ctx) {
63
57
  isError: true,
64
58
  };
65
59
  }
66
- projectId = parsed.projectId;
60
+ const projectId = parsed.projectId;
67
61
  projectName = parsed.projectName;
68
62
  const linkType = parsed.linkType;
69
63
  const llmsUrl = parsed.llmsUrl;
@@ -79,34 +73,22 @@ export async function handleParseAndAddProject(args, ctx) {
79
73
  steps.push(` - 接口 ID: ${parsed.interfaceId}`);
80
74
  }
81
75
  steps.push(` - llms.txt URL: ${llmsUrl}`);
82
- // 步骤 3: 检查 access token
83
- steps.push('\n🔑 步骤 3: 检查 Access Token');
84
- const accessToken = configManager.getAccessToken();
85
- if (!accessToken) {
86
- return {
87
- content: [
88
- {
89
- type: 'text',
90
- text: `❌ 未找到 APIFOX_ACCESS_TOKEN\n\n` +
91
- `${steps.join('\n')}\n\n` +
92
- `请在 MCP 配置的 env 中配置 APIFOX_ACCESS_TOKEN:\n\n` +
93
- `在 ~/.cursor/mcp.json 或项目根目录的 .cursor/mcp.json 中添加:\n\n` +
94
- `\`\`\`json\n{\n "mcpServers": {\n "apifox-workspace-mcp": {\n "command": "node",\n "args": ["/path/to/dist/server/index.js"],\n "env": {\n "APIFOX_ACCESS_TOKEN": "your_token_here"\n }\n }\n }\n}\n\`\`\``,
95
- },
96
- ],
97
- isError: true,
98
- };
99
- }
100
- steps.push(' ✅ Access Token 已配置');
101
- // 步骤 4: 检查项目是否已存在
76
+ // 步骤 3: 检查项目是否已存在
102
77
  steps.push('\n🔍 步骤 4: 检查项目是否已存在');
103
- configManager.getProjectName(projectId); // 检查是否存在
78
+ const cacheManager = new UnifiedCacheManager(projectRoot);
79
+ const existingProject = cacheManager.findProjectById(projectId);
80
+ if (existingProject) {
81
+ steps.push(` ℹ️ 项目已存在: ${existingProject.projectName} (${projectId})`);
82
+ }
83
+ else {
84
+ steps.push(` ✅ 项目不存在,将创建新项目`);
85
+ }
104
86
  // 步骤 5: 如果是接口分享链接,获取接口详情
105
87
  if (linkType === ShareLinkType.INTERFACE && parsed.interfaceId) {
106
88
  steps.push('\n📡 步骤 5: 获取接口详情');
107
89
  steps.push(` 🔄 正在获取接口 ${parsed.interfaceId} 的详细信息...`);
108
90
  try {
109
- const apifoxClient = new ApifoxClient(accessToken, getApiBaseUrl() ?? undefined);
91
+ const apifoxClient = new ApifoxClient(accessToken, configManager.getApiBaseUrl() ?? undefined);
110
92
  interfaceDetail = await apifoxClient.getInterfaceDetail(projectId, parsed.interfaceId);
111
93
  steps.push(' ✅ 成功获取接口详情');
112
94
  }
@@ -114,29 +96,34 @@ export async function handleParseAndAddProject(args, ctx) {
114
96
  steps.push(` ⚠️ 获取接口详情失败: ${error instanceof Error ? error.message : String(error)}`);
115
97
  }
116
98
  }
117
- // 步骤 6: 获取项目信息(通过 Apifox 官方 MCP Server,可选)
118
- steps.push('\n📡 步骤 6: 获取项目信息(可选)');
99
+ // 步骤 5: 获取项目信息(通过 Apifox 官方 MCP Server,可选)
100
+ steps.push('\n📡 步骤 5: 获取项目信息(可选)');
119
101
  if (!projectName) {
120
102
  steps.push(' 🔄 通过 Apifox 官方 MCP Server 获取项目信息...');
121
103
  try {
122
104
  const mcpResult = await mcpBridge.getProjectInfoViaMcp(accessToken, projectId);
123
105
  fullProjectInfo = mcpResult;
124
- projectName = mcpResult.name || `project-${projectId.substring(0, 8)}`;
125
- steps.push(' ✅ 通过 MCP Server 成功获取项目信息');
106
+ projectName = mcpResult.name;
107
+ if (projectName) {
108
+ steps.push(' ✅ 通过 MCP Server 成功获取项目信息');
109
+ }
110
+ else {
111
+ steps.push(' ⚠️ MCP Server 未返回项目名称');
112
+ }
126
113
  }
127
114
  catch (mcpError) {
128
115
  steps.push(` ⚠️ MCP Server 调用失败: ${mcpError instanceof Error ? mcpError.message : String(mcpError)}`);
129
- projectName = projectName || `project-${projectId.substring(0, 8)}`;
130
- steps.push(` ⚠️ 使用默认项目名称: ${projectName}`);
131
116
  }
132
117
  }
133
118
  else {
134
119
  steps.push(' ℹ️ 已从页面标题获取项目名称,跳过 MCP Server 调用');
135
120
  }
136
- // 步骤 7: 保存或更新项目信息到统一缓存
137
- steps.push('\n💾 步骤 7: 保存项目信息到统一缓存');
121
+ // 步骤 6: 保存或更新项目信息到统一缓存
122
+ steps.push('\n💾 步骤 6: 保存项目信息到统一缓存');
123
+ // 如果无法获取真实项目名称,使用 ${shareId}-${projectId} 作为后备
138
124
  if (!projectName) {
139
- projectName = `project-${projectId.substring(0, 8)}`;
125
+ projectName = shareId ? `${shareId}-${projectId}` : projectId;
126
+ steps.push(` ⚠️ 使用后备项目名称: ${projectName}`);
140
127
  }
141
128
  if (!llmsUrl) {
142
129
  return {
@@ -150,9 +137,8 @@ export async function handleParseAndAddProject(args, ctx) {
150
137
  };
151
138
  }
152
139
  // 使用统一缓存管理器
153
- const cacheManager = new UnifiedCacheManager(projectRoot);
154
- // 保存项目元数据
155
- cacheManager.upsertProjectMetadata(projectName, projectId, llmsUrl);
140
+ // 保存项目元数据(包含 shareId)
141
+ cacheManager.upsertProjectMetadata(projectName, projectId, llmsUrl, shareId);
156
142
  steps.push(' ✅ 已保存项目元数据到统一缓存');
157
143
  // 从 llms.txt 解析接口列表
158
144
  steps.push(' 🔄 正在从 llms.txt 解析接口列表...');
@@ -167,81 +153,67 @@ export async function handleParseAndAddProject(args, ctx) {
167
153
  steps.push(` ⚠️ 解析 llms.txt 失败: ${error instanceof Error ? error.message : String(error)}`);
168
154
  errors.push(`解析 llms.txt 失败: ${error instanceof Error ? error.message : String(error)}`);
169
155
  }
170
- // 同时保存到旧的 apifox-mcp.json(向后兼容)
171
- const upsertResult = configManager.upsertProject(projectName, {
172
- id: projectId,
173
- shareUrl: url,
174
- llmsUrl: llmsUrl,
175
- });
176
- if (upsertResult.success) {
177
- contextStore.setLastProject(projectName, projectId);
178
- steps.push(' ✅ 项目信息已保存到 apifox-mcp.json');
179
- // 构建返回信息
180
- let responseText = '';
181
- // 根据链接类型和是否为新项目,构造不同的提示语
182
- if (linkType === ShareLinkType.PROJECT) {
183
- responseText = upsertResult.isNew ? `✅ 项目配置已添加!\n\n` : `✅ 项目配置已更新!\n\n`;
184
- }
185
- else {
186
- responseText = upsertResult.isNew
187
- ? `✅ 该接口对应项目配置已添加!\n\n`
188
- : `✅ 该接口对应项目配置已存在!\n\n`;
189
- }
190
- responseText += `**保存的信息:**\n`;
191
- responseText += `- 项目 ID: ${projectId}\n`;
192
- responseText += `- 项目名称: ${projectName}\n`;
193
- responseText += `- 分享 ID: ${shareId}\n`;
194
- if (llmsUrl) {
195
- responseText += `- llms.txt URL: ${llmsUrl}\n`;
196
- }
197
- if (parsed.interfaceId) {
198
- responseText += `- 接口 ID: ${parsed.interfaceId}\n`;
156
+ // 设置最后操作的项目
157
+ contextStore.setLastProject(projectName, projectId);
158
+ // 构建返回信息
159
+ let responseText = '';
160
+ // 检查是否为新项目
161
+ const isNewProject = !existingProject;
162
+ // 根据链接类型和是否为新项目,构造不同的提示语
163
+ if (linkType === ShareLinkType.PROJECT) {
164
+ responseText = isNewProject ? `✅ 项目配置已添加!\n\n` : `✅ 项目配置已更新!\n\n`;
165
+ }
166
+ else {
167
+ responseText = isNewProject
168
+ ? `✅ 该接口对应项目配置已添加!\n\n`
169
+ : `✅ 该接口对应项目配置已存在!\n\n`;
170
+ }
171
+ responseText += `**保存的信息:**\n`;
172
+ responseText += `- 项目 ID: ${projectId}\n`;
173
+ responseText += `- 项目名称: ${projectName}\n`;
174
+ responseText += `- 分享 ID: ${shareId}\n`;
175
+ if (llmsUrl) {
176
+ responseText += `- llms.txt URL: ${llmsUrl}\n`;
177
+ }
178
+ if (parsed.interfaceId) {
179
+ responseText += `- 接口 ID: ${parsed.interfaceId}\n`;
180
+ }
181
+ responseText += `\n`;
182
+ // 如果是接口分享链接,输出接口详情
183
+ if (linkType === ShareLinkType.INTERFACE && interfaceDetail) {
184
+ responseText += `**当前接口信息:**\n`;
185
+ responseText += `- 接口名称: ${interfaceDetail.name || '未命名'}\n`;
186
+ responseText += `- 请求方法: ${interfaceDetail.method || 'UNKNOWN'}\n`;
187
+ responseText += `- 接口路径: ${interfaceDetail.path || '/'}\n`;
188
+ if (interfaceDetail.description) {
189
+ responseText += `- 描述: ${interfaceDetail.description}\n`;
199
190
  }
200
191
  responseText += `\n`;
201
- // 如果是接口分享链接,输出接口详情
202
- if (linkType === ShareLinkType.INTERFACE && interfaceDetail) {
203
- responseText += `**当前接口信息:**\n`;
204
- responseText += `- 接口名称: ${interfaceDetail.name || '未命名'}\n`;
205
- responseText += `- 请求方法: ${interfaceDetail.method || 'UNKNOWN'}\n`;
206
- responseText += `- 接口路径: ${interfaceDetail.path || '/'}\n`;
207
- if (interfaceDetail.description) {
208
- responseText += `- 描述: ${interfaceDetail.description}\n`;
209
- }
210
- responseText += `\n`;
211
- responseText += `**完整接口详情:**\n`;
212
- responseText += `\`\`\`json\n${JSON.stringify(interfaceDetail, null, 2)}\n\`\`\`\n\n`;
213
- }
214
- if (fullProjectInfo) {
215
- responseText += `**项目完整信息:**\n`;
216
- responseText += `\`\`\`json\n${JSON.stringify(fullProjectInfo, null, 2)}\n\`\`\`\n\n`;
217
- }
218
- // 根据链接类型询问用户下一步
219
- if (linkType === ShareLinkType.PROJECT) {
220
- responseText += `现在想要了解该项目的哪些信息?\n`;
221
- }
222
- else {
223
- responseText += `现在需要我帮助您做什么?\n`;
224
- }
225
- return {
226
- content: [
227
- {
228
- type: 'text',
229
- text: responseText,
230
- },
231
- ],
232
- };
192
+ responseText += `**完整接口详情:**\n`;
193
+ responseText += `\`\`\`json\n${JSON.stringify(interfaceDetail, null, 2)}\n\`\`\`\n\n`;
233
194
  }
234
- else {
235
- errors.push(upsertResult.message);
236
- return {
237
- content: [
238
- {
239
- type: 'text',
240
- text: `❌ ${upsertResult.message}\n\n**执行过程:**\n${steps.join('\n')}\n\n**错误:**\n${errors.join('\n')}`,
241
- },
242
- ],
243
- isError: true,
244
- };
195
+ if (fullProjectInfo) {
196
+ responseText += `**项目完整信息:**\n`;
197
+ responseText += `\`\`\`json\n${JSON.stringify(fullProjectInfo, null, 2)}\n\`\`\`\n\n`;
245
198
  }
199
+ // 根据链接类型询问用户下一步
200
+ if (linkType === ShareLinkType.PROJECT) {
201
+ responseText += `现在想要了解该项目的哪些信息?\n`;
202
+ }
203
+ else {
204
+ responseText += `现在需要我帮助您做什么?\n`;
205
+ }
206
+ // 如果有错误,添加错误信息
207
+ if (errors.length > 0) {
208
+ responseText += `\n**警告:**\n${errors.join('\n')}\n`;
209
+ }
210
+ return {
211
+ content: [
212
+ {
213
+ type: 'text',
214
+ text: responseText,
215
+ },
216
+ ],
217
+ };
246
218
  }
247
219
  //# sourceMappingURL=parse-and-add-project.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parse-and-add-project.js","sourceRoot":"","sources":["../../../src/server/handlers/parse-and-add-project.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parse-and-add-project.js","sourceRoot":"","sources":["../../../src/server/handlers/parse-and-add-project.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"query-interfaces.d.ts","sourceRoot":"","sources":["../../../src/server/handlers/query-interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,YAAY,EAAoB,MAAM,qBAAqB,CAAC;AAG/F,MAAM,WAAW,mBAAmB;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,aAAa,CAAC;IAC7B,SAAS,EAAE,SAAS,CAAC;IACrB,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,mBAAmB,EACzB,GAAG,EAAE,sBAAsB;;;;;;;;;;;;GA+G5B"}
1
+ {"version":3,"file":"query-interfaces.d.ts","sourceRoot":"","sources":["../../../src/server/handlers/query-interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,YAAY,EAAoB,MAAM,qBAAqB,CAAC;AAG/F,MAAM,WAAW,mBAAmB;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,aAAa,CAAC;IAC7B,SAAS,EAAE,SAAS,CAAC;IACrB,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,mBAAmB,EACzB,GAAG,EAAE,sBAAsB;;;;;;;;;;;;GAqH5B"}
@@ -37,7 +37,7 @@ export async function handleQueryInterfaces(args, ctx) {
37
37
  }
38
38
  groupedByFolder.get(folder).push(api);
39
39
  }
40
- // 生成带编号和分组的展示
40
+ // 生成带编号和分组的展示,每个接口都有清晰的标识
41
41
  let currentIndex = 1;
42
42
  const rows = [];
43
43
  for (const [folder, apis] of groupedByFolder.entries()) {
@@ -45,7 +45,7 @@ export async function handleQueryInterfaces(args, ctx) {
45
45
  rows.push(`\n### 📁 ${folder}`);
46
46
  }
47
47
  for (const api of apis) {
48
- rows.push(`${currentIndex}. **${api.name}**\n ID: ${api.id}\n 目录: ${api.folderPath || '根目录'}\n 文档: ${api.docUrl}`);
48
+ rows.push(`☑️ [${currentIndex}] **${api.name}**\n ID: ${api.id}\n 目录: ${api.folderPath || '根目录'}\n 文档: ${api.docUrl}`);
49
49
  currentIndex++;
50
50
  }
51
51
  }
@@ -59,9 +59,14 @@ export async function handleQueryInterfaces(args, ctx) {
59
59
  }));
60
60
  contextStore.setLastProject(projectInfo.projectName, projectInfo.projectId);
61
61
  contextStore.saveInterfaceList(projectInfo.projectName, projectInfo.projectId, summaryList);
62
- const hint = limited.length > 0
63
- ? `\n\n💡 提示:\n- 查看详情:说"告诉我 ${limited[0].name} 的接口细节"\n- 生成类型:说"帮我生成 ${limited[0].name} 的类型"\n- 选择多个:说"选择接口 1, 3, 5" 或 "选择包含支付的接口"\n- 生成全部:说"生成这些接口的类型"`
64
- : '';
62
+ // 构建详细的选择和批量生成提示
63
+ const selectionExamples = [
64
+ `**方式一:按编号选择**\n - "选择接口 1, 3, 5"(选择多个)\n - "选择接口 1-5"(选择范围)\n - "选择接口 1, 3, 5-10"(混合选择)`,
65
+ `**方式二:按关键词选择**\n - "选择包含'支付'的接口"\n - "选择包含'退款'和'订单'的接口"`,
66
+ `**方式三:按名称选择**\n - "选择'退款接口'和'支付接口'"`,
67
+ ].join('\n\n');
68
+ const batchGenerateHint = `\n\n📝 **批量生成类型文件**\n\n${selectionExamples}\n\n选择完成后,说:"生成这些接口的类型" 或 "生成这些接口的 TypeScript 类型" 即可批量生成。\n\n💡 **其他操作**\n- 查看单个接口详情:说"告诉我接口 ${limited.length > 0 ? limited[0].name : 'X'} 的详情"\n- 生成单个接口类型:说"生成接口 ${limited.length > 0 ? limited[0].name : 'X'} 的类型"`;
69
+ const hint = limited.length > 0 ? batchGenerateHint : '';
65
70
  return {
66
71
  content: [
67
72
  {
@@ -1 +1 @@
1
- {"version":3,"file":"query-interfaces.js","sourceRoot":"","sources":["../../../src/server/handlers/query-interfaces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query-interfaces.js","sourceRoot":"","sources":["../../../src/server/handlers/query-interfaces.ts"],"names":[],"mappings":"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"}
@@ -9,9 +9,10 @@ export interface ResolvedProjectInfo {
9
9
  /**
10
10
  * 解析项目信息(从统一缓存)
11
11
  */
12
- export declare function resolveProjectInfo(projectRoot: string, contextStore: ContextStore, projectName?: string, projectId?: string): ResolvedProjectInfo | null;
12
+ export declare function resolveProjectInfo(projectRoot: string, contextStore: ContextStore, projectName?: string, projectId?: string, shareId?: string): ResolvedProjectInfo | null;
13
13
  /**
14
- * 获取 API Base URL
14
+ * 获取 API Base URL(已废弃,使用 ConfigManager.getApiBaseUrl())
15
+ * @deprecated 使用 ConfigManager.getApiBaseUrl() 替代
15
16
  */
16
17
  export declare function getApiBaseUrlFromEnv(): string | null;
17
18
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/server/handlers/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAGxE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,YAAY,EAC1B,WAAW,CAAC,EAAE,MAAM,EACpB,SAAS,CAAC,EAAE,MAAM,GACjB,mBAAmB,GAAG,IAAI,CAkB5B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,IAAI,CAOpD;AAED;;GAEG;AACH,wBAAgB,yBAAyB;;;;;;EAYxC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,UAAQ;;;;;;EAU9D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAKnF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAQpF"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/server/handlers/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,YAAY,EAC1B,WAAW,CAAC,EAAE,MAAM,EACpB,SAAS,CAAC,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,MAAM,GACf,mBAAmB,GAAG,IAAI,CAyB5B;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,IAAI,CAOpD;AAED;;GAEG;AACH,wBAAgB,yBAAyB;;;;;;EAYxC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,UAAQ;;;;;;EAU9D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAKnF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAQpF"}
@@ -2,24 +2,31 @@ import { UnifiedCacheManager } from '../../core/index.js';
2
2
  /**
3
3
  * 解析项目信息(从统一缓存)
4
4
  */
5
- export function resolveProjectInfo(projectRoot, contextStore, projectName, projectId) {
5
+ export function resolveProjectInfo(projectRoot, contextStore, projectName, projectId, shareId) {
6
6
  const cacheManager = new UnifiedCacheManager(projectRoot);
7
7
  if (projectId) {
8
8
  const project = cacheManager.findProjectById(projectId);
9
9
  const derivedName = projectName ?? project?.projectName ?? projectId;
10
10
  return { projectId, projectName: derivedName };
11
11
  }
12
+ if (shareId) {
13
+ const project = cacheManager.findProjectByShareId(shareId);
14
+ if (project) {
15
+ return { projectId: project.projectId, projectName: project.projectName };
16
+ }
17
+ }
12
18
  if (projectName) {
13
19
  const project = cacheManager.findProjectByName(projectName);
14
20
  if (!project) {
15
21
  return null;
16
22
  }
17
- return { projectId: project.projectIds, projectName };
23
+ return { projectId: project.projectId, projectName };
18
24
  }
19
25
  return contextStore.getLastProject();
20
26
  }
21
27
  /**
22
- * 获取 API Base URL
28
+ * 获取 API Base URL(已废弃,使用 ConfigManager.getApiBaseUrl())
29
+ * @deprecated 使用 ConfigManager.getApiBaseUrl() 替代
23
30
  */
24
31
  export function getApiBaseUrlFromEnv() {
25
32
  const baseUrl = process.env.APIFOX_API_BASE_URL;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/server/handlers/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAgB,MAAM,qBAAqB,CAAC;AAWxE;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAChC,WAAmB,EACnB,YAA0B,EAC1B,WAAoB,EACpB,SAAkB;IAElB,MAAM,YAAY,GAAG,IAAI,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAE1D,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,YAAY,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QACxD,MAAM,WAAW,GAAG,WAAW,IAAI,OAAO,EAAE,WAAW,IAAI,SAAS,CAAC;QACrE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC;IACjD,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,OAAO,GAAG,YAAY,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAC5D,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,UAAU,EAAE,WAAW,EAAE,CAAC;IACxD,CAAC;IAED,OAAO,YAAY,CAAC,cAAc,EAAE,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB;IAClC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;IAChD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAC/B,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,yBAAyB;IACvC,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EACF,oCAAoC;oBACpC,2EAA2E;aAC9E;SACF;QACD,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAY,EAAE,OAAO,GAAG,KAAK;IAC7D,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI;aACL;SACF;QACD,OAAO;KACR,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAA0C;IACzE,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,yBAAyB,CAAC;IACzE,OAAO,WAAW,MAAM,CAAC,MAAM,IAAI,KAAK,KAAK,OAAO,GAAG,MAAM,CAAC,IAAI,IAAI,OAAO;;qBAE1D,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAA0C;IAC1E,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,yBAAyB,CAAC;IACzE,OAAO,iCAAiC,OAAO,GAAG,MAAM,CAAC,IAAI,IAAI,OAAO;aAC7D,MAAM,CAAC,MAAM,IAAI,KAAK;;;;oCAIC,CAAC;AACrC,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/server/handlers/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAgB,MAAM,qBAAqB,CAAC;AAUxE;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAChC,WAAmB,EACnB,YAA0B,EAC1B,WAAoB,EACpB,SAAkB,EAClB,OAAgB;IAEhB,MAAM,YAAY,GAAG,IAAI,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAE1D,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,YAAY,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QACxD,MAAM,WAAW,GAAG,WAAW,IAAI,OAAO,EAAE,WAAW,IAAI,SAAS,CAAC;QACrE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC;IACjD,CAAC;IAED,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,OAAO,GAAG,YAAY,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAC3D,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC;QAC5E,CAAC;IACH,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,OAAO,GAAG,YAAY,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAC5D,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,WAAW,EAAE,CAAC;IACvD,CAAC;IAED,OAAO,YAAY,CAAC,cAAc,EAAE,CAAC;AACvC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB;IAClC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;IAChD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAC/B,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,yBAAyB;IACvC,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EACF,oCAAoC;oBACpC,2EAA2E;aAC9E;SACF;QACD,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAY,EAAE,OAAO,GAAG,KAAK;IAC7D,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI;aACL;SACF;QACD,OAAO;KACR,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAA0C;IACzE,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,yBAAyB,CAAC;IACzE,OAAO,WAAW,MAAM,CAAC,MAAM,IAAI,KAAK,KAAK,OAAO,GAAG,MAAM,CAAC,IAAI,IAAI,OAAO;;qBAE1D,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAA0C;IAC1E,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,yBAAyB,CAAC;IACzE,OAAO,iCAAiC,OAAO,GAAG,MAAM,CAAC,IAAI,IAAI,OAAO;aAC7D,MAAM,CAAC,MAAM,IAAI,KAAK;;;;oCAIC,CAAC;AACrC,CAAC"}
@@ -1,12 +1,11 @@
1
1
  #!/usr/bin/env node
2
2
  import { resolve } from 'path';
3
- import { cwd } from 'process';
4
3
  import { Server } from '@modelcontextprotocol/sdk/server/index.js';
5
4
  import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
6
5
  import { CallToolRequestSchema, ListToolsRequestSchema } from '@modelcontextprotocol/sdk/types.js';
7
6
  import { ConfigManager, McpBridge, ContextStore } from '../core/index.js';
8
7
  import { loadEnvFromMcpConfig, DEFAULT_SERVER_NAME, findProjectRoot } from '../lib/index.js';
9
- import { handleListProjects, handleParseAndAddProject, handleQueryInterfaces, handleGetInterfaceDetail, handleGenerateArtifacts, handleAssistant, handleSelectInterfaces, getApiBaseUrlFromEnv, } from './handlers/index.js';
8
+ import { handleListProjects, handleParseAndAddProject, handleQueryInterfaces, handleGetInterfaceDetail, handleGenerateArtifacts, handleAssistant, handleSelectInterfaces, } from './handlers/index.js';
10
9
  /**
11
10
  * Apifox Workspace MCP Server 主入口
12
11
  * 提供工作空间级别的 Apifox 项目管理功能
@@ -36,35 +35,8 @@ class ApifoxMcpServer {
36
35
  this.configManager = new ConfigManager(this.projectRoot);
37
36
  this.mcpBridge = new McpBridge(this.projectRoot);
38
37
  this.contextStore = new ContextStore(this.projectRoot);
39
- // 初始化配置文件
40
- this.initializeConfig();
41
38
  this.setupHandlers();
42
39
  }
43
- /**
44
- * 初始化配置文件
45
- */
46
- initializeConfig() {
47
- console.error(`🔍 初始化配置文件...`);
48
- console.error(`📂 当前工作目录: ${cwd()}`);
49
- console.error(`📂 项目根目录: ${this.projectRoot}`);
50
- const result = this.configManager.initializeConfig();
51
- if (result.apifoxConfigCreated) {
52
- console.error(`✅ 已创建 apifox-mcp.json 配置文件`);
53
- console.error(` 位置: ${result.configPath}`);
54
- }
55
- else if (result.apifoxConfigExists) {
56
- console.error(`✅ apifox-mcp.json 配置文件已存在`);
57
- console.error(` 位置: ${result.configPath}`);
58
- }
59
- if (result.errors.length > 0) {
60
- console.error('⚠️ 配置文件初始化警告:');
61
- result.errors.forEach((error) => {
62
- console.error(` - ${error}`);
63
- });
64
- console.error(` 项目根目录: ${result.projectRoot}`);
65
- console.error(` 配置文件路径: ${result.configPath}`);
66
- }
67
- }
68
40
  setupHandlers() {
69
41
  // 列出可用工具
70
42
  this.server.setRequestHandler(ListToolsRequestSchema, async () => ({
@@ -99,7 +71,7 @@ class ApifoxMcpServer {
99
71
  properties: {
100
72
  projectName: {
101
73
  type: 'string',
102
- description: '项目名称(从 apifox-mcp.json 中)',
74
+ description: '项目名称(从统一缓存中)',
103
75
  },
104
76
  projectId: {
105
77
  type: 'string',
@@ -212,7 +184,6 @@ class ApifoxMcpServer {
212
184
  configManager: this.configManager,
213
185
  mcpBridge: this.mcpBridge,
214
186
  contextStore: this.contextStore,
215
- getApiBaseUrl: getApiBaseUrlFromEnv,
216
187
  };
217
188
  switch (name) {
218
189
  case 'list_projects':
@@ -226,9 +197,18 @@ class ApifoxMcpServer {
226
197
  case 'generate_artifacts':
227
198
  return await handleGenerateArtifacts(args, handlerContext);
228
199
  case 'select_interfaces':
229
- return await handleSelectInterfaces(args, handlerContext);
200
+ return await handleSelectInterfaces(args, {
201
+ projectRoot: this.projectRoot,
202
+ configManager: this.configManager,
203
+ contextStore: this.contextStore,
204
+ });
230
205
  case 'apifox_assistant':
231
- return await handleAssistant(args, handlerContext);
206
+ return await handleAssistant(args, {
207
+ projectRoot: this.projectRoot,
208
+ configManager: this.configManager,
209
+ mcpBridge: this.mcpBridge,
210
+ contextStore: this.contextStore,
211
+ });
232
212
  default:
233
213
  throw new Error(`未知工具: ${name}`);
234
214
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAEnG,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,YAAY,EAAgB,MAAM,kBAAkB,CAAC;AACxF,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC7F,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,EACvB,eAAe,EACf,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAE7B;;;GAGG;AACH,MAAM,eAAe;IACX,MAAM,CAAS;IACf,aAAa,CAAgB;IAC7B,SAAS,CAAY;IACrB,WAAW,CAAS;IACpB,YAAY,CAAe;IAEnC,YAAY,WAAoB;QAC9B,mBAAmB;QACnB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,eAAe,EAAE,CAAC,CAAC;QAE7D,oBAAoB,CAAC;YACnB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,mBAAmB;SACzE,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CACtB;YACE,IAAI,EAAE,sBAAsB;YAC5B,OAAO,EAAE,OAAO;SACjB,EACD;YACE,YAAY,EAAE;gBACZ,KAAK,EAAE,EAAE;gBACT,SAAS,EAAE,EAAE;aACd;SACF,CACF,CAAC;QAEF,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACzD,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjD,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAEvD,UAAU;QACV,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAExB,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED;;OAEG;IACK,gBAAgB;QACtB,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,cAAc,GAAG,EAAE,EAAE,CAAC,CAAC;QACrC,OAAO,CAAC,KAAK,CAAC,aAAa,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAE/C,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,CAAC;QAErD,IAAI,MAAM,CAAC,mBAAmB,EAAE,CAAC;YAC/B,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAC5C,OAAO,CAAC,KAAK,CAAC,UAAU,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;QAC/C,CAAC;aAAM,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC;YACrC,OAAO,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAC3C,OAAO,CAAC,KAAK,CAAC,UAAU,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;QAC/C,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YAC/B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC9B,OAAO,CAAC,KAAK,CAAC,QAAQ,KAAK,EAAE,CAAC,CAAC;YACjC,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,KAAK,CAAC,aAAa,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;YACjD,OAAO,CAAC,KAAK,CAAC,cAAc,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IAEO,aAAa;QACnB,SAAS;QACT,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;YACjE,KAAK,EAAE;gBACL;oBACE,IAAI,EAAE,eAAe;oBACrB,WAAW,EAAE,uBAAuB;oBACpC,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE,EAAE;qBACf;iBACF;gBACD;oBACE,IAAI,EAAE,uBAAuB;oBAC7B,WAAW,EAAE,yBAAyB;oBACtC,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,GAAG,EAAE;gCACH,IAAI,EAAE,QAAQ;gCACd,WAAW,EACT,iKAAiK;6BACpK;yBACF;wBACD,QAAQ,EAAE,CAAC,KAAK,CAAC;qBAClB;iBACF;gBACD;oBACE,IAAI,EAAE,kBAAkB;oBACxB,WAAW,EAAE,oBAAoB;oBACjC,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,WAAW,EAAE;gCACX,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,2BAA2B;6BACzC;4BACD,SAAS,EAAE;gCACT,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,kCAAkC;6BAChD;4BACD,OAAO,EAAE;gCACP,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,yBAAyB;6BACvC;4BACD,GAAG,EAAE;gCACH,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,YAAY;6BAC1B;4BACD,KAAK,EAAE;gCACL,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,iBAAiB;6BAC/B;yBACF;wBACD,QAAQ,EAAE,EAAE;qBACb;iBACF;gBACD;oBACE,IAAI,EAAE,sBAAsB;oBAC5B,WAAW,EAAE,aAAa;oBAC1B,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,WAAW,EAAE;gCACX,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,MAAM;6BACpB;4BACD,WAAW,EAAE;gCACX,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,OAAO;6BACrB;yBACF;wBACD,QAAQ,EAAE,CAAC,aAAa,EAAE,aAAa,CAAC;qBACzC;iBACF;gBACD;oBACE,IAAI,EAAE,oBAAoB;oBAC1B,WAAW,EAAE,2BAA2B;oBACxC,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4BAC/B,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4BAC7B,YAAY,EAAE;gCACZ,IAAI,EAAE,OAAO;gCACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gCACzB,WAAW,EAAE,cAAc;6BAC5B;4BACD,YAAY,EAAE;gCACZ,IAAI,EAAE,QAAQ;gCACd,IAAI,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,kBAAkB,EAAE,cAAc,CAAC;6BACpE;4BACD,UAAU,EAAE;gCACV,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,kBAAkB;6BAChC;4BACD,MAAM,EAAE;gCACN,IAAI,EAAE,SAAS;gCACf,WAAW,EAAE,mBAAmB;6BACjC;yBACF;wBACD,QAAQ,EAAE,CAAC,cAAc,CAAC;qBAC3B;iBACF;gBACD;oBACE,IAAI,EAAE,mBAAmB;oBACzB,WAAW,EAAE,kCAAkC;oBAC/C,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,WAAW,EAAE;gCACX,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,uBAAuB;6BACrC;4BACD,YAAY,EAAE;gCACZ,IAAI,EAAE,OAAO;gCACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gCACzB,WAAW,EAAE,kBAAkB;6BAChC;yBACF;wBACD,QAAQ,EAAE,EAAE;qBACb;iBACF;gBACD;oBACE,IAAI,EAAE,kBAAkB;oBACxB,WAAW,EAAE,wCAAwC;oBACrD,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,MAAM,EAAE;gCACN,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,yBAAyB;6BACvC;yBACF;wBACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;qBACrB;iBACF;aACF;SACF,CAAC,CAAC,CAAC;QAEJ,SAAS;QACT,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YACrE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;YAEjD,IAAI,CAAC;gBACH,MAAM,cAAc,GAAG;oBACrB,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,aAAa,EAAE,IAAI,CAAC,aAAa;oBACjC,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,YAAY,EAAE,IAAI,CAAC,YAAY;oBAC/B,aAAa,EAAE,oBAAoB;iBACpC,CAAC;gBAEF,QAAQ,IAAI,EAAE,CAAC;oBACb,KAAK,eAAe;wBAClB,OAAO,MAAM,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;oBAEpD,KAAK,uBAAuB;wBAC1B,OAAO,MAAM,wBAAwB,CAAC,IAAuB,EAAE,cAAc,CAAC,CAAC;oBAEjF,KAAK,kBAAkB;wBACrB,OAAO,MAAM,qBAAqB,CAChC,IAIC,EACD,cAAc,CACf,CAAC;oBAEJ,KAAK,sBAAsB;wBACzB,OAAO,MAAM,wBAAwB,CACnC,IAAoD,EACpD,cAAc,CACf,CAAC;oBAEJ,KAAK,oBAAoB;wBACvB,OAAO,MAAM,uBAAuB,CAClC,IAOC,EACD,cAAc,CACf,CAAC;oBAEJ,KAAK,mBAAmB;wBACtB,OAAO,MAAM,sBAAsB,CACjC,IAIC,EACD,cAAc,CACf,CAAC;oBAEJ,KAAK,kBAAkB;wBACrB,OAAO,MAAM,eAAe,CAAC,IAA0B,EAAE,cAAc,CAAC,CAAC;oBAE3E;wBACE,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;gBACrC,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;yBACtE;qBACF;oBACD,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO;QACP,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE;YAC9B,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;QACtC,CAAC,CAAC;QAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;YAC9B,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAC1B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAC7C,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACrC,OAAO,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACnD,CAAC;CACF;AAED,QAAQ;AACR,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;AACrC,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"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"}
@@ -89,12 +89,15 @@ export interface ProjectInfo {
89
89
  executionSteps?: string[];
90
90
  }
91
91
  /**
92
- * Handler 上下文
92
+ * Handler 上下文(已废弃,各 Handler 使用自己的 Context 接口)
93
+ * @deprecated 使用各 Handler 特定的 Context 接口
93
94
  */
94
95
  export interface HandlerContext {
95
96
  projectRoot: string;
96
- getAccessToken: () => string | null;
97
- getApiBaseUrl: () => string | null;
97
+ configManager: {
98
+ getAccessToken: () => string | null;
99
+ getApiBaseUrl: () => string | null;
100
+ };
98
101
  }
99
102
  /**
100
103
  * 创建文本响应的辅助函数