关于 wrap
wrap 是用于结束 Agent 会话的技能:先调用 /reflect,再清理符合条件的 worktree,并提示用户运行 /clear。它会区分已合并与未合并的分支,并报告清理结果。
主要功能
- 01清理前调用 /reflect
- 02移除已合并的 .worktrees 项
- 03保留未合并 worktree 并警告
- 04按条件处理 .branch-context.md
- 05报告清理情况并提示 /clear
适用场景
- 01结束编码会话并汇总经验
- 02安全移除已合并的会话 worktree
- 03准备由用户清除会话
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ camacho/ ai-skills --skill wrap安装后在 Claude Code 中输入/wrap确认已加载。
详细介绍
Wrap
会话收尾:总结反思、清理工作树,并为 /clear 做好准备。
1. 总结反思
通过 Skill 工具调用 /reflect。等待其完成后再继续。
不要内联实现总结反思逻辑——请调用该技能。它会处理 MEMORY.md、Basic Memory 知识库、GitHub issues、计划收尾和 .last-reflect-ts。
2. 会话清理
总结反思完成后,清理会话工作树:
REPO_ROOT="$(git rev-parse --show-toplevel)"
git -C "$REPO_ROOT" worktree list
对于 .worktrees/ 下的每个条目(绝不包括主工作树):
REPO_ROOT="$(git rev-parse --show-toplevel)"
BRANCH=$(git -C <worktree-path> rev-parse --abbrev-ref HEAD)
git -C "$REPO_ROOT" branch --merged main | grep -q "$BRANCH" && MERGED=true || MERGED=false
- 已合并:
git -C "$REPO_ROOT" worktree remove <path>+git -C "$REPO_ROOT" branch -d "$BRANCH" - 未合并:警告并注明分支名称,不要删除
.branch-context.md:如果 "$REPO_ROOT/.branch-context.md" 存在,且总结反思已确认相关经验已整合,则删除它。如果总结反思跳过了它或报告没有经验,则保留并警告:“.branch-context.md 可能包含尚未总结的经验。”
报告:
Session cleanup:
Removed: .worktrees/feat-foo (branch feat/foo, merged)
Kept: .worktrees/feat-baz (branch feat/baz, NOT merged)
Cleaned: .branch-context.md (learnings consolidated)
3. 提示 /clear
会话已收尾。准备好后请输入
/clear。
不要调用 /clear——这是只有用户才能输入的内置命令。执行 /clear 后,SessionStart hook 会自动注入补充说明。
常见错误
| 错误 | 修正方法 |
|---|---|
| 内联实现总结反思逻辑 | 通过 Skill 工具调用 /reflect |
| 删除未合并的工作树 | 只发出警告——绝不删除未合并的工作 |
| 直接调用 /clear | 提示用户输入它——/clear 是内置命令 |
| 清理主工作树 | 只清理 .worktrees/* 条目 |
| 跳过清理报告 | 始终报告已清理和保留的内容 |
评论
支持 Markdown