@cicctencent/agent-server 0.2.61 → 0.2.63
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/cjs/prompt/prompt-builder.d.ts +11 -3
- package/dist/cjs/prompt/prompt-builder.d.ts.map +1 -1
- package/dist/cjs/prompt/prompt-builder.js +55 -50
- package/dist/cjs/prompt/prompt-builder.js.map +1 -1
- package/dist/cjs/prompt/shared-fragments.d.ts +2 -2
- package/dist/cjs/prompt/shared-fragments.d.ts.map +1 -1
- package/dist/cjs/prompt/shared-fragments.js +4 -4
- package/dist/cjs/prompt/shared-fragments.js.map +1 -1
- package/dist/cjs/tool/tools/docgen.d.ts.map +1 -1
- package/dist/cjs/tool/tools/docgen.js +10 -0
- package/dist/cjs/tool/tools/docgen.js.map +1 -1
- package/dist/cjs/tool/tools/filesystem.d.ts.map +1 -1
- package/dist/cjs/tool/tools/filesystem.js +24 -16
- package/dist/cjs/tool/tools/filesystem.js.map +1 -1
- package/dist/cjs/tool/tools/sandbox.d.ts.map +1 -1
- package/dist/cjs/tool/tools/sandbox.js +99 -34
- package/dist/cjs/tool/tools/sandbox.js.map +1 -1
- package/dist/esm/prompt/prompt-builder.d.ts +11 -3
- package/dist/esm/prompt/prompt-builder.d.ts.map +1 -1
- package/dist/esm/prompt/prompt-builder.js +54 -50
- package/dist/esm/prompt/prompt-builder.js.map +1 -1
- package/dist/esm/prompt/shared-fragments.d.ts +2 -2
- package/dist/esm/prompt/shared-fragments.d.ts.map +1 -1
- package/dist/esm/prompt/shared-fragments.js +4 -4
- package/dist/esm/prompt/shared-fragments.js.map +1 -1
- package/dist/esm/tool/tools/docgen.d.ts.map +1 -1
- package/dist/esm/tool/tools/docgen.js +10 -0
- package/dist/esm/tool/tools/docgen.js.map +1 -1
- package/dist/esm/tool/tools/filesystem.d.ts.map +1 -1
- package/dist/esm/tool/tools/filesystem.js +24 -16
- package/dist/esm/tool/tools/filesystem.js.map +1 -1
- package/dist/esm/tool/tools/sandbox.d.ts.map +1 -1
- package/dist/esm/tool/tools/sandbox.js +99 -34
- package/dist/esm/tool/tools/sandbox.js.map +1 -1
- package/package.json +2 -2
|
@@ -2,8 +2,16 @@ import type { ToolRegistry, SkillManager } from '@cicctencent/agent-core';
|
|
|
2
2
|
import type { AgentProfileEntity, PromptBuilderProvider, SpecialistResourceContext } from '../types.js';
|
|
3
3
|
/** 内置工具名称可读化映射 */
|
|
4
4
|
export declare const BUILTIN_TOOL_LABELS: Record<string, string>;
|
|
5
|
-
/** 全局基础规则
|
|
6
|
-
export declare const GLOBAL_BASE_RULES = "\n\n## Universal Rules\n\n### Plan Before Execute\n- For ANY task involving multiple steps: **output a numbered step list before doing anything**\n- Format the plan as a **bold inline list**, NOT as markdown headings (## or ###). Use: \"**1.** Fetch data
|
|
5
|
+
/** 全局基础规则 - 所有 Agent 共享的通用行为规范(不含任何具体工具名引用) */
|
|
6
|
+
export declare const GLOBAL_BASE_RULES = "\n\n## Universal Rules\n\n### Plan Before Execute\n- For ANY task involving multiple steps: **output a numbered step list before doing anything**\n- Format the plan as a **bold inline list**, NOT as markdown headings (## or ###). Use: \"**1.** Fetch data -> **2.** Analyze -> **3.** Generate output\"\n- Do NOT start calling tools until the plan is output\n- As you work, track progress: \u2713 done / -> in progress / \u25CB pending\n\n### Read Before Write\n- If the user provides a file, document reference, or data source: **read/fetch it first** before creating outputs\n- Gather all necessary data before starting generation\n- Don't assume content - verify with tools\n\n### Error Recovery\n- If a tool call fails: **diagnose the error** before retrying\n- Never blindly retry the same failing approach - try a different method\n- If content was truncated: use file appending tools to add the remaining parts\n\n### Conversation History & Current Request\n- Your conversation history is provided in <conversation_history> tags as a summary - it is context only\n- The current user request is in <current_request> tags or is the latest user message - this is what you must act on\n- Do NOT proactively combine or continue tasks from <conversation_history> unless <current_request> explicitly references them\n- Evaluate task complexity based on <current_request> alone, not on accumulated history\n- **REUSE prior results (CRITICAL)**: If the current request repeats or closely resembles a previously completed task in history (e.g. \"\u518D\u751F\u6210\u4E00\u6B21\", \"regenerate\", \"\u91CD\u65B0\u505A\", \"\u540C\u6837\u7684\"), **do NOT re-fetch or re-query the same data sources**. Reuse the data and results already gathered in <conversation_history> to produce the output. Only fetch new data if the request explicitly asks for different/newer information.\n\n### Output Restraint (CRITICAL)\n- **NEVER proactively use tools that create files, reports, or artifacts unless the user explicitly asks for them**\n- Your default output is text/structured data directly in the conversation - not files\n- If the user asks for \"analysis\" or \"summary\", provide it as text - do NOT auto-generate a report file\n- Only generate files/reports when the user explicitly says \"\u751F\u6210\u62A5\u544A\", \"create PDF\", \"make a PPT\", \"save as file\", etc.\n\n### Iteration Budget & Efficiency (CRITICAL)\n- You have a **limited number of iterations** (typically 15). Every LLM turn counts.\n- **NEVER re-query the same data source.** If you called a tool and got results, use those results - do NOT call it again.\n- **NEVER re-read data you already received** - do not call read/result retrieval tools on data already in context.\n- **Batch data gathering:** call multiple independent tools in the SAME turn (parallel tool calls).\n- **Data -> Action pipeline:** gather data in 1-2 iterations, then immediately analyze/generate in the next iteration.\n- **Return concise structured summaries**, not raw data dumps. Extract key metrics, rankings, distributions - not every single record.\n\n### Final Reply Rules\n- After all tasks and file generation complete, provide a **clean, structured summary** of results\n- Do NOT include internal reasoning, tool call logs, or progress narration in the final reply\n- The final reply should be polished and user-facing: key findings, recommendations, generated files";
|
|
7
|
+
/**
|
|
8
|
+
* 收集已注册工具的使用引导(prompt),注入到 system prompt
|
|
9
|
+
*
|
|
10
|
+
* 每个工具可以通过 RegisteredTool.prompt 字段携带使用引导。
|
|
11
|
+
* 仅当工具实际注册时,其 prompt 才会被收集并注入,
|
|
12
|
+
* 避免 LLM 被引导调用未绑定的工具。
|
|
13
|
+
*/
|
|
14
|
+
export declare function buildToolPrompts(tools: ToolRegistry): string;
|
|
7
15
|
/**
|
|
8
16
|
* 默认 PromptBuilderProvider 实现
|
|
9
17
|
*/
|
|
@@ -15,7 +23,7 @@ export declare class DefaultPromptBuilder implements PromptBuilderProvider {
|
|
|
15
23
|
buildMCPToolDescList(registry: ToolRegistry): string;
|
|
16
24
|
}
|
|
17
25
|
/** 共享提示词片段:工具结果呈现规范 */
|
|
18
|
-
export declare const RESULT_SYNTHESIS_PROMPT = "\n\n## Tool Result Presentation (MANDATORY)\n\nAfter calling tools and receiving data, you MUST:\n1. **Analyze and summarize**
|
|
26
|
+
export declare const RESULT_SYNTHESIS_PROMPT = "\n\n## Tool Result Presentation (MANDATORY)\n\nAfter calling tools and receiving data, you MUST:\n1. **Analyze and summarize** - never dump raw JSON or tool output directly; synthesize and organize the data\n2. **Highlight key findings** - identify trends, anomalies, or notable information\n3. **Structured presentation** - use headings, bullet points, or tables for readability\n4. **Add insights** - provide professional interpretation, comparisons, or recommendations\n5. **NEVER re-fetch** - if you already called a tool and got results, do NOT call the same tool again\n6. **Use user's language** - respond in the same language the user used";
|
|
19
27
|
/** Specialist 结果综合提示词 */
|
|
20
28
|
export declare const SPECIALIST_SYNTHESIS_PROMPT = "Based on the specialist agents' outputs above, provide a comprehensive synthesis:\n1. Summarize key findings from each agent\n2. Identify any conflicts or contradictions\n3. Provide a unified recommendation\n4. Highlight any risks or caveats\nRespond in the same language as the user.";
|
|
21
29
|
//# sourceMappingURL=prompt-builder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt-builder.d.ts","sourceRoot":"","sources":["../../../src/prompt/prompt-builder.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,KAAK,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAExG,kBAAkB;AAClB,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAsBtD,CAAC;AAMF
|
|
1
|
+
{"version":3,"file":"prompt-builder.d.ts","sourceRoot":"","sources":["../../../src/prompt/prompt-builder.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,KAAK,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAExG,kBAAkB;AAClB,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAsBtD,CAAC;AAMF,+CAA+C;AAC/C,eAAO,MAAM,iBAAiB,i2GA4CuE,CAAC;AAEtG;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CAc5D;AAED;;GAEG;AACH,qBAAa,oBAAqB,YAAW,qBAAqB;IAChE,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,GAAG,MAAM;IAIzE,kBAAkB,CAChB,OAAO,EAAE,kBAAkB,EAC3B,KAAK,EAAE,YAAY,EACnB,MAAM,CAAC,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,kBAAkB,EAAE,EAClC,qBAAqB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC,EACjE,MAAM,CAAC,EAAE,YAAY,GACpB,MAAM;IAuCT,qBAAqB,CACnB,OAAO,EAAE,kBAAkB,EAC3B,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,YAAY,EACpB,MAAM,CAAC,EAAE,MAAM,GACd,MAAM;IA4BT,iBAAiB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM;IAYjD,oBAAoB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM;CASrD;AAED,uBAAuB;AACvB,eAAO,MAAM,uBAAuB,4oBAUoC,CAAC;AAEzE,yBAAyB;AACzB,eAAO,MAAM,2BAA2B,iSAKE,CAAC"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
// ============================================================
|
|
3
|
-
// PromptBuilder
|
|
3
|
+
// PromptBuilder - 默认 Prompt 构建实现
|
|
4
4
|
// ============================================================
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.SPECIALIST_SYNTHESIS_PROMPT = exports.RESULT_SYNTHESIS_PROMPT = exports.DefaultPromptBuilder = exports.GLOBAL_BASE_RULES = exports.BUILTIN_TOOL_LABELS = void 0;
|
|
7
|
+
exports.buildToolPrompts = buildToolPrompts;
|
|
7
8
|
/** 内置工具名称可读化映射 */
|
|
8
9
|
exports.BUILTIN_TOOL_LABELS = {
|
|
9
10
|
execute_command: '执行命令',
|
|
@@ -31,76 +32,72 @@ exports.BUILTIN_TOOL_LABELS = {
|
|
|
31
32
|
// ============================================================
|
|
32
33
|
// 全局基础规则(注入到所有 Agent 的系统提示词中)
|
|
33
34
|
// ============================================================
|
|
34
|
-
/** 全局基础规则
|
|
35
|
+
/** 全局基础规则 - 所有 Agent 共享的通用行为规范(不含任何具体工具名引用) */
|
|
35
36
|
exports.GLOBAL_BASE_RULES = `
|
|
36
37
|
|
|
37
38
|
## Universal Rules
|
|
38
39
|
|
|
39
40
|
### Plan Before Execute
|
|
40
41
|
- For ANY task involving multiple steps: **output a numbered step list before doing anything**
|
|
41
|
-
- Format the plan as a **bold inline list**, NOT as markdown headings (## or ###). Use: "**1.** Fetch data
|
|
42
|
+
- Format the plan as a **bold inline list**, NOT as markdown headings (## or ###). Use: "**1.** Fetch data -> **2.** Analyze -> **3.** Generate output"
|
|
42
43
|
- Do NOT start calling tools until the plan is output
|
|
43
|
-
- As you work, track progress: ✓ done /
|
|
44
|
+
- As you work, track progress: ✓ done / -> in progress / ○ pending
|
|
44
45
|
|
|
45
46
|
### Read Before Write
|
|
46
47
|
- If the user provides a file, document reference, or data source: **read/fetch it first** before creating outputs
|
|
47
48
|
- Gather all necessary data before starting generation
|
|
48
|
-
- Don't assume content
|
|
49
|
-
|
|
50
|
-
### Tool Parameter Limits
|
|
51
|
-
- \`write_file\` / \`append_file\` content: **keep under 3000 chars** per call (JSON escaping inflates size by 30-50%)
|
|
52
|
-
- For large content: split into multiple \`append_file\` calls, one chunk per call
|
|
53
|
-
- Never use heredoc (\`cat >> file << EOF\`) in \`execute_command\`
|
|
49
|
+
- Don't assume content - verify with tools
|
|
54
50
|
|
|
55
51
|
### Error Recovery
|
|
56
52
|
- If a tool call fails: **diagnose the error** before retrying
|
|
57
|
-
- Never blindly retry the same failing approach
|
|
58
|
-
- If content was truncated: use
|
|
53
|
+
- Never blindly retry the same failing approach - try a different method
|
|
54
|
+
- If content was truncated: use file appending tools to add the remaining parts
|
|
59
55
|
|
|
60
56
|
### Conversation History & Current Request
|
|
61
|
-
- Your conversation history is provided in <conversation_history> tags as a summary
|
|
62
|
-
- The current user request is in <current_request> tags or is the latest user message
|
|
57
|
+
- Your conversation history is provided in <conversation_history> tags as a summary - it is context only
|
|
58
|
+
- The current user request is in <current_request> tags or is the latest user message - this is what you must act on
|
|
63
59
|
- Do NOT proactively combine or continue tasks from <conversation_history> unless <current_request> explicitly references them
|
|
64
60
|
- Evaluate task complexity based on <current_request> alone, not on accumulated history
|
|
65
61
|
- **REUSE prior results (CRITICAL)**: If the current request repeats or closely resembles a previously completed task in history (e.g. "再生成一次", "regenerate", "重新做", "同样的"), **do NOT re-fetch or re-query the same data sources**. Reuse the data and results already gathered in <conversation_history> to produce the output. Only fetch new data if the request explicitly asks for different/newer information.
|
|
66
62
|
|
|
67
|
-
###
|
|
68
|
-
- **NEVER proactively use tools that create files, reports, or artifacts
|
|
69
|
-
- Your default output is text/structured data directly in the conversation
|
|
70
|
-
- If the user asks for "analysis" or "summary", provide it as text
|
|
63
|
+
### Output Restraint (CRITICAL)
|
|
64
|
+
- **NEVER proactively use tools that create files, reports, or artifacts unless the user explicitly asks for them**
|
|
65
|
+
- Your default output is text/structured data directly in the conversation - not files
|
|
66
|
+
- If the user asks for "analysis" or "summary", provide it as text - do NOT auto-generate a report file
|
|
71
67
|
- Only generate files/reports when the user explicitly says "生成报告", "create PDF", "make a PPT", "save as file", etc.
|
|
72
|
-
- **⛔ STRICT FORMAT EXCLUSIVITY (CRITICAL)**: For any single user request, you may call **at most ONE** of \`create_presentation\`, \`create_report\`, \`create_document\`, \`create_pdf\`. **NEVER** call two or more of these tools for the same content/request. If the user asks for a "report", generate exactly ONE format (default: HTML via \`create_report\`). Do NOT generate both PPTX and HTML, or both PDF and DOCX, etc.
|
|
73
|
-
|
|
74
|
-
### User Interaction (CRITICAL)
|
|
75
|
-
- 当你需要用户**做出选择、确认或提供输入**时,**必须调用 \`ask_user\` 工具**,而不是在回复中输出"您是否需要我…"、"请确认是否…"等自由文本。
|
|
76
|
-
- \`ask_user\` 会**暂停当前执行**并等待用户回答;收到答案后你的工具会返回用户的选择/输入,据此继续执行任务。
|
|
77
|
-
- 适用场景举例:
|
|
78
|
-
- 需要用户确认某个操作(type: \`confirm\`)
|
|
79
|
-
- 给用户一组选项让其选择后续动作(type: \`choice\` / \`multi-choice\`)
|
|
80
|
-
- 需要用户补充一段自由文本(type: \`input\`)
|
|
81
|
-
- **不要**用大段文字把问题抛给用户然后结束回复;应当通过 \`ask_user\` 真正等待答案。
|
|
82
|
-
- 仅在确实需要从用户处获取信息时才使用,避免无谓地打断用户。
|
|
83
68
|
|
|
84
69
|
### Iteration Budget & Efficiency (CRITICAL)
|
|
85
70
|
- You have a **limited number of iterations** (typically 15). Every LLM turn counts.
|
|
86
|
-
- **NEVER re-query the same data source.** If you called a tool and got results, use those results
|
|
87
|
-
- **NEVER
|
|
71
|
+
- **NEVER re-query the same data source.** If you called a tool and got results, use those results - do NOT call it again.
|
|
72
|
+
- **NEVER re-read data you already received** - do not call read/result retrieval tools on data already in context.
|
|
88
73
|
- **Batch data gathering:** call multiple independent tools in the SAME turn (parallel tool calls).
|
|
89
|
-
- **Data
|
|
90
|
-
- **Return concise structured summaries**, not raw data dumps. Extract key metrics, rankings, distributions
|
|
91
|
-
|
|
92
|
-
### Delegate Progress Reporting (CRITICAL for UX)
|
|
93
|
-
When you call \`delegate_task\`, the user sees NOTHING while the sub-agent runs — no progress, no feedback. This makes long delegations feel broken.
|
|
74
|
+
- **Data -> Action pipeline:** gather data in 1-2 iterations, then immediately analyze/generate in the next iteration.
|
|
75
|
+
- **Return concise structured summaries**, not raw data dumps. Extract key metrics, rankings, distributions - not every single record.
|
|
94
76
|
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
3. **Before generating output files** (PPT/PDF/etc.): Output "正在生成 {file_type}…"
|
|
99
|
-
|
|
100
|
-
**Final reply rules:**
|
|
101
|
-
- After all delegations and file generation complete, provide a **clean, structured summary** of results
|
|
102
|
-
- Do NOT include internal reasoning, tool call logs, or progress narration in the final reply — those belong in progress messages only
|
|
77
|
+
### Final Reply Rules
|
|
78
|
+
- After all tasks and file generation complete, provide a **clean, structured summary** of results
|
|
79
|
+
- Do NOT include internal reasoning, tool call logs, or progress narration in the final reply
|
|
103
80
|
- The final reply should be polished and user-facing: key findings, recommendations, generated files`;
|
|
81
|
+
/**
|
|
82
|
+
* 收集已注册工具的使用引导(prompt),注入到 system prompt
|
|
83
|
+
*
|
|
84
|
+
* 每个工具可以通过 RegisteredTool.prompt 字段携带使用引导。
|
|
85
|
+
* 仅当工具实际注册时,其 prompt 才会被收集并注入,
|
|
86
|
+
* 避免 LLM 被引导调用未绑定的工具。
|
|
87
|
+
*/
|
|
88
|
+
function buildToolPrompts(tools) {
|
|
89
|
+
const names = tools.listNames();
|
|
90
|
+
const prompts = [];
|
|
91
|
+
for (const name of names) {
|
|
92
|
+
const tool = tools.get(name);
|
|
93
|
+
if (tool?.prompt) {
|
|
94
|
+
prompts.push(tool.prompt);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
if (prompts.length === 0)
|
|
98
|
+
return '';
|
|
99
|
+
return `\n## Tool Usage Guidelines\n\n${prompts.join('\n\n')}`;
|
|
100
|
+
}
|
|
104
101
|
/**
|
|
105
102
|
* 默认 PromptBuilderProvider 实现
|
|
106
103
|
*/
|
|
@@ -112,6 +109,10 @@ class DefaultPromptBuilder {
|
|
|
112
109
|
const parts = [];
|
|
113
110
|
parts.push(profile.basePrompt || 'You are a helpful AI assistant with access to tools. Use tools when needed to accomplish tasks. Always explain your actions clearly. Respond in the same language as the user.');
|
|
114
111
|
parts.push(exports.GLOBAL_BASE_RULES);
|
|
112
|
+
// 收集已注册工具的使用引导(每个工具自带 prompt 字段)
|
|
113
|
+
const toolPrompts = buildToolPrompts(tools);
|
|
114
|
+
if (toolPrompts)
|
|
115
|
+
parts.push(toolPrompts);
|
|
115
116
|
if (memory) {
|
|
116
117
|
parts.push(`\n${memory}`);
|
|
117
118
|
}
|
|
@@ -141,6 +142,10 @@ class DefaultPromptBuilder {
|
|
|
141
142
|
const parts = [];
|
|
142
143
|
parts.push(profile.basePrompt || 'You are a specialist AI agent. Focus on your domain expertise and use tools to accomplish tasks.');
|
|
143
144
|
parts.push(exports.GLOBAL_BASE_RULES);
|
|
145
|
+
// 收集已注册工具的使用引导(每个工具自带 prompt 字段)
|
|
146
|
+
const toolPrompts = buildToolPrompts(tools);
|
|
147
|
+
if (toolPrompts)
|
|
148
|
+
parts.push(toolPrompts);
|
|
144
149
|
if (memory) {
|
|
145
150
|
parts.push(`\n${memory}`);
|
|
146
151
|
}
|
|
@@ -185,12 +190,12 @@ exports.RESULT_SYNTHESIS_PROMPT = `
|
|
|
185
190
|
## Tool Result Presentation (MANDATORY)
|
|
186
191
|
|
|
187
192
|
After calling tools and receiving data, you MUST:
|
|
188
|
-
1. **Analyze and summarize**
|
|
189
|
-
2. **Highlight key findings**
|
|
190
|
-
3. **Structured presentation**
|
|
191
|
-
4. **Add insights**
|
|
192
|
-
5. **NEVER re-fetch**
|
|
193
|
-
6. **Use user's language**
|
|
193
|
+
1. **Analyze and summarize** - never dump raw JSON or tool output directly; synthesize and organize the data
|
|
194
|
+
2. **Highlight key findings** - identify trends, anomalies, or notable information
|
|
195
|
+
3. **Structured presentation** - use headings, bullet points, or tables for readability
|
|
196
|
+
4. **Add insights** - provide professional interpretation, comparisons, or recommendations
|
|
197
|
+
5. **NEVER re-fetch** - if you already called a tool and got results, do NOT call the same tool again
|
|
198
|
+
6. **Use user's language** - respond in the same language the user used`;
|
|
194
199
|
/** Specialist 结果综合提示词 */
|
|
195
200
|
exports.SPECIALIST_SYNTHESIS_PROMPT = `Based on the specialist agents' outputs above, provide a comprehensive synthesis:
|
|
196
201
|
1. Summarize key findings from each agent
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt-builder.js","sourceRoot":"","sources":["../../../src/prompt/prompt-builder.ts"],"names":[],"mappings":";AAAA,+DAA+D;AAC/D,iCAAiC;AACjC,+DAA+D;;;
|
|
1
|
+
{"version":3,"file":"prompt-builder.js","sourceRoot":"","sources":["../../../src/prompt/prompt-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -47,8 +47,8 @@ export declare function buildMCPToolDescList(registry: ToolRegistry, categoryAwa
|
|
|
47
47
|
export declare function buildSpecialistMcpPriorityPrompt(profileName: string, mcpToolList: string): string;
|
|
48
48
|
export declare function buildDataPresentationPrompt(capabilities: Pick<AgentToolCapabilities, 'hasCreateReport'>, options?: DataPresentationPromptOptions): string;
|
|
49
49
|
export declare const HTML_WIDGET_QUALITY_RULES = "\n\n**\u26D4 HTML \u8D28\u91CF\u94C1\u5F8B\uFF08\u8FDD\u53CD\u4F1A\u5BFC\u81F4\u62A5\u8868\u5D29\u6E83\uFF09\uFF1A**\n- **\u7EDD\u5BF9\u7981\u6B62** \u5C06 HTML \u6807\u7B7E\u8F6C\u4E49\u4E3A\u5B9E\u4F53\uFF08\u5982 `<h3>`\uFF09\uFF0C\u8FD9\u4F1A\u5BFC\u81F4\u5185\u5BB9\u663E\u793A\u4E3A\u539F\u59CB\u6587\u672C\n- `getElementById` \u7684\u53C2\u6570 **\u5FC5\u987B** \u4E0E HTML \u5143\u7D20\u7684 `id` \u5C5E\u6027 **\u5B8C\u5168\u4E00\u81F4**\uFF08\u5927\u5C0F\u5199\u3001\u62FC\u5199\uFF09\n- \u590D\u6742\u62A5\u8868 **\u4F18\u5148\u4F7F\u7528 html_file** \u800C\u975E\u5185\u8054 html \u53C2\u6570\uFF0C\u907F\u514D\u53C2\u6570\u622A\u65AD\u548C\u8F6C\u4E49\u95EE\u9898\n- **\u7981\u6B62\u81EA\u5B9A\u4E49 CSS \u53D8\u91CF**\uFF1A\u4E0D\u8981\u5728 `:root` \u4E2D\u5B9A\u4E49 `--bg-page`\u3001`--text-primary` \u7B49\u81EA\u5B9A\u4E49\u53D8\u91CF\u3002\u7CFB\u7EDF\u81EA\u52A8\u6CE8\u5165 `--color-*` \u53D8\u91CF\uFF08\u5982 `--color-bg-page`\u3001`--color-text-primary`\uFF09\uFF0C**\u5FC5\u987B\u4F7F\u7528\u8FD9\u4E9B\u6CE8\u5165\u53D8\u91CF**\n- **\u7981\u6B62 ECharts \u786C\u7F16\u7801\u989C\u8272**\uFF1A\u4E0D\u8981\u5199 `var COLORS = ['#00e5ff',...]`\uFF0C\u6539\u7528 `getComputedStyle(document.documentElement).getPropertyValue('--color-accent-primary').trim()`";
|
|
50
|
-
export declare const SPECIALIST_EFFICIENCY_RULES = "\n\n## \u26A0\uFE0F \u8FED\u4EE3\u6548\u7387\u5F3A\u5236\u89C4\u5219\uFF08CRITICAL \u2014 MUST FOLLOW\uFF09\n\n1. **\u6570\u636E\u53EA\u67E5\u4E00\u6B21**\uFF1A\u8C03\u7528\u5DE5\u5177\u83B7\u53D6\u6570\u636E\u540E\uFF0C\u76F4\u63A5\u4F7F\u7528\u5BF9\u8BDD\u5386\u53F2\u4E2D\u7684\u7ED3\u679C\u8FDB\u884C\u5206\u6790\u548C\u7EFC\u5408\uFF0C\u7EDD\u5BF9\u4E0D\u8981\u518D\u6B21\u8C03\u7528\u76F8\u540C\u7684\u5DE5\u5177\n2. **\u5DE5\u5177\u8C03\u7528\u786C\u9650\u5236**\uFF1A\u6BCF\u4E2A\u72EC\u7ACB\u7684\u5DE5\u5177\uFF08\u6309\u5DE5\u5177\u540D\u533A\u5206\uFF09\u6700\u591A\u8C03\u7528 **2 \u6B21**\u3002\u5982\u679C\u7B2C 1 \u6B21\u8C03\u7528\u5DF2\u8FD4\u56DE\u5145\u8DB3\u6570\u636E\uFF08>20 \u6761\u8BB0\u5F55\u6216\u7ED3\u6784\u5316\u6C47\u603B\uFF09\uFF0C**\u7981\u6B62\u7B2C 2 \u6B21\u8C03\u7528**\u3002\u7EDD\u5BF9\u4E0D\u8981\u7528\u76F8\u540C\u53C2\u6570\u91CD\u590D\u8C03\u7528\u540C\u4E00\u5DE5\u5177\n3. **\u7981\u6B62\u5197\u4F59\u8BFB\u53D6**\uFF1A\u5982\u679C\u5DE5\u5177\u7ED3\u679C\u88AB offload\uFF08\u663E\u793A [offload:xxx] \u6807\u7B7E\uFF09\uFF0C\u6700\u591A
|
|
50
|
+
export declare const SPECIALIST_EFFICIENCY_RULES = "\n\n## \u26A0\uFE0F \u8FED\u4EE3\u6548\u7387\u5F3A\u5236\u89C4\u5219\uFF08CRITICAL \u2014 MUST FOLLOW\uFF09\n\n1. **\u6570\u636E\u53EA\u67E5\u4E00\u6B21**\uFF1A\u8C03\u7528\u5DE5\u5177\u83B7\u53D6\u6570\u636E\u540E\uFF0C\u76F4\u63A5\u4F7F\u7528\u5BF9\u8BDD\u5386\u53F2\u4E2D\u7684\u7ED3\u679C\u8FDB\u884C\u5206\u6790\u548C\u7EFC\u5408\uFF0C\u7EDD\u5BF9\u4E0D\u8981\u518D\u6B21\u8C03\u7528\u76F8\u540C\u7684\u5DE5\u5177\n2. **\u5DE5\u5177\u8C03\u7528\u786C\u9650\u5236**\uFF1A\u6BCF\u4E2A\u72EC\u7ACB\u7684\u5DE5\u5177\uFF08\u6309\u5DE5\u5177\u540D\u533A\u5206\uFF09\u6700\u591A\u8C03\u7528 **2 \u6B21**\u3002\u5982\u679C\u7B2C 1 \u6B21\u8C03\u7528\u5DF2\u8FD4\u56DE\u5145\u8DB3\u6570\u636E\uFF08>20 \u6761\u8BB0\u5F55\u6216\u7ED3\u6784\u5316\u6C47\u603B\uFF09\uFF0C**\u7981\u6B62\u7B2C 2 \u6B21\u8C03\u7528**\u3002\u7EDD\u5BF9\u4E0D\u8981\u7528\u76F8\u540C\u53C2\u6570\u91CD\u590D\u8C03\u7528\u540C\u4E00\u5DE5\u5177\n3. **\u7981\u6B62\u5197\u4F59\u8BFB\u53D6**\uFF1A\u5982\u679C\u5DE5\u5177\u7ED3\u679C\u88AB offload\uFF08\u663E\u793A [offload:xxx] \u6807\u7B7E\uFF09\uFF0C\u6700\u591A\u8BFB\u53D6 **\u4E00\u6B21**\uFF0C\u7136\u540E\u7ACB\u5373\u7EFC\u5408\u6458\u8981\u3002\u7EDD\u5BF9\u4E0D\u8981\u53CD\u590D\u8BFB\u53D6\u540C\u4E00\u4E2A offload \u8282\u70B9\n4. **\u5FEB\u901F\u7EFC\u5408**\uFF1A\u6570\u636E\u83B7\u53D6\u5B8C\u6BD5\u540E\uFF08\u901A\u5E38 2-3 \u4E2A\u5DE5\u5177\u8C03\u7528\uFF09\uFF0C\u76F4\u63A5\u5728\u4E0B\u4E00\u8F6E\u8FED\u4EE3\u4E2D\u8F93\u51FA\u7ED3\u6784\u5316\u5206\u6790\u7ED3\u679C\uFF0C\u4E0D\u8981\u82B1\u989D\u5916\u8FED\u4EE3\u91CD\u65B0\u6574\u7406\u6570\u636E\n5. **\u8FED\u4EE3\u9884\u7B97**\uFF1A\u4F60\u53EA\u6709 15 \u4E2A\u8FED\u4EE3\uFF0C\u6BCF\u4E2A LLM \u8F6E\u6B21\u90FD\u7B97\u4E00\u6B21\u3002\u6570\u636E\u83B7\u53D6\u9636\u6BB5\u4E0D\u5E94\u8D85\u8FC7 **3 \u4E2A\u8FED\u4EE3**\uFF0C\u603B\u5DE5\u5177\u8C03\u7528\u4E0D\u8D85\u8FC7 **6 \u6B21**\n6. **\u8FD4\u56DE\u7CBE\u7B80\u6458\u8981**\uFF1A\u8FD4\u56DE\u7ED3\u6784\u5316\u7684\u5173\u952E\u6307\u6807\u3001\u6392\u884C\u699C\u3001\u5206\u5E03\u7EDF\u8BA1\uFF0C\u800C\u975E\u6BCF\u6761\u8BB0\u5F55\u7684\u539F\u59CB\u6570\u636E\n7. **\u7981\u6B62\u53CD\u95EE\u7528\u6237**\uFF1A\u4F60\u88AB\u59D4\u6258\u6267\u884C\u4EFB\u52A1\uFF0C**\u7EDD\u5BF9\u4E0D\u80FD**\u5728\u7ED3\u679C\u4E2D\u53CD\u95EE\u7528\u6237\"\u9700\u8981\u6211\u505A\u4EC0\u4E48\u5417\uFF1F\"\u6216\"\u8BF7\u786E\u8BA4\u60A8\u7684\u9700\u6C42\"\u3002\u4EFB\u52A1\u63CF\u8FF0\u5C31\u662F\u4F60\u7684\u5168\u90E8\u6307\u4EE4\uFF0C\u76F4\u63A5\u5B8C\u6210\u5E76\u8FD4\u56DE\u7ED3\u679C\u3002\u5982\u679C\u4EFB\u52A1\u63CF\u8FF0\u4E0D\u6E05\u6670\uFF0C\u57FA\u4E8E\u4F60\u7684\u4E13\u4E1A\u77E5\u8BC6\u505A\u6700\u4F73\u5224\u65AD\u5E76\u6267\u884C\n8. **\u5931\u8D25\u4E0D\u8981\u53CD\u590D\u91CD\u8BD5**\uFF1A\u5982\u679C\u67D0\u6B21\u5DE5\u5177\u8C03\u7528\u8FD4\u56DE\u9519\u8BEF\uFF08\u5982\u8D85\u65F6\u3001\u7F51\u7EDC\u9519\u8BEF\uFF09\uFF0C**\u4E0D\u8981\u5BF9\u540C\u4E00\u5931\u8D25\u5DE5\u5177\u53CD\u590D\u91CD\u8BD5**\u2014\u2014\u6700\u591A\u91CD\u8BD5 1 \u6B21\uFF0C\u82E5\u4ECD\u5931\u8D25\u5219\u76F4\u63A5\u57FA\u4E8E\u5DF2\u6709\u4FE1\u606F\u7EE7\u7EED\u5206\u6790\uFF0C\u6216\u7B80\u8981\u8BF4\u660E\u8BE5\u6570\u636E\u83B7\u53D6\u5931\u8D25\uFF0C\u7EDD\u4E0D\u8BA9\u5931\u8D25\u7684\u5DE5\u5177\u8C03\u7528\u62D6\u57AE\u6574\u4E2A\u4EFB\u52A1";
|
|
51
51
|
export declare const OUTPUT_CONCISION_RULES = "\n\n## \uD83D\uDCDD \u8F93\u51FA\u7B80\u6D01\u89C4\u5219\uFF08MANDATORY\uFF09\n\n- **\u4E0D\u8981\u590D\u8FF0\u5DE5\u5177\u8FD4\u56DE\u7684\u539F\u59CB\u6570\u636E**\uFF1A\u5DE5\u5177\u7ED3\u679C\u5DF2\u5728\u6D3B\u52A8\u9762\u677F\u5C55\u793A\uFF0C\u4F60\u53EA\u9700\u603B\u7ED3\u8981\u70B9\n- **\u4E0D\u8981\u9010\u6B65\u63CF\u8FF0\u6BCF\u4E2A\u5DE5\u5177\u8C03\u7528**\uFF1A\u907F\u514D\u8F93\u51FA\u7C7B\u4F3C \"mcp_xxx \u2192 xxx...\" \u6216 \"mcp_xxx (xxxms): {...}\" \u7684\u6280\u672F\u65E5\u5FD7\n- **\u89C4\u5212\u8981\u7B80\u77ED**\uFF1A1-2 \u53E5\u8BDD\u6982\u8FF0\u8BA1\u5212\u5373\u53EF\uFF0C\u4E0D\u8981\u5217\u51FA\u6BCF\u4E2A\u5DE5\u5177\u540D\u548C\u53C2\u6570\n- **\u7ED3\u679C\u603B\u7ED3\u8981\u7CBE\u70BC**\uFF1A\u7528 2-3 \u53E5\u8BDD\u603B\u7ED3\u5173\u952E\u53D1\u73B0\n- **\u7EDD\u5BF9\u7981\u6B62\u8F93\u51FA\u6C99\u7BB1\u6587\u4EF6\u8DEF\u5F84**\uFF1A\u5982 `_artifacts/...`\u3001`/Users/...` \u7B49\u8DEF\u5F84\u5BF9\u7528\u6237\u65E0\u610F\u4E49\uFF0C\u7528\u6237\u901A\u8FC7 artifact \u5361\u7247\u9884\u89C8\u5373\u53EF\n- **\u7EDD\u5BF9\u7981\u6B62\u8F93\u51FA artifact \u7684 HTTP \u4E0B\u8F7D URL**\uFF1A\u5982 `/api/work/artifacts/...` \u8FD9\u7C7B\u94FE\u63A5\u7531\u524D\u7AEF\u81EA\u52A8\u6E32\u67D3\u4E3A\u9884\u89C8/\u4E0B\u8F7D\u5361\u7247\uFF0C\u590D\u8FF0\u5230\u56DE\u590D\u91CC\u65E2\u5197\u4F59\u53C8\u4E0D\u53EF\u70B9\u51FB\uFF0C\u7EDD\u4E0D\u8981\u8F93\u51FA";
|
|
52
|
-
export declare const SUB_AGENT_RESULT_SUMMARY_RULES = "\n\n## \uD83D\uDCCB \u5B50 Agent \u7ED3\u679C\u6C47\u603B\u89C4\u5219\uFF08CRITICAL \u2014 MUST FOLLOW\uFF09\n\n\u5F53
|
|
52
|
+
export declare const SUB_AGENT_RESULT_SUMMARY_RULES = "\n\n## \uD83D\uDCCB \u5B50 Agent \u7ED3\u679C\u6C47\u603B\u89C4\u5219\uFF08CRITICAL \u2014 MUST FOLLOW\uFF09\n\n\u5F53\u59D4\u6D3E\u4EFB\u52A1\u5B8C\u6210\u540E\uFF0C\u4F60 **\u5FC5\u987B** \u5728\u56DE\u590D\u4E2D\u6C47\u603B\u5B50 Agent \u7684\u5173\u952E\u7ED3\u679C\uFF0C\u800C\u4E0D\u662F\u53EA\u8BF4\"\u5DF2\u5B8C\u6210\"\uFF1A\n\n1. **\u63D0\u53D6\u5173\u952E\u53D1\u73B0**\uFF1A\u4ECE\u5B50 Agent \u8FD4\u56DE\u7684\u6587\u672C\u4E2D\u63D0\u53D6\u6838\u5FC3\u7ED3\u8BBA\u3001\u5173\u952E\u6570\u636E\u3001\u63A8\u8350\u65B9\u6848\u7B49\n2. **\u7ED3\u6784\u5316\u5448\u73B0**\uFF1A\u7528 Markdown \u683C\u5F0F\uFF08\u6807\u9898\u3001\u5217\u8868\u3001\u8868\u683C\uFF09\u5C06\u5173\u952E\u5185\u5BB9\u5448\u73B0\u5728\u5BF9\u8BDD\u4E2D\uFF0C\u8BA9\u7528\u6237\u65E0\u9700\u5C55\u5F00\u5DE5\u5177\u8C03\u7528\u8BE6\u60C5\u5373\u53EF\u770B\u5230\u7ED3\u679C\n3. **\u5305\u542B\u5177\u4F53\u6570\u636E**\uFF1A\u4E0D\u8981\u53EA\u8BF4\"\u5206\u6790\u5B8C\u6210\"\uFF0C\u8981\u5305\u542B\u5177\u4F53\u7684\u5206\u6790\u7ED3\u679C\uFF08\u5982\uFF1A\u63A8\u8350\u7684\u80A1\u7968\u3001\u5173\u952E\u6307\u6807\u3001\u8BC4\u4F30\u7ED3\u8BBA\u7B49\uFF09\n4. **\u6807\u6CE8\u4EA7\u7269**\uFF1A\u5982\u679C\u5B50 Agent \u751F\u6210\u4E86 artifact\uFF08HTML\u62A5\u544A/PPT\u7B49\uFF09\uFF0C\u53EA\u9700\u7B80\u5355\u63D0\u53CA\u4EA7\u7269\u540D\u79F0\uFF08\u5982\"\u5DF2\u751F\u6210\u5206\u6790\u62A5\u544A.docx\"\uFF09\uFF0C**\u7EDD\u5BF9\u7981\u6B62\u8F93\u51FA\u6587\u4EF6\u8DEF\u5F84\u6216 HTTP \u4E0B\u8F7D URL**\uFF08\u5982 `_artifacts/...`\u3001`/api/work/artifacts/...`\uFF09\uFF0C\u7528\u6237\u901A\u8FC7 artifact \u5361\u7247\u9884\u89C8\u5373\u53EF\n\n**\u6CE8\u610F**\uFF1A\u8FD9\u6761\u89C4\u5219\u4F18\u5148\u4E8E\"\u8F93\u51FA\u7B80\u6D01\u89C4\u5219\"\u2014\u2014\u5B50 Agent \u7684\u5173\u952E\u7ED3\u679C\u5FC5\u987B\u5448\u73B0\u5728\u5BF9\u8BDD\u4E2D\uFF0C\u4E0D\u80FD\u88AB\u7701\u7565";
|
|
53
53
|
export declare function buildSpecialistOutputBoundaryPrompt(capabilities: Pick<AgentToolCapabilities, 'hasOutputTools' | 'hasShowWidget'>, options?: SpecialistBoundaryPromptOptions): string;
|
|
54
54
|
//# sourceMappingURL=shared-fragments.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared-fragments.d.ts","sourceRoot":"","sources":["../../../src/prompt/shared-fragments.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE5D,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,OAAO,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,6BAA6B;IAC5C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,+BAA+B;IAC9C,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,+BAA+B;AAC/B,eAAO,MAAM,yBAAyB,UAA4E,CAAC;AAEnH,oCAAoC;AACpC,MAAM,WAAW,4BAA4B;IAC3C,kBAAkB;IAClB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,YAAY,EACnB,OAAO,CAAC,EAAE,4BAA4B,GACrC,qBAAqB,CA0BvB;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,aAAa,UAAQ,GAAG,MAAM,CAc1F;AAED,wBAAgB,gCAAgC,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAEjG;AAED,wBAAgB,2BAA2B,CAAC,YAAY,EAAE,IAAI,CAAC,qBAAqB,EAAE,iBAAiB,CAAC,EAAE,OAAO,GAAE,6BAAkC,GAAG,MAAM,CAe7J;AAED,eAAO,MAAM,yBAAyB,4wCAAgiB,CAAC;AAEvkB,eAAO,MAAM,2BAA2B,
|
|
1
|
+
{"version":3,"file":"shared-fragments.d.ts","sourceRoot":"","sources":["../../../src/prompt/shared-fragments.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE5D,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,OAAO,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,6BAA6B;IAC5C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,+BAA+B;IAC9C,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,+BAA+B;AAC/B,eAAO,MAAM,yBAAyB,UAA4E,CAAC;AAEnH,oCAAoC;AACpC,MAAM,WAAW,4BAA4B;IAC3C,kBAAkB;IAClB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,YAAY,EACnB,OAAO,CAAC,EAAE,4BAA4B,GACrC,qBAAqB,CA0BvB;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,aAAa,UAAQ,GAAG,MAAM,CAc1F;AAED,wBAAgB,gCAAgC,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAEjG;AAED,wBAAgB,2BAA2B,CAAC,YAAY,EAAE,IAAI,CAAC,qBAAqB,EAAE,iBAAiB,CAAC,EAAE,OAAO,GAAE,6BAAkC,GAAG,MAAM,CAe7J;AAED,eAAO,MAAM,yBAAyB,4wCAAgiB,CAAC;AAEvkB,eAAO,MAAM,2BAA2B,2wGAC2E,CAAC;AAEpH,eAAO,MAAM,sBAAsB,o4CACwE,CAAC;AAE5G,eAAO,MAAM,8BAA8B,m3DAAigB,CAAC;AAE7iB,wBAAgB,mCAAmC,CAAC,YAAY,EAAE,IAAI,CAAC,qBAAqB,EAAE,gBAAgB,GAAG,eAAe,CAAC,EAAE,OAAO,GAAE,+BAAoC,GAAG,MAAM,CAwBxL"}
|
|
@@ -50,7 +50,7 @@ function buildMCPToolDescList(registry, categoryAware = false) {
|
|
|
50
50
|
return names.map(name => `- \`${name}\`: ${defMap.get(name) || ''}`).join('\n');
|
|
51
51
|
}
|
|
52
52
|
function buildSpecialistMcpPriorityPrompt(profileName, mcpToolList) {
|
|
53
|
-
return `\n\n## 专业工具(HIGHEST PRIORITY — MUST USE FIRST)\n\n你是「${profileName}」专业助手,拥有以下专业数据工具。\n\n**⚠️ 强制规则:MCP 工具优先于一切通用工具**\n1. 对于任何数据查询请求,你 **必须** 首先使用下方的 MCP 专业工具获取数据\n2. **禁止** 在 MCP
|
|
53
|
+
return `\n\n## 专业工具(HIGHEST PRIORITY — MUST USE FIRST)\n\n你是「${profileName}」专业助手,拥有以下专业数据工具。\n\n**⚠️ 强制规则:MCP 工具优先于一切通用工具**\n1. 对于任何数据查询请求,你 **必须** 首先使用下方的 MCP 专业工具获取数据\n2. **禁止** 在 MCP 工具可用时使用通用工具(如网页抓取、curl、命令行)去抓取网页或调用 API\n3. 只有当 **所有** MCP 工具调用均失败(返回错误)后,才可以回退到网页抓取工具作为最后手段\n4. 不要"先了解网站结构"或"先尝试抓取"——直接使用 MCP 工具查询数据\n\n可用 MCP 工具:\n${mcpToolList}`;
|
|
54
54
|
}
|
|
55
55
|
function buildDataPresentationPrompt(capabilities, options = {}) {
|
|
56
56
|
const jsonFileExample = options.jsonFileExample || 'data.json';
|
|
@@ -66,11 +66,11 @@ function buildDataPresentationPrompt(capabilities, options = {}) {
|
|
|
66
66
|
return options.includeHtmlQualityRules ? prompt + exports.HTML_WIDGET_QUALITY_RULES : prompt;
|
|
67
67
|
}
|
|
68
68
|
exports.HTML_WIDGET_QUALITY_RULES = `\n\n**⛔ HTML 质量铁律(违反会导致报表崩溃):**\n- **绝对禁止** 将 HTML 标签转义为实体(如 \`<h3>\`),这会导致内容显示为原始文本\n- \`getElementById\` 的参数 **必须** 与 HTML 元素的 \`id\` 属性 **完全一致**(大小写、拼写)\n- 复杂报表 **优先使用 html_file** 而非内联 html 参数,避免参数截断和转义问题\n- **禁止自定义 CSS 变量**:不要在 \`:root\` 中定义 \`--bg-page\`、\`--text-primary\` 等自定义变量。系统自动注入 \`--color-*\` 变量(如 \`--color-bg-page\`、\`--color-text-primary\`),**必须使用这些注入变量**\n- **禁止 ECharts 硬编码颜色**:不要写 \`var COLORS = ['#00e5ff',...]\`,改用 \`getComputedStyle(document.documentElement).getPropertyValue('--color-accent-primary').trim()\``;
|
|
69
|
-
exports.SPECIALIST_EFFICIENCY_RULES = `\n\n## ⚠️ 迭代效率强制规则(CRITICAL — MUST FOLLOW)\n\n1. **数据只查一次**:调用工具获取数据后,直接使用对话历史中的结果进行分析和综合,绝对不要再次调用相同的工具\n2. **工具调用硬限制**:每个独立的工具(按工具名区分)最多调用 **2 次**。如果第 1 次调用已返回充足数据(>20 条记录或结构化汇总),**禁止第 2 次调用**。绝对不要用相同参数重复调用同一工具\n3. **禁止冗余读取**:如果工具结果被 offload(显示 [offload:xxx]
|
|
70
|
-
8.
|
|
69
|
+
exports.SPECIALIST_EFFICIENCY_RULES = `\n\n## ⚠️ 迭代效率强制规则(CRITICAL — MUST FOLLOW)\n\n1. **数据只查一次**:调用工具获取数据后,直接使用对话历史中的结果进行分析和综合,绝对不要再次调用相同的工具\n2. **工具调用硬限制**:每个独立的工具(按工具名区分)最多调用 **2 次**。如果第 1 次调用已返回充足数据(>20 条记录或结构化汇总),**禁止第 2 次调用**。绝对不要用相同参数重复调用同一工具\n3. **禁止冗余读取**:如果工具结果被 offload(显示 [offload:xxx] 标签),最多读取 **一次**,然后立即综合摘要。绝对不要反复读取同一个 offload 节点\n4. **快速综合**:数据获取完毕后(通常 2-3 个工具调用),直接在下一轮迭代中输出结构化分析结果,不要花额外迭代重新整理数据\n5. **迭代预算**:你只有 15 个迭代,每个 LLM 轮次都算一次。数据获取阶段不应超过 **3 个迭代**,总工具调用不超过 **6 次**\n6. **返回精简摘要**:返回结构化的关键指标、排行榜、分布统计,而非每条记录的原始数据\n7. **禁止反问用户**:你被委托执行任务,**绝对不能**在结果中反问用户"需要我做什么吗?"或"请确认您的需求"。任务描述就是你的全部指令,直接完成并返回结果。如果任务描述不清晰,基于你的专业知识做最佳判断并执行
|
|
70
|
+
8. **失败不要反复重试**:如果某次工具调用返回错误(如超时、网络错误),**不要对同一失败工具反复重试**——最多重试 1 次,若仍失败则直接基于已有信息继续分析,或简要说明该数据获取失败,绝不让失败的工具调用拖垮整个任务`;
|
|
71
71
|
exports.OUTPUT_CONCISION_RULES = `\n\n## 📝 输出简洁规则(MANDATORY)\n\n- **不要复述工具返回的原始数据**:工具结果已在活动面板展示,你只需总结要点\n- **不要逐步描述每个工具调用**:避免输出类似 "mcp_xxx → xxx..." 或 "mcp_xxx (xxxms): {...}" 的技术日志\n- **规划要简短**:1-2 句话概述计划即可,不要列出每个工具名和参数\n- **结果总结要精炼**:用 2-3 句话总结关键发现\n- **绝对禁止输出沙箱文件路径**:如 \`_artifacts/...\`、\`/Users/...\` 等路径对用户无意义,用户通过 artifact 卡片预览即可
|
|
72
72
|
- **绝对禁止输出 artifact 的 HTTP 下载 URL**:如 \`/api/work/artifacts/...\` 这类链接由前端自动渲染为预览/下载卡片,复述到回复里既冗余又不可点击,绝不要输出`;
|
|
73
|
-
exports.SUB_AGENT_RESULT_SUMMARY_RULES = `\n\n## 📋 子 Agent 结果汇总规则(CRITICAL — MUST FOLLOW)\n\n
|
|
73
|
+
exports.SUB_AGENT_RESULT_SUMMARY_RULES = `\n\n## 📋 子 Agent 结果汇总规则(CRITICAL — MUST FOLLOW)\n\n当委派任务完成后,你 **必须** 在回复中汇总子 Agent 的关键结果,而不是只说"已完成":\n\n1. **提取关键发现**:从子 Agent 返回的文本中提取核心结论、关键数据、推荐方案等\n2. **结构化呈现**:用 Markdown 格式(标题、列表、表格)将关键内容呈现在对话中,让用户无需展开工具调用详情即可看到结果\n3. **包含具体数据**:不要只说"分析完成",要包含具体的分析结果(如:推荐的股票、关键指标、评估结论等)\n4. **标注产物**:如果子 Agent 生成了 artifact(HTML报告/PPT等),只需简单提及产物名称(如"已生成分析报告.docx"),**绝对禁止输出文件路径或 HTTP 下载 URL**(如 \`_artifacts/...\`、\`/api/work/artifacts/...\`),用户通过 artifact 卡片预览即可\n\n**注意**:这条规则优先于"输出简洁规则"——子 Agent 的关键结果必须呈现在对话中,不能被省略`;
|
|
74
74
|
function buildSpecialistOutputBoundaryPrompt(capabilities, options = {}) {
|
|
75
75
|
// 上层应用全权控制输出格式,底层不注入任何输出边界引导
|
|
76
76
|
if (options.skipOutputBoundary)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared-fragments.js","sourceRoot":"","sources":["../../../src/prompt/shared-fragments.ts"],"names":[],"mappings":";;;AAkDA,4DA6BC;AAED,oDAcC;AAED,4EAEC;AAED,kEAeC;AAYD,kFAwBC;AA/GD,+BAA+B;AAClB,QAAA,yBAAyB,GAAG,CAAC,qBAAqB,EAAE,iBAAiB,EAAE,YAAY,EAAE,eAAe,CAAC,CAAC;AAQnH,SAAgB,wBAAwB,CACtC,KAAmB,EACnB,OAAsC;IAEtC,cAAc;IACd,MAAM,eAAe,GAAG,OAAO,EAAE,eAAe,IAAI,iCAAyB,CAAC;IAE9E,gCAAgC;IAChC,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;IAChC,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAI,cAAc,GAAG,KAAK,CAAC;IAE3B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5B,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;QACD,IAAI,IAAI,KAAK,eAAe;YAAE,eAAe,GAAG,IAAI,CAAC;QACrD,IAAI,IAAI,KAAK,aAAa;YAAE,aAAa,GAAG,IAAI,CAAC;QACjD,IAAI,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,cAAc,GAAG,IAAI,CAAC;IAC5D,CAAC;IAED,OAAO;QACL,cAAc;QACd,eAAe;QACf,aAAa;QACb,YAAY;KACb,CAAC;AACJ,CAAC;AAED,SAAgB,oBAAoB,CAAC,QAAsB,EAAE,aAAa,GAAG,KAAK;IAChF,kBAAkB;IAClB,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;QAC/C,IAAI,aAAa;YAAE,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,KAAK,KAAK,CAAC;QACjE,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAElC,gBAAgB;IAChB,MAAM,IAAI,GAAG,QAAQ,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAEvF,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAClF,CAAC;AAED,SAAgB,gCAAgC,CAAC,WAAmB,EAAE,WAAmB;IACvF,OAAO,wDAAwD,WAAW,
|
|
1
|
+
{"version":3,"file":"shared-fragments.js","sourceRoot":"","sources":["../../../src/prompt/shared-fragments.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docgen.d.ts","sourceRoot":"","sources":["../../../../src/tool/tools/docgen.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAe,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"docgen.d.ts","sourceRoot":"","sources":["../../../../src/tool/tools/docgen.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAe,MAAM,yBAAyB,CAAC;AAqC3E,wBAAgB,iBAAiB,CAAC,IAAI,CAAC,EAAE;IAAE,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,cAAc,EAAE,CAwVpF"}
|
|
@@ -44,6 +44,12 @@ const DOCGEN_FORMATS = new Map([
|
|
|
44
44
|
['create_pdf', 'PDF'],
|
|
45
45
|
['create_report', 'HTML'],
|
|
46
46
|
]);
|
|
47
|
+
/** 格式互斥规则(注入到每个 create_* 工具的 prompt) */
|
|
48
|
+
const DOCGEN_FORMAT_EXCLUSIVITY_PROMPT = '### Format Exclusivity (CRITICAL)\n' +
|
|
49
|
+
'For any single user request, you may call **at most ONE** of: `create_presentation`, `create_report`, `create_document`, `create_pdf`.\n' +
|
|
50
|
+
'**NEVER** call two or more of these tools for the same content/request.\n' +
|
|
51
|
+
'If the user asks for a "report", generate exactly ONE format (default: HTML via `create_report`).\n' +
|
|
52
|
+
'Do NOT generate both PPTX and HTML, or both PDF and DOCX, etc.';
|
|
47
53
|
/**
|
|
48
54
|
* 代码级格式互斥守卫:同一 agent run 内只允许调用一个 create_* 工具。
|
|
49
55
|
* 当 LLM 忽略 prompt 规则、尝试为同一内容生成第二种格式时,直接拒绝。
|
|
@@ -127,6 +133,7 @@ function createDocgenTools(opts) {
|
|
|
127
133
|
filename: args.filename,
|
|
128
134
|
}, ctx, jsonFile, templatesDir);
|
|
129
135
|
},
|
|
136
|
+
prompt: DOCGEN_FORMAT_EXCLUSIVITY_PROMPT,
|
|
130
137
|
category: 'builtin',
|
|
131
138
|
concurrent: false,
|
|
132
139
|
},
|
|
@@ -196,6 +203,7 @@ function createDocgenTools(opts) {
|
|
|
196
203
|
filename: args.filename,
|
|
197
204
|
}, ctx, jsonFile, templatesDir);
|
|
198
205
|
},
|
|
206
|
+
prompt: DOCGEN_FORMAT_EXCLUSIVITY_PROMPT,
|
|
199
207
|
category: 'builtin',
|
|
200
208
|
concurrent: false,
|
|
201
209
|
},
|
|
@@ -265,6 +273,7 @@ function createDocgenTools(opts) {
|
|
|
265
273
|
filename: args.filename,
|
|
266
274
|
}, ctx, jsonFile, templatesDir);
|
|
267
275
|
},
|
|
276
|
+
prompt: DOCGEN_FORMAT_EXCLUSIVITY_PROMPT,
|
|
268
277
|
category: 'builtin',
|
|
269
278
|
concurrent: false,
|
|
270
279
|
},
|
|
@@ -387,6 +396,7 @@ function createDocgenTools(opts) {
|
|
|
387
396
|
filename: args.filename,
|
|
388
397
|
}, ctx, jsonFile);
|
|
389
398
|
},
|
|
399
|
+
prompt: DOCGEN_FORMAT_EXCLUSIVITY_PROMPT,
|
|
390
400
|
category: 'builtin',
|
|
391
401
|
concurrent: false,
|
|
392
402
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docgen.js","sourceRoot":"","sources":["../../../../src/tool/tools/docgen.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"docgen.js","sourceRoot":"","sources":["../../../../src/tool/tools/docgen.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filesystem.d.ts","sourceRoot":"","sources":["../../../../src/tool/tools/filesystem.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAW,MAAM,yBAAyB,CAAC;AAEvE,wBAAgB,qBAAqB,IAAI,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"filesystem.d.ts","sourceRoot":"","sources":["../../../../src/tool/tools/filesystem.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAW,MAAM,yBAAyB,CAAC;AAEvE,wBAAgB,qBAAqB,IAAI,cAAc,EAAE,CAiYxD"}
|
|
@@ -46,12 +46,16 @@ function createFilesystemTools() {
|
|
|
46
46
|
function: {
|
|
47
47
|
name: 'execute_command',
|
|
48
48
|
description: 'Execute a shell command in the terminal. ' +
|
|
49
|
-
'
|
|
49
|
+
'**For code execution, data processing, HTTP requests, or scripting: prefer `run_script` with `nodejs` instead of using python3/curl directly.** ' +
|
|
50
|
+
'The sandbox provides built-in utilities like `sb.fetch()` for HTTP, `sb.readJson()` for files, etc. ' +
|
|
51
|
+
'Call `run_script({ discover: true })` to see all available sandbox utilities. ' +
|
|
52
|
+
'Use `execute_command` for: package installation (pnpm/npm/pip), running build tools, git operations, or quick shell tasks (ls, find, etc.). ' +
|
|
53
|
+
'IMPORTANT: Do NOT use heredoc (cat > file << EOF) to write scripts - the content will be truncated. ' +
|
|
50
54
|
'To write script files, use write_file (or append_file for long scripts), then use execute_command with a short command to run them. ' +
|
|
51
55
|
'SANDBOX RESTRICTIONS: Commands run inside a sandboxed directory. ' +
|
|
52
|
-
'NEVER use absolute paths (like /Users/..., /home/...) for file output
|
|
56
|
+
'NEVER use absolute paths (like /Users/..., /home/...) for file output - ALL file writes will be BLOCKED. ' +
|
|
53
57
|
'Use relative paths: "report.html", "gen.cjs", etc. ' +
|
|
54
|
-
'NEVER use `find /` for filesystem search
|
|
58
|
+
'NEVER use `find /` for filesystem search - use `find . -name "file"` or `ls -la` instead.',
|
|
55
59
|
parameters: {
|
|
56
60
|
type: 'object',
|
|
57
61
|
properties: {
|
|
@@ -76,6 +80,10 @@ function createFilesystemTools() {
|
|
|
76
80
|
const timeout = Number(args.timeout) || 2000;
|
|
77
81
|
return ctx.shell.exec(command, timeout);
|
|
78
82
|
},
|
|
83
|
+
prompt: '### execute_command Usage\n' +
|
|
84
|
+
'- Use `execute_command` for: package installation (pnpm/npm/pip), git operations, build tools, or quick shell tasks (ls, find, grep).\n' +
|
|
85
|
+
'- Never use heredoc (`cat >> file << EOF`) in `execute_command` - content will be truncated.\n' +
|
|
86
|
+
'- For code execution, data processing, or HTTP requests: prefer `run_script` with `nodejs` instead of using python3/curl directly.',
|
|
79
87
|
category: 'builtin',
|
|
80
88
|
concurrent: false,
|
|
81
89
|
},
|
|
@@ -110,16 +118,16 @@ function createFilesystemTools() {
|
|
|
110
118
|
'CRITICAL: Both `path` and `content` MUST be non-empty. ' +
|
|
111
119
|
'MAX content: ~3000 chars (JSON escaping inflates size). For larger content, use write_file for first chunk then append_file for each subsequent chunk. ' +
|
|
112
120
|
'\n## IMPORTANT: For document generation, use dedicated tools instead of write_file:\n' +
|
|
113
|
-
'- For HTML reports with charts/metrics/tables
|
|
114
|
-
'- For PPTX presentations
|
|
115
|
-
'- For DOCX documents
|
|
116
|
-
'- For PDF documents
|
|
117
|
-
'- For simple markdown/text
|
|
118
|
-
'DO NOT use write_file to create HTML reports manually
|
|
121
|
+
'- For HTML reports with charts/metrics/tables -> use `create_report` (auto-saves as artifact)\n' +
|
|
122
|
+
'- For PPTX presentations -> use `create_presentation` (auto-saves as artifact)\n' +
|
|
123
|
+
'- For DOCX documents -> use `create_document` (auto-saves as artifact)\n' +
|
|
124
|
+
'- For PDF documents -> use `create_pdf` (auto-saves as artifact)\n' +
|
|
125
|
+
'- For simple markdown/text -> use write_file + save_artifact\n' +
|
|
126
|
+
'DO NOT use write_file to create HTML reports manually - create_report handles styling/charts automatically.',
|
|
119
127
|
parameters: {
|
|
120
128
|
type: 'object',
|
|
121
129
|
properties: {
|
|
122
|
-
path: { type: 'string', description: 'File path relative to sandbox root (e.g. "script.cjs", "data.json"). For scripts/data files only
|
|
130
|
+
path: { type: 'string', description: 'File path relative to sandbox root (e.g. "script.cjs", "data.json"). For scripts/data files only - NOT for final documents.' },
|
|
123
131
|
content: { type: 'string', description: 'File content as a string. MUST NOT be empty. For scripts, include the FULL source code.' },
|
|
124
132
|
},
|
|
125
133
|
required: ['path', 'content'],
|
|
@@ -153,15 +161,15 @@ function createFilesystemTools() {
|
|
|
153
161
|
// 日志:确认文件写入位置(沙箱 vs 全局 data/)
|
|
154
162
|
const sandbox = ctx.custom?.sandbox;
|
|
155
163
|
if (sandbox?.rootDir) {
|
|
156
|
-
console.log(`[write_file] ${filePath}
|
|
164
|
+
console.log(`[write_file] ${filePath} -> sandbox: ${sandbox.rootDir}`);
|
|
157
165
|
}
|
|
158
166
|
else {
|
|
159
|
-
console.warn(`[write_file] ${filePath}
|
|
167
|
+
console.warn(`[write_file] ${filePath} -> NO SANDBOX (writing to data/ dir)`);
|
|
160
168
|
}
|
|
161
169
|
// 截断抢救模式:内容被部分恢复,提醒 LLM 补充剩余内容
|
|
162
170
|
if (args._rescued) {
|
|
163
171
|
return [
|
|
164
|
-
`File written (PARTIAL
|
|
172
|
+
`File written (PARTIAL - content was truncated and rescued): ${filePath}`,
|
|
165
173
|
`Written ${content.length} chars. The ORIGINAL content was truncated by the output limit.`,
|
|
166
174
|
'',
|
|
167
175
|
'You MUST use append_file to add the REMAINING content:',
|
|
@@ -223,15 +231,15 @@ function createFilesystemTools() {
|
|
|
223
231
|
// 日志:确认文件写入位置
|
|
224
232
|
const sandbox = ctx.custom?.sandbox;
|
|
225
233
|
if (sandbox?.rootDir) {
|
|
226
|
-
console.log(`[append_file] ${filePath}
|
|
234
|
+
console.log(`[append_file] ${filePath} -> sandbox: ${sandbox.rootDir}`);
|
|
227
235
|
}
|
|
228
236
|
else {
|
|
229
|
-
console.warn(`[append_file] ${filePath}
|
|
237
|
+
console.warn(`[append_file] ${filePath} -> NO SANDBOX (writing to data/ dir)`);
|
|
230
238
|
}
|
|
231
239
|
// 截断抢救模式
|
|
232
240
|
if (args._rescued) {
|
|
233
241
|
return [
|
|
234
|
-
`Content appended (PARTIAL
|
|
242
|
+
`Content appended (PARTIAL - rescued from truncation): ${filePath}`,
|
|
235
243
|
`Appended ${content.length} chars. Some content may have been lost.`,
|
|
236
244
|
'Continue with append_file to add any remaining content.',
|
|
237
245
|
].join('\n');
|