intention-coding 0.5.6 → 0.5.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 (38) hide show
  1. package/dist/index.cjs +1428 -2486
  2. package/dist/services/image-analysis/analyzer.d.ts +0 -8
  3. package/dist/services/image-analysis/analyzer.d.ts.map +1 -1
  4. package/dist/services/image-analysis/index.d.ts.map +1 -1
  5. package/dist/services/image-recognition-agent/analyzer.d.ts +3 -1
  6. package/dist/services/image-recognition-agent/analyzer.d.ts.map +1 -1
  7. package/dist/services/image-recognition-agent/index.d.ts +1 -0
  8. package/dist/services/image-recognition-agent/index.d.ts.map +1 -1
  9. package/dist/services/image-recognition-agent/processor.d.ts +1 -1
  10. package/dist/services/image-recognition-agent/processor.d.ts.map +1 -1
  11. package/dist/services/image-recognition-agent/types.d.ts +3 -0
  12. package/dist/services/image-recognition-agent/types.d.ts.map +1 -1
  13. package/dist/services/requirement/index.d.ts.map +1 -1
  14. package/dist/services/requirement-analyzer/core/document-generator.d.ts +71 -5
  15. package/dist/services/requirement-analyzer/core/document-generator.d.ts.map +1 -1
  16. package/dist/services/requirement-analyzer/core/requirement-analyzer-service.d.ts +21 -10
  17. package/dist/services/requirement-analyzer/core/requirement-analyzer-service.d.ts.map +1 -1
  18. package/dist/services/requirement-analyzer/core/template-selector.d.ts.map +1 -1
  19. package/dist/services/requirement-analyzer/core/types.d.ts +40 -22
  20. package/dist/services/requirement-analyzer/core/types.d.ts.map +1 -1
  21. package/dist/services/requirement-analyzer/index.d.ts +12 -12
  22. package/dist/services/requirement-analyzer/index.d.ts.map +1 -1
  23. package/dist/services/requirement-analyzer/prompt/api-template.d.ts +1 -1
  24. package/dist/services/requirement-analyzer/prompt/api-template.d.ts.map +1 -1
  25. package/dist/services/requirement-analyzer/prompt/app-template.d.ts +1 -1
  26. package/dist/services/requirement-analyzer/prompt/app-template.d.ts.map +1 -1
  27. package/dist/services/requirement-analyzer/prompt/intelligent-requirement-analysis.d.ts +1 -1
  28. package/dist/services/requirement-analyzer/prompt/intelligent-requirement-analysis.d.ts.map +1 -1
  29. package/dist/services/requirement-analyzer/prompt/pc-page-template.d.ts +1 -1
  30. package/dist/services/requirement-analyzer/prompt/pc-page-template.d.ts.map +1 -1
  31. package/dist/services/requirement-analyzer/prompt/requirement-analysis.d.ts +1 -1
  32. package/dist/services/requirement-analyzer/prompt/requirement-analysis.d.ts.map +1 -1
  33. package/dist/services/requirement-analyzer/prompt/sdk-template.d.ts +1 -1
  34. package/dist/services/requirement-analyzer/prompt/sdk-template.d.ts.map +1 -1
  35. package/dist/utils/openai.d.ts.map +1 -1
  36. package/package.json +1 -1
  37. package/dist/services/requirement-analyzer/core/parameter-bridge.d.ts +0 -44
  38. package/dist/services/requirement-analyzer/core/parameter-bridge.d.ts.map +0 -1
@@ -12,14 +12,6 @@ export declare class ImageAnalyzer {
12
12
  * 执行AI分析
13
13
  */
14
14
  private performAIAnalysis;
15
- /**
16
- * 构建分析prompt
17
- */
18
- private buildAnalysisPrompt;
19
- /**
20
- * 解析AI响应
21
- */
22
- private parseAIResponse;
23
15
  /**
24
16
  * 获取图片基本信息
25
17
  */
@@ -1 +1 @@
1
- {"version":3,"file":"analyzer.d.ts","sourceRoot":"","sources":["../../../src/services/image-analysis/analyzer.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,cAAc,EAMf,MAAM,SAAS,CAAC;AAEjB;;;GAGG;AACH,qBAAa,aAAa;IACxB;;OAEG;IACG,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IA+ChF;;OAEG;YACW,iBAAiB;IAyC/B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAiB3B;;OAEG;IACH,OAAO,CAAC,eAAe;IAgBvB;;OAEG;YACW,iBAAiB;IAuB/B;;OAEG;YACW,aAAa;IAsC3B;;OAEG;YACW,cAAc;IA2B5B,OAAO,CAAC,cAAc;IAUtB;;OAEG;YACW,sBAAsB;CAyErC"}
1
+ {"version":3,"file":"analyzer.d.ts","sourceRoot":"","sources":["../../../src/services/image-analysis/analyzer.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,cAAc,EAMf,MAAM,SAAS,CAAC;AAEjB;;;GAGG;AACH,qBAAa,aAAa;IACxB;;OAEG;IACG,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IA+ChF;;OAEG;YACW,iBAAiB;IAkD/B;;OAEG;YACW,iBAAiB;IAuB/B;;OAEG;YACW,aAAa;IAsC3B;;OAEG;YACW,cAAc;IA2B5B,OAAO,CAAC,cAAc;IAUtB;;OAEG;YACW,sBAAsB;CAyErC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/image-analysis/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAWxB,QAAA,MAAM,yBAAyB;;;;;;;;;EAI3B,CAAC;AAEL,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAEhF;;;GAGG;AACH,eAAO,MAAM,cAAc;;;;;;;oBASH;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;;;;CAoN/D,CAAC;AAGF,eAAO,MAAM,iBAAiB;;;;;;;oBAvNN;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;;;;CAuNjB,CAAC;AA0ChD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,YAAY,EACV,cAAc,EACd,eAAe,EACf,cAAc,GACf,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/image-analysis/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAWxB,QAAA,MAAM,yBAAyB;;;;;;;;;EAI3B,CAAC;AAEL,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAEhF;;;GAGG;AACH,eAAO,MAAM,cAAc;;;;;;;oBASH;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;;;;CA2C/D,CAAC;AAGF,eAAO,MAAM,iBAAiB;;;;;;;oBA9CN;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;;;;CA8CjB,CAAC;AA0ChD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,YAAY,EACV,cAAc,EACd,eAAe,EACf,cAAc,GACf,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,SAAS,CAAC"}
@@ -4,6 +4,7 @@ import { ImageBasicInfo, SegmentAnalysisResult, CompleteAnalysisResult, SegmentI
4
4
  * 负责调用AI服务进行图片内容识别和分析
5
5
  */
6
6
  export declare class ImageAnalyzer {
7
+ private context?;
7
8
  /**
8
9
  * 分析长图内容
9
10
  * @param imagePath 图片路径
@@ -11,8 +12,9 @@ export declare class ImageAnalyzer {
11
12
  * @param segmentConfig 分段配置
12
13
  * @param concurrencyConfig 并发配置
13
14
  * @param apiPreference API偏好
15
+ * @param context 上下文内容
14
16
  */
15
- analyzeLongImage(imagePath: string, imageInfo: ImageBasicInfo, segmentConfig: SegmentConfig, concurrencyConfig: ConcurrencyConfig, apiPreference?: ApiType): Promise<CompleteAnalysisResult>;
17
+ analyzeLongImage(imagePath: string, imageInfo: ImageBasicInfo, segmentConfig: SegmentConfig, concurrencyConfig: ConcurrencyConfig, apiPreference?: ApiType, context?: string): Promise<CompleteAnalysisResult>;
16
18
  /**
17
19
  * 并发处理图片段落
18
20
  */
@@ -1 +1 @@
1
- {"version":3,"file":"analyzer.d.ts","sourceRoot":"","sources":["../../../src/services/image-recognition-agent/analyzer.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,sBAAsB,EACtB,WAAW,EACX,aAAa,EACb,iBAAiB,EAEjB,OAAO,EAIR,MAAM,SAAS,CAAC;AAEjB;;;GAGG;AACH,qBAAa,aAAa;IAExB;;;;;;;OAOG;IACG,gBAAgB,CACpB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,cAAc,EACzB,aAAa,EAAE,aAAa,EAC5B,iBAAiB,EAAE,iBAAiB,EACpC,aAAa,GAAE,OAAgB,GAC9B,OAAO,CAAC,sBAAsB,CAAC;IAoElC;;OAEG;YACW,2BAA2B;IAqDzC;;;;;OAKG;IACG,cAAc,CAClB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,WAAW,EACxB,aAAa,GAAE,OAAgB,GAC9B,OAAO,CAAC,qBAAqB,CAAC;IAqIjC;;OAEG;YACW,gBAAgB;IAwC9B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAoC3B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAYzB;;OAEG;IACH,OAAO,CAAC,eAAe;IAkEvB;;OAEG;IACH,OAAO,CAAC,yBAAyB;CAsElC"}
1
+ {"version":3,"file":"analyzer.d.ts","sourceRoot":"","sources":["../../../src/services/image-recognition-agent/analyzer.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,sBAAsB,EACtB,WAAW,EACX,aAAa,EACb,iBAAiB,EAEjB,OAAO,EAIR,MAAM,SAAS,CAAC;AAEjB;;;GAGG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,OAAO,CAAC,CAAS;IAEzB;;;;;;;;OAQG;IACG,gBAAgB,CACpB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,cAAc,EACzB,aAAa,EAAE,aAAa,EAC5B,iBAAiB,EAAE,iBAAiB,EACpC,aAAa,GAAE,OAAgB,EAC/B,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,sBAAsB,CAAC;IAsElC;;OAEG;YACW,2BAA2B;IAqDzC;;;;;OAKG;IACG,cAAc,CAClB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,WAAW,EACxB,aAAa,GAAE,OAAgB,GAC9B,OAAO,CAAC,qBAAqB,CAAC;IAqIjC;;OAEG;YACW,gBAAgB;IAwC9B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAgD3B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAOzB;;OAEG;IACH,OAAO,CAAC,eAAe;IAkEvB;;OAEG;IACH,OAAO,CAAC,yBAAyB;CAsElC"}
@@ -8,6 +8,7 @@ export declare const imageRecognitionAgentTool: {
8
8
  description: string;
9
9
  inputSchema: {
10
10
  imagePath: z.ZodString;
11
+ context: z.ZodOptional<z.ZodString>;
11
12
  };
12
13
  handler: (args: any) => Promise<{
13
14
  content: {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/image-recognition-agent/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB;;;GAGG;AACH,eAAO,MAAM,yBAAyB;;;;;;oBAMd,GAAG;;;;;;;;;;;;;CA2D1B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/image-recognition-agent/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB;;;GAGG;AACH,eAAO,MAAM,yBAAyB;;;;;;;oBAOd,GAAG;;;;;;;;;;;;;CA2D1B,CAAC"}
@@ -11,7 +11,7 @@ export declare class ImageRecognitionProcessor {
11
11
  * 处理图片识别的完整流程
12
12
  * 使用Node.js原生文件操作,优化架构
13
13
  */
14
- processImage(imagePath: string): Promise<{
14
+ processImage(imagePath: string, context?: string): Promise<{
15
15
  outputPath: string;
16
16
  summary: {
17
17
  totalSegments: number;
@@ -1 +1 @@
1
- {"version":3,"file":"processor.d.ts","sourceRoot":"","sources":["../../../src/services/image-recognition-agent/processor.ts"],"names":[],"mappings":"AAcA;;;GAGG;AACH,qBAAa,yBAAyB;IACpC,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,QAAQ,CAAgB;;IAQhC;;;OAGG;IACG,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QAC7C,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE;YACP,aAAa,EAAE,MAAM,CAAC;YACtB,kBAAkB,EAAE,MAAM,CAAC;YAC3B,cAAc,EAAE,MAAM,CAAC;YACvB,WAAW,EAAE,MAAM,CAAC;YACpB,mBAAmB,EAAE,MAAM,CAAC;YAC5B,qBAAqB,EAAE,MAAM,CAAC;YAC9B,iBAAiB,EAAE,MAAM,CAAC;SAC3B,CAAA;KACF,CAAC;IA4FF;;OAEG;YACW,iBAAiB;IA0B/B;;;OAGG;YACW,wBAAwB;CAwDvC"}
1
+ {"version":3,"file":"processor.d.ts","sourceRoot":"","sources":["../../../src/services/image-recognition-agent/processor.ts"],"names":[],"mappings":"AAcA;;;GAGG;AACH,qBAAa,yBAAyB;IACpC,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,QAAQ,CAAgB;;IAQhC;;;OAGG;IACG,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAC/D,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE;YACP,aAAa,EAAE,MAAM,CAAC;YACtB,kBAAkB,EAAE,MAAM,CAAC;YAC3B,cAAc,EAAE,MAAM,CAAC;YACvB,WAAW,EAAE,MAAM,CAAC;YACpB,mBAAmB,EAAE,MAAM,CAAC;YAC5B,qBAAqB,EAAE,MAAM,CAAC;YAC9B,iBAAiB,EAAE,MAAM,CAAC;SAC3B,CAAA;KACF,CAAC;IA6FF;;OAEG;YACW,iBAAiB;IA0B/B;;;OAGG;YACW,wBAAwB;CAwDvC"}
@@ -199,10 +199,13 @@ export declare const PERFORMANCE_LIMITS: {
199
199
  */
200
200
  export declare const ImageRecognitionParamsSchema: z.ZodObject<{
201
201
  imagePath: z.ZodString;
202
+ context: z.ZodOptional<z.ZodString>;
202
203
  }, "strip", z.ZodTypeAny, {
203
204
  imagePath: string;
205
+ context?: string | undefined;
204
206
  }, {
205
207
  imagePath: string;
208
+ context?: string | undefined;
206
209
  }>;
207
210
  /**
208
211
  * 图片基本信息Schema
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/services/image-recognition-agent/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/services/image-recognition-agent/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/requirement/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;oBAQd,GAAG;;;;;;;;;;;;;CAoK1B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;;;;;oBAQX,GAAG;;;;;;;;;;;;;CAyL1B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;oBASL,GAAG;;;;;;;;;;;;;CAgP1B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/requirement/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;oBAWd,GAAG;;;;;;;;;;;;;CAgM1B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;;;;;oBASX,GAAG;;;;;;;;;;;;;CA8L1B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;oBAUL,GAAG;;;;;;;;;;;;;CAqP1B,CAAC"}
@@ -1,14 +1,36 @@
1
- import { ProjectInfo, RequirementAnalysis, AnalysisResult } from './types';
1
+ import { ProjectInfo, RequirementAnalysis, AnalysisResult } from "./types";
2
2
  /**
3
3
  * 文档生成器
4
4
  * 职责:生成统一的技术需求文档
5
5
  */
6
6
  export declare class DocumentGenerator {
7
7
  private templateSelector;
8
+ private static readonly cache;
9
+ private static readonly CACHE_DURATION;
8
10
  /**
9
- * 生成统一的技术需求文档
11
+ * 生成缓存键
10
12
  */
11
- generateUnifiedDocument(analysis: RequirementAnalysis, projectInfo: ProjectInfo, featureName: string, sourceInfo: string, customPrompt?: string): Promise<AnalysisResult>;
13
+ private generateCacheKey;
14
+ /**
15
+ * 从缓存获取文档
16
+ */
17
+ private getCachedDocument;
18
+ /**
19
+ * 保存文档到缓存
20
+ */
21
+ private saveToCache;
22
+ /**
23
+ * 清理过期缓存
24
+ */
25
+ private cleanupExpiredCache;
26
+ /**
27
+ * 生成统一的技术需求文档(准备生成任务,由IDE执行)
28
+ */
29
+ generateUnifiedDocument(analysis: RequirementAnalysis, projectInfo: ProjectInfo, featureName: string, sourceInfo: string, customPrompt?: string, currentProjectPath?: string): Promise<AnalysisResult>;
30
+ /**
31
+ * 解析需求类型,支持组合类型(如 PC+API)
32
+ */
33
+ private parseRequirementTypes;
12
34
  /**
13
35
  * 准备输出路径
14
36
  */
@@ -18,13 +40,53 @@ export declare class DocumentGenerator {
18
40
  */
19
41
  private buildUnifiedContent;
20
42
  /**
21
- * 生成技术文档
43
+ * 生成技术文档(流式输出)
22
44
  */
23
45
  private generateDocument;
24
46
  /**
25
- * 构建文档生成prompt
47
+ * 流式生成文档并实时写入文件
48
+ */
49
+ private generateDocumentStream;
50
+ /**
51
+ * 异步写入缓冲区到文件
52
+ */
53
+ private writeBufferToFile;
54
+ /**
55
+ * 构建续写prompt
56
+ */
57
+ private buildContinuationPrompt;
58
+ /**
59
+ * 判断文档是否完整
60
+ */
61
+ private isDocumentComplete;
62
+ /**
63
+ * 使用非流式方式继续生成文档
64
+ */
65
+ private continueDocumentGeneration;
66
+ /**
67
+ * 构建生成模板和变量(返回原始模板和变量,不进行替换)
68
+ */
69
+ private buildGenerationPrompt;
70
+ /**
71
+ * 构建更新prompt(返回完整模板和变量)
72
+ */
73
+ private buildUpdatePrompt;
74
+ /**
75
+ * 构建文档生成prompt(兼容旧代码)
26
76
  */
27
77
  private buildDocumentPrompt;
78
+ /**
79
+ * 将需求类型映射到业务领域
80
+ */
81
+ private mapRequirementTypeToBusinessDomain;
82
+ /**
83
+ * 检测文件是否存在
84
+ */
85
+ private checkFileExists;
86
+ /**
87
+ * 更新已存在的文档(流式输出)
88
+ */
89
+ private updateExistingDocument;
28
90
  /**
29
91
  * 验证生成的文档
30
92
  */
@@ -33,5 +95,9 @@ export declare class DocumentGenerator {
33
95
  * 构建分析结果
34
96
  */
35
97
  private buildAnalysisResult;
98
+ /**
99
+ * 构建任务结果(返回生成任务给IDE执行)
100
+ */
101
+ private buildTaskResult;
36
102
  }
37
103
  //# sourceMappingURL=document-generator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"document-generator.d.ts","sourceRoot":"","sources":["../../../../src/services/requirement-analyzer/core/document-generator.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,cAAc,EAGf,MAAM,SAAS,CAAC;AAGjB;;;GAGG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,gBAAgB,CAA0B;IAElD;;OAEG;IACG,uBAAuB,CAC3B,QAAQ,EAAE,mBAAmB,EAC7B,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,cAAc,CAAC;IA4D1B;;OAEG;YACW,iBAAiB;IAmB/B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAyC3B;;OAEG;YACW,gBAAgB;IAwC9B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAqB3B;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAcjC;;OAEG;IACH,OAAO,CAAC,mBAAmB;CAqD5B"}
1
+ {"version":3,"file":"document-generator.d.ts","sourceRoot":"","sources":["../../../../src/services/requirement-analyzer/core/document-generator.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,cAAc,EAGf,MAAM,SAAS,CAAC;AAGjB;;;GAGG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,gBAAgB,CAA0B;IAGlD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAGzB;IACJ,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAuB;IAE7D;;OAEG;IACH,OAAO,CAAC,gBAAgB;IASxB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAiBzB;;OAEG;IACH,OAAO,CAAC,WAAW;IAQnB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAgB3B;;OAEG;IACG,uBAAuB,CAC3B,QAAQ,EAAE,mBAAmB,EAC7B,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,YAAY,CAAC,EAAE,MAAM,EACrB,kBAAkB,CAAC,EAAE,MAAM,GAC1B,OAAO,CAAC,cAAc,CAAC;IA4H1B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IA8B7B;;OAEG;YACW,iBAAiB;IAiC/B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA6C3B;;OAEG;YACW,gBAAgB;IAoF9B;;OAEG;YACW,sBAAsB;IAwYpC;;OAEG;YACW,iBAAiB;IAc/B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAwB/B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAe1B;;OAEG;YACW,0BAA0B;IAgDxC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IA4C7B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAqEzB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA0B3B;;OAEG;IACH,OAAO,CAAC,kCAAkC;IAkB1C;;OAEG;YACW,eAAe;IAS7B;;OAEG;YACW,sBAAsB;IA+EpC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAcjC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAqG3B;;OAEG;IACH,OAAO,CAAC,eAAe;CAkFxB"}
@@ -1,10 +1,9 @@
1
- import { AnalysisParams, AnalysisResult } from './types';
1
+ import { AnalysisParams, AnalysisResult } from "./types";
2
2
  /**
3
3
  * 需求分析器服务
4
4
  * 职责:协调各个组件完成需求分析流程
5
5
  */
6
6
  export declare class RequirementAnalyzerService {
7
- private projectAnalyzer;
8
7
  private intelligentAnalyzer;
9
8
  private documentGenerator;
10
9
  /**
@@ -12,20 +11,32 @@ export declare class RequirementAnalyzerService {
12
11
  */
13
12
  analyzeRequirements(params: AnalysisParams): Promise<AnalysisResult>;
14
13
  /**
15
- * 准备输入内容
14
+ * 解析requirement-identifier的分析结果
16
15
  */
17
- private prepareInput;
16
+ private parseRequirementAnalysis;
18
17
  /**
19
- * 判断是否为多功能点分析
18
+ * 从需求内容中提取功能名称(模块名称)
20
19
  */
21
- private isMultiFeatureAnalysis;
20
+ private extractFeatureName;
22
21
  /**
23
- * 处理多功能点分析
22
+ * 从长文本中提取关键词作为功能名称
24
23
  */
25
- private handleMultiFeatureAnalysis;
24
+ private extractKeywordsFromLongText;
26
25
  /**
27
- * 处理单功能点分析
26
+ * 从内容关键词中提取功能名称
28
27
  */
29
- private handleSingleFeatureAnalysis;
28
+ private extractFromKeywords;
29
+ /**
30
+ * 判断是否为占位符文本
31
+ */
32
+ private isPlaceholderText;
33
+ /**
34
+ * 清理功能名称
35
+ */
36
+ private cleanFeatureName;
37
+ /**
38
+ * 获取默认项目信息
39
+ */
40
+ private getDefaultProjectInfo;
30
41
  }
31
42
  //# sourceMappingURL=requirement-analyzer-service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"requirement-analyzer-service.d.ts","sourceRoot":"","sources":["../../../../src/services/requirement-analyzer/core/requirement-analyzer-service.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,cAAc,EACd,cAAc,EAGf,MAAM,SAAS,CAAC;AAKjB;;;GAGG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,eAAe,CAAyB;IAChD,OAAO,CAAC,mBAAmB,CAA6B;IACxD,OAAO,CAAC,iBAAiB,CAA2B;IAEpD;;OAEG;IACG,mBAAmB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IAmD1E;;OAEG;YACW,YAAY;IA0F1B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAK9B;;OAEG;YACW,0BAA0B;IAoBxC;;OAEG;YACW,2BAA2B;CAmB1C"}
1
+ {"version":3,"file":"requirement-analyzer-service.d.ts","sourceRoot":"","sources":["../../../../src/services/requirement-analyzer/core/requirement-analyzer-service.ts"],"names":[],"mappings":"AACA,OAAO,EACL,cAAc,EACd,cAAc,EAGf,MAAM,SAAS,CAAC;AAIjB;;;GAGG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,mBAAmB,CAA6B;IACxD,OAAO,CAAC,iBAAiB,CAA2B;IAEpD;;OAEG;IACG,mBAAmB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IAkD1E;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAyBhC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAkE1B;;OAEG;IACH,OAAO,CAAC,2BAA2B;IA4BnC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA8B3B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAgCzB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IASxB;;OAEG;IACH,OAAO,CAAC,qBAAqB;CAS9B"}
@@ -1 +1 @@
1
- {"version":3,"file":"template-selector.d.ts","sourceRoot":"","sources":["../../../../src/services/requirement-analyzer/core/template-selector.ts"],"names":[],"mappings":"AAUA;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW,CASzB;IAEH;;OAEG;IACH,cAAc,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM;IAmC/C;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA0B1B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAShC;;OAEG;IACH,OAAO,CAAC,WAAW;IAInB;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,IAAI;IAUjE;;OAEG;IACH,iBAAiB,IAAI,MAAM,EAAE;IAI7B;;OAEG;IACH,eAAe,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO;CAKlD"}
1
+ {"version":3,"file":"template-selector.d.ts","sourceRoot":"","sources":["../../../../src/services/requirement-analyzer/core/template-selector.ts"],"names":[],"mappings":"AAUA;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW,CASzB;IAEH;;OAEG;IACH,cAAc,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM;IAmC/C;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAoE1B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAkBhC;;OAEG;IACH,OAAO,CAAC,WAAW;IAInB;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,IAAI;IAUjE;;OAEG;IACH,iBAAiB,IAAI,MAAM,EAAE;IAI7B;;OAEG;IACH,eAAe,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO;CAOlD"}
@@ -9,51 +9,63 @@ export interface RequirementFeature {
9
9
  id: string;
10
10
  title: string;
11
11
  fullContent: string;
12
- priority: 'high' | 'medium' | 'low';
13
- complexity: '简单' | '中等' | '复杂';
14
- type: '页面' | '接口' | '移动app' | '系统' | '其他';
12
+ priority: "high" | "medium" | "low";
13
+ complexity: "简单" | "中等" | "复杂";
14
+ type: "页面" | "接口" | "移动app" | "系统" | "其他";
15
15
  }
16
16
  export interface IntelligentFeature {
17
17
  featureName: string;
18
18
  description: string;
19
- priority: 'high' | 'medium' | 'low';
20
- estimatedComplexity: '简单' | '中等' | '复杂';
21
- type: '核心功能点' | '辅助功能点' | '扩展功能点';
19
+ priority: "high" | "medium" | "low";
20
+ estimatedComplexity: "简单" | "中等" | "复杂";
21
+ type: "核心功能点" | "辅助功能点" | "扩展功能点";
22
22
  businessValue: string;
23
- technologyType: '接口' | 'PC页面' | 'APP' | 'SDK集成';
23
+ technologyType: "接口" | "PC页面" | "APP" | "SDK集成";
24
24
  }
25
25
  export interface RequirementAnalysis {
26
- analysisType: 'single_general' | 'multi_general' | 'multi_specific_features';
27
- requirementType: '接口' | 'PC页面' | 'APP' | 'SDK集成' | '混合类型';
26
+ analysisType: "single_general" | "multi_general" | "multi_specific_features";
27
+ requirementType: "接口" | "PC页面" | "APP" | "SDK集成" | "混合类型";
28
28
  primaryTechnology: string;
29
- confidence: 'high' | 'medium' | 'low';
29
+ confidence: "high" | "medium" | "low";
30
30
  requirements: RequirementFeature[];
31
31
  templateRecommendation: {
32
- primaryTemplate: 'api' | 'pc' | 'app' | 'sdk' | 'multi';
32
+ primaryTemplate: "api" | "pc" | "app" | "sdk" | "multi";
33
33
  reason: string;
34
34
  additionalTemplates?: string[];
35
35
  };
36
36
  featureDependencies?: {
37
- requirementType: '接口' | 'PC页面' | 'APP' | 'SDK集成' | '混合类型';
38
- primaryTemplate: 'api' | 'pc' | 'app' | 'sdk' | 'multi';
37
+ requirementType: "接口" | "PC页面" | "APP" | "SDK集成" | "混合类型";
38
+ primaryTemplate: "api" | "pc" | "app" | "sdk" | "multi";
39
39
  mergedFeatures: IntelligentFeature[];
40
40
  dependencies: Array<{
41
41
  from: string;
42
42
  to: string;
43
- type: '前置依赖' | '并行依赖' | '互斥依赖' | '父子依赖';
43
+ type: "前置依赖" | "并行依赖" | "互斥依赖" | "父子依赖";
44
44
  reason: string;
45
45
  }>;
46
46
  };
47
47
  }
48
48
  export interface AnalysisParams {
49
- input_type: 'text' | 'md_file';
50
- content?: string;
51
- md_file_path?: string;
52
- feature_name: string;
53
- custom_prompt?: string;
54
- analysis_depth?: 'basic' | 'detailed' | 'comprehensive';
55
- use_streaming?: boolean;
56
- chunk_size?: number;
49
+ requirement_analysis: string;
50
+ current_project_path: string;
51
+ requirement_type: "PC+API" | "APP+API" | "SDK+API" | "混合";
52
+ }
53
+ export interface GenerationTask {
54
+ requirementType: string;
55
+ outputPath: string;
56
+ isUpdate: boolean;
57
+ prompt: string;
58
+ systemPrompt: string;
59
+ templateContent: string;
60
+ templateVariables: {
61
+ featureName: string;
62
+ inputContent: string;
63
+ currentTime: string;
64
+ businessDomain: string;
65
+ generateSequenceDiagram: string;
66
+ customPrompt?: string;
67
+ };
68
+ existingContent?: string;
57
69
  }
58
70
  export interface AnalysisResult {
59
71
  success: boolean;
@@ -65,7 +77,13 @@ export interface AnalysisResult {
65
77
  recommendedTemplate: string;
66
78
  featureCount: number;
67
79
  projectType?: string;
80
+ generatedReports?: Array<{
81
+ requirementType: string;
82
+ outputPath: string;
83
+ isUpdate: boolean;
84
+ }>;
68
85
  };
86
+ generationTasks?: GenerationTask[];
69
87
  }
70
88
  export declare class RequirementAnalysisError extends Error {
71
89
  readonly code: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/services/requirement-analyzer/core/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/services/requirement-analyzer/core/types.ts"],"names":[],"mappings":"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"}
@@ -6,25 +6,25 @@ export declare const requirementAnalyzerTool: {
6
6
  name: string;
7
7
  description: string;
8
8
  inputSchema: {
9
- input_type: z.ZodEnum<["text", "md_file"]>;
10
- content: z.ZodOptional<z.ZodString>;
11
- md_file_path: z.ZodOptional<z.ZodString>;
12
- feature_name: z.ZodString;
13
- custom_prompt: z.ZodOptional<z.ZodString>;
14
- analysis_depth: z.ZodDefault<z.ZodEnum<["basic", "detailed", "comprehensive"]>>;
15
- use_streaming: z.ZodDefault<z.ZodBoolean>;
16
- chunk_size: z.ZodDefault<z.ZodNumber>;
9
+ requirement_analysis: z.ZodString;
10
+ current_project_path: z.ZodString;
11
+ requirement_type: z.ZodDefault<z.ZodEnum<["PC+API", "APP+API", "SDK+API", "APP+SDK", "PC+APP+API"]>>;
17
12
  };
18
13
  handler: (args: any) => Promise<{
19
- content: Array<{
14
+ content: {
20
15
  type: string;
21
16
  text: string;
22
- }>;
23
- isError?: boolean;
17
+ }[];
18
+ isError: boolean;
19
+ } | {
20
+ content: {
21
+ type: string;
22
+ text: string;
23
+ }[];
24
+ isError?: undefined;
24
25
  }>;
25
26
  };
26
27
  export { RequirementAnalyzerService } from "./core/requirement-analyzer-service";
27
28
  export { RequirementAnalysisError, ErrorCodes } from "./core/types";
28
29
  export type { AnalysisParams, AnalysisResult, ProjectInfo } from "./core/types";
29
- export { ParameterBridge } from "./core/parameter-bridge";
30
30
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/requirement-analyzer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;oBAqCZ,GAAG;;;;;;;CAyB1B,CAAC;AAGF,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,wBAAwB,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AACpE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhF,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/requirement-analyzer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;oBA6BZ,GAAG;;;;;;;;;;;;;CAsE1B,CAAC;AAGF,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,wBAAwB,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AACpE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare const apiTemplatePrompt = "\u4F60\u662F\u4E00\u4F4D\u4E13\u4E1A\u7684\u540E\u7AEF\u6280\u672F\u6587\u6863\u7F16\u5199\u4E13\u5BB6\u3002\u8BF7\u57FA\u4E8E\u7528\u6237\u63D0\u4F9B\u7684\u8F93\u5165\u5185\u5BB9\uFF0C\u751F\u6210\u4E00\u4EFD\u5B8C\u6574\u3001\u8BE6\u7EC6\u7684API\u63A5\u53E3\u6280\u672F\u9700\u6C42\u6587\u6863\u3002\n\n## \u4EFB\u52A1\u8981\u6C42\n- \u5FC5\u987B\u8F93\u51FA\u5B8C\u6574\u7684Markdown\u683C\u5F0F\u6280\u672F\u9700\u6C42\u6587\u6863\n- \u4E0D\u8981\u53EA\u7ED9\u51FA\u603B\u7ED3\uFF0C\u8981\u8F93\u51FA\u5B8C\u6574\u7684\u6587\u6863\u5185\u5BB9\n- \u6BCF\u4E2A\u7AE0\u8282\u90FD\u8981\u6709\u8BE6\u7EC6\u7684\u5185\u5BB9\uFF0C\u4E0D\u80FD\u7701\u7565\n- \u6587\u6863\u957F\u5EA6\u5E94\u8BE5\u57283000\u5B57\u4EE5\u4E0A\n- \u91CD\u70B9\u63CF\u8FF0API\u63A5\u53E3\u8BBE\u8BA1\u3001\u6570\u636E\u7ED3\u6784\u3001\u4EA4\u4E92\u903B\u8F91\u7B49\u540E\u7AEF\u76F8\u5173\u5185\u5BB9\n\n## \u8F93\u5165\u4FE1\u606F\n- **\u529F\u80FD\u540D\u79F0**: {featureName}\n- **\u4E1A\u52A1\u9886\u57DF**: {businessDomain}\n- **\u751F\u6210\u65F6\u5E8F\u56FE**: {generateSequenceDiagram}\n\n## \u539F\u59CB\u9700\u6C42\u5185\u5BB9\n```\n{inputContent}\n```\n\n## \u6587\u6863\u7ED3\u6784\u8981\u6C42\n\u8BF7\u4E25\u683C\u6309\u7167\u4EE5\u4E0B\u7ED3\u6784\u8F93\u51FA\u5B8C\u6574\u7684\u9700\u6C42\u6587\u6863\uFF0C\u6BCF\u4E2A\u7AE0\u8282\u90FD\u8981\u6709\u8BE6\u5B9E\u7684\u5185\u5BB9\uFF1A\n\n# {featureName} - API\u63A5\u53E3\u6280\u672F\u9700\u6C42\u6587\u6863\n\n> **\u751F\u6210\u65F6\u95F4**: {currentTime}\n> **\u4E1A\u52A1\u9886\u57DF**: {businessDomain}\n> **\u63A5\u53E3\u7C7B\u578B**: RESTful API\n\n---\n\n## 1. \u9700\u6C42\u80CC\u666F\n\n**\u80CC\u666F**: [\u8BE6\u7EC6\u63CF\u8FF0API\u63A5\u53E3\u7684\u80CC\u666F\u3001\u4E1A\u52A1\u9700\u6C42\u548C\u76EE\u6807]\n\n**\u5173\u952E\u529F\u80FD**: [\u5217\u51FAAPI\u63A5\u53E3\u7684\u4E3B\u8981\u529F\u80FD\u70B9]\n\n**\u6D89\u53CA\u89D2\u8272**: [\u5217\u51FA\u6240\u6709\u76F8\u5173\u7CFB\u7EDF\u89D2\u8272]\n\n## 2. {featureName}\u529F\u80FD\u8BBE\u8BA1\u8BF4\u660E\n\n| | | | | |\n|---|---|---|---|---|\n|**\u6D41\u7A0B\u7F16\u53F7**|F001|**\u6D41\u7A0B\u540D\u79F0**|{featureName}|\n|**\u4E1A\u52A1\u529F\u80FD\u7F16\u53F7**|BF001|**\u4E1A\u52A1\u529F\u80FD\u540D\u79F0**|{featureName}|\n|**\u529F\u80FD\u8BBE\u8BA1\u7F16\u53F7**|FD001|**\u7CFB\u7EDF\u529F\u80FD\u540D\u79F0**|{featureName}|\n|**\u524D\u7F6E\u6761\u4EF6**|[\u8BE6\u7EC6\u63CF\u8FF0API\u8C03\u7528\u7684\u524D\u7F6E\u6761\u4EF6]|\n|**\u89D2\u8272\uFF08\u5C97\u4F4D\uFF09**|[\u8BE6\u7EC6\u63CF\u8FF0\u8C03\u7528\u65B9\u89D2\u8272\u53CA\u5176\u6743\u9650]|\n|**\u5165\u53E3\u6E20\u9053**|[\u63CF\u8FF0API\u8C03\u7528\u5165\u53E3]|\n|**\u529F\u80FD\u63CF\u8FF0**|[\u8BE6\u7EC6\u7684\u529F\u80FD\u63CF\u8FF0]|\n|**\u8C03\u7528\u80FD\u529B\u57DF/\u4E2D\u5FC3**|[\u5982\u9002\u7528\u7684\u5176\u4ED6\u7CFB\u7EDF\u63A5\u53E3]|\n\n## 3. \u6570\u636E\u5EFA\u6A21\n## 3.1 ER\u903B\u8F91\u56FE\u8BBE\u8BA1\n\n[\u63CF\u8FF0\u6570\u636E\u5E93\u8868\u4E4B\u95F4\u7684\u5173\u7CFB\u548CER\u56FE\u8BBE\u8BA1]\n```mermaid\n```\n\n## 4. \u6570\u636E\u8868\u5B9E\u4F53\u8BBE\u8BA1\n\n[\u8BE6\u7EC6\u63CF\u8FF0\u6D89\u53CA\u7684\u6570\u636E\u8868\u5B9E\u4F53\u7ED3\u6784\uFF0C\u5305\u62EC\u5B57\u6BB5\u540D\u3001\u7C7B\u578B\u3001\u7EA6\u675F\u6761\u4EF6\u7B49]\n\n## 5. API\u63A5\u53E3\u8BBE\u8BA1\n\n### 5.1 \u63A5\u53E3\u5217\u8868\n[\u5217\u51FA\u6240\u6709\u76F8\u5173\u7684API\u63A5\u53E3]\n\n### 5.2 \u63A5\u53E3\u8BE6\u7EC6\u8BF4\u660E\n\n#### 5.2.1 \u63A5\u53E31 - [\u63A5\u53E3\u540D\u79F0]\n#### 5.2.2 \u57FA\u672C\u4FE1\u606F\n- **\u63A5\u53E3\u5730\u5740**: [URL\u8DEF\u5F84]\n- **\u8BF7\u6C42\u65B9\u6CD5**: [\u53EA\u5141\u8BB8\u4F7F\u7528POST\u8BF7\u6C42]\n- **\u534F\u8BAE**: [\u53EA\u5141\u8BB8\u4F7F\u7528HTTPS]\n- **\u5185\u5BB9\u7C7B\u578B**: [application/json\u7B49]\n\n#### 5.2.3 \u8BF7\u6C42\u53C2\u6570\n[\u8BE6\u7EC6\u8BF4\u660E\u8BF7\u6C42\u53C2\u6570]\n\n|\u53C2\u6570\u540D|\u7C7B\u578B|\u662F\u5426\u5FC5\u586B|\u4F4D\u7F6E|\u8BF4\u660E|\n|------|----|--------|----|----|\n|[\u53C2\u65701]|[string/int\u7B49]|[\u662F/\u5426]|[query/body/path]|[\u8BE6\u7EC6\u8BF4\u660E]|\n|[\u53C2\u65702]|[string/int\u7B49]|[\u662F/\u5426]|[query/body/path]|[\u8BE6\u7EC6\u8BF4\u660E]|\n\n#### 5.2.4 \u54CD\u5E94\u53C2\u6570\n[\u8BE6\u7EC6\u8BF4\u660E\u54CD\u5E94\u53C2\u6570]\n\n|\u53C2\u6570\u540D|\u7C7B\u578B|\u8BF4\u660E|\n|------|----|----|\n|[\u53C2\u65701]|[string/object\u7B49]|[\u8BE6\u7EC6\u8BF4\u660E]|\n|[\u53C2\u65702]|[string/object\u7B49]|[\u8BE6\u7EC6\u8BF4\u660E]|\n\n#### 5.2.5 \u9519\u8BEF\u7801\u8BF4\u660E\n[\u8BE6\u7EC6\u8BF4\u660E\u8BE5\u63A5\u53E3\u7684\u9519\u8BEF\u7801]\n\n|\u9519\u8BEF\u7801|\u8BF4\u660E|\n|------|----|\n|[\u9519\u8BEF\u78011]|[\u8BE6\u7EC6\u8BF4\u660E]|\n|[\u9519\u8BEF\u78012]|[\u8BE6\u7EC6\u8BF4\u660E]|\n\n#### 5.2.6 \u8BE6\u7EC6\u5B9E\u73B0\u903B\u8F91\n[\u5206\u6B65\u9AA4\u8BE6\u7EC6\u63CF\u8FF0\u8BE5\u63A5\u53E3\u7684\u8BE6\u7EC6\u903B\u8F91\uFF0C\u5982\u679C\u5B58\u5728sql\u8BED\u53E5\uFF0C\u9700\u8981\u6DFB\u52A0sql\u8BED\u53E5\u5E76\u5728sql\u8BED\u53E5\u4E2D\u6DFB\u52A0\u6CE8\u91CA\u8BF4\u660E]\n\n## 6. \u4E1A\u52A1\u5BF9\u8C61\u65F6\u5E8F\u56FE\n\n#### 6.2.1 \u6B63\u5411\u6D41\u7A0B\n```mermaid\nsequenceDiagram\n participant \u5BA2\u6237\u7AEF\n participant API\u7F51\u5173\n participant \u8BA4\u8BC1\u670D\u52A1\n participant \u6743\u9650\u670D\u52A1\n participant \u4E1A\u52A1\u670D\u52A1\n participant \u65E5\u5FD7\u670D\u52A1\n \n \u5BA2\u6237\u7AEF->>API\u7F51\u5173: \u53D1\u9001API\u8BF7\u6C42\n API\u7F51\u5173->>\u8BA4\u8BC1\u670D\u52A1: \u9A8C\u8BC1\u8BF7\u6C42\u4EE4\u724C\n alt \u4EE4\u724C\u6709\u6548\n \u8BA4\u8BC1\u670D\u52A1-->>API\u7F51\u5173: \u8FD4\u56DE\u8BA4\u8BC1\u6210\u529F\n API\u7F51\u5173->>\u6743\u9650\u670D\u52A1: \u68C0\u67E5\u8BBF\u95EE\u6743\u9650\n \u6743\u9650\u670D\u52A1-->>API\u7F51\u5173: \u8FD4\u56DE\u6743\u9650\u4FE1\u606F\n API\u7F51\u5173->>\u4E1A\u52A1\u670D\u52A1: \u8F6C\u53D1\u8BF7\u6C42\n \u4E1A\u52A1\u670D\u52A1-->>API\u7F51\u5173: \u8FD4\u56DE\u54CD\u5E94\u6570\u636E\n API\u7F51\u5173->>\u5BA2\u6237\u7AEF: \u8FD4\u56DE\u54CD\u5E94\n else \u4EE4\u724C\u65E0\u6548\n \u8BA4\u8BC1\u670D\u52A1-->>API\u7F51\u5173: \u8FD4\u56DE\u8BA4\u8BC1\u5931\u8D25\n API\u7F51\u5173->>\u65E5\u5FD7\u670D\u52A1: \u8BB0\u5F55\u8BA4\u8BC1\u5931\u8D25\n API\u7F51\u5173->>\u5BA2\u6237\u7AEF: \u8FD4\u56DE401\u9519\u8BEF\n end\n```\n\n### 6.3 \u5F02\u5E38\u6D41\u7A0B\uFF08\u903B\u8F91\u4E2D\u51FA\u73B0\u5F02\u5E38\u60C5\u51B5\u7684\u4E0B\u7684\u5904\u7406\uFF09\n\n#### 6.3.1 xx\u5F02\u5E38\u5904\u7406\u6D41\u7A0B\n```mermaid\nsequenceDiagram\n participant \u5BA2\u6237\u7AEF\n participant API\u7F51\u5173\n participant \u9650\u6D41\u670D\u52A1\n participant \u65E5\u5FD7\u670D\u52A1\n \n \u5BA2\u6237\u7AEF->>API\u7F51\u5173: \u53D1\u9001API\u8BF7\u6C42\n API\u7F51\u5173->>\u9650\u6D41\u670D\u52A1: \u68C0\u67E5\u8BF7\u6C42\u9891\u7387\n \u9650\u6D41\u670D\u52A1-->>API\u7F51\u5173: \u8FD4\u56DE\u9650\u6D41\u51B3\u5B9A\n alt \u8BF7\u6C42\u9891\u7387\u6B63\u5E38\n API\u7F51\u5173->>\u540E\u7EED\u670D\u52A1: \u5904\u7406\u8BF7\u6C42\n else \u8BF7\u6C42\u9891\u7387\u8FC7\u9AD8\n API\u7F51\u5173->>\u65E5\u5FD7\u670D\u52A1: \u8BB0\u5F55\u9650\u6D41\u4E8B\u4EF6\n API\u7F51\u5173->>\u5BA2\u6237\u7AEF: \u8FD4\u56DE429\u9519\u8BEF(\u8BF7\u6C42\u8FC7\u591A)\n end\n```\n\n#### 6.3.2 xx\u5F02\u5E38\u5904\u7406\u6D41\u7A0B\n```mermaid\nsequenceDiagram\n participant \u5BA2\u6237\u7AEF\n participant API\u7F51\u5173\n participant \u4E1A\u52A1\u670D\u52A1\n participant \u6570\u636E\u9A8C\u8BC1\u5668\n participant \u65E5\u5FD7\u670D\u52A1\n \n \u5BA2\u6237\u7AEF->>API\u7F51\u5173: \u53D1\u9001\u5305\u542B\u65E0\u6548\u6570\u636E\u7684\u8BF7\u6C42\n API\u7F51\u5173->>\u4E1A\u52A1\u670D\u52A1: \u8F6C\u53D1\u8BF7\u6C42\n \u4E1A\u52A1\u670D\u52A1->>\u6570\u636E\u9A8C\u8BC1\u5668: \u9A8C\u8BC1\u6570\u636E\u683C\u5F0F\n \u6570\u636E\u9A8C\u8BC1\u5668-->>\u4E1A\u52A1\u670D\u52A1: \u8FD4\u56DE\u9A8C\u8BC1\u5931\u8D25\n \u4E1A\u52A1\u670D\u52A1->>\u65E5\u5FD7\u670D\u52A1: \u8BB0\u5F55\u9A8C\u8BC1\u9519\u8BEF\n \u4E1A\u52A1\u670D\u52A1-->>API\u7F51\u5173: \u8FD4\u56DE400\u9519\u8BEF(\u8BF7\u6C42\u6570\u636E\u65E0\u6548)\n API\u7F51\u5173->>\u5BA2\u6237\u7AEF: \u8FD4\u56DE400\u9519\u8BEF\u53CA\u9519\u8BEF\u8BE6\u60C5\n```\n\n### 6.4 \u8FB9\u7F18\u60C5\u51B5\u6D41\u7A0B\uFF08\u5E76\u53D1\u3001\u8D85\u65F6\u3001\u6570\u636E\u8FB9\u754C\u7B49\uFF09\n\n#### 6.4.1 \u5E76\u53D1\u51B2\u7A81\u5904\u7406\n```mermaid\nsequenceDiagram\n participant \u5BA2\u6237\u7AEF\n participant API\u7F51\u5173\n participant \u6570\u636E\u5E93\n participant \u65E5\u5FD7\u670D\u52A1\n participant \u7F13\u5B58\u670D\u52A1\n \n alt \u9AD8\u5E76\u53D1\u573A\u666F\n \u5BA2\u6237\u7AEF->>API\u7F51\u5173: \u5E76\u53D1\u8BF7\u6C42\n API\u7F51\u5173->>\u6570\u636E\u5E93: \u6267\u884C\u6570\u636E\u64CD\u4F5C\n \u6570\u636E\u5E93-->>API\u7F51\u5173: \u8FD4\u56DE\u7ED3\u679C\n API\u7F51\u5173->>\u7F13\u5B58\u670D\u52A1: \u7F13\u5B58\u54CD\u5E94\u6570\u636E\n API\u7F51\u5173->>\u65E5\u5FD7\u670D\u52A1: \u8BB0\u5F55\u5E76\u53D1\u51B2\u7A81\n else \u975E\u9AD8\u5E76\u53D1\u573A\u666F\n API\u7F51\u5173->>\u6570\u636E\u5E93: \u6267\u884C\u6570\u636E\u64CD\u4F5C\n \u6570\u636E\u5E93-->>API\u7F51\u5173: \u8FD4\u56DE\u7ED3\u679C\n API\u7F51\u5173->>\u7F13\u5B58\u670D\u52A1: \u7F13\u5B58\u54CD\u5E94\u6570\u636E\n end\n API\u7F51\u5173->>\u5BA2\u6237\u7AEF: \u8FD4\u56DE\u54CD\u5E94\n```\n#### 6.4.2 \u8D85\u65F6\u5904\u7406\n```mermaid\nsequenceDiagram\n participant \u5BA2\u6237\u7AEF\n participant API\u7F51\u5173\n participant \u4E1A\u52A1\u670D\u52A1\n participant \u65E5\u5FD7\u670D\u52A1\n participant \u76D1\u63A7\u670D\u52A1\n participant \u5907\u7528\u670D\u52A1\n \n \u5BA2\u6237\u7AEF->>API\u7F51\u5173: \u53D1\u9001\u5305\u542B\u65E0\u6548\u6570\u636E\u7684\u8BF7\u6C42\n API\u7F51\u5173->>\u4E1A\u52A1\u670D\u52A1: \u8F6C\u53D1\u8BF7\u6C42\n \u4E1A\u52A1\u670D\u52A1->>\u65E5\u5FD7\u670D\u52A1: \u8BB0\u5F55\u8D85\u65F6\u4E8B\u4EF6\n \u4E1A\u52A1\u670D\u52A1->>\u76D1\u63A7\u670D\u52A1: \u4E0A\u62A5\u8D85\u65F6\u6307\u6807\n \u4E1A\u52A1\u670D\u52A1-->>\u4E1A\u52A1\u670D\u52A1: \u91CD\u8BD5\u8BF7\u6C42\n \u4E1A\u52A1\u670D\u52A1-->>API\u7F51\u5173: \u8FD4\u56DE408\u9519\u8BEF(\u8BF7\u6C42\u8D85\u65F6)\n API\u7F51\u5173->>\u5907\u7528\u670D\u52A1: \u8F6C\u53D1\u8BF7\u6C42\n \u5907\u7528\u670D\u52A1-->>API\u7F51\u5173: \u8FD4\u56DE\u9519\u8BEF\u54CD\u5E94\n API\u7F51\u5173->>\u65E5\u5FD7\u670D\u52A1: \u65E5\u5FD7\u8BB0\u5F55\u5907\u7528\u670D\u52A1\u54CD\u5E94\n API\u7F51\u5173->>\u76D1\u63A7\u670D\u52A1: \u8BB0\u5F55\u5907\u7528\u670D\u52A1\u5931\u8D25\n API\u7F51\u5173->>\u5BA2\u6237\u7AEF: \u8FD4\u56DE\u5907\u7528\u670D\u52A1\u54CD\u5E94\n```\n\n## 7. \u4E1A\u52A1\u72B6\u6001\u63CF\u8FF0\n\n| | | |\n|---|---|---|\n|**\u72B6\u6001\u7F16\u53F7**|**\u72B6\u6001\u540D\u79F0**|**\u63CF\u8FF0**|\n|01|\u6536\u5230\u5BA1\u6838\u7533\u8BF7|\u5F53\u63A5\u6536\u5230\u5BA1\u6838\u7533\u8BF7\u65F6\uFF0C\u7CFB\u7EDF\u4F1A\u8BB0\u5F55\u7533\u8BF7\u4FE1\u606F\u5E76\u8FD4\u56DE\u5BA1\u6838\u4E2D\u72B6\u6001|\n|02|\u5BA1\u6279\u5BA1\u6838\u72B6\u6001|\u5F53\u5BA1\u6279\u4EBA\u5BF9\u7533\u8BF7\u8FDB\u884C\u5BA1\u6279\u540E\uFF0C\u7CFB\u7EDF\u4F1A\u66F4\u65B0\u5BA1\u6838\u72B6\u6001\u5E76\u8FD4\u56DE\u5BA1\u6279\u7ED3\u679C|\n|[\u6DFB\u52A0\u66F4\u591A\u72B6\u6001...]||\n\n## 8. \u4F2A\u4EE3\u7801\u793A\u4F8B\n\n```gherkin\nScenario Outline: \u7528\u6237\u901A\u8FC7API\u67E5\u8BE2\u8BA2\u5355\u4FE1\u606F\n Given \u7528\u6237\u5DF2\u901A\u8FC7\u8BA4\u8BC1\u5E76\u62E5\u6709\u67E5\u8BE2\u6743\u9650\n When \u7528\u6237\u5411/orders/<order_id>\u63A5\u53E3\u53D1\u9001POST\u8BF7\u6C42\n Then \u7CFB\u7EDF\u5E94\u8FD4\u56DE\u8BA2\u5355\u4FE1\u606F\u6216 <error_message>\n\n Examples:\n | order_id | error_message |\n | 12345 | null (\u6210\u529F\u8FD4\u56DE\u8BA2\u5355\u4FE1\u606F) |\n | 99999 | \"\u8BA2\u5355\u4E0D\u5B58\u5728\" |\n\nScenario Outline: API\u8BA4\u8BC1\u4E0E\u6388\u6743\u6D41\u7A0B\n Given \u5BA2\u6237\u7AEF\u4F7F\u7528<auth_type>\u65B9\u5F0F\u8FDB\u884C\u8BA4\u8BC1\n When \u5BA2\u6237\u7AEF\u8BBF\u95EE<api_endpoint>\u63A5\u53E3\u65F6\n Then \u7CFB\u7EDF\u5E94:\n 1. \u9A8C\u8BC1\u8BA4\u8BC1\u51ED\u8BC1\u7684\u6709\u6548\u6027\n 2. \u68C0\u67E5\u7528\u6237\u6743\u9650\n 3. \u6839\u636E\u9A8C\u8BC1\u7ED3\u679C\u8FD4\u56DE\u76F8\u5E94\u54CD\u5E94\n\n Examples:\n | auth_type | api_endpoint | \u9884\u671F\u884C\u4E3A |\n | Bearer Token | /orders | \u9A8C\u8BC1\u4EE4\u724C\u6709\u6548\u6027\uFF0C\u68C0\u67E5\u8BA2\u5355\u8BBF\u95EE\u6743\u9650 |\n | API Key | /products | \u9A8C\u8BC1API Key\uFF0C\u68C0\u67E5\u4EA7\u54C1\u8BBF\u95EE\u6743\u9650 |\n | \u65E0\u6548\u4EE4\u724C | /orders | \u8FD4\u56DE401\u672A\u6388\u6743\u9519\u8BEF |\n | \u65E0\u6743\u9650\u7528\u6237 | /admin | \u8FD4\u56DE403\u7981\u6B62\u8BBF\u95EE\u9519\u8BEF |\n\nScenario Outline: API\u8C03\u7528\u4E0E\u6570\u636E\u5904\u7406\u6D41\u7A0B\n Given \u5BA2\u6237\u7AEF\u5411<api_endpoint>\u53D1\u9001<http_method>\u8BF7\u6C42\n When \u8BF7\u6C42\u5305\u542B<data_status>\u6570\u636E\u65F6\n Then \u7CFB\u7EDF\u5E94:\n 1. \u9A8C\u8BC1\u8BF7\u6C42\u53C2\u6570\u683C\u5F0F\n 2. \u6267\u884C\u4E1A\u52A1\u903B\u8F91\u5904\u7406\n 3. \u8FD4\u56DE\u6807\u51C6\u5316\u54CD\u5E94\u683C\u5F0F\n\n Examples:\n | api_endpoint | http_method | data_status | \u5904\u7406\u903B\u8F91 |\n | /users | POST | \u6709\u6548\u6570\u636E | \u521B\u5EFA\u65B0\u7528\u6237\uFF0C\u8FD4\u56DE\u7528\u6237ID\u548C\u521B\u5EFA\u65F6\u95F4 |\n | /users | POST | \u7F3A\u5931\u5FC5\u586B\u9879 | \u8FD4\u56DE400\u9519\u8BEF\uFF0C\u8BE6\u7EC6\u8BF4\u660E\u7F3A\u5931\u5B57\u6BB5 |\n | /users/123 | PUT | \u66F4\u65B0\u6570\u636E | \u66F4\u65B0\u7528\u6237\u4FE1\u606F\uFF0C\u8FD4\u56DE\u66F4\u65B0\u540E\u7684\u5B8C\u6574\u7528\u6237\u4FE1\u606F |\n | /users/123 | DELETE | \u5B58\u5728\u8D44\u6E90 | \u5220\u9664\u7528\u6237\uFF0C\u8FD4\u56DE204\u72B6\u6001\u7801 |\n | /users/999 | POST | \u4E0D\u5B58\u5728\u8D44\u6E90 | \u8FD4\u56DE404\u9519\u8BEF\uFF0C\u8BF4\u660E\u8D44\u6E90\u672A\u627E\u5230 |\n | /users | POST | \u5927\u91CF\u6570\u636E | \u5206\u9875\u8FD4\u56DE\u7528\u6237\u5217\u8868\uFF0C\u5305\u542B\u603B\u6570\u548C\u5206\u9875\u4FE1\u606F |\n\nScenario Outline: API\u9650\u6D41\u4E0E\u9519\u8BEF\u6062\u590D\u5904\u7406\n Given \u5BA2\u6237\u7AEF\u5728<time_window>\u5185\u53D1\u9001<request_count>\u4E2A\u8BF7\u6C42\n When \u7CFB\u7EDF\u68C0\u6D4B\u5230<traffic_pattern>\u65F6\n Then \u7CFB\u7EDF\u5E94:\n 1. \u5E94\u7528\u9650\u6D41\u7B56\u7565\u63A7\u5236\u8BF7\u6C42\u9891\u7387\n 2. \u8FD4\u56DE\u9002\u5F53\u7684\u9650\u6D41\u54CD\u5E94\u7801\n 3. \u63D0\u4F9B\u91CD\u8BD5\u5EFA\u8BAE\u548C\u65F6\u95F4\u7A97\u53E3\u4FE1\u606F\n\n Examples:\n | time_window | request_count | traffic_pattern | \u9650\u6D41\u7B56\u7565 |\n | 1\u5206\u949F | 60\u4E2A\u8BF7\u6C42 | \u6B63\u5E38\u6D41\u91CF | \u5141\u8BB8\u8BF7\u6C42\u901A\u8FC7\uFF0C\u8BB0\u5F55\u8BBF\u95EE\u65E5\u5FD7 |\n | 1\u5206\u949F | 120\u4E2A\u8BF7\u6C42 | \u7A81\u53D1\u6D41\u91CF | \u8FD4\u56DE429\u72B6\u6001\u7801\uFF0C\u5EFA\u8BAE\u7B49\u5F8530\u79D2\u540E\u91CD\u8BD5 |\n | 1\u5206\u949F | 1000\u4E2A\u8BF7\u6C42 | \u6076\u610F\u653B\u51FB | \u7ACB\u5373\u62D2\u7EDD\u8BF7\u6C42\uFF0C\u8BB0\u5F55IP\u5E76\u89E6\u53D1\u5B89\u5168\u9632\u62A4\u673A\u5236 |\n | 5\u5206\u949F | 50\u4E2A\u8BF7\u6C42 | \u5468\u671F\u6027\u8BF7\u6C42 | \u5141\u8BB8\u8BF7\u6C42\u901A\u8FC7\uFF0C\u4F18\u5316\u7F13\u5B58\u7B56\u7565\u63D0\u5347\u54CD\u5E94\u901F\u5EA6 |\n | 1\u5C0F\u65F6 | 10000\u4E2A\u8BF7\u6C42 | \u6B63\u5E38\u4E1A\u52A1\u9AD8\u5CF0 | \u52A8\u6001\u8C03\u6574\u9650\u6D41\u9608\u503C\uFF0C\u542F\u7528\u8D1F\u8F7D\u5747\u8861\u7B56\u7565 |\n```\n\n---\n\n**\u91CD\u8981\u63D0\u9192**: \n1. \u8BF7\u8F93\u51FA\u5B8C\u6574\u7684Markdown\u6587\u6863\uFF0C\u4E0D\u8981\u7701\u7565\u4EFB\u4F55\u7AE0\u8282\n2. \u6BCF\u4E2A\u7AE0\u8282\u90FD\u8981\u6709\u5B9E\u8D28\u6027\u7684\u5185\u5BB9\uFF0C\u4E0D\u80FD\u53EA\u662F\u6A21\u677F\n3. \u6839\u636E\u8F93\u5165\u7684\u539F\u59CB\u5185\u5BB9\u8FDB\u884C\u5177\u4F53\u5206\u6790\uFF0C\u4E0D\u8981\u4F7F\u7528\u901A\u7528\u6A21\u677F\n4. \u6587\u6863\u603B\u957F\u5EA6\u5E94\u8BE5\u57283000\u5B57\u4EE5\u4E0A\n5. \u8868\u683C\u4E2D\u7684\u5185\u5BB9\u8981\u586B\u5199\u5177\u4F53\u4FE1\u606F\uFF0C\u4E0D\u8981\u4FDD\u7559\u5360\u4F4D\u7B26\n6. \u91CD\u70B9\u5173\u6CE8API\u63A5\u53E3\u8BBE\u8BA1\u3001\u6570\u636E\u7ED3\u6784\u3001\u4EA4\u4E92\u903B\u8F91\u7B49\u6280\u672F\u7EC6\u8282\n\n\u73B0\u5728\u8BF7\u5F00\u59CB\u751F\u6210\u5B8C\u6574\u7684API\u63A5\u53E3\u6280\u672F\u9700\u6C42\u6587\u6863\uFF1A";
1
+ export declare const apiTemplatePrompt = "\u4F60\u662F\u540E\u7AEF\u6280\u672F\u6587\u6863\u4E13\u5BB6\u3002\u57FA\u4E8E\u8F93\u5165\u5185\u5BB9\u751F\u6210\u5B8C\u6574\u7684API\u63A5\u53E3\u6280\u672F\u9700\u6C42\u6587\u6863\uFF08Markdown\u683C\u5F0F\uFF0C3000\u5B57\u4EE5\u4E0A\uFF09\u3002\n\n**\u8F93\u5165**: \u529F\u80FD\u540D\u79F0={featureName}, \u4E1A\u52A1\u9886\u57DF={businessDomain}, \u751F\u6210\u65F6\u5E8F\u56FE={generateSequenceDiagram}\n\n**\u539F\u59CB\u9700\u6C42**:\n```\n{inputContent}\n```\n\n## \u6587\u6863\u7ED3\u6784\u8981\u6C42\n\u8BF7\u4E25\u683C\u6309\u7167\u4EE5\u4E0B\u7ED3\u6784\u8F93\u51FA\u5B8C\u6574\u7684\u9700\u6C42\u6587\u6863\uFF0C\u6BCF\u4E2A\u7AE0\u8282\u90FD\u8981\u6709\u8BE6\u5B9E\u7684\u5185\u5BB9\uFF1A\n\n# {featureName} - API\u63A5\u53E3\u6280\u672F\u9700\u6C42\u6587\u6863\n\n> **\u751F\u6210\u65F6\u95F4**: {currentTime}\n> **\u4E1A\u52A1\u9886\u57DF**: {businessDomain}\n> **\u63A5\u53E3\u7C7B\u578B**: RESTful API\n\n---\n\n## 1. \u9700\u6C42\u80CC\u666F\n\n**\u80CC\u666F**: [\u8BE6\u7EC6\u63CF\u8FF0API\u63A5\u53E3\u7684\u80CC\u666F\u3001\u4E1A\u52A1\u9700\u6C42\u548C\u76EE\u6807]\n\n**\u5173\u952E\u529F\u80FD**: [\u5217\u51FAAPI\u63A5\u53E3\u7684\u4E3B\u8981\u529F\u80FD\u70B9]\n\n**\u6D89\u53CA\u89D2\u8272**: [\u5217\u51FA\u6240\u6709\u76F8\u5173\u7CFB\u7EDF\u89D2\u8272]\n\n## 2. {featureName}\u529F\u80FD\u8BBE\u8BA1\u8BF4\u660E\n\n| | | | | |\n|---|---|---|---|---|\n|**\u6D41\u7A0B\u7F16\u53F7**|F001|**\u6D41\u7A0B\u540D\u79F0**|{featureName}|\n|**\u4E1A\u52A1\u529F\u80FD\u7F16\u53F7**|BF001|**\u4E1A\u52A1\u529F\u80FD\u540D\u79F0**|{featureName}|\n|**\u529F\u80FD\u8BBE\u8BA1\u7F16\u53F7**|FD001|**\u7CFB\u7EDF\u529F\u80FD\u540D\u79F0**|{featureName}|\n|**\u524D\u7F6E\u6761\u4EF6**|[\u8BE6\u7EC6\u63CF\u8FF0API\u8C03\u7528\u7684\u524D\u7F6E\u6761\u4EF6]|\n|**\u89D2\u8272\uFF08\u5C97\u4F4D\uFF09**|[\u8BE6\u7EC6\u63CF\u8FF0\u8C03\u7528\u65B9\u89D2\u8272\u53CA\u5176\u6743\u9650]|\n|**\u5165\u53E3\u6E20\u9053**|[\u63CF\u8FF0API\u8C03\u7528\u5165\u53E3]|\n|**\u529F\u80FD\u63CF\u8FF0**|[\u8BE6\u7EC6\u7684\u529F\u80FD\u63CF\u8FF0]|\n|**\u8C03\u7528\u80FD\u529B\u57DF/\u4E2D\u5FC3**|[\u5982\u9002\u7528\u7684\u5176\u4ED6\u7CFB\u7EDF\u63A5\u53E3]|\n\n## 3. \u6570\u636E\u5EFA\u6A21\n## 3.1 ER\u903B\u8F91\u56FE\u8BBE\u8BA1\n\n[\u63CF\u8FF0\u6570\u636E\u5E93\u8868\uFF08\u8981\u5305\u542B\u6570\u636E\u5E93\u4E2D\u6587\u548C\u82F1\u6587\u540D\u79F0\uFF0C\u6570\u636E\u5E93\u8868\u5B57\u6BB5\uFF09\u4E4B\u95F4\u7684\u5173\u7CFB\u548CER\u56FE\u8BBE\u8BA1]\n```mermaid\n```\n\n[\u63CF\u8FF0\u5BF9\u8C61\u4E4B\u95F4\u7684\u5173\u7CFB]\n\n## 4. \u6570\u636E\u8868\u5B9E\u4F53\u8BBE\u8BA1\n\n[\u8BE6\u7EC6\u63CF\u8FF0\u6D89\u53CA\u7684\u6570\u636E\u8868\u5B9E\u4F53\u7ED3\u6784\uFF0C\u5305\u62EC\u5B57\u6BB5\u540D\u3001\u7C7B\u578B\u3001\u7EA6\u675F\u6761\u4EF6\u3001\u7D22\u5F15\u89C4\u5219\u7B49]\n\n## 5. API\u63A5\u53E3\u8BBE\u8BA1\n\n### 5.1 \u63A5\u53E3\u5217\u8868\n[\u5217\u51FA\u6240\u6709\u76F8\u5173\u7684API\u63A5\u53E3]\n\n### 5.2 \u63A5\u53E3\u8BE6\u7EC6\u8BF4\u660E\n\n#### 5.2.1 \u63A5\u53E31 - [\u63A5\u53E3\u540D\u79F0]\n#### 5.2.2 \u57FA\u672C\u4FE1\u606F\n- **\u63A5\u53E3\u5730\u5740**: [URL\u8DEF\u5F84]\n- **\u8BF7\u6C42\u65B9\u6CD5**: [\u53EA\u5141\u8BB8\u4F7F\u7528POST\u8BF7\u6C42]\n- **\u534F\u8BAE**: [\u53EA\u5141\u8BB8\u4F7F\u7528HTTPS]\n- **\u5185\u5BB9\u7C7B\u578B**: [application/json\u7B49]\n\n#### 5.2.3 \u8BF7\u6C42\u53C2\u6570\n[\u8BE6\u7EC6\u8BF4\u660E\u8BF7\u6C42\u53C2\u6570]\n\n|\u53C2\u6570\u540D|\u7C7B\u578B|\u662F\u5426\u5FC5\u586B|\u4F4D\u7F6E|\u8BF4\u660E|\n|------|----|--------|----|----|\n|[\u53C2\u65701]|[string/int\u7B49]|[\u662F/\u5426]|[query/body/path]|[\u8BE6\u7EC6\u8BF4\u660E]|\n|[\u53C2\u65702]|[string/int\u7B49]|[\u662F/\u5426]|[query/body/path]|[\u8BE6\u7EC6\u8BF4\u660E]|\n\n#### 5.2.4 \u54CD\u5E94\u53C2\u6570\n[\u8BE6\u7EC6\u8BF4\u660E\u54CD\u5E94\u53C2\u6570]\n\n|\u53C2\u6570\u540D|\u7C7B\u578B|\u8BF4\u660E|\n|------|----|----|\n|[\u53C2\u65701]|[string/object\u7B49]|[\u8BE6\u7EC6\u8BF4\u660E]|\n|[\u53C2\u65702]|[string/object\u7B49]|[\u8BE6\u7EC6\u8BF4\u660E]|\n\n#### 5.2.5 \u9519\u8BEF\u7801\u8BF4\u660E\n[\u8BE6\u7EC6\u8BF4\u660E\u8BE5\u63A5\u53E3\u7684\u9519\u8BEF\u7801]\n\n|\u9519\u8BEF\u7801|\u8BF4\u660E|\n|------|----|\n|[\u9519\u8BEF\u78011]|[\u8BE6\u7EC6\u8BF4\u660E]|\n|[\u9519\u8BEF\u78012]|[\u8BE6\u7EC6\u8BF4\u660E]|\n\n#### 5.2.6 \u8BE6\u7EC6\u5B9E\u73B0\u903B\u8F91\n[\u5206\u6B65\u9AA4\u8BE6\u7EC6\u63CF\u8FF0\u8BE5\u63A5\u53E3\u7684\u8BE6\u7EC6\u903B\u8F91\uFF0C\u5982\u679C\u5B58\u5728sql\u8BED\u53E5\uFF0C\u9700\u8981\u6DFB\u52A0sql\u8BED\u53E5\u5E76\u5728sql\u8BED\u53E5\u4E2D\u6DFB\u52A0\u6CE8\u91CA\u8BF4\u660E]\n\n## 6. \u4E1A\u52A1\u5BF9\u8C61\u65F6\u5E8F\u56FE\n\n#### 6.2.1 \u6B63\u5411\u6D41\u7A0B\n```mermaid\nsequenceDiagram\n```\n\n### 6.3 \u5F02\u5E38\u6D41\u7A0B\uFF08\u903B\u8F91\u4E2D\u51FA\u73B0\u5F02\u5E38\u60C5\u51B5\u7684\u4E0B\u7684\u5904\u7406\uFF09\n\n#### 6.3.1 xx\u5F02\u5E38\u5904\u7406\u6D41\u7A0B\n```mermaid\nsequenceDiagram\n```\n\n#### 6.3.2 xx\u5F02\u5E38\u5904\u7406\u6D41\u7A0B\n```mermaid\nsequenceDiagram\n```\n\n## 7. \u4E1A\u52A1\u72B6\u6001\u63CF\u8FF0\n\n| | | |\n|---|---|---|\n|**\u72B6\u6001\u7F16\u53F7**|**\u72B6\u6001\u540D\u79F0**|**\u63CF\u8FF0**|\n|01|\u6536\u5230\u5BA1\u6838\u7533\u8BF7|\u5F53\u63A5\u6536\u5230\u5BA1\u6838\u7533\u8BF7\u65F6\uFF0C\u7CFB\u7EDF\u4F1A\u8BB0\u5F55\u7533\u8BF7\u4FE1\u606F\u5E76\u8FD4\u56DE\u5BA1\u6838\u4E2D\u72B6\u6001|\n|02|\u5BA1\u6279\u5BA1\u6838\u72B6\u6001|\u5F53\u5BA1\u6279\u4EBA\u5BF9\u7533\u8BF7\u8FDB\u884C\u5BA1\u6279\u540E\uFF0C\u7CFB\u7EDF\u4F1A\u66F4\u65B0\u5BA1\u6838\u72B6\u6001\u5E76\u8FD4\u56DE\u5BA1\u6279\u7ED3\u679C|\n|[\u6DFB\u52A0\u66F4\u591A\u72B6\u6001...]||\n\n## 8. \u4F2A\u4EE3\u7801\u793A\u4F8B\n\n```gherkin\nScenario Outline: \u7528\u6237\u901A\u8FC7API\u67E5\u8BE2\u8BA2\u5355\u4FE1\u606F\n Given \u7528\u6237\u5DF2\u901A\u8FC7\u8BA4\u8BC1\u5E76\u62E5\u6709\u67E5\u8BE2\u6743\u9650\n When \u7528\u6237\u5411/orders/<order_id>\u63A5\u53E3\u53D1\u9001POST\u8BF7\u6C42\n Then \u7CFB\u7EDF\u5E94\u8FD4\u56DE\u8BA2\u5355\u4FE1\u606F\u6216 <error_message>\n\n Examples:\n | order_id | error_message |\n | 12345 | null (\u6210\u529F\u8FD4\u56DE\u8BA2\u5355\u4FE1\u606F) |\n | 99999 | \"\u8BA2\u5355\u4E0D\u5B58\u5728\" |\n```\n\n---\n\n**\u8981\u6C42**: \u8F93\u51FA\u5B8C\u6574\u6587\u6863\uFF0C\u6BCF\u7AE0\u8282\u6709\u5B9E\u8D28\u5185\u5BB9\uFF0C\u8868\u683C\u586B\u5199\u5177\u4F53\u4FE1\u606F\uFF0C\u91CD\u70B9\u5173\u6CE8API\u63A5\u53E3\u8BBE\u8BA1\u3001\u6570\u636E\u7ED3\u6784\u3001\u4EA4\u4E92\u903B\u8F91\uFF0C\u4F2A\u4EE3\u7801\u4F7F\u7528gherkin\u8BED\u6CD5\u3002";
2
2
  //# sourceMappingURL=api-template.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-template.d.ts","sourceRoot":"","sources":["../../../../src/services/requirement-analyzer/prompt/api-template.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,uiiBA0SP,CAAC"}
1
+ {"version":3,"file":"api-template.d.ts","sourceRoot":"","sources":["../../../../src/services/requirement-analyzer/prompt/api-template.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,u+MA2IyC,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare const appTemplatePrompt = "\u4F60\u662F\u4E00\u4F4D\u4E13\u4E1A\u7684\u79FB\u52A8\u7AEF\u6280\u672F\u6587\u6863\u7F16\u5199\u4E13\u5BB6\u3002\u8BF7\u57FA\u4E8E\u7528\u6237\u63D0\u4F9B\u7684\u8F93\u5165\u5185\u5BB9\uFF0C\u751F\u6210\u4E00\u4EFD\u5B8C\u6574\u3001\u8BE6\u7EC6\u7684APP\u5F00\u53D1\u6280\u672F\u9700\u6C42\u6587\u6863\u3002\n\n## \u4EFB\u52A1\u8981\u6C42\n- \u5FC5\u987B\u8F93\u51FA\u5B8C\u6574\u7684Markdown\u683C\u5F0F\u6280\u672F\u9700\u6C42\u6587\u6863\n- \u4E0D\u8981\u53EA\u7ED9\u51FA\u603B\u7ED3\uFF0C\u8981\u8F93\u51FA\u5B8C\u6574\u7684\u6587\u6863\u5185\u5BB9\n- \u6BCF\u4E2A\u7AE0\u8282\u90FD\u8981\u6709\u8BE6\u7EC6\u7684\u5185\u5BB9\uFF0C\u4E0D\u80FD\u7701\u7565\n- \u6587\u6863\u957F\u5EA6\u5E94\u8BE5\u57283000\u5B57\u4EE5\u4E0A\n- \u91CD\u70B9\u63CF\u8FF0\u79FB\u52A8\u7AEF\u9875\u9762\u5E03\u5C40\u3001\u6837\u5F0F\u3001\u4EA4\u4E92\u903B\u8F91\u7B49\u79FB\u52A8\u7AEF\u76F8\u5173\u5185\u5BB9\n\n## \u8F93\u5165\u4FE1\u606F\n- **\u529F\u80FD\u540D\u79F0**: {featureName}\n- **\u4E1A\u52A1\u9886\u57DF**: {businessDomain}\n- **\u751F\u6210\u65F6\u5E8F\u56FE**: {generateSequenceDiagram}\n\n## \u539F\u59CB\u9700\u6C42\u5185\u5BB9\n```\n{inputContent}\n```\n\n## \u6587\u6863\u7ED3\u6784\u8981\u6C42\n\u8BF7\u4E25\u683C\u6309\u7167\u4EE5\u4E0B\u7ED3\u6784\u8F93\u51FA\u5B8C\u6574\u7684\u9700\u6C42\u6587\u6863\uFF0C\u6BCF\u4E2A\u7AE0\u8282\u90FD\u8981\u6709\u8BE6\u5B9E\u7684\u5185\u5BB9\uFF1A\n\n# {featureName} - APP\u5F00\u53D1\u6280\u672F\u9700\u6C42\u6587\u6863\n\n> **\u751F\u6210\u65F6\u95F4**: {currentTime}\n> **\u4E1A\u52A1\u9886\u57DF**: {businessDomain}\n> **\u5E94\u7528\u7C7B\u578B**: \u79FB\u52A8\u7AEF\u5E94\u7528\n\n---\n\n## 1. \u9700\u6C42\u80CC\u666F\n\n**\u80CC\u666F**: [\u8BE6\u7EC6\u63CF\u8FF0APP\u529F\u80FD\u80CC\u666F\u3001\u4E1A\u52A1\u9700\u6C42\u548C\u76EE\u6807]\n\n**\u5173\u952E\u529F\u80FD**: [\u5217\u51FAAPP\u7684\u4E3B\u8981\u529F\u80FD\u70B9]\n\n**\u6D89\u53CA\u89D2\u8272**: [\u5217\u51FA\u6240\u6709\u76F8\u5173\u7528\u6237\u89D2\u8272]\n\n## 2. {featureName}\u529F\u80FD\u8BBE\u8BA1\u8BF4\u660E\n\n| | | | | |\n|---|---|---|---|---|\n|**\u6D41\u7A0B\u7F16\u53F7**|F001|**\u6D41\u7A0B\u540D\u79F0**|{featureName}|\n|**\u4E1A\u52A1\u529F\u80FD\u7F16\u53F7**|BF001|**\u4E1A\u52A1\u529F\u80FD\u540D\u79F0**|{featureName}|\n|**\u529F\u80FD\u8BBE\u8BA1\u7F16\u53F7**|FD001|**\u7CFB\u7EDF\u529F\u80FD\u540D\u79F0**|{featureName}|\n|**\u524D\u7F6E\u6761\u4EF6**|[\u8BE6\u7EC6\u63CF\u8FF0\u529F\u80FD\u4F7F\u7528\u7684\u524D\u7F6E\u6761\u4EF6]|\n|**\u89D2\u8272\uFF08\u5C97\u4F4D\uFF09**|[\u8BE6\u7EC6\u63CF\u8FF0\u7528\u6237\u89D2\u8272\u53CA\u5176\u6743\u9650]|\n|**\u5165\u53E3\u6E20\u9053**|[\u63CF\u8FF0\u529F\u80FD\u8BBF\u95EE\u5165\u53E3\uFF0C\u5982Tab\u3001\u6309\u94AE\u7B49]|\n|**\u529F\u80FD\u63CF\u8FF0**|[\u8BE6\u7EC6\u7684\u529F\u80FD\u63CF\u8FF0]|\n|**\u8C03\u7528\u80FD\u529B\u57DF/\u4E2D\u5FC3**|[\u5982\u9002\u7528\u7684\u540E\u7AEFAPI\u63A5\u53E3]|\n\n## 3. \u9875\u9762\u5E03\u5C40\u8BBE\u8BA1\n\n### 3.1 \u6574\u4F53\u5E03\u5C40\u7ED3\u6784\n[\u8BE6\u7EC6\u63CF\u8FF0\u9875\u9762\u7684\u6574\u4F53\u5E03\u5C40\u7ED3\u6784\uFF0C\u5305\u62EC\u5BFC\u822A\u680F\u3001\u5185\u5BB9\u533A\u3001\u5E95\u90E8\u64CD\u4F5C\u680F\u7B49\u533A\u57DF\u7684\u5212\u5206\u548C\u529F\u80FD]\n\n### 3.2 \u9875\u9762\u533A\u57DF\u5212\u5206\n[\u8BE6\u7EC6\u63CF\u8FF0\u9875\u9762\u5404\u4E2A\u529F\u80FD\u533A\u57DF\u7684\u5E03\u5C40\uFF0C\u4F7F\u7528\u6587\u5B57\u63CF\u8FF0\u533A\u57DF\u4F4D\u7F6E\u5173\u7CFB]\n\n### 3.3 \u591A\u5C4F\u5E55\u9002\u914D\u8981\u6C42\n[\u8BE6\u7EC6\u63CF\u8FF0\u9875\u9762\u5728\u4E0D\u540C\u5C4F\u5E55\u5C3A\u5BF8\u548C\u5206\u8FA8\u7387\u4E0B\u7684\u5E03\u5C40\u9002\u914D\u8981\u6C42]\n\n### 3.4 \u54CD\u5E94\u5F0F\u5E03\u5C40\u89C4\u8303\n[\u8BE6\u7EC6\u63CF\u8FF0\u79FB\u52A8\u7AEF\u54CD\u5E94\u5F0F\u5E03\u5C40\u7684\u8BBE\u8BA1\u89C4\u8303\u548C\u5B9E\u73B0\u8981\u6C42]\n\n### 3.5 \u624B\u52BF\u533A\u57DF\u8BBE\u8BA1\n[\u8BE6\u7EC6\u63CF\u8FF0\u9875\u9762\u4E2D\u624B\u52BF\u64CD\u4F5C\u533A\u57DF\u7684\u8BBE\u8BA1\u548C\u4EA4\u4E92\u89C4\u8303]\n\n## 4. \u6837\u5F0F\u89C4\u8303\u8BF4\u660E\n\n### 4.1 \u8272\u5F69\u89C4\u8303\n[\u8BE6\u7EC6\u63CF\u8FF0APP\u4F7F\u7528\u7684\u4E3B\u8272\u8C03\u3001\u8F85\u52A9\u8272\u3001\u72B6\u6001\u8272\u7B49\u914D\u8272\u65B9\u6848]\n\n### 4.2 \u5B57\u4F53\u89C4\u8303\n[\u8BE6\u7EC6\u63CF\u8FF0APP\u4F7F\u7528\u7684\u5B57\u4F53\u3001\u5B57\u53F7\u3001\u5B57\u91CD\u7B49\u89C4\u8303\uFF0C\u8003\u8651iOS\u548CAndroid\u5DEE\u5F02]\n\n### 4.3 \u7EC4\u4EF6\u6837\u5F0F\n[\u8BE6\u7EC6\u63CF\u8FF0APP\u4E2D\u5404\u79CDUI\u7EC4\u4EF6\u7684\u6837\u5F0F\u89C4\u8303\uFF0C\u5982\u6309\u94AE\u3001\u8F93\u5165\u6846\u3001\u5217\u8868\u7B49]\n\n### 4.4 \u95F4\u8DDD\u89C4\u8303\n[\u8BE6\u7EC6\u63CF\u8FF0\u9875\u9762\u5143\u7D20\u95F4\u7684\u95F4\u8DDD\u89C4\u8303\uFF0C\u5305\u62EC\u5185\u8FB9\u8DDD\u3001\u5916\u8FB9\u8DDD\u7B49]\n\n### 4.5 \u56FE\u6807\u89C4\u8303\n[\u8BE6\u7EC6\u63CF\u8FF0APP\u4E2D\u56FE\u6807\u7684\u8BBE\u8BA1\u89C4\u8303\u548C\u4F7F\u7528\u8981\u6C42]\n\n### 4.6 \u4E3B\u9898\u89C4\u8303\n[\u8BE6\u7EC6\u63CF\u8FF0APP\u4E3B\u9898\u5207\u6362\u7684\u8BBE\u8BA1\u89C4\u8303\u548C\u5B9E\u73B0\u8981\u6C42]\n\n## 5. \u4EA4\u4E92\u903B\u8F91\u8BF4\u660E\n\n### 5.1 \u624B\u52BF\u64CD\u4F5C\n[\u8BE6\u7EC6\u63CF\u8FF0\u9875\u9762\u652F\u6301\u7684\u624B\u52BF\u64CD\u4F5C\uFF0C\u5982\u6ED1\u52A8\u3001\u957F\u6309\u3001\u53CC\u51FB\u7B49]\n\n### 5.2 \u9875\u9762\u8DF3\u8F6C\u903B\u8F91\n[\u8BE6\u7EC6\u63CF\u8FF0\u9875\u9762\u95F4\u7684\u8DF3\u8F6C\u5173\u7CFB\u548C\u5BFC\u822A\u903B\u8F91]\n\n### 5.3 \u72B6\u6001\u7BA1\u7406\n[\u8BE6\u7EC6\u63CF\u8FF0\u9875\u9762\u7684\u5404\u79CD\u72B6\u6001\u53CA\u5176\u5207\u6362\u903B\u8F91\uFF0C\u5982\u52A0\u8F7D\u72B6\u6001\u3001\u7A7A\u72B6\u6001\u3001\u9519\u8BEF\u72B6\u6001\u7B49]\n\n### 5.4 \u52A8\u6548\u8BBE\u8BA1\n[\u8BE6\u7EC6\u63CF\u8FF0\u9875\u9762\u4E2D\u7684\u52A8\u753B\u6548\u679C\u548C\u8FC7\u6E21\u6548\u679C\uFF0C\u8003\u8651\u5E73\u53F0\u7279\u6027]\n\n### 5.5 \u8868\u5355\u9A8C\u8BC1\u89C4\u5219\n[\u8BE6\u7EC6\u63CF\u8FF0\u9875\u9762\u4E2D\u8868\u5355\u5143\u7D20\u7684\u9A8C\u8BC1\u89C4\u5219\u548C\u9519\u8BEF\u63D0\u793A]\n\n### 5.6 \u7528\u6237\u53CD\u9988\u673A\u5236\n[\u8BE6\u7EC6\u63CF\u8FF0\u7528\u6237\u64CD\u4F5C\u540E\u7684\u53CD\u9988\u673A\u5236\uFF0C\u5982Toast\u3001Loading\u7B49]\n\n### 5.7 \u79BB\u7EBF\u4EA4\u4E92\u5904\u7406\n[\u8BE6\u7EC6\u63CF\u8FF0\u5E94\u7528\u5728\u79BB\u7EBF\u72B6\u6001\u4E0B\u7684\u4EA4\u4E92\u5904\u7406\u673A\u5236]\n\n## 6. \u754C\u9762\u5B57\u6BB5\u8BF4\u660E\n\n### 6.1 \u4E3B\u8981\u6570\u636E\u5B9E\u4F53\n[\u63CF\u8FF0\u9875\u9762\u6D89\u53CA\u7684\u4E3B\u8981\u6570\u636E\u5B9E\u4F53]\n\n\u5B9E\u4F53\u4E00\n| | | | | |\n|---|---|---|---|---|\n|**\u5B57\u6BB5\u540D\u79F0**|**\u6570\u636E\u7C7B\u578B**|**\u957F\u5EA6**|**\u5FC5\u586B**|**\u8BF4\u660E**|\n|[\u5B57\u6BB51]|[\u7C7B\u578B]|[\u957F\u5EA6]|[\u662F/\u5426]|[\u8BE6\u7EC6\u8BF4\u660E]|\n|[\u5B57\u6BB52]|[\u7C7B\u578B]|[\u957F\u5EA6]|[\u662F/\u5426]|[\u8BE6\u7EC6\u8BF4\u660E]|\n|[\u6DFB\u52A0\u66F4\u591A\u76F8\u5173\u5B57\u6BB5...]|||\n\n### 6.2 \u8F93\u5165\u63A7\u4EF6\u8BF4\u660E\n[\u8BE6\u7EC6\u63CF\u8FF0\u9875\u9762\u4E2D\u5404\u79CD\u8F93\u5165\u63A7\u4EF6\u7684\u4F7F\u7528\u89C4\u8303]\n\n### 6.3 \u5C55\u793A\u63A7\u4EF6\u8BF4\u660E\n[\u8BE6\u7EC6\u63CF\u8FF0\u9875\u9762\u4E2D\u5404\u79CD\u5C55\u793A\u63A7\u4EF6\u7684\u4F7F\u7528\u89C4\u8303]\n\n## 7. \u754C\u9762\u64CD\u4F5C\u8BF4\u660E\n\n| | | |\n|---|---|---|\n|**\u5E8F\u53F7**|**\u4E1A\u52A1\u64CD\u4F5C**|**\u8BF4\u660E**|\n|1|[\u64CD\u4F5C1]|[\u8BE6\u7EC6\u8BF4\u660E\u64CD\u4F5C\u89E6\u53D1\u6761\u4EF6\u3001\u6267\u884C\u8FC7\u7A0B\u548C\u7ED3\u679C]|\n|2|[\u64CD\u4F5C2]|[\u8BE6\u7EC6\u8BF4\u660E\u64CD\u4F5C\u89E6\u53D1\u6761\u4EF6\u3001\u6267\u884C\u8FC7\u7A0B\u548C\u7ED3\u679C]|\n|[\u6DFB\u52A0\u66F4\u591A\u64CD\u4F5C...]\n\n## 8. \u7EC4\u4EF6\u7ED3\u6784\u8BBE\u8BA1\n\n### 8.1 \u9875\u9762\u7EC4\u4EF6\u6811\n[\u4F7F\u7528\u6811\u72B6\u7ED3\u6784\u63CF\u8FF0\u9875\u9762\u7684\u7EC4\u4EF6\u5C42\u6B21\u5173\u7CFB]\n\n### 8.2 \u6838\u5FC3\u7EC4\u4EF6\u8BF4\u660E\n[\u8BE6\u7EC6\u63CF\u8FF0\u9875\u9762\u4E2D\u7684\u6838\u5FC3\u7EC4\u4EF6\u529F\u80FD\u3001\u5C5E\u6027\u548C\u4F7F\u7528\u65B9\u5F0F]\n\n### 8.3 \u7EC4\u4EF6\u901A\u4FE1\u673A\u5236\n[\u8BE6\u7EC6\u63CF\u8FF0\u7EC4\u4EF6\u95F4\u7684\u901A\u4FE1\u65B9\u5F0F\u548C\u6570\u636E\u6D41]\n\n### 8.4 \u7EC4\u4EF6\u72B6\u6001\u7BA1\u7406\n[\u8BE6\u7EC6\u63CF\u8FF0\u7EC4\u4EF6\u5185\u90E8\u72B6\u6001\u548C\u5168\u5C40\u72B6\u6001\u7684\u7BA1\u7406\u65B9\u5F0F]\n\n## 9. \u5E73\u53F0\u7279\u6027\u8003\u8651\n\n### 9.1 iOS\u5E73\u53F0\u9002\u914D\n[\u8BE6\u7EC6\u63CF\u8FF0\u5728iOS\u5E73\u53F0\u4E0A\u7684\u7279\u6B8A\u9002\u914D\u8981\u6C42]\n\n### 9.2 Android\u5E73\u53F0\u9002\u914D\n[\u8BE6\u7EC6\u63CF\u8FF0\u5728Android\u5E73\u53F0\u4E0A\u7684\u7279\u6B8A\u9002\u914D\u8981\u6C42]\n\n### 9.3 \u7CFB\u7EDF\u6743\u9650\u8981\u6C42\n[\u8BE6\u7EC6\u63CF\u8FF0APP\u9700\u8981\u7533\u8BF7\u7684\u7CFB\u7EDF\u6743\u9650\u53CA\u5176\u4F7F\u7528\u573A\u666F]\n\n## 11. \u4E1A\u52A1\u5BF9\u8C61\u65F6\u5E8F\u56FE\n\n```mermaid\nsequenceDiagram\n participant \u7528\u6237\n participant \u79FB\u52A8\u7AEFAPP\n participant \u8DEF\u7531\u7BA1\u7406\u5668\n participant \u72B6\u6001\u7BA1\u7406\u5668\n participant \u8BA4\u8BC1\u670D\u52A1\n participant \u6743\u9650\u670D\u52A1\n participant \u540E\u7AEF\u670D\u52A1\n participant \u6570\u636E\u5E93\n participant \u7F13\u5B58\u670D\u52A1\n participant \u6D88\u606F\u961F\u5217\n participant \u65E5\u5FD7\u670D\u52A1\n participant \u76D1\u63A7\u670D\u52A1\n \n %% \u5E94\u7528\u542F\u52A8\u6D41\u7A0B\n \u7528\u6237->>\u79FB\u52A8\u7AEFAPP: \u542F\u52A8\u5E94\u7528\n \u79FB\u52A8\u7AEFAPP->>\u8DEF\u7531\u7BA1\u7406\u5668: \u89E3\u6790\u521D\u59CB\u8DEF\u7531\n \u8DEF\u7531\u7BA1\u7406\u5668-->>\u79FB\u52A8\u7AEFAPP: \u8FD4\u56DE\u8DEF\u7531\u4FE1\u606F\n \u79FB\u52A8\u7AEFAPP->>\u72B6\u6001\u7BA1\u7406\u5668: \u521D\u59CB\u5316\u5E94\u7528\u72B6\u6001\n \u79FB\u52A8\u7AEFAPP->>\u8BA4\u8BC1\u670D\u52A1: \u9A8C\u8BC1\u7528\u6237\u8EAB\u4EFD\n \u8BA4\u8BC1\u670D\u52A1-->>\u79FB\u52A8\u7AEFAPP: \u8FD4\u56DE\u8BA4\u8BC1\u7ED3\u679C\n \u79FB\u52A8\u7AEFAPP->>\u6743\u9650\u670D\u52A1: \u68C0\u67E5\u7528\u6237\u6743\u9650\n \u6743\u9650\u670D\u52A1-->>\u79FB\u52A8\u7AEFAPP: \u8FD4\u56DE\u6743\u9650\u4FE1\u606F\n \u79FB\u52A8\u7AEFAPP->>\u72B6\u6001\u7BA1\u7406\u5668: \u66F4\u65B0\u8BA4\u8BC1\u72B6\u6001\n \u79FB\u52A8\u7AEFAPP->>\u7528\u6237: \u663E\u793A\u4E3B\u754C\u9762\n \n %% \u9875\u9762\u52A0\u8F7D\u6D41\u7A0B\n \u7528\u6237->>\u79FB\u52A8\u7AEFAPP: \u8BBF\u95EE\u529F\u80FD\u9875\u9762\n \u79FB\u52A8\u7AEFAPP->>\u8DEF\u7531\u7BA1\u7406\u5668: \u89E3\u6790\u9875\u9762\u8DEF\u7531\n \u8DEF\u7531\u7BA1\u7406\u5668-->>\u79FB\u52A8\u7AEFAPP: \u8FD4\u56DE\u8DEF\u7531\u4FE1\u606F\n \u79FB\u52A8\u7AEFAPP->>\u72B6\u6001\u7BA1\u7406\u5668: \u521D\u59CB\u5316\u9875\u9762\u72B6\u6001\n \u79FB\u52A8\u7AEFAPP->>\u7F13\u5B58\u670D\u52A1: \u67E5\u8BE2\u7F13\u5B58\u6570\u636E\n alt \u7F13\u5B58\u4E2D\u6709\u6570\u636E\n \u7F13\u5B58\u670D\u52A1-->>\u79FB\u52A8\u7AEFAPP: \u8FD4\u56DE\u7F13\u5B58\u6570\u636E\n \u79FB\u52A8\u7AEFAPP->>\u72B6\u6001\u7BA1\u7406\u5668: \u66F4\u65B0\u9875\u9762\u72B6\u6001\n \u79FB\u52A8\u7AEFAPP->>\u7528\u6237: \u6E32\u67D3\u9875\u9762\u5185\u5BB9\n \u79FB\u52A8\u7AEFAPP->>\u76D1\u63A7\u670D\u52A1: \u8BB0\u5F55\u7F13\u5B58\u547D\u4E2D\n else \u7F13\u5B58\u4E2D\u65E0\u6570\u636E\n \u79FB\u52A8\u7AEFAPP->>\u540E\u7AEF\u670D\u52A1: \u53D1\u8D77API\u8BF7\u6C42\n \u540E\u7AEF\u670D\u52A1->>\u6570\u636E\u5E93: \u67E5\u8BE2\u6570\u636E\n \u6570\u636E\u5E93-->>\u540E\u7AEF\u670D\u52A1: \u8FD4\u56DE\u67E5\u8BE2\u7ED3\u679C\n \u540E\u7AEF\u670D\u52A1-->>\u79FB\u52A8\u7AEFAPP: \u8FD4\u56DE\u54CD\u5E94\u6570\u636E\n \u79FB\u52A8\u7AEFAPP->>\u7F13\u5B58\u670D\u52A1: \u5B58\u50A8\u6570\u636E\u5230\u7F13\u5B58\n \u79FB\u52A8\u7AEFAPP->>\u72B6\u6001\u7BA1\u7406\u5668: \u66F4\u65B0\u9875\u9762\u72B6\u6001\n \u79FB\u52A8\u7AEFAPP->>\u7528\u6237: \u6E32\u67D3\u9875\u9762\u5185\u5BB9\n \u79FB\u52A8\u7AEFAPP->>\u76D1\u63A7\u670D\u52A1: \u8BB0\u5F55\u6570\u636E\u52A0\u8F7D\n end\n \u79FB\u52A8\u7AEFAPP->>\u65E5\u5FD7\u670D\u52A1: \u8BB0\u5F55\u9875\u9762\u8BBF\u95EE\u65E5\u5FD7\n```\n\n### 11.2 \u65B9\u6848\u4E8C\uFF1A\u66FF\u4EE3\u6D41\u7A0B\uFF08\u4E0D\u540C\u6709\u6548\u8DEF\u5F84\uFF09\n\n#### 11.2.1 \u624B\u52BF\u4EA4\u4E92\u8BBE\u8BA1\u6D41\u7A0B\n```mermaid\nsequenceDiagram\n participant \u7528\u6237\n participant \u79FB\u52A8\u7AEFAPP\n participant \u624B\u52BF\u8BC6\u522B\u5668\n participant \u4EA4\u4E92\u5904\u7406\u5668\n participant \u72B6\u6001\u7BA1\u7406\u5668\n \n \u7528\u6237->>\u79FB\u52A8\u7AEFAPP: \u6267\u884C\u624B\u52BF\u64CD\u4F5C\n \u79FB\u52A8\u7AEFAPP->>\u624B\u52BF\u8BC6\u522B\u5668: \u8BC6\u522B\u624B\u52BF\u7C7B\u578B\n \u624B\u52BF\u8BC6\u522B\u5668-->>\u79FB\u52A8\u7AEFAPP: \u8FD4\u56DE\u624B\u52BF\u8BC6\u522B\u7ED3\u679C\n \u79FB\u52A8\u7AEFAPP->>\u4EA4\u4E92\u5904\u7406\u5668: \u5904\u7406\u624B\u52BF\u64CD\u4F5C\n \u4EA4\u4E92\u5904\u7406\u5668->>\u72B6\u6001\u7BA1\u7406\u5668: \u66F4\u65B0\u5E94\u7528\u72B6\u6001\n \u72B6\u6001\u7BA1\u7406\u5668-->>\u4EA4\u4E92\u5904\u7406\u5668: \u8FD4\u56DE\u72B6\u6001\u66F4\u65B0\u7ED3\u679C\n \u4EA4\u4E92\u5904\u7406\u5668-->>\u79FB\u52A8\u7AEFAPP: \u8FD4\u56DE\u5904\u7406\u7ED3\u679C\n \u79FB\u52A8\u7AEFAPP->>\u7528\u6237: \u53CD\u9988\u624B\u52BF\u64CD\u4F5C\u7ED3\u679C\n```\n\n#### 11.2.2 \u7EC4\u4EF6\u8BBE\u8BA1\u89C4\u8303\u6D41\u7A0B\n```mermaid\nsequenceDiagram\n participant \u79FB\u52A8\u7AEFAPP\n participant \u7EC4\u4EF6\u5E93\n participant \u8BBE\u8BA1\u7CFB\u7EDF\n participant \u6837\u5F0F\u7BA1\u7406\u5668\n participant \u5E03\u5C40\u5F15\u64CE\n participant \u65E5\u5FD7\u670D\u52A1\n \n \u79FB\u52A8\u7AEFAPP->>\u7EC4\u4EF6\u5E93: \u8BF7\u6C42\u7EC4\u4EF6\u89C4\u8303\n \u7EC4\u4EF6\u5E93->>\u8BBE\u8BA1\u7CFB\u7EDF: \u83B7\u53D6\u8BBE\u8BA1\u89C4\u8303\n \u8BBE\u8BA1\u7CFB\u7EDF-->>\u7EC4\u4EF6\u5E93: \u8FD4\u56DE\u8BBE\u8BA1\u89C4\u8303\n \u7EC4\u4EF6\u5E93->>\u6837\u5F0F\u7BA1\u7406\u5668: \u5E94\u7528\u6837\u5F0F\u89C4\u5219\n \u6837\u5F0F\u7BA1\u7406\u5668-->>\u7EC4\u4EF6\u5E93: \u8FD4\u56DE\u6837\u5F0F\u914D\u7F6E\n \u7EC4\u4EF6\u5E93->>\u5E03\u5C40\u5F15\u64CE: \u8BA1\u7B97\u5E03\u5C40\n \u5E03\u5C40\u5F15\u64CE-->>\u7EC4\u4EF6\u5E93: \u8FD4\u56DE\u5E03\u5C40\u4FE1\u606F\n \u7EC4\u4EF6\u5E93-->>\u79FB\u52A8\u7AEFAPP: \u8FD4\u56DE\u7EC4\u4EF6\u5B9E\u73B0\n \u79FB\u52A8\u7AEFAPP->>\u65E5\u5FD7\u670D\u52A1: \u8BB0\u5F55\u7EC4\u4EF6\u4F7F\u7528\u65E5\u5FD7\n```\n\n### 11.3 \u5F02\u5E38\u6D41\u7A0B\uFF08\u9519\u8BEF\u5904\u7406\uFF09\n\n#### 11.3.1 \u8BBE\u5907\u517C\u5BB9\u6027\u9519\u8BEF\n```mermaid\nsequenceDiagram\n participant \u7528\u6237\n participant \u79FB\u52A8\u7AEFAPP\n participant \u8BBE\u5907\u517C\u5BB9\u6027\u68C0\u67E5\u5668\n participant \u9519\u8BEF\u5904\u7406\u5668\n participant \u65E5\u5FD7\u670D\u52A1\n \n \u7528\u6237->>\u79FB\u52A8\u7AEFAPP: \u542F\u52A8\u5E94\u7528\n \u79FB\u52A8\u7AEFAPP->>\u8BBE\u5907\u517C\u5BB9\u6027\u68C0\u67E5\u5668: \u68C0\u67E5\u8BBE\u5907\u517C\u5BB9\u6027\n \u8BBE\u5907\u517C\u5BB9\u6027\u68C0\u67E5\u5668-->>\u79FB\u52A8\u7AEFAPP: \u8FD4\u56DE\u4E0D\u517C\u5BB9\u9519\u8BEF\n \u79FB\u52A8\u7AEFAPP->>\u9519\u8BEF\u5904\u7406\u5668: \u5904\u7406\u517C\u5BB9\u6027\u9519\u8BEF\n \u9519\u8BEF\u5904\u7406\u5668->>\u65E5\u5FD7\u670D\u52A1: \u8BB0\u5F55\u517C\u5BB9\u6027\u9519\u8BEF\n \u9519\u8BEF\u5904\u7406\u5668-->>\u79FB\u52A8\u7AEFAPP: \u8FD4\u56DE\u9519\u8BEF\u5904\u7406\u7ED3\u679C\n \u79FB\u52A8\u7AEFAPP->>\u7528\u6237: \u663E\u793A\u517C\u5BB9\u6027\u63D0\u793A\n```\n\n#### 11.3.2 \u6743\u9650\u51B2\u7A81\u9519\u8BEF\n```mermaid\nsequenceDiagram\n participant \u7528\u6237\n participant \u79FB\u52A8\u7AEFAPP\n participant \u6743\u9650\u670D\u52A1\n participant \u9519\u8BEF\u5904\u7406\u5668\n participant \u65E5\u5FD7\u670D\u52A1\n participant \u8BBE\u7F6E\u7BA1\u7406\u5668\n \n \u7528\u6237->>\u79FB\u52A8\u7AEFAPP: \u6267\u884C\u9700\u8981\u6743\u9650\u7684\u64CD\u4F5C\n \u79FB\u52A8\u7AEFAPP->>\u6743\u9650\u670D\u52A1: \u68C0\u67E5\u6240\u9700\u6743\u9650\n \u6743\u9650\u670D\u52A1-->>\u79FB\u52A8\u7AEFAPP: \u8FD4\u56DE\u6743\u9650\u62D2\u7EDD\n \u79FB\u52A8\u7AEFAPP->>\u9519\u8BEF\u5904\u7406\u5668: \u5904\u7406\u6743\u9650\u9519\u8BEF\n \u9519\u8BEF\u5904\u7406\u5668->>\u65E5\u5FD7\u670D\u52A1: \u8BB0\u5F55\u6743\u9650\u9519\u8BEF\n \u9519\u8BEF\u5904\u7406\u5668->>\u8BBE\u7F6E\u7BA1\u7406\u5668: \u8BF7\u6C42\u6743\u9650\u8BBE\u7F6E\n \u8BBE\u7F6E\u7BA1\u7406\u5668-->>\u9519\u8BEF\u5904\u7406\u5668: \u8FD4\u56DE\u8BBE\u7F6E\u7ED3\u679C\n \u9519\u8BEF\u5904\u7406\u5668-->>\u79FB\u52A8\u7AEFAPP: \u8FD4\u56DE\u9519\u8BEF\u5904\u7406\u7ED3\u679C\n \u79FB\u52A8\u7AEFAPP->>\u7528\u6237: \u663E\u793A\u6743\u9650\u8BF7\u6C42\u63D0\u793A\n```\n\n### 11.4 \u8FB9\u7F18\u60C5\u51B5\u6D41\u7A0B\uFF08\u5E76\u53D1\u3001\u8D85\u65F6\u7B49\uFF09\n\n#### 11.4.1 \u79BB\u7EBF\u529F\u80FD\u5904\u7406\n```mermaid\nsequenceDiagram\n participant \u7528\u6237\n participant \u79FB\u52A8\u7AEFAPP\n participant \u7F51\u7EDC\u72B6\u6001\u68C0\u6D4B\u5668\n participant \u79BB\u7EBF\u6570\u636E\u7BA1\u7406\u5668\n participant \u672C\u5730\u6570\u636E\u5E93\n \n \u7528\u6237->>\u79FB\u52A8\u7AEFAPP: \u6267\u884C\u6570\u636E\u64CD\u4F5C\n \u79FB\u52A8\u7AEFAPP->>\u7F51\u7EDC\u72B6\u6001\u68C0\u6D4B\u5668: \u68C0\u67E5\u7F51\u7EDC\u72B6\u6001\n \u7F51\u7EDC\u72B6\u6001\u68C0\u6D4B\u5668-->>\u79FB\u52A8\u7AEFAPP: \u8FD4\u56DE\u65E0\u7F51\u7EDC\u8FDE\u63A5\n \u79FB\u52A8\u7AEFAPP->>\u79BB\u7EBF\u6570\u636E\u7BA1\u7406\u5668: \u5904\u7406\u79BB\u7EBF\u64CD\u4F5C\n \u79BB\u7EBF\u6570\u636E\u7BA1\u7406\u5668->>\u672C\u5730\u6570\u636E\u5E93: \u5B58\u50A8\u79BB\u7EBF\u6570\u636E\n \u672C\u5730\u6570\u636E\u5E93-->>\u79BB\u7EBF\u6570\u636E\u7BA1\u7406\u5668: \u8FD4\u56DE\u5B58\u50A8\u7ED3\u679C\n \u79BB\u7EBF\u6570\u636E\u7BA1\u7406\u5668-->>\u79FB\u52A8\u7AEFAPP: \u8FD4\u56DE\u5904\u7406\u7ED3\u679C\n \u79FB\u52A8\u7AEFAPP->>\u7528\u6237: \u663E\u793A\u79BB\u7EBF\u64CD\u4F5C\u6210\u529F\u63D0\u793A\n```\n\n#### 11.4.2 \u590D\u6742\u5E03\u5C40\u5904\u7406\n```mermaid\nsequenceDiagram\n participant \u79FB\u52A8\u7AEFAPP\n participant \u5E03\u5C40\u5F15\u64CE\n participant \u6027\u80FD\u4F18\u5316\u5668\n participant \u7F13\u5B58\u670D\u52A1\n participant \u65E5\u5FD7\u670D\u52A1\n \n \u79FB\u52A8\u7AEFAPP->>\u5E03\u5C40\u5F15\u64CE: \u8BF7\u6C42\u590D\u6742\u5E03\u5C40\u8BA1\u7B97\n \u5E03\u5C40\u5F15\u64CE->>\u5E03\u5C40\u5F15\u64CE: \u6267\u884C\u591A\u533A\u57DF\u5E03\u5C40\u7B97\u6CD5\n alt \u5E03\u5C40\u8BA1\u7B97\u8D85\u65F6\n \u5E03\u5C40\u5F15\u64CE->>\u6027\u80FD\u4F18\u5316\u5668: \u8BF7\u6C42\u4F18\u5316\u7B56\u7565\n \u6027\u80FD\u4F18\u5316\u5668-->>\u5E03\u5C40\u5F15\u64CE: \u8FD4\u56DE\u7B80\u5316\u7B56\u7565\n \u5E03\u5C40\u5F15\u64CE->>\u5E03\u5C40\u5F15\u64CE: \u5E94\u7528\u7B80\u5316\u8BA1\u7B97\n end\n \u5E03\u5C40\u5F15\u64CE-->>\u79FB\u52A8\u7AEFAPP: \u8FD4\u56DE\u4F18\u5316\u5E03\u5C40\n \u79FB\u52A8\u7AEFAPP->>\u7F13\u5B58\u670D\u52A1: \u5B58\u50A8\u5E03\u5C40\u7ED3\u679C\n \u79FB\u52A8\u7AEFAPP->>\u6027\u80FD\u4F18\u5316\u5668: \u8BB0\u5F55\u5E03\u5C40\u6027\u80FD\n \u79FB\u52A8\u7AEFAPP->>\u65E5\u5FD7\u670D\u52A1: \u8BB0\u5F55\u5E03\u5C40\u65E5\u5FD7\n```\n\n## 12. \u4E1A\u52A1\u72B6\u6001\u63CF\u8FF0\n\n| | | |\n|---|---|---|\n|**\u72B6\u6001\u7F16\u53F7**|**\u72B6\u6001\u540D\u79F0**|**\u63CF\u8FF0**|\n|01|\u5F85\u52A0\u8F7D|\u9875\u9762\u521D\u59CB\u5316\u72B6\u6001|\n|02|\u52A0\u8F7D\u4E2D|\u6570\u636E\u52A0\u8F7D\u72B6\u6001|\n|03|\u6B63\u5E38\u663E\u793A|\u9875\u9762\u6B63\u5E38\u663E\u793A\u72B6\u6001|\n|04|\u6570\u636E\u4E3A\u7A7A|\u65E0\u6570\u636E\u72B6\u6001|\n|05|\u52A0\u8F7D\u5931\u8D25|\u6570\u636E\u52A0\u8F7D\u5931\u8D25\u72B6\u6001|\n|[\u6DFB\u52A0\u66F4\u591A\u72B6\u6001...]\n\n## 13. \u79FB\u52A8\u7AEF\u5904\u7406\u903B\u8F91\u8BE6\u7EC6\u8BF4\u660E\n\n### 13.1 \u9875\u9762\u521D\u59CB\u5316\u903B\u8F91\n[\u8BE6\u7EC6\u63CF\u8FF0\u9875\u9762\u52A0\u8F7D\u65F6\u7684\u521D\u59CB\u5316\u5904\u7406\u903B\u8F91]\n\n### 13.2 \u6570\u636E\u83B7\u53D6\u903B\u8F91\n[\u8BE6\u7EC6\u63CF\u8FF0\u9875\u9762\u6570\u636E\u83B7\u53D6\u7684\u5904\u7406\u903B\u8F91\uFF0C\u5305\u62ECAPI\u8C03\u7528\u3001\u6570\u636E\u5904\u7406\u7B49]\n\n### 13.3 \u7528\u6237\u4EA4\u4E92\u5904\u7406\u903B\u8F91\n[\u8BE6\u7EC6\u63CF\u8FF0\u7528\u6237\u5404\u79CD\u4EA4\u4E92\u64CD\u4F5C\u7684\u5904\u7406\u903B\u8F91]\n\n### 13.4 \u6570\u636E\u5C55\u793A\u903B\u8F91\n[\u8BE6\u7EC6\u63CF\u8FF0\u6570\u636E\u5728\u9875\u9762\u4E2D\u7684\u5C55\u793A\u5904\u7406\u903B\u8F91]\n\n### 13.5 \u9519\u8BEF\u5904\u7406\u903B\u8F91\n[\u8BE6\u7EC6\u63CF\u8FF0\u9875\u9762\u4E2D\u5404\u79CD\u9519\u8BEF\u60C5\u51B5\u7684\u5904\u7406\u903B\u8F91]\n\n### 13.6 \u79BB\u7EBF\u5904\u7406\u903B\u8F91\n[\u8BE6\u7EC6\u63CF\u8FF0\u5E94\u7528\u5728\u79BB\u7EBF\u72B6\u6001\u4E0B\u7684\u5904\u7406\u903B\u8F91]\n\n### 13.7 \u7F13\u5B58\u5904\u7406\u903B\u8F91\n[\u8BE6\u7EC6\u63CF\u8FF0\u5E94\u7528\u4E2D\u6570\u636E\u7F13\u5B58\u7684\u5904\u7406\u903B\u8F91]\n\n## 14. \u4F2A\u4EE3\u7801\u793A\u4F8B\n\n```gherkin\nScenario Outline: \u7528\u6237\u5728APP\u4E2D\u8FDB\u884C\u4E0B\u62C9\u5237\u65B0\u64CD\u4F5C\n Given \u7528\u6237\u5728<page_name>\u9875\u9762\n When \u7528\u6237\u6267\u884C\u4E0B\u62C9\u5237\u65B0\u624B\u52BF\n Then \u7CFB\u7EDF\u5E94\u91CD\u65B0\u52A0\u8F7D\u6570\u636E\u5E76<result>\n\n Examples:\n | page_name | result |\n | \u8BA2\u5355\u5217\u8868\u9875 | \u663E\u793A\u6700\u65B0\u8BA2\u5355\u6570\u636E |\n | \u5546\u54C1\u8BE6\u60C5\u9875 | \u663E\u793A\u5546\u54C1\u6700\u65B0\u4FE1\u606F |\n\nScenario Outline: APP\u5E73\u53F0\u7279\u6027\u9002\u914D\u6D41\u7A0B\n Given \u7528\u6237\u4F7F\u7528<platform>\u8BBE\u5907\n When \u5E94\u7528\u542F\u52A8\u65F6\n Then \u7CFB\u7EDF\u5E94:\n 1. \u68C0\u6D4B\u8BBE\u5907\u5E73\u53F0\u7C7B\u578B\n 2. \u5E94\u7528\u76F8\u5E94\u5E73\u53F0\u7684\u8BBE\u8BA1\u89C4\u8303\n 3. \u8C03\u6574UI\u7EC4\u4EF6\u6837\u5F0F\n 4. \u9002\u914D\u5E73\u53F0\u7279\u6709\u7684\u4EA4\u4E92\u65B9\u5F0F\n\n Examples:\n | platform | \u9002\u914D\u7B56\u7565 |\n | iOS | \u5E94\u7528iOS\u8BBE\u8BA1\u8BED\u8A00\uFF0C\u4F7F\u7528\u539F\u751F\u5BFC\u822A\u680F |\n | Android | \u5E94\u7528Material Design\uFF0C\u4F7F\u7528\u539F\u751F\u8FD4\u56DE\u952E |\n\nScenario Outline: APP\u624B\u52BF\u64CD\u4F5C\u5904\u7406\u6D41\u7A0B\n Given \u7528\u6237\u5728<page_name>\u9875\u9762\u4E0A\u6267\u884C<gesture_type>\u624B\u52BF\n When \u624B\u52BF\u8BC6\u522B\u5668\u68C0\u6D4B\u5230\u624B\u52BF\u65F6\n Then \u7CFB\u7EDF\u5E94:\n 1. \u8BC6\u522B\u624B\u52BF\u7C7B\u578B\u548C\u53C2\u6570\n 2. \u9A8C\u8BC1\u624B\u52BF\u64CD\u4F5C\u7684\u5408\u6CD5\u6027\n 3. \u6267\u884C\u76F8\u5E94\u7684\u4E1A\u52A1\u903B\u8F91\n 4. \u63D0\u4F9B\u64CD\u4F5C\u53CD\u9988\n\n Examples:\n | page_name | gesture_type | \u5904\u7406\u903B\u8F91 |\n | \u5546\u54C1\u5217\u8868\u9875 | \u4E0B\u62C9\u5237\u65B0 | \u89E6\u53D1\u6570\u636E\u91CD\u65B0\u52A0\u8F7D\uFF0C\u663E\u793A\u5237\u65B0\u52A8\u753B |\n | \u5546\u54C1\u8BE6\u60C5\u9875 | \u5DE6\u53F3\u6ED1\u52A8 | \u5207\u6362\u5230\u4E0A\u4E00\u4E2A/\u4E0B\u4E00\u4E2A\u5546\u54C1\uFF0C\u652F\u6301\u8FB9\u7F18\u56DE\u5F39\u6548\u679C |\n | \u8D2D\u7269\u8F66\u9875 | \u957F\u6309\u5546\u54C1 | \u663E\u793A\u5546\u54C1\u64CD\u4F5C\u83DC\u5355\uFF08\u5220\u9664\u3001\u6536\u85CF\u3001\u79FB\u52A8\u7B49\uFF09 |\n | \u8BA2\u5355\u9875 | \u53CC\u51FB\u8BA2\u5355\u9879 | \u5FEB\u901F\u67E5\u770B\u8BA2\u5355\u8BE6\u60C5\uFF0C\u652F\u63013D Touch\u9884\u89C8\uFF08iOS\uFF09 |\n | \u8BBE\u7F6E\u9875 | \u634F\u5408\u7F29\u653E | \u8C03\u6574\u754C\u9762\u5143\u7D20\u5927\u5C0F\uFF0C\u9002\u914D\u7528\u6237\u89C6\u89C9\u504F\u597D |\n\nScenario Outline: APP\u5BFC\u822A\u4E0E\u8DEF\u7531\u5904\u7406\u6D41\u7A0B\n Given \u7528\u6237\u5728<current_page>\u9875\u9762\u6267\u884C<navigation_action>\n When \u7CFB\u7EDF\u5904\u7406\u5BFC\u822A\u8BF7\u6C42\u65F6\n Then \u7CFB\u7EDF\u5E94:\n 1. \u9A8C\u8BC1\u76EE\u6807\u9875\u9762\u8BBF\u95EE\u6743\u9650\n 2. \u4FDD\u5B58\u5F53\u524D\u9875\u9762\u72B6\u6001\n 3. \u6267\u884C\u9875\u9762\u8FC7\u6E21\u52A8\u753B\n 4. \u52A0\u8F7D\u76EE\u6807\u9875\u9762\u5E76\u6062\u590D\u72B6\u6001\n\n Examples:\n | current_page | navigation_action | \u5904\u7406\u6D41\u7A0B |\n | \u9996\u9875 | \u70B9\u51FB\u5E95\u90E8Tab | \u5E73\u6ED1\u5207\u6362Tab\u9875\u9762\uFF0C\u4FDD\u6301\u5404\u9875\u9762\u72B6\u6001 |\n | \u5546\u54C1\u8BE6\u60C5\u9875 | \u70B9\u51FB\u8FD4\u56DE\u6309\u94AE | \u8FD4\u56DE\u4E0A\u7EA7\u9875\u9762\uFF0C\u6062\u590D\u6EDA\u52A8\u4F4D\u7F6E\u548C\u7B5B\u9009\u6761\u4EF6 |\n | \u8D2D\u7269\u8F66\u9875 | \u70B9\u51FB\u5546\u54C1\u56FE\u7247 | \u8DF3\u8F6C\u5230\u5546\u54C1\u8BE6\u60C5\u9875\uFF0C\u4F20\u9012\u5546\u54C1ID\u548C\u6765\u6E90\u4FE1\u606F |\n | \u8BA2\u5355\u786E\u8BA4\u9875 | \u9875\u9762\u5237\u65B0 | \u4FDD\u6301\u8868\u5355\u6570\u636E\uFF0C\u91CD\u65B0\u9A8C\u8BC1\u5E93\u5B58\u548C\u4EF7\u683C\u4FE1\u606F |\n | \u8BBE\u7F6E\u9875 | \u6DF1\u5EA6\u94FE\u63A5\u8DF3\u8F6C | \u89E3\u6790\u94FE\u63A5\u53C2\u6570\uFF0C\u5BFC\u822A\u5230\u6307\u5B9A\u8BBE\u7F6E\u9879\u5E76\u9AD8\u4EAE\u663E\u793A |\n```\n\n---\n\n**\u91CD\u8981\u63D0\u9192**: \n1. \u8BF7\u8F93\u51FA\u5B8C\u6574\u7684Markdown\u6587\u6863\uFF0C\u4E0D\u8981\u7701\u7565\u4EFB\u4F55\u7AE0\u8282\n2. \u6BCF\u4E2A\u7AE0\u8282\u90FD\u8981\u6709\u5B9E\u8D28\u6027\u7684\u5185\u5BB9\uFF0C\u4E0D\u80FD\u53EA\u662F\u6A21\u677F\n3. \u6839\u636E\u8F93\u5165\u7684\u539F\u59CB\u5185\u5BB9\u8FDB\u884C\u5177\u4F53\u5206\u6790\uFF0C\u4E0D\u8981\u4F7F\u7528\u901A\u7528\u6A21\u677F\n4. \u6587\u6863\u603B\u957F\u5EA6\u5E94\u8BE5\u57283000\u5B57\u4EE5\u4E0A\n5. \u8868\u683C\u4E2D\u7684\u5185\u5BB9\u8981\u586B\u5199\u5177\u4F53\u4FE1\u606F\uFF0C\u4E0D\u8981\u4FDD\u7559\u5360\u4F4D\u7B26\n6. \u91CD\u70B9\u5173\u6CE8\u79FB\u52A8\u7AEF\u7279\u6709\u7684\u5E03\u5C40\u3001\u6837\u5F0F\u3001\u4EA4\u4E92\u903B\u8F91\u7B49\u6280\u672F\u7EC6\u8282\n7. \u8003\u8651iOS\u548CAndroid\u5E73\u53F0\u7684\u5DEE\u5F02\u6027\n\n\u73B0\u5728\u8BF7\u5F00\u59CB\u751F\u6210\u5B8C\u6574\u7684APP\u5F00\u53D1\u6280\u672F\u9700\u6C42\u6587\u6863\uFF1A";
1
+ export declare const appTemplatePrompt = "\u4F60\u662F\u79FB\u52A8\u7AEF\u6280\u672F\u6587\u6863\u4E13\u5BB6\u3002\u57FA\u4E8E\u8F93\u5165\u5185\u5BB9\u751F\u6210\u5B8C\u6574\u7684APP\u6280\u672F\u9700\u6C42\u6587\u6863\uFF08Markdown\u683C\u5F0F\uFF0C1500\u5B57\u4EE5\u4E0A\uFF09\u3002\n\n**\u8F93\u5165**: \u529F\u80FD\u540D\u79F0={featureName}, \u4E1A\u52A1\u9886\u57DF={businessDomain}\n\n**\u539F\u59CB\u9700\u6C42**:\n```\n{inputContent}\n```\n\n## \u6587\u6863\u7ED3\u6784\u8981\u6C42\n\u8BF7\u4E25\u683C\u6309\u7167\u4EE5\u4E0B\u7ED3\u6784\u8F93\u51FA\u5B8C\u6574\u7684\u9700\u6C42\u6587\u6863\uFF0C\u6BCF\u4E2A\u7AE0\u8282\u90FD\u8981\u6709\u8BE6\u5B9E\u7684\u5185\u5BB9\uFF1A\n\n# {featureName} - APP\u6280\u672F\u9700\u6C42\u6587\u6863\n\n> **\u751F\u6210\u65F6\u95F4**: {currentTime}\n> **\u4E1A\u52A1\u9886\u57DF**: {businessDomain}\n> **\u5E94\u7528\u7C7B\u578B**: \u79FB\u52A8\u7AEF\u5E94\u7528\u7A0B\u5E8F\n\n---\n\n## 1. \u9700\u6C42\u6982\u8FF0\n\n**\u4E1A\u52A1\u80CC\u666F**: [\u63CF\u8FF0APP\u529F\u80FD\u80CC\u666F\u3001\u4E1A\u52A1\u9700\u6C42\u548C\u76EE\u6807]\n\n**\u6838\u5FC3\u529F\u80FD**: [\u5217\u51FAAPP\u7684\u4E3B\u8981\u529F\u80FD\u70B9]\n\n## 2. \u754C\u9762\u8BBE\u8BA1\n\n### 2.1 \u9875\u9762\u5E03\u5C40\n[\u63CF\u8FF0\u4E3B\u8981\u9875\u9762\u7684\u5E03\u5C40\u7ED3\u6784\u548C\u754C\u9762\u5143\u7D20]\n\n### 2.2 \u7528\u6237\u754C\u9762\n[\u63CF\u8FF0APP\u7684\u7528\u6237\u754C\u9762\u8BBE\u8BA1\u548C\u4EA4\u4E92\u5143\u7D20]\n\n## 3. \u4EA4\u4E92\u903B\u8F91\n\n### 3.1 \u7528\u6237\u64CD\u4F5C\u6D41\u7A0B\n[\u63CF\u8FF0\u4E3B\u8981\u7684\u7528\u6237\u64CD\u4F5C\u6D41\u7A0B\u548C\u5BFC\u822A\u8DEF\u5F84]\n\n### 3.2 \u4EA4\u4E92\u89C4\u5219\n[\u63CF\u8FF0APP\u4E2D\u7684\u4E3B\u8981\u4EA4\u4E92\u89C4\u5219\u548C\u54CD\u5E94\u673A\u5236]\n\n## 4. \u6570\u636E\u5904\u7406\n\n### 4.1 \u6570\u636E\u5C55\u793A\n[\u63CF\u8FF0APP\u4E2D\u6570\u636E\u7684\u5C55\u793A\u65B9\u5F0F\u548C\u683C\u5F0F]\n\n### 4.2 \u6570\u636E\u4EA4\u4E92\n[\u63CF\u8FF0APP\u4E0E\u540E\u7AEF\u7684\u6570\u636E\u4EA4\u4E92\u65B9\u5F0F]\n\n## 5. \u529F\u80FD\u6A21\u5757\n\n### 5.1 \u6838\u5FC3\u6A21\u5757\n[\u63CF\u8FF0APP\u7684\u6838\u5FC3\u529F\u80FD\u6A21\u5757]\n\n### 5.2 \u4E1A\u52A1\u903B\u8F91\n[\u63CF\u8FF0\u5404\u6A21\u5757\u7684\u4E1A\u52A1\u903B\u8F91\u548C\u5904\u7406\u6D41\u7A0B]\n\n## 6. \u4E1A\u52A1\u6D41\u7A0B\n\n[\u4F7F\u7528\u7B80\u5355\u7684mermaid\u6D41\u7A0B\u56FE\u63CF\u8FF0\u4E3B\u8981\u4E1A\u52A1\u6D41\u7A0B]\n\n```mermaid\ngraph TD\n A[\u5F00\u59CB] --> B[\u5904\u7406]\n B --> C[\u7ED3\u675F]\n```\n\n---\n\n**\u8981\u6C42**: \u8F93\u51FA\u5B8C\u6574\u6587\u6863\uFF0C\u6BCF\u7AE0\u8282\u6709\u5B9E\u8D28\u5185\u5BB9\uFF0C\u91CD\u70B9\u5173\u6CE8\u754C\u9762\u8BBE\u8BA1\u3001\u4EA4\u4E92\u903B\u8F91\u548C\u6570\u636E\u5904\u7406\u3002";
2
2
  //# sourceMappingURL=app-template.d.ts.map