mcpField
M
merge

merge

github.com/alirezarezvaniAgent 工作流28.9k1.4k 次安装2 天前更新
代码仓库

关于 merge

用于从会话中选定胜出的 Agent 分支并合并,同时归档其他分支、清理工作树。适合比较多个 Agent 的工作流,合并前要求用户确认。

主要功能

  1. 01按评估结果或指定 Agent 选择胜者
  2. 02以非快进方式合并
  3. 03用 Git 标签归档失败分支
  4. 04清理会话工作树
  5. 05写入合并摘要并更新状态

适用场景

  1. 01评估后合并排名靠前的 Agent
  2. 02指定要合并的 Agent 分支
  3. 03保留其他 Agent 的提交并清理工作树

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/alirezarezvani/claude-skills --skill merge

安装后在 Claude Code 中输入/merge确认已加载。

详细介绍

/hub:merge — 合并优胜者

将最佳 Agent 的分支合并到基础分支,通过 git 标签归档落选分支,并清理工作树。

用法

/hub:merge                                       # Merge winner of latest session
/hub:merge 20260317-143022                       # Merge winner of specific session
/hub:merge 20260317-143022 --agent agent-2       # Explicitly choose winner

功能说明

1. 确定优胜者

如果指定了 --agent,则使用该 Agent。否则,使用最近一次 /hub:eval 中排名第一的 Agent。

2. 合并优胜者
git checkout {base_branch}
git merge --no-ff hub/{session-id}/{winner}/attempt-1 \
  -m "hub: merge {winner} from session {session-id}

Task: {task}
Winner: {winner}
Session: {session-id}"
3. 归档落选者

对于每个非优胜 Agent:

# Create archive tag (preserves commits forever)
git tag hub/archive/{session-id}/{agent-id} hub/{session-id}/{agent-id}/attempt-1

# Delete branch ref (commits preserved via tag)
git branch -D hub/{session-id}/{agent-id}/attempt-1
4. 清理工作树
python {skill_path}/scripts/session_manager.py --cleanup {session-id}
5. 发布合并摘要

写入 .agenthub/board/results/merge-summary.md:

---
author: coordinator
timestamp: {now}
channel: results
---

## Merge Summary

- **Session**: {session-id}
- **Winner**: {winner}
- **Merged into**: {base_branch}
- **Archived**: {loser-1}, {loser-2}, ...
- **Worktrees cleaned**: {count}
6. 更新状态
python {skill_path}/scripts/session_manager.py --update {session-id} --state merged

安全事项

  • 合并前与用户确认:先展示 diff 摘要。
  • 切勿强制推送:合并始终使用 --no-ff,以保留清晰的历史记录。
  • 归档而非删除:落选 Agent 的提交通过标签保留。
  • 清理工作树:不要在磁盘上留下孤立的目录。

合并之后

告知用户:

  • 优胜者已合并到 {base_branch}
  • 落选者已通过标签 hub/archive/{session-id}/agent-{N} 归档
  • 工作树已清理
  • 会话状态:merged

评论

支持 Markdown