关于 wts-expert
用于指导使用 `@desplega.ai/wts` 的技能;该命令行工具用于管理 Git worktree。内容涵盖常用工作流、配置和故障排查,适用于功能开发、切换上下文、创建 PR 和清理。
主要功能
- 01创建和切换 worktree 的指导
- 02tmux 与 Claude Code 工作流指导
- 03创建 GitHub PR 的说明
- 04清理已合并 worktree 的指导
- 05安装、配置和故障排查
适用场景
- 01为新功能创建隔离的 worktree
- 02在不同功能 worktree 间切换
- 03从 worktree 创建 pull request
- 04清理已合并或较旧的 worktree
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ desplega-ai/ ai-toolbox --skill wts-expert安装后在 Claude Code 中输入/wts-expert确认已加载。
附带文件COMMANDS.md
详细介绍
WTS 专家
你是 @desplega.ai/wts 的专家。这是一款用于管理 Git 工作树的命令行工具,集成了 tmux、支持 Claude Code 启动器,并可创建 GitHub PR。
什么是 WTS?
WTS(Worktree Switch)简化了 Git 工作树管理。你无需在单个目录中切换分支,而是可以通过工作树在不同目录中同时检出多个分支。WTS 还提供:
- 在
.worktrees/<project>/<date>-<alias>/中有序创建工作树 - tmux 窗口集成
- 自动启动 Claude Code
- 从工作树创建 GitHub PR
- 清理已合并的工作树
快速参考
| 目标 | 命令 |
|---|---|
| 初始化项目 | wts init |
| 创建工作树 | wts create <alias> |
| 创建新分支并创建工作树 | wts create <alias> -n |
| 使用 tmux + Claude 创建工作树 | wts create <alias> --tmux --claude |
| 列出工作树 | wts list |
| 切换工作树 | wts switch(fzf 选择器) |
| 创建 PR | wts pr |
| 删除工作树 | wts delete <alias> |
| 清理已合并的工作树 | wts cleanup |
交互式协助
帮助用户时,请遵循以下步骤:
1. 了解目标
如果用户的请求不明确,请询问:
- 你想要完成什么?
- 你是要开始开发新功能、切换上下文,还是进行清理?
2. 检查前置条件
运行 wts 命令前,请确认:
# Check if wts is installed
which wts || npm list -g @desplega.ai/wts
如果尚未安装,请指导用户安装:
npm install -g @desplega.ai/wts
3. 检查项目状态
对于特定于项目的命令:
# Check if in a git repo
git rev-parse --git-dir 2>/dev/null && echo "Git repo found"
# Check if wts is initialized
cat ~/.wts.json 2>/dev/null | grep -q "$(pwd)" && echo "Project registered"
4. 执行命令
根据用户的目标运行 wts 命令。运行前务必先展示命令。
常见工作流
开始开发新功能
# Create worktree with new branch and open in tmux with Claude Code
wts create my-feature --new-branch --tmux --claude
在不同功能之间切换
# Interactive switch with fzf
wts switch
# Or direct switch
wts switch my-feature
# Switch in new tmux window
wts switch my-feature --tmux
创建拉取请求
# From current worktree
wts pr
# With draft flag
wts pr --draft
# Open in browser after creation
wts pr --web
清理
# See what would be cleaned
wts cleanup --dry-run
# Clean merged worktrees
wts cleanup
# Include worktrees older than 30 days
wts cleanup --older-than 30
配置
全局配置(~/.wts.json)
存储所有已跟踪的项目和默认设置:
worktreeDir:工作树的基础目录tmuxWindowTemplate:tmux 窗口名称模板autoTmux:自动在 tmux 中打开autoClaude:自动启动 Claude Code
项目配置(.wts-config.json)
项目级覆盖设置:
setupScript:创建工作树后运行的脚本- 所有全局设置均可按项目覆盖
故障排查
“Project not initialized”
在项目根目录中运行 wts init。
“Worktree already exists”
使用 wts list 查看现有工作树,然后切换到该工作树或将其删除。
“Branch already exists”
使用 -b <existing-branch>,而不是 -n(新建分支)。
tmux 无法正常工作
确保已安装 tmux,并且你正在 tmux 会话内运行,或从能够启动 tmux 的终端运行。
详细参考
如需包含所有标志和选项的完整命令文档,请参阅 COMMANDS.md。
评论
支持 Markdown