Merge

alirezarezvani/claude-skills/engineering/agenthub/skills/merge

作者 alirezarezvani19392f7a0826无许可证27K 个星标收录于 2026年10月8日更新于 2026年10月8日仓库5周前更新

Merge the winning agent's branch into base, archive losers, and clean up worktrees. Use when the user runs /hub:merge or asks to land the winning AgentHub result and tidy the session.

AI 生成的概览

将获胜智能体的分支合并到基础分支,把失败分支归档为标签,并清理工作树。

功能
该技能处理 AgentHub 会话的最后一步:确定获胜智能体(通过 --agent 指定,或取最近一次评估排名第一的智能体),以非快进方式将其分支合并到基础分支,并把每个失败智能体的分支归档为 git 标签后再删除分支引用。随后清理会话工作树,将合并摘要写入 .agenthub/board/results/merge-summary.md,并把会话状态更新为 merged。它通过 /hub:merge 命令调用。
适用场景
当用户运行 /hub:merge,或要求落地获胜的 AgentHub 结果并整理会话时使用。它适用于评估已对多个竞争智能体完成排名、需要合并获胜者并归档其余分支的场景。
运行要求
需要一个具备 AgentHub 分支与工作树结构的 git 仓库,并需要 Python 来运行 scripts/session_manager.py 以清理工作树和更新状态。该技能仅为说明文档,本身不附带脚本,但会引用该脚本路径。

/hub:merge — Merge Winner

Merge the best agent's branch into the base branch, archive losing branches via git tags, and clean up worktrees.

Usage

/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

What It Does

1. Identify Winner

If --agent specified, use that. Otherwise, use the #1 ranked agent from the most recent /hub:eval.

2. Merge Winner

bash
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. Archive Losers

For each non-winning agent:

bash
# 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. Clean Up Worktrees

bash
python {skill_path}/scripts/session_manager.py --cleanup {session-id}

5. Post Merge Summary

Write .agenthub/board/results/merge-summary.md:

markdown
---author: coordinatortimestamp: {now}channel: results---
## Merge Summary
- **Session**: {session-id}- **Winner**: {winner}- **Merged into**: {base_branch}- **Archived**: {loser-1}, {loser-2}, ...- **Worktrees cleaned**: {count}

6. Update State

bash
python {skill_path}/scripts/session_manager.py --update {session-id} --state merged

Safety

  • Confirm with user before merging — show the diff summary first
  • Never force-push — merge is always --no-ff for clear history
  • Archive, don't delete — losing agents' commits are preserved via tags
  • Clean worktrees — don't leave orphan directories on disk

After Merge

Tell the user:

  • Winner merged into {base_branch}
  • Losers archived with tags hub/archive/{session-id}/agent-{N}
  • Worktrees cleaned up
  • Session state: merged

来源与署名

来源:alirezarezvani/claude-skills位于engineering/agenthub/skills/merge提交19392f7

许可证: 无许可证

内容归原作者所有。SourceWeft 从公开仓库中收录这些内容。

举报或申请下架