Agent Skills: Worktree

Create, remove, or prune git worktrees for issue/PR isolation. Use when the user asks for a worktree, wants an isolated workspace per issue, or wants completed worktrees cleaned up.

UncategorizedID: gopherguides/gopher-ai/worktree

Install this agent skill to your local

pnpm dlx add-skill https://github.com/gopherguides/gopher-ai/tree/HEAD/plugins/go-workflow/skills/worktree

Skill Files

Browse the full folder contents for worktree.

Download Skill

Loading file tree…

plugins/go-workflow/skills/worktree/SKILL.md

Skill Metadata

Name
worktree
Description
"Create, remove, or prune git worktrees for issue/PR isolation. Use when the user asks for a worktree, wants an isolated workspace per issue, or wants completed worktrees cleaned up."

Worktree

Manage git worktrees for isolated per-issue/per-PR work. Three sub-actions, each in its own sibling file.

Action selection

| User intent | Sibling | Slash command | |---|---|---| | Create one worktree for an issue or PR | create.md | /create-worktree <num> | | Remove a specific worktree (interactively) | remove.md | /remove-worktree | | Batch-clean all completed worktrees | prune.md | /prune-worktree |

Match the user's request to one of the three rows, then read the corresponding sibling for the full procedure.

Conventions (apply to all three actions)

  • Worktree path: ../<reponame>-issue-<num>-<title-slug>/ — sibling to the source repo, never inside it
  • Branch name: issue-<num>-<title-slug>
  • Title slug: lowercase, alnum + hyphens, derived from gh issue view --json title
  • Identifier rule: issue-<NUM>- prefix is the trusted issue marker on a branch — fix/2fa-login contains a number but is NOT an issue branch
  • Default branch: git remote show origin | grep 'HEAD branch' (handles repos with main vs master vs custom)
  • State file: ${CLAUDE_PLUGIN_ROOT}/scripts/worktree-state.sh registers the active worktree so the pre-tool-use hook blocks accidental edits to the source repo

Prerequisites (all three)

  • gh CLI installed and authenticated
  • Run from inside a git repository (any worktree of the repo, not just the main checkout)

Further Reading

  • create.md — full create procedure (PR vs issue detection, env-file copy, state registration)
  • remove.md — interactive selection + safety-check matrix (issue closed? branch merged? uncommitted changes?)
  • prune.md — batch evaluation, classification, confirmation, removal