-
Notifications
You must be signed in to change notification settings - Fork 8.1k
s10 Team Protocols的一个细节问题 #173
Copy link
Copy link
Open
Description
s10中对队友干major work前先通过 plan_approval的结构设定,唯一的约束就是提示词: sys_prompt = (
f"You are '{name}', role: {role}, at {WORKDIR}. "
f"Submit plans via plan_approval before major work. "
f"Respond to shutdown_request with shutdown_response."
)
它欠缺了harness硬约束,它有可能跳过plan_approval工具而直接开始bash read write edit。(如果模型突然犯蠢的话)
这点可以参考它隔壁用来开关队友的tool:shutdown request 和 shutdown response的harness硬约束。
plan approval 纯靠模型自觉。要做成硬约束,可以改成类似这样:
在_exec前面加一段,bash和读写的额外约束。
def _exec(self, sender, tool_name, args):
# ★ 硬约束:执行类工具需要先获批
dangerous_tools = {"bash", "write_file", "edit_file"}
if tool_name in dangerous_tools and not self._approved.get(sender):
return "Error: No approved plan. Call plan_approval first."
# ... 原有其他逻辑不变,read_inbox之类的可以在没计划时执行不需要加到dangerous_tools里面 ...
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels