@cloudglab/yapi-cli 0.0.5 → 0.0.8

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 (51) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/README.md +42 -2
  3. package/dist/cli.js +195 -23
  4. package/dist/cli.js.map +1 -1
  5. package/dist/core/cli-output.d.ts +1 -1
  6. package/dist/core/cli-output.js +114 -25
  7. package/dist/core/cli-output.js.map +1 -1
  8. package/dist/core/cli-registry.js +33 -2
  9. package/dist/core/cli-registry.js.map +1 -1
  10. package/dist/core/errors.js +36 -3
  11. package/dist/core/errors.js.map +1 -1
  12. package/dist/core/http-metrics.d.ts +31 -0
  13. package/dist/core/http-metrics.js +35 -0
  14. package/dist/core/http-metrics.js.map +1 -0
  15. package/dist/core/output.d.ts +18 -4
  16. package/dist/core/output.js +105 -22
  17. package/dist/core/output.js.map +1 -1
  18. package/dist/core/update-probe.d.ts +4 -1
  19. package/dist/core/update-probe.js +43 -2
  20. package/dist/core/update-probe.js.map +1 -1
  21. package/dist/core/url-parser.d.ts +20 -0
  22. package/dist/core/url-parser.js +237 -0
  23. package/dist/core/url-parser.js.map +1 -0
  24. package/dist/install.js +10 -1
  25. package/dist/install.js.map +1 -1
  26. package/dist/manifest.json +27 -2
  27. package/dist/services/yapi/api.d.ts +12 -1
  28. package/dist/services/yapi/api.js +96 -10
  29. package/dist/services/yapi/api.js.map +1 -1
  30. package/dist/tools/shared.d.ts +2 -2
  31. package/dist/tools/shared.js.map +1 -1
  32. package/dist/tools/yapi/register-auth.js +12 -12
  33. package/dist/tools/yapi/register-auth.js.map +1 -1
  34. package/dist/tools/yapi/register-group.js +16 -16
  35. package/dist/tools/yapi/register-group.js.map +1 -1
  36. package/dist/tools/yapi/register-interface.js +177 -55
  37. package/dist/tools/yapi/register-interface.js.map +1 -1
  38. package/dist/tools/yapi/register-project.js +92 -31
  39. package/dist/tools/yapi/register-project.js.map +1 -1
  40. package/dist/tools/yapi/register-test.js +11 -11
  41. package/dist/tools/yapi/register-test.js.map +1 -1
  42. package/dist/tools/yapi/register-util.js +124 -34
  43. package/dist/tools/yapi/register-util.js.map +1 -1
  44. package/dist/version.d.ts +1 -1
  45. package/dist/version.js +1 -1
  46. package/docs/ai-cli-optimization-plan.md +412 -0
  47. package/package.json +1 -1
  48. package/skills/yapi-cli/SKILL.md +15 -0
  49. package/skills/yapi-cli/reference/cli.md +19 -3
  50. package/skills/yapi-cli/reference/commands.md +2 -1
  51. package/skills/yapi-cli/reference/interface.md +13 -3
@@ -6,9 +6,9 @@ import { loadConfig, YAPI_HOME, YApiAuthService, YApiService } from '../../servi
6
6
  export function registerInterfaceCommands(registry) {
7
7
  // ==================== 搜索接口 ====================
8
8
  registry.tool('search', {
9
- q: z.string().describe('搜索关键词'),
9
+ q: z.string().describe('搜索关键词,必填。YApi 服务端在接口标题和路径上做模糊匹配,区分大小写由服务端决定。空字符串可能返回空结果或报错。'),
10
10
  ...optionalIdFilter,
11
- limit: z.coerce.number().optional().default(20).describe('返回数量限制'),
11
+ limit: z.coerce.number().optional().default(20).describe('返回接口数量上限,默认 20。YApi 服务端有上限保护,建议不超过 50;与 groupId/projectId 联用时可缩小搜索范围。'),
12
12
  }, async (input) => {
13
13
  const { api } = createYApiServices();
14
14
  const result = await api.searchInterfaces({
@@ -35,8 +35,8 @@ export function registerInterfaceCommands(registry) {
35
35
  registry.tool('interface-list', {
36
36
  ...projectIdSchema,
37
37
  ...paginationSchema,
38
- status: z.string().optional().describe('筛选状态: done/undone'),
39
- method: z.string().optional().describe('筛选方法: GET/POST/PUT/DELETE'),
38
+ status: z.string().optional().describe('按状态过滤,可选。常用值 done(已完成)/ undone(未完成),大小写敏感,由服务端精确匹配;不传则两种都返回。'),
39
+ method: z.string().optional().describe(' HTTP 方法过滤,可选。常用值 GET / POST / PUT / DELETE / PATCH,建议使用大写,具体合法值由 YApi 服务端定义。'),
40
40
  }, async (input) => {
41
41
  const { api } = createYApiServices();
42
42
  const result = await api.listInterfaces({
@@ -61,7 +61,7 @@ export function registerInterfaceCommands(registry) {
61
61
  }, '列出项目中的接口', { costHint: 'low', nextBestTools: ['interface-get', 'project-get', 'category-list'] });
62
62
  // ==================== 接口详情 ====================
63
63
  registry.tool('interface-get', {
64
- interfaceId: z.coerce.number().describe('接口 ID'),
64
+ interfaceId: z.coerce.number().describe('接口 ID,必填。返回接口完整字段,请求/响应体仅返回前 500 字符,长内容可用 interface-snapshot。'),
65
65
  }, async (input) => {
66
66
  const { api } = createYApiServices();
67
67
  const result = await api.getInterfaceDetail(input.interfaceId);
@@ -88,10 +88,10 @@ export function registerInterfaceCommands(registry) {
88
88
  }, '查看接口详情', { costHint: 'low', nextBestTools: ['interface-list', 'log', 'request'] });
89
89
  // ==================== 原始请求 ====================
90
90
  registry.tool('request', {
91
- path: z.string().describe('API 路径(如 /api/project/list'),
92
- method: httpMethodEnum.optional().default('GET').describe('HTTP 方法'),
93
- body: optionalTrimmedText.describe('请求体 JSON(仅 POST/PUT'),
94
- projectId: z.coerce.number().optional().describe('项目 ID(用于注入 token'),
91
+ path: z.string().describe('YApi API 路径,必填,例如 /api/project/list。可以传以 / 开头或不带 / 的路径,CLI 内部会统一补齐前导 /。'),
92
+ method: httpMethodEnum.optional().default('GET').describe('HTTP 方法,可选枚举 GET/POST/PUT/DELETE/PATCH,默认 GET。YApi 私有接口通常要求 GET 或 POST,其他方法可能被服务端拒绝。'),
93
+ body: optionalTrimmedText.describe('请求体 JSON 字符串,可选。仅在 method 为 POST/PUT/PATCH 时会真正发送到服务端,其他方法传入会被忽略。需是合法 JSON,空字符串视为未传。'),
94
+ projectId: z.coerce.number().optional().describe('项目 ID,可选,YApi 内部数字 ID。当 YApi 接口要求 _yapi_token 或需要注入项目专属 Authorization 时使用,不传时仅使用全局登录 token'),
95
95
  }, async (input) => {
96
96
  const config = loadConfig();
97
97
  if (!config) {
@@ -139,16 +139,16 @@ export function registerInterfaceCommands(registry) {
139
139
  // ==================== 接口创建 ====================
140
140
  registry.tool('interface-create', {
141
141
  ...projectIdSchema,
142
- catId: z.coerce.number().describe('分类 ID'),
143
- title: z.string().describe('接口标题'),
144
- path: z.string().describe('接口路径(如 /api/user/list'),
145
- method: httpMethodEnum.default('GET').describe('HTTP 方法'),
146
- desc: optionalTrimmedText.describe('接口描述'),
147
- status: z.enum(['done', 'undone']).optional().default('undone').describe('开发状态'),
148
- reqBodyType: z.string().optional().describe('请求体类型(如 json/form'),
149
- reqBody: optionalTrimmedText.describe('请求体示例(JSON'),
150
- resBodyType: z.string().optional().describe('响应体类型(如 json'),
151
- resBody: optionalTrimmedText.describe('响应体示例(JSON'),
142
+ catId: z.coerce.number().describe('接口所属分类 ID,必填,可通过 category-list 获取。同分类下接口不可重复 path+method。'),
143
+ title: z.string().describe('接口标题,必填,YApi 前端展示用,建议带业务前缀,例如 用户登录-手机号密码。'),
144
+ path: z.string().describe('接口路径,必填,例如 /api/user/list。建议以 / 开头,YApi 在生成 Mock URL 时会拼上项目 basepath。'),
145
+ method: httpMethodEnum.default('GET').describe('HTTP 方法,必填枚举,默认 GET。可选值 GET/POST/PUT/DELETE/PATCH。'),
146
+ desc: optionalTrimmedText.describe('接口描述,可选。仅作为展示文案,YApi 后端不做格式校验,建议补充参数/返回值/错误码等关键信息。'),
147
+ status: z.enum(['done', 'undone']).optional().default('undone').describe('开发状态,可选枚举 done/undone,默认 undone。done 表示接口已联调通过,undone 表示仅完成设计。'),
148
+ reqBodyType: z.string().optional().describe('请求体类型,可选。常用值 json / form / file / raw 等,具体合法值由 YApi 服务端决定。'),
149
+ reqBody: optionalTrimmedText.describe('请求体示例,可选。reqBodyType 为 json 时建议传入合法 JSON 字符串,其他类型为示例字符串。'),
150
+ resBodyType: z.string().optional().describe('响应体类型,可选,常用 json。建议与 reqBodyType 保持一致以便阅读。'),
151
+ resBody: optionalTrimmedText.describe('响应体示例,可选,JSON 字符串。建议写入一个最小可用的返回示例,便于联调对照。'),
152
152
  }, async (input) => {
153
153
  const { api } = createYApiServices();
154
154
  const result = await api.createInterface({
@@ -186,8 +186,8 @@ export function registerInterfaceCommands(registry) {
186
186
  }, '列出项目中的分类(目录)', { costHint: 'low', nextBestTools: ['interface-list', 'interface-get'] });
187
187
  // ==================== 接口变更日志 ====================
188
188
  registry.tool('log', {
189
- interfaceId: z.coerce.number().describe('接口 ID'),
190
- projectId: z.coerce.number().describe('项目 ID(日志查询必需)'),
189
+ interfaceId: z.coerce.number().describe('接口 ID,必填,YApi 内部数字 ID。'),
190
+ projectId: z.coerce.number().describe('项目 ID,必填,YApi 内部数字 ID。YApi 服务端的接口日志接口要求同时传接口和所属项目,缺一会被拒绝。'),
191
191
  ...paginationSchema,
192
192
  }, async (input) => {
193
193
  const { api } = createYApiServices();
@@ -244,8 +244,8 @@ export function registerInterfaceCommands(registry) {
244
244
  }, '获取项目的自定义字段配置', { costHint: 'low', nextBestTools: ['project-get', 'interface-list', 'interface-get'] });
245
245
  // ==================== 更新接口排序 ====================
246
246
  registry.tool('interface-up-index', {
247
- id: z.coerce.number().describe('接口 ID'),
248
- index: z.coerce.number().describe('新排序索引'),
247
+ id: z.coerce.number().describe('接口 ID,必填。'),
248
+ index: z.coerce.number().describe('新排序索引,必填整数。在所属分类内的相对排序,YApi 通常按数字升序展示,越小越靠前。'),
249
249
  }, async (input) => {
250
250
  const { api } = createYApiServices();
251
251
  const result = await api.upInterfaceIndex({
@@ -263,8 +263,8 @@ export function registerInterfaceCommands(registry) {
263
263
  }, '更新接口排序', { costHint: 'medium', nextBestTools: ['interface-list', 'interface-get'] });
264
264
  // ==================== 更新分类排序 ====================
265
265
  registry.tool('interface-up-cat-index', {
266
- catid: z.coerce.number().describe('分类 ID'),
267
- index: z.coerce.number().describe('新排序索引'),
266
+ catid: z.coerce.number().describe('分类 ID,必填。'),
267
+ index: z.coerce.number().describe('分类的新排序索引,必填整数。作用于项目内分类列表,YApi 按升序展示,越小越靠前。'),
268
268
  }, async (input) => {
269
269
  const { api } = createYApiServices();
270
270
  const result = await api.upCatIndex({
@@ -283,8 +283,8 @@ export function registerInterfaceCommands(registry) {
283
283
  // ==================== 导入接口 ====================
284
284
  registry.tool('interface-upload', {
285
285
  ...projectIdSchema,
286
- content: z.string().describe('导入内容(JSON/Swagger 字符串)'),
287
- type: z.string().optional().default('swagger').describe('导入类型(默认 swagger'),
286
+ content: z.string().describe('导入内容,必填,JSON/Swagger 字符串。可以是 raw 字符串也可以是 URL 服务端拉取,内容过长时建议走文件后再粘贴。CLI 内部不做格式校验,YApi 服务端按 type 解析。'),
287
+ type: z.string().optional().default('swagger').describe('导入类型,可选,默认 swagger。常用值 swagger / json / har / postman,YApi 服务端按值路由到对应解析器。'),
288
288
  }, async (input) => {
289
289
  if (!input.content.trim()) {
290
290
  throw new CliError('导入内容不能为空', 9, 'VALIDATION_ERROR');
@@ -317,11 +317,11 @@ export function registerInterfaceCommands(registry) {
317
317
  }, '接口工具:下载浏览器扩展 CRX 安装包', { costHint: 'low', nextBestTools: ['install', 'interface-get'] });
318
318
  // ==================== 接口 Mock 开关 ====================
319
319
  registry.tool('interface-mock-toggle', {
320
- interfaceId: z.coerce.number().describe('接口 ID'),
320
+ interfaceId: z.coerce.number().describe('接口 ID,必填。'),
321
321
  open: z
322
322
  .union([z.literal('true'), z.literal('false')])
323
323
  .default('true')
324
- .describe('是否开启 Mocktrue/false,默认 true'),
324
+ .describe('是否开启该接口的 Mock,可选枚举 true/false,默认 true。受项目级 is_mock_open 父开关影响,父开关关闭时本开关即使开启也不生效。'),
325
325
  }, async (input) => {
326
326
  const { api } = createYApiServices();
327
327
  const result = await api.updateInterface({
@@ -339,8 +339,8 @@ export function registerInterfaceCommands(registry) {
339
339
  }, '切换接口 Mock 开关', { costHint: 'medium', nextBestTools: ['interface-mock-script', 'interface-get'] });
340
340
  // ==================== 接口 Mock 脚本 ====================
341
341
  registry.tool('interface-mock-script', {
342
- interfaceId: z.coerce.number().describe('接口 ID'),
343
- script: z.string().describe('Mock 脚本内容(JS,沙箱执行)'),
342
+ interfaceId: z.coerce.number().describe('接口 ID,必填。'),
343
+ script: z.string().describe('Mock 脚本内容,必填,JavaScript 字符串。由 YApi 服务端在 vm 沙箱内执行,作用于该接口的所有 mock 请求。空字符串相当于清空脚本。'),
344
344
  }, async (input) => {
345
345
  const { api } = createYApiServices();
346
346
  const result = await api.updateInterface({
@@ -357,7 +357,7 @@ export function registerInterfaceCommands(registry) {
357
357
  }, '设置接口自定义 Mock 脚本', { costHint: 'medium', nextBestTools: ['interface-mock-toggle', 'interface-get'] });
358
358
  // ==================== 分类详情 ====================
359
359
  registry.tool('category-get', {
360
- catId: z.coerce.number().describe('分类 ID'),
360
+ catId: z.coerce.number().describe('分类 ID,必填。返回该分类的 id/name/desc/projectId 与接口数量。'),
361
361
  }, async (input) => {
362
362
  const { api } = createYApiServices();
363
363
  const result = await api.getCategory(input.catId);
@@ -397,10 +397,10 @@ export function registerInterfaceCommands(registry) {
397
397
  }, '创建接口分类(目录)', { costHint: 'medium', nextBestTools: ['category-list', 'interface-create'] });
398
398
  // ==================== 更新分类 ====================
399
399
  registry.tool('category-update', {
400
- catId: z.coerce.number().describe('分类 ID'),
401
- name: z.string().optional().describe('新名称'),
402
- desc: z.string().optional().describe('新描述'),
403
- status: z.enum(['open', 'closed']).optional().describe('状态'),
400
+ catId: z.coerce.number().describe('分类 ID,必填。'),
401
+ name: z.string().optional().describe('新名称,可选。name/desc/status 至少传一个,否则 CLI 会拒绝请求。'),
402
+ desc: z.string().optional().describe('新描述,可选。'),
403
+ status: z.enum(['open', 'closed']).optional().describe('状态,可选枚举。open 表示开放编辑,closed 表示只读。'),
404
404
  }, async (input) => {
405
405
  if (input.name === undefined && input.desc === undefined && input.status === undefined) {
406
406
  throw new CliValidationError('至少需要提供 name、desc 或 status 中的一个');
@@ -419,7 +419,7 @@ export function registerInterfaceCommands(registry) {
419
419
  }, '更新分类信息', { costHint: 'medium', nextBestTools: ['category-get', 'category-list'] });
420
420
  // ==================== 删除分类 ====================
421
421
  registry.tool('category-delete', {
422
- catId: z.coerce.number().describe('分类 ID'),
422
+ catId: z.coerce.number().describe('分类 ID,必填。删除会同时清理该分类下所有接口,YApi 服务端不会二次确认,建议先用 interface-list-by-cat 查看影响。'),
423
423
  }, async (input) => {
424
424
  const { api } = createYApiServices();
425
425
  await api.deleteCategory(input.catId);
@@ -431,7 +431,7 @@ export function registerInterfaceCommands(registry) {
431
431
  }, '删除分类(不可恢复)', { costHint: 'medium', nextBestTools: ['category-list', 'category-get'] });
432
432
  // ==================== 删除接口 ====================
433
433
  registry.tool('interface-delete', {
434
- interfaceId: z.coerce.number().describe('接口 ID'),
434
+ interfaceId: z.coerce.number().describe('接口 ID,必填。删除不可恢复,YApi 同时会清理关联的测试集合用例。'),
435
435
  }, async (input) => {
436
436
  const { api } = createYApiServices();
437
437
  await api.deleteInterface(input.interfaceId);
@@ -443,7 +443,7 @@ export function registerInterfaceCommands(registry) {
443
443
  }, '删除接口(不可恢复)', { costHint: 'medium', nextBestTools: ['interface-list', 'interface-get'] });
444
444
  // ==================== 按分类列出接口 ====================
445
445
  registry.tool('interface-list-by-cat', {
446
- catId: z.coerce.number().describe('分类 ID'),
446
+ catId: z.coerce.number().describe('分类 ID,必填。返回该分类下的接口列表(不含分页)。'),
447
447
  }, async (input) => {
448
448
  const { api } = createYApiServices();
449
449
  const result = await api.listInterfacesByCategory(input.catId);
@@ -460,21 +460,75 @@ export function registerInterfaceCommands(registry) {
460
460
  })),
461
461
  });
462
462
  }, '按分类 ID 列出接口', { costHint: 'low', nextBestTools: ['category-get', 'interface-list'] });
463
+ // ==================== 更新接口(部分更新) ====================
464
+ registry.tool('interface-update', {
465
+ interfaceId: z.coerce.number().describe('接口 ID,必填。目标接口必须已存在,可用 interface-get 先确认。本命令走 /interface/up 部分更新语义,未传字段保持原值,不会覆盖。'),
466
+ title: z.string().optional().describe('接口标题,可选。'),
467
+ path: z.string().optional().describe('接口路径,可选,例如 /api/user/list。建议以 / 开头。'),
468
+ method: httpMethodEnum.optional().describe('HTTP 方法,可选枚举 GET/POST/PUT/DELETE/PATCH。不传则保持原值。'),
469
+ catid: z.coerce.number().optional().describe('分类 ID,可选。移动接口到其它分类时使用。'),
470
+ status: z.enum(['done', 'undone']).optional().describe('开发状态,可选枚举 done/undone。'),
471
+ tags: z.string().optional().describe('标签,可选,逗号分隔字符串。CLI 按逗号拆分并 trim 后整体写入;传空串会清空标签。'),
472
+ desc: optionalTrimmedText.describe('接口描述,可选。'),
473
+ reqBodyType: z.string().optional().describe('请求体类型,可选,常用 json / form / file / raw。'),
474
+ reqBody: optionalTrimmedText.describe('请求体示例,可选。reqBodyType 为 json 时建议传入合法 JSON 字符串。'),
475
+ resBodyType: z.string().optional().describe('响应体类型,可选,常用 json。'),
476
+ resBody: optionalTrimmedText.describe('响应体示例,可选 JSON 字符串。YApi 后端会原样存储,建议先 interface-get 取当前 resBody 用 jq fromjson 展开、修改后再整体回传。'),
477
+ }, async (input) => {
478
+ const provided = [
479
+ input.title, input.path, input.method, input.catid,
480
+ input.status, input.tags, input.desc,
481
+ input.reqBodyType, input.reqBody,
482
+ input.resBodyType, input.resBody,
483
+ ];
484
+ if (provided.every((v) => v === undefined || v === '')) {
485
+ throw new CliValidationError('至少需要提供 title / path / method / catid / status / tags / desc / reqBodyType / reqBody / resBodyType / resBody 中的一个');
486
+ }
487
+ const tag = input.tags !== undefined
488
+ ? input.tags
489
+ .split(',')
490
+ .map((t) => t.trim())
491
+ .filter((t) => t.length > 0)
492
+ : undefined;
493
+ const { api } = createYApiServices();
494
+ const result = await api.updateInterface({
495
+ id: input.interfaceId,
496
+ title: input.title,
497
+ path: input.path,
498
+ method: input.method,
499
+ catid: input.catid,
500
+ status: input.status,
501
+ tag,
502
+ desc: input.desc,
503
+ req_body_type: input.reqBodyType,
504
+ req_body_other: input.reqBody,
505
+ res_body_type: input.resBodyType,
506
+ res_body: input.resBody,
507
+ });
508
+ if (result.errcode !== 0) {
509
+ throw new CliError(result.errmsg ?? '更新接口失败', 14, 'API_ERROR');
510
+ }
511
+ return jsonResult({
512
+ interfaceId: input.interfaceId,
513
+ action: 'update',
514
+ message: `接口 ${input.interfaceId} 已更新`,
515
+ });
516
+ }, '更新接口(部分更新,未传字段保持原值)', { costHint: 'medium', nextBestTools: ['interface-get', 'interface-list', 'interface-save'] });
463
517
  // ==================== 保存接口(upsert) ====================
464
518
  registry.tool('interface-save', {
465
519
  ...projectIdSchema,
466
- interfaceId: z.coerce.number().optional().describe('接口 ID(提供则更新,否则创建)'),
467
- catId: z.coerce.number().describe('分类 ID'),
468
- title: z.string().describe('接口标题'),
469
- path: z.string().describe('接口路径(如 /api/user/list'),
470
- method: httpMethodEnum.default('GET').describe('HTTP 方法'),
471
- status: z.enum(['done', 'undone']).optional().default('undone').describe('开发状态'),
472
- tags: z.string().optional().describe('标签(逗号分隔)'),
473
- desc: optionalTrimmedText.describe('接口描述'),
474
- reqBodyType: z.string().optional().describe('请求体类型(如 json/form'),
475
- reqBody: optionalTrimmedText.describe('请求体示例(JSON'),
476
- resBodyType: z.string().optional().describe('响应体类型(如 json'),
477
- resBody: optionalTrimmedText.describe('响应体示例(JSON'),
520
+ interfaceId: z.coerce.number().optional().describe('接口 ID,可选。提供则走更新分支,不提供则走创建分支。CLI 不校验 ID 是否已存在,服务端按 ID 命中后覆盖。'),
521
+ catId: z.coerce.number().describe('接口所属分类 ID,必填。'),
522
+ title: z.string().describe('接口标题,必填。'),
523
+ path: z.string().describe('接口路径,必填,例如 /api/user/list。建议以 / 开头。'),
524
+ method: httpMethodEnum.default('GET').describe('HTTP 方法,必填枚举,默认 GET。'),
525
+ status: z.enum(['done', 'undone']).optional().default('undone').describe('开发状态,可选枚举,默认 undone。'),
526
+ tags: z.string().optional().describe('标签,可选,逗号分隔字符串。CLI 会按逗号拆分并 trim 后整体写入。'),
527
+ desc: optionalTrimmedText.describe('接口描述,可选。'),
528
+ reqBodyType: z.string().optional().describe('请求体类型,可选,常用 json / form'),
529
+ reqBody: optionalTrimmedText.describe('请求体示例,可选,reqBodyType 为 json 时建议传入合法 JSON'),
530
+ resBodyType: z.string().optional().describe('响应体类型,可选,常用 json'),
531
+ resBody: optionalTrimmedText.describe('响应体示例,可选 JSON 字符串。'),
478
532
  }, async (input) => {
479
533
  const tag = input.tags
480
534
  ? input.tags
@@ -509,9 +563,9 @@ export function registerInterfaceCommands(registry) {
509
563
  // ==================== 公开项目接口列表 ====================
510
564
  registry.tool('interface-list-public', {
511
565
  ...projectIdSchema,
512
- keyword: z.string().optional().describe('搜索关键词'),
513
- page: z.coerce.number().optional().default(1).describe('页码'),
514
- limit: z.coerce.number().optional().default(20).describe('每页条数'),
566
+ keyword: z.string().optional().describe('搜索关键词,可选。在公开项目的接口标题/路径上做模糊匹配,大小写敏感由服务端决定。'),
567
+ page: z.coerce.number().optional().default(1).describe('页码,可选,从 1 开始,默认 1。'),
568
+ limit: z.coerce.number().optional().default(20).describe('每页条数,可选,默认 20。建议不超过 50。'),
515
569
  }, async (input) => {
516
570
  const { api } = createYApiServices();
517
571
  const result = await api.listPublicInterfaces({
@@ -534,7 +588,7 @@ export function registerInterfaceCommands(registry) {
534
588
  }, '列出公开项目的接口(无需登录)', { costHint: 'low', nextBestTools: ['interface-list', 'interface-get'] });
535
589
  // ==================== schema 转 JSON ====================
536
590
  registry.tool('schema-to-json', {
537
- schema: z.string().describe('JSON Schema 字符串'),
591
+ schema: z.string().describe('JSON Schema 字符串,必填。由 YApi 服务端转换为 JSON 示例,CLI 不做本地解析,空字符串会被 CLI 拒绝。'),
538
592
  }, async (input) => {
539
593
  if (input.schema.trim().length === 0) {
540
594
  throw new CliValidationError('schema 不能为空');
@@ -545,5 +599,73 @@ export function registerInterfaceCommands(registry) {
545
599
  schema: result.data,
546
600
  });
547
601
  }, '将 JSON Schema 转换为 JSON 示例', { costHint: 'low', nextBestTools: ['interface-create', 'interface-save'] });
602
+ // ==================== 接口快照(一次调用聚合接口详情 + 最近变更) ====================
603
+ registry.tool('interface-snapshot', {
604
+ interfaceId: z.coerce.number().describe('接口 ID,必填。返回接口摘要信息、请求/响应摘要与最近变更日志,请求/响应体若为 json 会截断到 300 字符,其他类型仅返回长度信息。'),
605
+ logLimit: z.coerce
606
+ .number()
607
+ .int()
608
+ .min(1)
609
+ .max(20)
610
+ .optional()
611
+ .default(5)
612
+ .describe('要包含的最近变更条数,可选整数,范围 1~20,默认 5。仅影响 recentLogs 数组长度。'),
613
+ }, async (input) => {
614
+ const { api } = createYApiServices();
615
+ // 并行拉取接口详情 + 最近变更日志
616
+ const [detailRes, logsRes] = await Promise.all([
617
+ api.getInterfaceDetail(input.interfaceId),
618
+ api.listInterfaceLogs({
619
+ type: 'interface',
620
+ apid: input.interfaceId,
621
+ page: 1,
622
+ limit: input.logLimit,
623
+ }),
624
+ ]);
625
+ const iface = detailRes.data;
626
+ // 摘要请求体:优先取 JSON,其他类型只保留长度信息
627
+ const reqBodySummary = iface.req_body_type === 'json'
628
+ ? truncate(iface.req_body_other ?? '', 300)
629
+ : `[${iface.req_body_type}] ${(iface.req_body_other ?? '').length} chars`;
630
+ const resBodySummary = iface.res_body_type === 'json'
631
+ ? truncate(iface.res_body ?? '', 300)
632
+ : `[${iface.res_body_type}] ${(iface.res_body ?? '').length} chars`;
633
+ const recentLogs = (logsRes.data?.list ?? []).map((log) => ({
634
+ id: log._id,
635
+ type: log.type,
636
+ username: log.username,
637
+ content: truncate(log.content, 200),
638
+ time: log.add_time,
639
+ }));
640
+ return jsonResult({
641
+ interface: {
642
+ id: iface._id,
643
+ projectId: iface.project_id,
644
+ catId: iface.catid,
645
+ title: iface.title,
646
+ path: iface.path,
647
+ method: formatMethod(iface.method),
648
+ status: iface.status,
649
+ tag: iface.tag,
650
+ desc: iface.desc,
651
+ owner: iface.username,
652
+ updatedAt: iface.up_time,
653
+ },
654
+ request: {
655
+ method: formatMethod(iface.method),
656
+ path: iface.path,
657
+ query: iface.req_query,
658
+ headers: iface.req_headers,
659
+ bodyType: iface.req_body_type,
660
+ bodySummary: reqBodySummary,
661
+ },
662
+ response: {
663
+ bodyType: iface.res_body_type,
664
+ bodySummary: resBodySummary,
665
+ },
666
+ recentLogs,
667
+ logTotal: logsRes.data?.total ?? 0,
668
+ });
669
+ }, '接口快照:一次拿到接口详情、请求/响应摘要和最近变更', { costHint: 'medium', nextBestTools: ['interface-get', 'interface-list', 'project-snapshot'] });
548
670
  }
549
671
  //# sourceMappingURL=register-interface.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"register-interface.js","sourceRoot":"","sources":["../../../src/tools/yapi/register-interface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"register-interface.js","sourceRoot":"","sources":["../../../src/tools/yapi/register-interface.ts"],"names":[],"mappings":"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"}