intention-coding 0.4.8 → 0.4.9

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.
package/dist/index.cjs CHANGED
@@ -3938,12 +3938,13 @@ var __webpack_exports__ = {};
3938
3938
  }).describe("\u8F6C\u6362\u9009\u9879")
3939
3939
  });
3940
3940
  const word2mdTool = {
3941
- name: "word\u6587\u6863\u5904\u7406\u667A\u80FD\u4F53",
3941
+ name: "read_word",
3942
3942
  description: "word\u6587\u6863\u5904\u7406\u667A\u80FD\u4F53 - \u5C06Word\u6587\u6863(.docx)\u8F6C\u6362\u4E3AMarkdown\u683C\u5F0F",
3943
3943
  inputSchema: {
3944
3944
  filePath: stringType().describe("\u9700\u8981\u89E3\u6790\u7684Word\u6587\u6863\u7684\u7EDD\u5BF9\u8DEF\u5F84")
3945
3945
  },
3946
3946
  handler: async (args)=>{
3947
+ initializeProjectRoot();
3947
3948
  const { filePath } = args;
3948
3949
  if (!filePath) throw new Error("\u6587\u4EF6\u8DEF\u5F84\u53C2\u6570\u7F3A\u5931\uFF0C\u8BF7\u63D0\u4F9B filePath \u53C2\u6570");
3949
3950
  try {
@@ -4054,7 +4055,7 @@ var __webpack_exports__ = {};
4054
4055
  }).describe("\u8F6C\u6362\u9009\u9879")
4055
4056
  });
4056
4057
  const pdf2mdTool = {
4057
- name: "pdf\u5904\u7406\u667A\u80FD\u4F53",
4058
+ name: "read_pdf",
4058
4059
  description: "pdf\u5904\u7406\u667A\u80FD\u4F53 - \u5C06PDF\u6587\u6863\u8F6C\u6362\u4E3AMarkdown\u683C\u5F0F\uFF0C\u652F\u6301\u6587\u672C\u63D0\u53D6\u548C\u683C\u5F0F\u4FDD\u7559",
4059
4060
  inputSchema: {
4060
4061
  file_path: stringType().describe("\u9700\u8981\u89E3\u6790\u7684PDF\u6587\u6863\u7684\u7EDD\u5BF9\u8DEF\u5F84"),
@@ -4072,6 +4073,7 @@ var __webpack_exports__ = {};
4072
4073
  const { file_path, options = {} } = args;
4073
4074
  const { preserve_formatting = true, extract_metadata = true } = options;
4074
4075
  try {
4076
+ initializeProjectRoot();
4075
4077
  const resolvedPath = await common_validateAndResolvePath(file_path);
4076
4078
  if (!file_path.toLowerCase().endsWith('.pdf')) throw new Error("\u6587\u4EF6\u5FC5\u987B\u662FPDF\u683C\u5F0F\uFF08.pdf\u6269\u5C55\u540D\uFF09");
4077
4079
  logger_logger.info("\u5F00\u59CB\u8BFB\u53D6PDF\u6587\u4EF6", {
@@ -4300,7 +4302,7 @@ var __webpack_exports__ = {};
4300
4302
  });
4301
4303
  const initProjectStandard = {
4302
4304
  name: "\u9879\u76EE\u5F00\u53D1\u89C4\u8303\u751F\u6210\u667A\u80FD\u4F53",
4303
- description: "\u5206\u6790\u9879\u76EE\u67B6\u6784\u5E76\u751F\u6210\u5F00\u53D1\u89C4\u8303",
4305
+ description: "\u9879\u76EE\u5F00\u53D1\u89C4\u8303\u751F\u6210\u667A\u80FD\u4F53-\u5206\u6790\u9879\u76EE\u67B6\u6784\u5E76\u751F\u6210\u5F00\u53D1\u89C4\u8303",
4304
4306
  inputSchema: {
4305
4307
  project_name: stringType().optional().describe("\u9879\u76EE\u540D\u79F0\uFF0C\u7528\u4E8E\u751F\u6210\u6587\u4EF6\u540D"),
4306
4308
  project_path: stringType().optional().describe("\u9879\u76EE\u7EDD\u5BF9\u8DEF\u5F84\uFF0C\u7528\u4E8E\u6307\u5B9A\u8981\u5206\u6790\u7684\u9879\u76EE\u76EE\u5F55"),
@@ -4723,7 +4725,7 @@ ${customRules}` : '';
4723
4725
  message: "\u5F53input_type\u4E3Atext\u65F6content\u5FC5\u586B\uFF0C\u5F53input_type\u4E3Amd_file\u65F6md_file_path\u5FC5\u586B"
4724
4726
  });
4725
4727
  const requirementAnalyzerTool = {
4726
- name: "\u9700\u6C42\u5206\u6790\u667A\u80FD\u4F53",
4728
+ name: "\u9700\u6C42\u62A5\u544A\u751F\u6210\u667A\u80FD\u4F53",
4727
4729
  description: "\u667A\u80FD\u5206\u6790\u9700\u6C42\u5E76\u751F\u6210\u7EDF\u4E00\u7684\u6280\u672F\u6587\u6863\uFF0C\u652F\u6301\u9879\u76EE\u60C5\u51B5\u611F\u77E5\u548C\u7CBE\u786E\u6A21\u677F\u5339\u914D",
4728
4730
  inputSchema: {
4729
4731
  input_type: enumType([
@@ -5005,7 +5007,7 @@ ${requirementSection}
5005
5007
  'webp'
5006
5008
  ];
5007
5009
  class ImageAnalyzer {
5008
- async analyzeImage(imagePath) {
5010
+ async analyzeImage(imagePath, context) {
5009
5011
  const startTime = Date.now();
5010
5012
  try {
5011
5013
  logger_logger.info("\u5F00\u59CB\u56FE\u7247\u5185\u5BB9\u5206\u6790", {
@@ -5013,7 +5015,7 @@ ${requirementSection}
5013
5015
  });
5014
5016
  await this.validateParams(imagePath);
5015
5017
  const basicInfo = await this.getImageBasicInfo(imagePath);
5016
- const analysisContent = await this.performAIAnalysis(imagePath, basicInfo);
5018
+ const analysisContent = await this.performAIAnalysis(imagePath, basicInfo, context);
5017
5019
  const processingTime = Date.now() - startTime;
5018
5020
  if (!analysisContent) throw new ImageAnalysisError("AI\u5206\u6790\u8FD4\u56DE\u7A7A\u7ED3\u679C", types_AnalysisErrorCodes.ANALYSIS_FAILED, {
5019
5021
  params: {
@@ -5044,10 +5046,10 @@ ${requirementSection}
5044
5046
  throw error;
5045
5047
  }
5046
5048
  }
5047
- async performAIAnalysis(imagePath, basicInfo) {
5049
+ async performAIAnalysis(imagePath, basicInfo, context) {
5048
5050
  try {
5049
5051
  const imageBase64 = await this.imageToBase64(imagePath);
5050
- const prompt = this.buildAnalysisPrompt(imagePath, basicInfo);
5052
+ const prompt = this.buildAnalysisPrompt(imagePath, basicInfo, context);
5051
5053
  const aiResponse = await openai_openAIService.analyzeImage({
5052
5054
  image_base64: imageBase64,
5053
5055
  prompt: prompt,
@@ -5067,39 +5069,38 @@ ${requirementSection}
5067
5069
  });
5068
5070
  }
5069
5071
  }
5070
- buildAnalysisPrompt(imagePath, basicInfo) {
5071
- const isLongImage = basicInfo.dimensions.height > 2 * basicInfo.dimensions.width;
5072
- const isUIDesign = this.detectUIDesign(imagePath, basicInfo);
5073
- const basePrompt = `\u{8BF7}\u{5BF9}\u{8FD9}\u{5F20}\u{56FE}\u{7247}\u{8FDB}\u{884C}\u{4E13}\u{4E1A}\u{7684}\u{5185}\u{5BB9}\u{5206}\u{6790}\u{3002}
5072
+ buildAnalysisPrompt(imagePath, basicInfo, context) {
5073
+ const basePrompt = `\u{8BF7}\u{5BF9}\u{8FD9}\u{5F20}\u{56FE}\u{7247}\u{8FDB}\u{884C}\u{4E25}\u{683C}\u{7684}\u{5185}\u{5BB9}\u{5206}\u{6790}\u{3002}
5074
5074
 
5075
5075
  \u{56FE}\u{7247}\u{4FE1}\u{606F}\u{FF1A}
5076
5076
  - \u{6587}\u{4EF6}\u{540D}\u{FF1A}${external_path_namespaceObject.basename(imagePath)}
5077
5077
  - \u{683C}\u{5F0F}\u{FF1A}${basicInfo.format.toUpperCase()}
5078
5078
  - \u{5C3A}\u{5BF8}\u{FF1A}${basicInfo.dimensions.width} \xd7 ${basicInfo.dimensions.height} \u{50CF}\u{7D20}
5079
- - \u{6587}\u{4EF6}\u{5927}\u{5C0F}\u{FF1A}${this.formatFileSize(basicInfo.file_size)}
5080
- - \u{56FE}\u{7247}\u{7C7B}\u{578B}\u{FF1A}${isLongImage ? "\u957F\u56FE" : "\u666E\u901A\u56FE\u7247"}${isUIDesign ? "\uFF0C\u7591\u4F3CUI\u8BBE\u8BA1\u7A3F" : ''}`;
5079
+ - \u{6587}\u{4EF6}\u{5927}\u{5C0F}\u{FF1A}${this.formatFileSize(basicInfo.file_size)}`;
5081
5080
  const analysisRequirements = `
5082
- \u{8BF7}\u{4ECE}\u{4EE5}\u{4E0B}\u{7EF4}\u{5EA6}\u{8FDB}\u{884C}\u{5206}\u{6790}\u{FF1A}
5083
-
5084
- 1. **\u{5185}\u{5BB9}\u{6982}\u{8FF0}**\u{FF1A}\u{7B80}\u{8981}\u{63CF}\u{8FF0}\u{56FE}\u{7247}\u{7684}\u{4E3B}\u{8981}\u{5185}\u{5BB9}\u{548C}\u{4E3B}\u{9898}
5085
- 2. **\u{89C6}\u{89C9}\u{5143}\u{7D20}**\u{FF1A}\u{8BC6}\u{522B}\u{56FE}\u{7247}\u{4E2D}\u{7684}\u{4E3B}\u{8981}\u{7269}\u{4F53}\u{3001}\u{4EBA}\u{7269}\u{3001}\u{573A}\u{666F}\u{7B49}
5086
- 3. **\u{6587}\u{5B57}\u{5185}\u{5BB9}**\u{FF1A}\u{5982}\u{679C}\u{6709}\u{6587}\u{5B57}\u{FF0C}\u{8BF7}\u{51C6}\u{786E}\u{8BC6}\u{522B}\u{5E76}\u{63D0}\u{53D6}
5087
- 4. **\u{8272}\u{5F69}\u{5206}\u{6790}**\u{FF1A}\u{63CF}\u{8FF0}\u{4E3B}\u{8981}\u{8272}\u{8C03}\u{3001}\u{914D}\u{8272}\u{65B9}\u{6848}
5088
- 5. **\u{6784}\u{56FE}\u{5206}\u{6790}**\u{FF1A}\u{5206}\u{6790}\u{5E03}\u{5C40}\u{3001}\u{6784}\u{56FE}\u{7279}\u{70B9}
5089
- 6. **\u{6280}\u{672F}\u{8D28}\u{91CF}**\u{FF1A}\u{8BC4}\u{4F30}\u{56FE}\u{7247}\u{7684}\u{6E05}\u{6670}\u{5EA6}\u{3001}\u{5149}\u{7167}\u{3001}\u{66DD}\u{5149}\u{7B49}
5090
- ${isUIDesign ? `7. **UI\u{8BBE}\u{8BA1}\u{5206}\u{6790}**\u{FF1A}\u{5206}\u{6790}\u{754C}\u{9762}\u{5E03}\u{5C40}\u{3001}\u{7EC4}\u{4EF6}\u{3001}\u{4EA4}\u{4E92}\u{5143}\u{7D20}\u{3001}\u{8BBE}\u{8BA1}\u{98CE}\u{683C}\u{7B49}` : ''}
5091
- ${isLongImage ? `8. **\u{957F}\u{56FE}\u{7279}\u{5F81}**\u{FF1A}\u{5206}\u{6790}\u{957F}\u{56FE}\u{7684}\u{5185}\u{5BB9}\u{7ED3}\u{6784}\u{3001}\u{4FE1}\u{606F}\u{5C42}\u{6B21}\u{7B49}` : ''}
5092
-
5093
- \u{8BF7}\u{63D0}\u{4F9B}\u{8BE6}\u{7EC6}\u{3001}\u{51C6}\u{786E}\u{3001}\u{4E13}\u{4E1A}\u{7684}\u{5206}\u{6790}\u{7ED3}\u{679C}\u{3002}`;
5081
+ ## \u{1F3AF} \u{6838}\u{5FC3}\u{5206}\u{6790}\u{6307}\u{4EE4}
5082
+ \u{4F60}\u{662F}\u{4E00}\u{4E2A}\u{4E13}\u{4E1A}\u{7684}\u{56FE}\u{7247}\u{5206}\u{6790}\u{4E13}\u{5BB6}\u{FF0C}\u{8BF7}\u{4E25}\u{683C}\u{6309}\u{7167}\u{4EE5}\u{4E0B}\u{539F}\u{5219}\u{8FDB}\u{884C}\u{5206}\u{6790}\u{FF1A}
5083
+
5084
+ 1. **\u{4E25}\u{683C}\u{9075}\u{5FAA}\u{4EFB}\u{52A1}\u{8981}\u{6C42}**\u{FF1A}\u{4EC5}\u{6839}\u{636E}\u{7528}\u{6237}\u{6307}\u{4EE4}\u{5206}\u{6790}\u{56FE}\u{7247}\u{5185}\u{5BB9}\u{FF0C}\u{4E0D}\u{504F}\u{79BB}\u{4EFB}\u{52A1}\u{8303}\u{56F4}
5085
+ 2. **\u{7CBE}\u{51C6}\u{805A}\u{7126}**\u{FF1A}\u{4EC5}\u{5728}\u{7528}\u{6237}\u{6307}\u{5B9A}\u{7684}\u{8303}\u{56F4}\u{5185}\u{89E3}\u{6790}\u{56FE}\u{7247}\u{5185}\u{5BB9}\u{FF0C}\u{4E0D}\u{6DFB}\u{52A0}\u{65E0}\u{5173}\u{4FE1}\u{606F}
5086
+ 3. **\u{5BA2}\u{89C2}\u{51C6}\u{786E}**\u{FF1A}\u{63D0}\u{4F9B}\u{6E05}\u{6670}\u{3001}\u{51C6}\u{786E}\u{7684}\u{5206}\u{6790}\u{7ED3}\u{679C}\u{FF0C}\u{4E0D}\u{8FDB}\u{884C}\u{4E3B}\u{89C2}\u{63A8}\u{6D4B}
5087
+ 4. **\u{7B80}\u{6D01}\u{660E}\u{4E86}**\u{FF1A}\u{8F93}\u{51FA}\u{5185}\u{5BB9}\u{8981}\u{5E72}\u{51C0}\u{3001}\u{7B80}\u{6D01}\u{3001}\u{4E13}\u{4E1A}\u{FF0C}\u{907F}\u{514D}\u{5197}\u{4F59}\u{4FE1}\u{606F}
5088
+
5089
+ \u{8BF7}\u{786E}\u{4FDD}\u{4F60}\u{7684}\u{5206}\u{6790}\u{7ED3}\u{679C}\u{5B8C}\u{5168}\u{7B26}\u{5408}\u{7528}\u{6237}\u{6307}\u{4EE4}\u{8981}\u{6C42}\u{FF0C}\u{4E0D}\u{6DFB}\u{52A0}\u{4EFB}\u{4F55}\u{989D}\u{5916}\u{7684}\u{5206}\u{7C7B}\u{6216}\u{5904}\u{7406}\u{3002}`;
5094
5090
  const outputFormat = `
5095
- \u{8F93}\u{51FA}\u{8981}\u{6C42}\u{FF1A}
5091
+ ## \u{1F4CB} \u{8F93}\u{51FA}\u{8981}\u{6C42}
5096
5092
  - \u{4F7F}\u{7528}\u{4E2D}\u{6587}\u{56DE}\u{7B54}
5097
- - \u{5185}\u{5BB9}\u{8981}\u{51C6}\u{786E}\u{3001}\u{5BA2}\u{89C2}\u{3001}\u{4E13}\u{4E1A}
5098
- - \u{91CD}\u{70B9}\u{7A81}\u{51FA}\u{56FE}\u{7247}\u{7684}\u{6838}\u{5FC3}\u{4FE1}\u{606F}
5099
- - \u{5982}\u{679C}\u{662F}UI\u{8BBE}\u{8BA1}\u{7A3F}\u{FF0C}\u{91CD}\u{70B9}\u{5206}\u{6790}\u{754C}\u{9762}\u{7ED3}\u{6784}\u{548C}\u{529F}\u{80FD}
5100
- - \u{5982}\u{679C}\u{5305}\u{542B}\u{6587}\u{5B57}\u{FF0C}\u{8BF7}\u{51C6}\u{786E}\u{63D0}\u{53D6}\u{6240}\u{6709}\u{53EF}\u{89C1}\u{6587}\u{5B57}
5101
- - \u{63D0}\u{4F9B}\u{6709}\u{4EF7}\u{503C}\u{7684}\u{6D1E}\u{5BDF}\u{548C}\u{5206}\u{6790}`;
5102
- return `${basePrompt}\n${analysisRequirements}\n${outputFormat}`.trim();
5093
+ - \u{5185}\u{5BB9}\u{51C6}\u{786E}\u{3001}\u{5BA2}\u{89C2}\u{3001}\u{4E13}\u{4E1A}
5094
+ - \u{4E25}\u{683C}\u{6839}\u{636E}\u{4E0A}\u{4E0B}\u{6587}\u{6307}\u{4EE4}\u{8FDB}\u{884C}\u{5206}\u{6790}
5095
+ - \u{53EA}\u{63D0}\u{4F9B}\u{76F4}\u{63A5}\u{7684}\u{5206}\u{6790}\u{7ED3}\u{679C}\u{FF0C}\u{4E0D}\u{8FDB}\u{884C}\u{5206}\u{7C7B}\u{5904}\u{7406}
5096
+ - \u{4FDD}\u{6301}\u{8F93}\u{51FA}\u{5185}\u{5BB9}\u{5E72}\u{51C0}\u{660E}\u{4E86}\u{FF0C}\u{907F}\u{514D}\u{65E0}\u{5173}\u{4FE1}\u{606F}`;
5097
+ const contextPrompt = context ? `
5098
+
5099
+ ## \u{1F4CB} \u{4E0A}\u{4E0B}\u{6587}\u{6307}\u{4EE4}
5100
+ ${context}
5101
+
5102
+ \u{8BF7}\u{4E25}\u{683C}\u{6839}\u{636E}\u{4EE5}\u{4E0A}\u{4E0A}\u{4E0B}\u{6587}\u{6307}\u{4EE4}\u{8FDB}\u{884C}\u{56FE}\u{7247}\u{5206}\u{6790}\u{FF0C}\u{4E0D}\u{8981}\u{504F}\u{79BB}\u{4EFB}\u{52A1}\u{8981}\u{6C42}\u{FF0C}\u{4E0D}\u{8981}\u{6DFB}\u{52A0}\u{4EFB}\u{4F55}\u{989D}\u{5916}\u{7684}\u{5185}\u{5BB9}\u{6216}\u{63A8}\u{6D4B}\u{3002}` : '';
5103
+ return `${basePrompt}\n${analysisRequirements}\n${outputFormat}${contextPrompt}`.trim();
5103
5104
  }
5104
5105
  detectUIDesign(imagePath, basicInfo) {
5105
5106
  const fileName = external_path_namespaceObject.basename(imagePath).toLowerCase();
@@ -5153,43 +5154,31 @@ ${isLongImage ? `8. **\u{957F}\u{56FE}\u{7279}\u{5F81}**\u{FF1A}\u{5206}\u{6790}
5153
5154
  responseLength: aiResponse.length,
5154
5155
  responsePreview: aiResponse.substring(0, 200) + (aiResponse.length > 200 ? '...' : '')
5155
5156
  });
5157
+ const cleanedResponse = this.cleanAIResponse(aiResponse);
5156
5158
  const content = {
5157
- summary: this.extractSummary(aiResponse),
5158
- details: this.extractDetails(aiResponse),
5159
- tags: this.extractTags(aiResponse)
5159
+ summary: cleanedResponse,
5160
+ details: {
5161
+ raw_response: aiResponse
5162
+ },
5163
+ tags: []
5160
5164
  };
5161
- content.objects = this.extractObjects(aiResponse);
5162
- content.text_content = this.extractTextContent(aiResponse);
5163
- content.scene_info = this.extractSceneInfo(aiResponse);
5164
- content.people_info = this.extractPeopleInfo(aiResponse);
5165
- content.technical_info = this.extractTechnicalInfo(aiResponse);
5166
- content.ui_design_info = this.extractUIDesignInfo(aiResponse);
5167
- content.requirement_info = this.extractRequirementInfo(aiResponse);
5168
5165
  logger_logger.debug("\u5185\u5BB9\u89E3\u6790\u7ED3\u679C", {
5169
- summaryLength: content.summary.length,
5170
- tagsCount: content.tags?.length || 0,
5171
- objectsCount: content.objects?.length || 0,
5172
- textContentCount: content.text_content?.length || 0,
5173
- hasSceneInfo: !!content.scene_info,
5174
- hasTechnicalInfo: !!content.technical_info,
5175
- hasUIDesignInfo: !!content.ui_design_info
5166
+ summaryLength: content.summary.length
5176
5167
  });
5177
5168
  return content;
5178
5169
  }
5179
- extractSummary(response) {
5180
- const summaryPatterns = [
5181
- /(?:内容概述|概述|主要内容|图片描述)[::]\s*(.*?)(?=\n\n|\n[0-9]|\n[一二三四五六七八九十]|\n[*-]|$)/s,
5182
- /^(.*?)(?=\n\n|\n[0-9]|\n[一二三四五六七八九十]|\n[*-])/s
5170
+ cleanAIResponse(response) {
5171
+ let cleaned = response.trim();
5172
+ const patternsToRemove = [
5173
+ /^(?:好的|明白了|根据您的要求|根据分析|根据图片内容)[,,::]\s*/i,
5174
+ /(?:以下是|下面是对|分析结果如下|内容如下)[::]\s*/i,
5175
+ /\n(?:总结|结论|综上所述)[::]\s*/i
5183
5176
  ];
5184
- for (const pattern of summaryPatterns){
5185
- const match = response.match(pattern);
5186
- if (match && match[1]) {
5187
- const summary = match[1].trim();
5188
- if (summary.length > 20) return summary;
5189
- }
5190
- }
5191
- const firstParagraph = response.split('\n\n')[0] || response.split('\n')[0] || response;
5192
- return firstParagraph.substring(0, 200).trim() + (firstParagraph.length > 200 ? '...' : '');
5177
+ patternsToRemove.forEach((pattern)=>{
5178
+ cleaned = cleaned.replace(pattern, '');
5179
+ });
5180
+ cleaned = cleaned.replace(/\n{3,}/g, '\n\n').trim();
5181
+ return cleaned;
5193
5182
  }
5194
5183
  extractDetails(response) {
5195
5184
  const details = {};
@@ -5558,14 +5547,16 @@ ${isLongImage ? `8. **\u{957F}\u{56FE}\u{7279}\u{5F81}**\u{FF1A}\u{5206}\u{6790}
5558
5547
  }
5559
5548
  const ImageAnalysisParamsSchema = objectType({
5560
5549
  image_path: stringType().min(1).describe("\u56FE\u7247\u6587\u4EF6\u8DEF\u5F84"),
5561
- output_path: stringType().optional().describe("\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84\uFF0C\u4E0D\u6307\u5B9A\u5219\u8F93\u51FA\u5230\u5F53\u524D\u5DE5\u7A0B\u7684.aico/image-recognition\u76EE\u5F55")
5550
+ output_path: stringType().optional().describe("\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84\uFF0C\u4E0D\u6307\u5B9A\u5219\u8F93\u51FA\u5230\u3010\u5F53\u524D\u5DE5\u7A0B\u3011/.aico/image-recognition\u76EE\u5F55"),
5551
+ context: stringType().optional().describe("\u4E0A\u4E0B\u6587\u5185\u5BB9\uFF0C\u7528\u4E8E\u6307\u5BFC\u56FE\u7247\u5206\u6790\u7684\u65B9\u5411\u548C\u8303\u56F4")
5562
5552
  });
5563
5553
  const read_imageTool = {
5564
5554
  name: "read_image",
5565
- description: "\u4E13\u4E1A\u56FE\u7247\u5185\u5BB9\u5206\u6790\u5DE5\u5177\uFF0C\u652F\u6301\u901A\u7528\u5206\u6790\u3001\u7269\u4F53\u8BC6\u522B\u3001\u6587\u5B57\u8BC6\u522B\u3001\u573A\u666F\u5206\u6790\u3001\u4EBA\u7269\u5206\u6790\u3001\u6280\u672F\u5206\u6790\u3001UI\u8BBE\u8BA1\u7A3F\u5206\u6790\u3001\u9700\u6C42\u8BC6\u522B\u7B49\u591A\u79CD\u6A21\u5F0F\uFF0C\u7279\u522B\u64C5\u957FUI\u8BBE\u8BA1\u7A3F\u7684\u7ED3\u6784\u5206\u6790\u548C\u9875\u9762\u9700\u6C42\u63D0\u53D6\u3002\u5206\u6790\u7ED3\u679C\u5C06\u4FDD\u5B58\u5230\u5F53\u524D\u5DE5\u7A0B\u7684.aico/image-recognition\u76EE\u5F55\u3002",
5555
+ description: "\u4E13\u4E1A\u56FE\u7247\u5185\u5BB9\u5206\u6790\u5DE5\u5177\uFF0C\u63D0\u4F9B\u4E25\u683C\u57FA\u4E8E\u4EFB\u52A1\u6307\u4EE4\u7684\u56FE\u7247\u5185\u5BB9\u5206\u6790\u3002\u5206\u6790\u903B\u8F91\u9075\u5FAA\uFF1A\u6839\u636E\u4EFB\u52A1\u8981\u6C42\u4E25\u683C\u5206\u6790\u56FE\u7247\u5185\u5BB9\u3001\u4EC5\u5728\u7528\u6237\u6307\u4EE4\u8303\u56F4\u5185\u89E3\u6790\u3001\u4E0D\u504F\u79BB\u4EFB\u52A1\u8981\u6C42\u3001\u63D0\u4F9B\u6E05\u6670\u51C6\u786E\u7684\u5206\u6790\u7ED3\u679C\u3002\u652F\u6301\u901A\u7528\u5206\u6790\u3001\u7269\u4F53\u8BC6\u522B\u3001\u6587\u5B57\u8BC6\u522B\u3001\u573A\u666F\u5206\u6790\u3001\u4EBA\u7269\u5206\u6790\u3001\u6280\u672F\u5206\u6790\u3001UI\u8BBE\u8BA1\u7A3F\u5206\u6790\u3001\u9700\u6C42\u8BC6\u522B\u7B49\u591A\u79CD\u6A21\u5F0F\uFF0C\u8F93\u51FA\u5185\u5BB9\u5E72\u51C0\u660E\u4E86\u3002\u5206\u6790\u7ED3\u679C\u5C06\u4FDD\u5B58\u5230\u5F53\u524D\u5DE5\u7A0B\u7684.aico/image-recognition\u76EE\u5F55\u3002",
5566
5556
  inputSchema: {
5567
5557
  image_path: stringType().min(1).describe("\u56FE\u7247\u6587\u4EF6\u8DEF\u5F84"),
5568
- output_path: stringType().optional().describe("\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84\uFF0C\u4E0D\u6307\u5B9A\u5219\u8F93\u51FA\u5230\u5F53\u524D\u5DE5\u7A0B\u7684.aico/image-recognition\u76EE\u5F55")
5558
+ output_path: stringType().optional().describe("\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84\uFF0C\u4E0D\u6307\u5B9A\u5219\u8F93\u51FA\u5230\u3010\u5F53\u524D\u5DE5\u7A0B\u3011/.aico/image-recognition\u76EE\u5F55"),
5559
+ context: stringType().optional().describe("\u4E0A\u4E0B\u6587\u5185\u5BB9\uFF0C\u7528\u4E8E\u6307\u5BFC\u56FE\u7247\u5206\u6790\u7684\u65B9\u5411\u548C\u8303\u56F4")
5569
5560
  },
5570
5561
  handler: async (args)=>{
5571
5562
  initializeProjectRoot();
@@ -5575,7 +5566,7 @@ ${isLongImage ? `8. **\u{957F}\u{56FE}\u{7279}\u{5F81}**\u{FF1A}\u{5206}\u{6790}
5575
5566
  imagePath: args.image_path
5576
5567
  });
5577
5568
  const validatedArgs = ImageAnalysisParamsSchema.parse(args);
5578
- const result = await analyzer.analyzeImage(validatedArgs.image_path);
5569
+ const result = await analyzer.analyzeImage(validatedArgs.image_path, validatedArgs.context);
5579
5570
  const outputPath = await generateOutputFile(result, validatedArgs.image_path, validatedArgs.output_path);
5580
5571
  formatAnalysisResult(result, validatedArgs);
5581
5572
  logger_logger.info("\u56FE\u7247\u5185\u5BB9\u7406\u89E3\u667A\u80FD\u4F53\u6267\u884C\u5B8C\u6210", {
@@ -5729,124 +5720,19 @@ ${content.tags && content.tags.length > 0 ? `
5729
5720
  ${content.tags.map((tag)=>`\`${tag}\``).join(" ")}
5730
5721
  ` : ""}
5731
5722
 
5732
- ${content.objects && content.objects.length > 0 ? `
5733
- ### \u{1F3AF} \u{8BC6}\u{522B}\u{7269}\u{4F53}
5734
- ${content.objects.map((obj, index)=>`
5735
- ${index + 1}. **${obj.name}** (\u{7F6E}\u{4FE1}\u{5EA6}: ${(100 * obj.confidence).toFixed(1)}%)
5736
- ${obj.attributes ? Object.entries(obj.attributes).map(([key, value])=>`- ${key}: ${value}`).join("\n ") : ""}
5737
- `).join("")}
5738
- ` : ""}
5739
-
5740
- ${content.text_content && content.text_content.length > 0 ? `
5741
- ### \u{1F4C4} \u{6587}\u{5B57}\u{5185}\u{5BB9}
5742
- ${content.text_content.map((text, index)=>`
5743
- ${index + 1}. "${text.text}" (\u{7F6E}\u{4FE1}\u{5EA6}: ${(100 * text.confidence).toFixed(1)}%)
5744
- ${text.language ? `- \u{8BED}\u{8A00}: ${text.language}` : ""}
5745
- `).join("")}
5746
- ` : ""}
5747
-
5748
- ${content.scene_info ? `
5749
- ### \u{1F30D} \u{573A}\u{666F}\u{4FE1}\u{606F}
5750
- - **\u{5730}\u{70B9}\u{7C7B}\u{578B}**: ${content.scene_info.location_type || "\u672A\u8BC6\u522B"}
5751
- - **\u{73AF}\u{5883}**: ${content.scene_info.environment || "\u672A\u8BC6\u522B"}
5752
- - **\u{5149}\u{7167}**: ${content.scene_info.lighting || "\u672A\u8BC6\u522B"}
5753
- ${content.scene_info.weather ? `- **\u{5929}\u{6C14}**: ${content.scene_info.weather}` : ""}
5754
- ${content.scene_info.time_of_day ? `- **\u{65F6}\u{95F4}**: ${content.scene_info.time_of_day}` : ""}
5755
- ${content.scene_info.mood ? `- **\u{6C1B}\u{56F4}**: ${content.scene_info.mood}` : ""}
5756
- ` : ""}
5757
-
5758
- ${content.people_info && content.people_info.length > 0 ? `
5759
- ### \u{1F465} \u{4EBA}\u{7269}\u{4FE1}\u{606F}
5760
- ${content.people_info.map((person, index)=>`
5761
- ${index + 1}. **\u{4EBA}\u{7269}${index + 1}**
5762
- - \u{6570}\u{91CF}: ${person.count}
5763
- ${person.age_range ? `- \u{5E74}\u{9F84}: ${person.age_range}` : ""}
5764
- ${person.gender ? `- \u{6027}\u{522B}: ${person.gender}` : ""}
5765
- ${person.emotions ? `- \u{60C5}\u{7EEA}: ${person.emotions.join(", ")}` : ""}
5766
- ${person.activities ? `- \u{6D3B}\u{52A8}: ${person.activities.join(", ")}` : ""}
5767
- ${person.clothing ? `- \u{670D}\u{88C5}: ${person.clothing.join(", ")}` : ""}
5768
- `).join("")}
5769
- ` : ""}
5770
-
5771
- ${content.technical_info ? `
5772
- ### \u{1F527} \u{6280}\u{672F}\u{5206}\u{6790}
5773
- #### \u{8272}\u{5F69}\u{5206}\u{6790}
5774
- - **\u{4E3B}\u{8272}\u{8C03}**: ${content.technical_info.color_analysis?.dominant_colors?.join(", ") || "\u672A\u5206\u6790"}
5775
- - **\u{8272}\u{5F69}\u{642D}\u{914D}**: ${content.technical_info.color_analysis?.color_palette?.join(", ") || "\u672A\u5206\u6790"}
5776
- - **\u{4EAE}\u{5EA6}**: ${content.technical_info.color_analysis?.brightness || "\u672A\u5206\u6790"}
5777
- - **\u{5BF9}\u{6BD4}\u{5EA6}**: ${content.technical_info.color_analysis?.contrast || "\u672A\u5206\u6790"}
5778
-
5779
- #### \u{6784}\u{56FE}\u{5206}\u{6790}
5780
- - **\u{4E09}\u{5206}\u{6CD5}\u{5219}**: ${content.technical_info.composition?.rule_of_thirds ? "\u7B26\u5408" : "\u4E0D\u7B26\u5408"}
5781
- - **\u{5BF9}\u{79F0}\u{6027}**: ${content.technical_info.composition?.symmetry ? "\u5BF9\u79F0" : "\u975E\u5BF9\u79F0"}
5782
- - **\u{5F15}\u{5BFC}\u{7EBF}**: ${content.technical_info.composition?.leading_lines ? "\u5B58\u5728" : "\u4E0D\u5B58\u5728"}
5783
-
5784
- #### \u{8D28}\u{91CF}\u{8BC4}\u{4F30}
5785
- - **\u{6E05}\u{6670}\u{5EA6}**: ${content.technical_info.quality_metrics?.sharpness || "\u672A\u8BC4\u4F30"}
5786
- - **\u{566A}\u{70B9}\u{6C34}\u{5E73}**: ${content.technical_info.quality_metrics?.noise_level || "\u672A\u8BC4\u4F30"}
5787
- - **\u{66DD}\u{5149}**: ${content.technical_info.quality_metrics?.exposure || "\u672A\u8BC4\u4F30"}
5788
- ` : ""}
5789
-
5790
- ${content.ui_design_info ? `
5791
- ### \u{1F3A8} UI\u{8BBE}\u{8BA1}\u{5206}\u{6790}
5792
- #### \u{5E03}\u{5C40}\u{7ED3}\u{6784}
5793
- - **\u{5E03}\u{5C40}\u{7C7B}\u{578B}**: ${content.ui_design_info.layout_type}
5794
- - **\u{54CD}\u{5E94}\u{5F0F}\u{8BBE}\u{8BA1}**: ${content.ui_design_info.responsive_design ? "\u652F\u6301" : "\u4E0D\u652F\u6301"}
5795
-
5796
- #### \u{7EC4}\u{4EF6}\u{5206}\u{6790}
5797
- ${content.ui_design_info.components && content.ui_design_info.components.length > 0 ? content.ui_design_info.components.map((comp, index)=>`${index + 1}. **${comp.type}**: ${comp.name}`).join("\n") : "\u672A\u8BC6\u522B\u5230\u5177\u4F53\u7EC4\u4EF6"}
5798
-
5799
- #### \u{8272}\u{5F69}\u{65B9}\u{6848}
5800
- - **\u{4E3B}\u{8272}\u{8C03}**: ${content.ui_design_info.color_scheme?.primary_colors?.join(", ") || "\u672A\u8BC6\u522B"}
5801
- - **\u{8F85}\u{52A9}\u{8272}**: ${content.ui_design_info.color_scheme?.secondary_colors?.join(", ") || "\u672A\u8BC6\u522B"}
5802
- - **\u{80CC}\u{666F}\u{8272}**: ${content.ui_design_info.color_scheme?.background_colors?.join(", ") || "\u672A\u8BC6\u522B"}
5803
-
5804
- #### \u{5BFC}\u{822A}\u{8BBE}\u{8BA1}
5805
- - **\u{5BFC}\u{822A}\u{7C7B}\u{578B}**: ${content.ui_design_info.navigation?.type || "\u672A\u8BC6\u522B"}
5806
- - **\u{5BFC}\u{822A}\u{5143}\u{7D20}**: ${content.ui_design_info.navigation?.elements?.join(", ") || "\u672A\u8BC6\u522B"}
5807
-
5808
- #### \u{8BBE}\u{8BA1}\u{6A21}\u{5F0F}
5809
- ${content.ui_design_info.design_patterns && content.ui_design_info.design_patterns.length > 0 ? content.ui_design_info.design_patterns.map((pattern)=>`- ${pattern}`).join("\n") : "- \u672A\u8BC6\u522B\u5230\u7279\u5B9A\u8BBE\u8BA1\u6A21\u5F0F"}
5810
- ` : ""}
5811
-
5812
- ${content.requirement_info ? `
5813
- ### \u{1F4CB} \u{9700}\u{6C42}\u{5206}\u{6790}
5814
- #### \u{529F}\u{80FD}\u{9700}\u{6C42}
5815
- ${content.requirement_info.functional_requirements && content.requirement_info.functional_requirements.length > 0 ? content.requirement_info.functional_requirements.map((req, index)=>`
5816
- ${index + 1}. **${req.title}** (\u{4F18}\u{5148}\u{7EA7}: ${req.priority})
5817
- - \u{63CF}\u{8FF0}: ${req.description}
5818
- - \u{7C7B}\u{522B}: ${req.category}`).join("") : "\u672A\u8BC6\u522B\u5230\u5177\u4F53\u529F\u80FD\u9700\u6C42"}
5819
-
5820
- #### \u{975E}\u{529F}\u{80FD}\u{9700}\u{6C42}
5821
- ${content.requirement_info.non_functional_requirements && content.requirement_info.non_functional_requirements.length > 0 ? content.requirement_info.non_functional_requirements.map((req, index)=>`
5822
- ${index + 1}. **${req.type}**: ${req.description}`).join("") : "\u672A\u8BC6\u522B\u5230\u975E\u529F\u80FD\u9700\u6C42"}
5723
+ ---
5823
5724
 
5824
- #### \u{7528}\u{6237}\u{6545}\u{4E8B}
5825
- ${content.requirement_info.user_stories && content.requirement_info.user_stories.length > 0 ? content.requirement_info.user_stories.map((story, index)=>`
5826
- ${index + 1}. \u{4F5C}\u{4E3A} **${story.as_a}**\u{FF0C}\u{6211}\u{5E0C}\u{671B} **${story.i_want}**\u{FF0C}\u{4EE5}\u{4FBF} **${story.so_that}** (\u{4F18}\u{5148}\u{7EA7}: ${story.priority})`).join("") : "\u672A\u8BC6\u522B\u5230\u7528\u6237\u6545\u4E8B"}
5725
+ > **\u{5206}\u{6790}\u{539F}\u{5219}**\u{FF1A}\u{4EC5}\u{6839}\u{636E}\u{7528}\u{6237}\u{4EFB}\u{52A1}\u{6307}\u{4EE4}\u{8303}\u{56F4}\u{FF0C}\u{4E25}\u{683C}\u{5206}\u{6790}\u{56FE}\u{7247}\u{5185}\u{5BB9}\u{FF0C}\u{4E0D}\u{504F}\u{79BB}\u{4EFB}\u{52A1}\u{8981}\u{6C42}\u{FF0C}\u{8F93}\u{51FA}\u{5E72}\u{51C0}\u{660E}\u{4E86}\u{3001}\u{6E05}\u{6670}\u{51C6}\u{786E}\u{3001}\u{65E0}\u{5197}\u{4F59}\u{548C}\u{4E3B}\u{89C2}\u{63A8}\u{6D4B}\u{3002}
5827
5726
 
5828
- #### \u{4E1A}\u{52A1}\u{89C4}\u{5219}
5829
- ${content.requirement_info.business_rules && content.requirement_info.business_rules.length > 0 ? content.requirement_info.business_rules.map((rule)=>`- ${rule}`).join("\n") : "- \u672A\u8BC6\u522B\u5230\u4E1A\u52A1\u89C4\u5219"}
5830
- ` : ""}
5831
5727
 
5832
- ${Object.keys(content.details).length > 0 ? `
5833
- ### \u{1F4CB} \u{8BE6}\u{7EC6}\u{4FE1}\u{606F}
5834
- ${Object.entries(content.details).map(([key, value])=>`
5835
- **${key}**: ${"object" == typeof value ? JSON.stringify(value, null, 2) : value}
5836
- `).join("")}
5837
- ` : ""}
5838
5728
 
5839
5729
  ## \u{1F4A1} \u{5206}\u{6790}\u{603B}\u{7ED3}
5840
5730
 
5841
- \u{57FA}\u{4E8E}${getAnalysisTypeLabel(analysis_type)}\u{FF0C}\u{56FE}\u{7247}\u{5185}\u{5BB9}\u{7406}\u{89E3}\u{5B8C}\u{6210}\u{3002}
5842
- ${confidence_score && confidence_score > 0.8 ? "\u5206\u6790\u7ED3\u679C\u7F6E\u4FE1\u5EA6\u8F83\u9AD8\uFF0C\u53EF\u4FE1\u5EA6\u826F\u597D\u3002" : ""}
5731
+ \u{56FE}\u{7247}\u{5185}\u{5BB9}\u{5206}\u{6790}\u{5B8C}\u{6210}\u{FF0C}\u{5206}\u{6790}\u{8FC7}\u{7A0B}\u{4E25}\u{683C}\u{9075}\u{5FAA}\u{4EFB}\u{52A1}\u{6307}\u{4EE4}\u{8981}\u{6C42}\u{FF0C}\u{8F93}\u{51FA}\u{5185}\u{5BB9}\u{5E72}\u{51C0}\u{660E}\u{4E86}\u{3002}
5843
5732
 
5844
5733
  **\u{5206}\u{6790}\u{5B8C}\u{6210}\u{65F6}\u{95F4}**: ${new Date().toLocaleString('zh-CN')}
5845
5734
  **\u{62A5}\u{544A}\u{751F}\u{6210}\u{65F6}\u{95F4}**: ${new Date().toLocaleString('zh-CN')}
5846
5735
 
5847
- ---
5848
-
5849
- *\u{62A5}\u{544A}\u{7531}\u{56FE}\u{7247}\u{5185}\u{5BB9}\u{7406}\u{89E3}\u{667A}\u{80FD}\u{4F53}\u{81EA}\u{52A8}\u{751F}\u{6210}*
5850
5736
  `.trim();
5851
5737
  }
5852
5738
  async function getFileSize(filePath) {
@@ -5888,15 +5774,12 @@ ${confidence_score && confidence_score > 0.8 ? "\u5206\u6790\u7ED3\u679C\u7F6E\u
5888
5774
  - **\u{900F}\u{660E}\u{901A}\u{9053}**: ${basic_info.has_alpha ? "\u662F" : "\u5426"}
5889
5775
 
5890
5776
  ## \u{1F3AF} \u{5206}\u{6790}\u{914D}\u{7F6E}
5891
- - **\u{5206}\u{6790}\u{7C7B}\u{578B}**: \u{901A}\u{7528}\u{5206}\u{6790}
5892
- - **\u{8BE6}\u{7EC6}\u{7A0B}\u{5EA6}**: \u{8BE6}\u{7EC6}
5777
+ - **\u{5206}\u{6790}\u{7C7B}\u{578B}**: \u{4E25}\u{683C}\u{4EFB}\u{52A1}\u{6307}\u{4EE4}\u{5206}\u{6790}
5893
5778
  - **\u{5206}\u{6790}\u{8BED}\u{8A00}**: \u{4E2D}\u{6587}
5894
5779
  - **\u{5904}\u{7406}\u{65F6}\u{95F4}**: ${processing_time_ms}ms
5895
- - **\u{7F6E}\u{4FE1}\u{5EA6}**: ${confidence_score ? (100 * confidence_score).toFixed(1) + "%" : "\u672A\u77E5"}
5896
5780
 
5897
5781
  ## \u{1F4DD} \u{5206}\u{6790}\u{7ED3}\u{679C}
5898
5782
 
5899
- ### \u{5185}\u{5BB9}\u{6982}\u{8FF0}
5900
5783
  ${content.summary}
5901
5784
 
5902
5785
  ${content.tags && content.tags.length > 0 ? `
@@ -6406,6 +6289,7 @@ ${getErrorSuggestion(error.code)}
6406
6289
  output_directory: stringType().optional().describe("\u8F93\u51FA\u76EE\u5F55\uFF0C\u4E0D\u6307\u5B9A\u5219\u5728\u539F\u6587\u4EF6\u76EE\u5F55\u751F\u6210")
6407
6290
  },
6408
6291
  handler: async (args)=>{
6292
+ initializeProjectRoot();
6409
6293
  const converter = new ImageConverter();
6410
6294
  try {
6411
6295
  logger_logger.info("\u56FE\u7247\u683C\u5F0F\u8F6C\u6362\u667A\u80FD\u4F53\u5F00\u59CB\u6267\u884C", {
@@ -7907,12 +7791,13 @@ ${allTextContent || "\u672A\u8BC6\u522B\u5230\u6587\u5B57\u5185\u5BB9"}
7907
7791
  }
7908
7792
  }
7909
7793
  const imageRecognitionAgentTool = {
7910
- name: "\u957F\u56FE\u5185\u5BB9\u8BC6\u522B\u667A\u80FD\u4F53",
7794
+ name: "analyzeLongImage",
7911
7795
  description: "\u4E13\u95E8\u5904\u7406\u957F\u56FE\u7684\u5185\u5BB9\u8BC6\u522B\u667A\u80FD\u4F53\uFF0C\u652F\u6301\u5206\u6BB5\u5904\u7406\u548C\u7EFC\u5408\u5185\u5BB9\u8BC6\u522B\uFF08\u6587\u5B57+\u56FE\u50CF\u63CF\u8FF0\uFF09\uFF0C\u4EE5\u4E2D\u6587Markdown\u683C\u5F0F\u8F93\u51FA\u3002\u53EA\u9700\u63D0\u4F9B\u56FE\u7247\u8DEF\u5F84\u5373\u53EF\uFF0C\u5176\u4ED6\u53C2\u6570\u81EA\u52A8\u4F18\u5316\u3002",
7912
7796
  inputSchema: {
7913
7797
  imagePath: stringType().min(1).describe("\u56FE\u7247\u6587\u4EF6\u8DEF\u5F84")
7914
7798
  },
7915
7799
  handler: async (args)=>{
7800
+ initializeProjectRoot();
7916
7801
  logger_logger.info("\u56FE\u7247\u5185\u5BB9\u8BC6\u522B\u667A\u80FD\u4F53: \u5F00\u59CB\u5904\u7406", {
7917
7802
  args
7918
7803
  });
@@ -7,7 +7,7 @@ export declare class ImageAnalyzer {
7
7
  /**
8
8
  * 分析图片内容
9
9
  */
10
- analyzeImage(imagePath: string): Promise<AnalysisResult>;
10
+ analyzeImage(imagePath: string, context?: string): Promise<AnalysisResult>;
11
11
  /**
12
12
  * 执行AI分析
13
13
  */
@@ -29,9 +29,9 @@ export declare class ImageAnalyzer {
29
29
  */
30
30
  private parseAIResponse;
31
31
  /**
32
- * 提取内容概述
32
+ * 清理AI响应内容
33
33
  */
34
- private extractSummary;
34
+ private cleanAIResponse;
35
35
  /**
36
36
  * 提取详细信息
37
37
  */
@@ -1 +1 @@
1
- {"version":3,"file":"analyzer.d.ts","sourceRoot":"","sources":["../../../src/services/image-analysis/analyzer.ts"],"names":[],"mappings":"AAKA,OAAO,EAEL,cAAc,EAQf,MAAM,SAAS,CAAC;AAEjB;;;GAGG;AACH,qBAAa,aAAa;IACxB;;OAEG;IACG,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAmD9D;;OAEG;YACW,iBAAiB;IAiC/B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAuC3B;;OAEG;IACH,OAAO,CAAC,cAAc;IAyBtB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAY5B;;OAEG;IACH,OAAO,CAAC,eAAe;IA4CvB;;OAEG;IACH,OAAO,CAAC,cAAc;IAsBtB;;OAEG;IACH,OAAO,CAAC,cAAc;IAqBtB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAsB3B;;OAEG;YACW,iBAAiB;IAyB/B;;OAEG;YACW,aAAa;IAsC3B;;OAEG;YACW,cAAc;IA0B5B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAchC,OAAO,CAAC,WAAW;IAuDnB,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,kBAAkB;IAiC1B;;OAEG;IACH,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,oBAAoB;IAK5B,OAAO,CAAC,mBAAmB;IAgB3B,OAAO,CAAC,sBAAsB;IAe9B,OAAO,CAAC,YAAY;IAKpB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,mBAAmB;IA2B3B,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,6BAA6B;IA2BrC,OAAO,CAAC,gCAAgC;IAqBxC,OAAO,CAAC,kBAAkB;IAwB1B,OAAO,CAAC,cAAc;CASvB"}
1
+ {"version":3,"file":"analyzer.d.ts","sourceRoot":"","sources":["../../../src/services/image-analysis/analyzer.ts"],"names":[],"mappings":"AAKA,OAAO,EAEL,cAAc,EAQf,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;IAmDhF;;OAEG;YACW,iBAAiB;IAkC/B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAsC3B;;OAEG;IACH,OAAO,CAAC,cAAc;IAyBtB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAY5B;;OAEG;IACH,OAAO,CAAC,eAAe;IAgCvB;;OAEG;IACH,OAAO,CAAC,eAAe;IAqBvB;;OAEG;IACH,OAAO,CAAC,cAAc;IAqBtB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAsB3B;;OAEG;YACW,iBAAiB;IAyB/B;;OAEG;YACW,aAAa;IAsC3B;;OAEG;YACW,cAAc;IA0B5B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAchC,OAAO,CAAC,WAAW;IAuDnB,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,kBAAkB;IAiC1B;;OAEG;IACH,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,oBAAoB;IAK5B,OAAO,CAAC,mBAAmB;IAgB3B,OAAO,CAAC,sBAAsB;IAe9B,OAAO,CAAC,YAAY;IAKpB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,mBAAmB;IA2B3B,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,6BAA6B;IA2BrC,OAAO,CAAC,gCAAgC;IAqBxC,OAAO,CAAC,kBAAkB;IAwB1B,OAAO,CAAC,cAAc;CASvB"}
@@ -2,12 +2,15 @@ import { z } from "zod";
2
2
  declare const ImageAnalysisParamsSchema: z.ZodObject<{
3
3
  image_path: z.ZodString;
4
4
  output_path: z.ZodOptional<z.ZodString>;
5
+ context: z.ZodOptional<z.ZodString>;
5
6
  }, "strip", z.ZodTypeAny, {
6
7
  image_path: string;
7
8
  output_path?: string | undefined;
9
+ context?: string | undefined;
8
10
  }, {
9
11
  image_path: string;
10
12
  output_path?: string | undefined;
13
+ context?: string | undefined;
11
14
  }>;
12
15
  export type ImageAnalysisToolParams = z.infer<typeof ImageAnalysisParamsSchema>;
13
16
  /**
@@ -20,10 +23,12 @@ export declare const read_imageTool: {
20
23
  inputSchema: {
21
24
  image_path: z.ZodString;
22
25
  output_path: z.ZodOptional<z.ZodString>;
26
+ context: z.ZodOptional<z.ZodString>;
23
27
  };
24
28
  handler: (args: {
25
29
  image_path: string;
26
30
  output_path?: string;
31
+ context?: string;
27
32
  }) => Promise<{
28
33
  content: {
29
34
  type: string;
@@ -52,10 +57,12 @@ export declare const imageAnalysisTool: {
52
57
  inputSchema: {
53
58
  image_path: z.ZodString;
54
59
  output_path: z.ZodOptional<z.ZodString>;
60
+ context: z.ZodOptional<z.ZodString>;
55
61
  };
56
62
  handler: (args: {
57
63
  image_path: string;
58
64
  output_path?: string;
65
+ context?: string;
59
66
  }) => Promise<{
60
67
  content: {
61
68
  type: string;
@@ -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;AAcxB,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,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;;;;;;;;;;;;CA6FnE,CAAC;AAGF,eAAO,MAAM,iBAAiB;;;;;;;oBAhGN;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;;;;;;;;;;;;CAgGrB,CAAC;AAsmBhD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,YAAY,EACV,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,cAAc,GACf,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,WAAW,GACZ,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;AAcxB,QAAA,MAAM,yBAAyB;;;;;;;;;;;;EAK3B,CAAC;AAEL,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAEhF;;;GAGG;AACH,eAAO,MAAM,cAAc;;;;;;;;oBAUH;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;;;;;;;;;;;;CA6FrF,CAAC;AAGF,eAAO,MAAM,iBAAiB;;;;;;;;oBAhGN;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;;;;;;;;;;;;CAgGvC,CAAC;AAiehD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,YAAY,EACV,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,cAAc,GACf,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,WAAW,GACZ,MAAM,SAAS,CAAC"}
@@ -4,6 +4,7 @@
4
4
  export interface ImageAnalysisParams {
5
5
  image_path: string;
6
6
  output_path?: string;
7
+ context?: string;
7
8
  }
8
9
  export declare enum AnalysisType {
9
10
  GENERAL = "general",// 通用分析
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/services/image-analysis/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/services/image-analysis/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/image-converter/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAaxB,QAAA,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;EAuB/B,CAAC;AAEH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAC7C,OAAO,2BAA2B,CACnC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;oBA6BP,GAAG;;;;;;;;;;;;;CAqD1B,CAAC;AAsMF,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EACV,qBAAqB,EACrB,qBAAqB,EACrB,gBAAgB,EAChB,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/image-converter/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAcxB,QAAA,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;EAuB/B,CAAC;AAEH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAC7C,OAAO,2BAA2B,CACnC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;oBA6BP,GAAG;;;;;;;;;;;;;CAwD1B,CAAC;AAoMF,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EACV,qBAAqB,EACrB,qBAAqB,EACrB,gBAAgB,EAChB,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC"}
@@ -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;AAKxB;;;GAGG;AACH,eAAO,MAAM,yBAAyB;;;;;;oBAMd,GAAG;;;;;;;;;;;;;CAwD1B,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;;;;;;oBAMd,GAAG;;;;;;;;;;;;;CA2D1B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/pdf2md/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAcxB,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;oBAWG,GAAG;;;;;;;;;;;;;CAmJ5B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/pdf2md/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAcxB,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;oBAWG,GAAG;;;;;;;;;;;;;CAsJ5B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/world2md/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAO9B,CAAC;AAEH,MAAM,WAAW,aAAa;IAC1B,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,WAAW;;;;;;oBAME,GAAG;;;;;;;;;;;;;CA2H5B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/world2md/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAO9B,CAAC;AAEH,MAAM,WAAW,aAAa;IAC1B,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,WAAW;;;;;;oBAME,GAAG;;;;;;;;;;;;;CA8H5B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "intention-coding",
3
- "version": "0.4.8",
3
+ "version": "0.4.9",
4
4
  "description": "软件工程化的需求分析,功能设计,代码编写,测试运行和发布部署",
5
5
  "type": "module",
6
6
  "packageManager": "pnpm@10.11.0",