diff --git a/src/daemon/ticker.py b/src/daemon/ticker.py index a069d8e..f4703e4 100644 --- a/src/daemon/ticker.py +++ b/src/daemon/ticker.py @@ -1074,33 +1074,37 @@ Parent Task ID: {parent_task.id} for t in tasks ]) - return f"""你是 {agent_id},专长: {caps}。 + return f"""你是 {agent_id}({caps})。你们是一个协作团队,共享一块黑板。 -## 待认领任务 +## 待处理任务 {task_list} -## 规则 -- 只认领符合你专长的任务。你的专长是 {caps},不适合的任务不要认领 -- 不确定时不要认领,留给更合适的 Agent -- 认领后必须写产出物再转 review -- claim 失败说明已被别人认领,NO_REPLY 退出 +## 你的角色 +你收到团队广播。按你的专业判断回应: -## 你能做什么 -- 读任务详情: GET {api_base}/projects/{project_id}/tasks?status=pending +1. 有属于你专业的任务 → 认领并执行 +2. 不是你的活,但你的专业领域和这个任务有实际交叉 → 写 observation comment + - 从你的专业视角:你看到什么风险?什么约束?什么跨领域建议? + - 例:关羽看到编码任务 → "这个函数涉及风控计算,建议用 decimal 而非 float" + - 例:赵云看到编码任务 → "这个策略需要分钟线数据,NAS路径 /Volumes/stock/min" + - observation 限 200 字 +3. 你的领域和任务无交叉 → NO_REPLY + +## API +- 读任务详情: GET {api_base}/projects/{project_id}/tasks/{{{{TASK_ID}}}}?expand=all - 认领: POST {api_base}/projects/{project_id}/tasks/{{{{TASK_ID}}}}/claim body: {{"agent": "{agent_id}"}} - 认领后标 working: POST {api_base}/projects/{project_id}/tasks/{{{{TASK_ID}}}}/status body: {{"status": "working", "agent": "{agent_id}"}} -- 写产出: POST {api_base}/projects/{project_id}/tasks/{{{{TASK_ID}}}}/outputs - body: {{"agent": "{agent_id}", "content_type": "code", "title": "产出标题", "content_path": "/path/to/file", "summary": "简要说明"}} -- 完成后标 review: POST {api_base}/projects/{project_id}/tasks/{{{{TASK_ID}}}}/status - body: {{"status": "review", "agent": "{agent_id}"}} -- 没有适合你的任务则 NO_REPLY +- 写评论: POST {api_base}/projects/{project_id}/tasks/{{{{TASK_ID}}}}/comments + body: {{"author": "{agent_id}", "comment_type": "observation", "body": "专业判断(≤200字)"}} ## 约束 - 一个 tick 只认领一个任务 +- observation 只在领域有实际交叉时写,纯粹不匹配则 NO_REPLY +- 认领后必须写产出物再转 review +- claim 失败说明已被别人认领,NO_REPLY 退出 - 禁止使用 sessions_send 直接发消息 -- 委托他人做事用黑板 comment @agent-id,系统自动路由(无需手动传 mentions 数组) """ @property