fix: str() session_id/tab_id; bump UA to 2.1.251; trim subagent.md
This commit is contained in:
1 parent
7fa5fa4ec0
commit
71cf559fab
4 files changed
+4
-30
No files matched your search
+1
-1
@@ -186,7 +186,7 @@ class TMWebDriver:
|
||||
if session.ws_client == client: session.mark_disconnected()
|
||||
|
||||
def execute_js(self, code, timeout=15, session_id=None) -> Any:
|
||||
if session_id is None: session_id = self.default_session_id
|
||||
if session_id is None: session_id = str(self.default_session_id)
|
||||
if self.is_remote:
|
||||
safe_print('remote_execute_js')
|
||||
response = self._remote_cmd({"cmd": "execute_js", "sessionId": session_id,
|
||||
|
||||
@@ -171,7 +171,7 @@ def web_execute_js(script, switch_tab_id=None, no_monitor=False):
|
||||
try:
|
||||
if driver is None: first_init_driver()
|
||||
if len(driver.get_all_sessions()) == 0: return {"status": "error", "msg": "没有可用的浏览器标签页,查L3记忆分析原因。"}
|
||||
if switch_tab_id: driver.default_session_id = switch_tab_id
|
||||
if switch_tab_id: driver.default_session_id = str(switch_tab_id)
|
||||
result = simphtml.execute_js_rich(script, driver, no_monitor=no_monitor)
|
||||
return result
|
||||
except Exception as e: return {"status": "error", "msg": format_error(e)}
|
||||
|
||||
+2
-2
@@ -661,7 +661,7 @@ class BaseSession:
|
||||
self.api_mode = 'responses' if mode in ('responses', 'response') else 'chat_completions'
|
||||
self.temperature = cfg.get('temperature', 1)
|
||||
self.max_tokens = cfg.get('max_tokens')
|
||||
self.default_ua = "claude-cli/2.1.152 (external, cli)"
|
||||
self.default_ua = "claude-cli/2.1.251 (external, cli)"
|
||||
self.user_agent = cfg.get("user_agent", self.default_ua)
|
||||
def _apply_claude_thinking(self, payload):
|
||||
if self.thinking_type:
|
||||
@@ -773,7 +773,7 @@ def _fix_messages(messages):
|
||||
return merged
|
||||
|
||||
class NativeClaudeSession(BaseSession):
|
||||
native_ua = "claude-cli/2.1.152 (native, cli)"
|
||||
native_ua = "claude-cli/2.1.251 (native, cli)"
|
||||
def __init__(self, cfg):
|
||||
super().__init__(cfg)
|
||||
self.fake_cc_system_prompt = cfg.get("fake_cc_system_prompt", False)
|
||||
|
||||
@@ -33,29 +33,3 @@
|
||||
**用途**:N个独立同构子任务分发,独立上下文避免交叉污染
|
||||
**约束**:文件系统共享(优点);键鼠不可共享;浏览器避免同tab
|
||||
**流程**:准备独立输入文件→每个启动subagent(--func优先)→收集输出汇总
|
||||
|
||||
## subagent内部plan_mode使用
|
||||
**原则**:subagent本身是完整agent,接收多步骤任务时应在内部创建plan管理执行
|
||||
**触发条件**:任务包含3个以上子步骤、子步骤之间有依赖关系、需要checkpoint来恢复执行
|
||||
**实现方式**:
|
||||
1. **主agent创建subagent时**:在input.txt中说明任务包含多个步骤,建议使用plan_mode
|
||||
2. **subagent内部执行**:检测到多步骤任务后,创建 `./subagent_plan.md` 并使用plan_mode执行
|
||||
3. **主agent监控**:只关注最终结果(output*.txt),不需要关心subagent内部如何执行
|
||||
4. **文件传递机制**:主agent创建subagent时在task_dir中生成 `context.json`,包含所有文件的**绝对路径**
|
||||
**⚠ subagent启动后第一步必须读取context.json**
|
||||
**⚠ 所有文件操作必须使用context.json中的绝对路径**
|
||||
**格式示例**:
|
||||
```json
|
||||
{
|
||||
"task": "任务描述",
|
||||
"work_dir": "/absolute/path/to/plan_dir/",
|
||||
"input_files": {
|
||||
"paper_info": "/absolute/path/to/paper_info.txt"
|
||||
},
|
||||
"output_files": {
|
||||
"pdf": "/absolute/path/to/paper.pdf",
|
||||
"report": "/absolute/path/to/paper_report.md"
|
||||
},
|
||||
"dependencies": ["paper_info.txt必须存在"]
|
||||
}
|
||||
```
|
||||
Reference in new issue
Block a user