fix: update run_command limits and planning guidance

This commit is contained in:
JOJO 2026-04-14 14:12:11 +08:00
parent 3a949abdb4
commit 9891f68aca
5 changed files with 11 additions and 10 deletions

View File

@ -597,14 +597,14 @@ class MainTerminalToolsDefinitionMixin:
"type": "function",
"function": {
"name": "run_command",
"description": "执行一次性终端命令适合查看文件信息file/ls/stat/iconv 等)、转换编码或调用 CLI 工具。禁止启动交互式程序;对已聚焦文件仅允许使用 grep -n 等定位命令。必须提供 timeout。前台模式run_in_background=false默认上限30秒超时会打断后台模式run_in_background=true上限3600秒会先等待5秒返回已有输出并继续在后台运行完成后由系统通知。",
"description": "执行一次性终端命令适合查看文件信息file/ls/stat/iconv 等)、转换编码或调用 CLI 工具。禁止启动交互式程序。必须提供 timeout。前台模式run_in_background=false默认上限60秒超时会打断后台模式run_in_background=true上限3600秒会先等待5秒返回已有输出并继续在后台运行完成后由系统通知。",
"parameters": {
"type": "object",
"properties": self._inject_intent({
"command": {"type": "string", "description": "终端命令"},
"timeout": {
"type": "number",
"description": "超时时长(秒),必填。前台最大30后台最大3600。"
"description": "超时时长(秒),必填。前台最大60后台最大3600。"
},
"run_in_background": {
"type": "boolean",
@ -635,7 +635,7 @@ class MainTerminalToolsDefinitionMixin:
"type": "function",
"function": {
"name": "todo_create",
"description": "创建待办列表,最多 8 条任务;若已有列表将被覆盖。",
"description": "创建待办列表,最多 8 条任务;若已有列表将被覆盖。当用户提出稍微复杂的要求、预计需要超过 3 个步骤时,应积极创建待办事项。",
"parameters": {
"type": "object",
"properties": self._inject_intent({
@ -698,7 +698,7 @@ class MainTerminalToolsDefinitionMixin:
"type": "function",
"function": {
"name": "create_sub_agent",
"description": "创建一个子智能体来处理独立任务。子智能体拥有完整的工具能力(读写文件、执行命令、搜索网页等),与主智能体共享工作区。\n\n适用场景:\n1. 可以独立完成的任务(生成文档、代码分析、测试执行)\n2. 需要大量工具调用的任务(批量文件处理、数据收集)\n3. 可以并行处理的子任务(多模块开发、多方面分析)\n\n何时使用后台运行:\n- 任务耗时较长预计超过5分钟\n- 你可以继续处理其他工作,不需要立即使用结果\n- 多个独立任务可以并行执行\n\n何时使用阻塞运行(默认):\n- 任务较快(几分钟内完成)\n- 后续工作依赖子智能体的结果\n- 需要立即查看和使用输出\n\n重要限制:\n- 最多同时运行 5 个子智能体\n- 禁止多个子智能体操作相同的文件或目录(会导致冲突)\n- 禁止子智能体间的工作有重叠(如同时修改同一模块、同时测试同一功能)\n- 每个子智能体应该有明确独立的职责范围",
"description": "创建一个子智能体来处理独立任务。子智能体拥有完整的工具能力(读写文件、执行命令、搜索网页等),与主智能体共享工作区。\n\n适用场景:\n1. 可以独立完成的任务(生成文档、代码分析、测试执行)\n2. 需要大量工具调用的任务(批量文件处理、数据收集)\n3. 可以并行处理的子任务(多模块开发、多方面分析)\n4. 刚开始修改一个项目、需要先找到某个功能模块的修改位置时,可优先创建子智能体快速了解代码定位与相关上下文\n\n何时使用后台运行:\n- 任务耗时较长预计超过5分钟\n- 你可以继续处理其他工作,不需要立即使用结果\n- 多个独立任务可以并行执行\n\n何时使用阻塞运行(默认):\n- 任务较快(几分钟内完成)\n- 后续工作依赖子智能体的结果\n- 需要立即查看和使用输出\n\n重要限制:\n- 最多同时运行 5 个子智能体\n- 禁止多个子智能体操作相同的文件或目录(会导致冲突)\n- 禁止子智能体间的工作有重叠(如同时修改同一模块、同时测试同一功能)\n- 每个子智能体应该有明确独立的职责范围",
"parameters": {
"type": "object",
"properties": self._inject_intent({

View File

@ -1177,10 +1177,10 @@ class MainTerminalToolsExecutionMixin:
"success": False,
"error": "timeout 参数必填且需大于0"
}
elif float(timeout_value) > 30:
elif float(timeout_value) > 60:
result = {
"success": False,
"error": "前台模式下 timeout 最大为 30 秒"
"error": "前台模式下 timeout 最大为 60 秒"
}
else:
result = await self.terminal_ops.run_command(

View File

@ -93,8 +93,8 @@
## 5. 操作技巧
- **待办事项**任务≥2步时使用 `todo_create`概述≤50字任务2-6条完成立即更新
- **子智能体**独立子任务并行处理最多5个同时运行`wait_sub_agent` 超时需≥创建时设置
- **待办事项**任务≥2步时使用 `todo_create`当用户提出稍微复杂的要求、预计超过3个步骤时应积极创建待办事项概述≤50字任务2-6条完成立即更新
- **子智能体**独立子任务并行处理最多5个同时运行`wait_sub_agent` 超时需≥创建时设置;刚开始修改一个项目、需要先找到某个功能模块的修改位置时,优先考虑创建子智能体快速了解
- **记忆管理**`update_memory` 支持追加/替换/删除main 为长期记忆task 为当前对话记忆
---

View File

@ -111,8 +111,8 @@
## 5. 操作技巧
- **待办事项**任务≥2步时使用 `todo_create`概述≤50字任务2-6条完成立即更新
- **子智能体**独立子任务并行处理最多5个同时运行`wait_sub_agent` 超时需≥创建时设置
- **待办事项**任务≥2步时使用 `todo_create`当用户提出稍微复杂的要求、预计超过3个步骤时应积极创建待办事项概述≤50字任务2-6条完成立即更新
- **子智能体**独立子任务并行处理最多5个同时运行`wait_sub_agent` 超时需≥创建时设置;刚开始修改一个项目、需要先找到某个功能模块的修改位置时,优先考虑创建子智能体快速了解
- **记忆管理**`update_memory` 支持追加/替换/删除main 为长期记忆task 为当前对话记忆
---

View File

@ -6,6 +6,7 @@
以下情况建议创建待办清单:
- ✅ 任务需要2步以上
- ✅ 用户提出稍微复杂的要求预计会超过3个步骤时应积极创建
- ✅ 要操作多个文件
- ✅ 需要用多个工具配合
- ✅ 不确定具体怎么做,需要先规划