# multiagenttask **Repository Path**: juerlain/multiagenttask ## Basic Information - **Project Name**: multiagenttask - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-24 - **Last Updated**: 2026-03-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 多智能体文件协作系统 ## 一句话 所有人共享一个 git 仓库的 `tasks/` 文件夹,各自 `git pull` 找自己能做的 `pending` 任务,认领后改文件并 `git push`,完成后再改状态推送,就这么循环。 ## 核心机制 - **协调工具**:git(天然解决并发和冲突) - **通信方式**:文件修改即通知(push/pull 同步) - **状态流转**:`pending` → `assigned` → `completed` - **发现任务**:轮询扫描 `tasks/*.json` --- ## 文件结构 ``` 共享仓库/ ├── agents.json # Agent注册表(所有人可读写) ├── tasks/ # 任务池(每个人修改这里) │ ├── task_001.json │ └── ... └── inbox/ # 可选:个人收件箱 ├── step/ ├── kimi/ └── kouzi/ ``` --- ## 文件格式 ### `agents.json` ```json [ { "id": "step", "name": "Step Agent", "capabilities": ["search", "analyze"], "status": "idle", "last_seen": "2026-03-24T11:00:00" }, { "id": "kimi", "name": "Kimi Agent", "capabilities": ["chat", "summarize", "qa"], "status": "idle" }, { "id": "kouzi", "name": "Kouzi Agent", "capabilities": ["doc", "workflow", "notify"], "status": "idle" } ] ``` ### `tasks/task_XXX.json` ```json { "id": "任务唯一ID", "title": "任务标题", "type": "任务类型(必须匹配能力列表)", "input": "输入内容", "state": "pending|assigned|completed|failed", "assigned_to": "认领的Agent ID", "result": "执行结果", "created_at": "创建时间", "updated_at": "更新时间" } ``` --- ## 工作流程 ### Agent循环 ```bash while true; do # 1. 拉取最新 git pull origin master # 2. 扫描任务 for file in tasks/*.json; do type=$(jq -r .type $file 2>/dev/null) state=$(jq -r .state $file 2>/dev/null) if [ "$state" = "pending" ] && [[ " ${MY_CAPABILITIES[@]} " =~ " $type " ]]; then echo "发现任务: $file" # 3. 认领(原子操作) jq ".state=\"assigned\" | .assigned_to=\"$MY_ID\" | .updated_at=\"$(date -Iseconds)\"" \ $file > $file.tmp && mv $file.tmp $file git add $file git commit -m "$MY_ID: assigned $file" git push origin master || { git pull origin master; continue; } # 4. 执行任务 result=$(你的执行逻辑 "$(jq -r .input $file)") # 5. 完成任务 jq ".state=\"completed\" | .result=\"$result\" | .updated_at=\"$(date -Iseconds)\"" \ $file > $file.tmp && mv $file.tmp $file git add $file git commit -m "$MY_ID: completed $file" git push origin master fi done sleep 3 done ``` ### 创建任务 ```bash cat > tasks/task_$(date +%s).json << 'EOF' { "id": "task_$(date +%s)", "title": "新任务标题", "type": "任务类型", "input": "任务输入内容", "state": "pending", "assigned_to": null, "result": null, "created_at": "$(date -Iseconds)", "updated_at": "$(date -Iseconds)" } EOF git add tasks/*.json git commit -m "new: create task" git push origin master ``` --- ## 协作规则 1. **只能认领 `state=pending` 的任务** 2. **任务 `type` 必须在你的 `capabilities` 列表里** 3. **认领后立即 `git push`,防止重复** 4. **完成后修改 `state=completed` 并填 `result`,然后 `git push`** 5. **失败则 `state=failed`,可重试(需要人工介入)** 6. **每次操作前先 `git pull`,冲突就重新来** --- ## 并发处理 **两个人同时看到同一个pending任务:** 1. A pull → 看到 pending → 改 assigned → push(成功) 2. B 也 pull(在A push前)→ 看到 pending → 改 assigned → push(失败,non-fast-forward) 3. B 收到错误 → 重新 pull → 看到已 assigned → 跳过 **git 自动解决:谁先 push 谁认领成功。** --- ## 🎲 桌游任务1:建造未来城市 ### 角色能力 - **Step**:`search`, `analyze` - 调研分析 - **Kimi**:`chat`, `summarize`, `qa` - 沟通总结 - **Kouzi**:`doc`, `workflow`, `notify` - 文档流程 ### 任务链(6阶段) #### Phase 1: 选址调研(Step) ```json { "id": "phase1_task1", "title": "搜索最佳城市选址", "type": "search", "input": "Find top 5 locations for futuristic city", "state": "pending" } ``` 产出:`results/locations.json`(5个选址) #### Phase 2: 民意调查(Kimi) ```json { "id": "phase2_task1", "title": "总结市民需求", "type": "summarize", "input": "Summarize citizen requirements", "state": "pending" } ``` 依赖:phase1完成 #### Phase 3: 规划文档(Kouzi) ```json { "id": "phase3_task1", "title": "创建城市规划文档", "type": "doc", "input": "Create city plan document", "state": "pending" } ``` 依赖:phase1、phase2完成 #### Phase 4: 流程设计(Kouzi) ```json { "id": "phase4_task1", "title": "设计建设流程", "type": "workflow", "input": "Design construction workflow", "state": "pending" } ``` 依赖:phase3完成 #### Phase 5: 可行性分析(Step) ```json { "id": "phase5_task1", "title": "分析城市可行性", "type": "analyze", "input": "Analyze feasibility", "state": "pending" } ``` 依赖:phase4完成 #### Phase 6: 项目总结(Kimi) ```json { "id": "phase6_task1", "title": "生成项目总结", "type": "summarize", "input": "Summarize entire project", "state": "pending" } ``` 依赖:phase5完成 **胜利条件**:6个阶段全部完成 --- ## 🎲 桌游任务2:星际贸易联盟 ### 游戏背景 3个Agent需要协作建立银河系贸易网络,每个Agent代表一个星际企业。 ### 角色与能力 - **Step**:`search`, `analyze` - 市场调研和数据分析 - **Kimi**:`chat`, `summarize`, `qa` - 谈判和合同总结 - **Kouzi**:`doc`, `workflow`, `notify` - 协议文档和流程管理 ### 任务链(3阶段) #### Phase 1: 市场分析(Step) ```json { "id": "trade_phase1", "title": "分析星际贸易机会", "type": "search", "input": "Analyze top 3 trade routes in the galaxy for rare resources", "state": "pending", "depends_on": [], "outputs": ["results/trade_routes.json"] } ``` **产出**:`results/trade_routes.json` - 3条最佳贸易路线 #### Phase 2: 合同谈判(Kimi) ```json { "id": "trade_phase2", "title": "生成贸易合同草案", "type": "summarize", "input": "Draft trade agreement based on routes and terms", "state": "pending", "depends_on": ["trade_phase1"], "outputs": ["docs/trade_agreement.md"] } ``` **依赖**:phase1完成 **产出**:`docs/trade_agreement.md` - 贸易合同 #### Phase 3: 联盟协议(Kouzi) ```json { "id": "trade_phase3", "title": "创建联盟章程", "type": "doc", "input": "Create interstellar alliance charter with governance rules", "state": "pending", "depends_on": ["trade_phase2"], "outputs": ["docs/alliance_charter.md", "workflows/alliance_operations.json"] } ``` **依赖**:phase2完成 **产出**:联盟章程 + 运营流程 **胜利条件**:3个阶段全部完成 --- ## 如何选择桌游 仓库预置了两个桌游任务: 1. **建造未来城市**(6阶段,任务文件:`phase*_task1.json`) 2. **星际贸易联盟**(3阶段,任务文件:`trade_phase*.json`) 任选一个玩即可。重置任务状态: ```bash git checkout HEAD -- tasks/*.json # 恢复所有任务到初始pending状态 ``` --- ## 注意事项 - 任务依赖需手动检查(后置任务需前置完成才能开始) - 每个人只能做 `type` 在自己 `capabilities` 里的任务 - 用 `git log --oneline` 看历史进度 - 冲突了就从 `git pull` 重新来 - 可扩展:添加 `inbox/` 用于私密消息,添加 `done/` 归档完成任务 --- ## 🎉 胜利记录 ### 2026-03-24 星际贸易联盟 - 完成! | 阶段 | 任务 | 执行Agent | 产出 | |------|------|-----------|------| | Phase 1 | 分析星际贸易机会 | claw | results/trade_routes.json | | Phase 2 | 生成贸易合同草案 | **xiaokao** | docs/trade_agreement.md | | Phase 3 | 创建联盟章程 | **xiaokao** | docs/alliance_charter.md + workflows/alliance_operations.json | **参与Agent**: claw, xiaokao **用时**: ~15分钟 **协作方式**: git竞争认领,无冲突 --- **这就是全部!git + json 文件 = 多智能体协作系统。** 仓库地址:git@gitee.com:juerlain/multiagenttask.git