worktree-check — Claude Code command: worktree status and task
Tells you which worktree you are in, what branch is checked out, how far ahead of main you are, and what task is assigned.
npx claude-code-templates@latest --command git-workflow/worktree-checkWhat worktree-check does
The command inspects your worktree environment and prints a summary. First it figures out where you are: the main working tree or a separate one. If you are in the main repo, it points you to /worktree-init to create worktrees and lists the ones that already exist.
Next it reads the current branch and checks the name against the claude/*, claude-daniel/* or review/* convention. Then it counts commits ahead of origin/main. After that it looks for .worktree-task.md in the worktree root and shows the task description. No file means no task was found, which can happen if it was written by hand.
Finally you get git status --short and git diff --stat: modified, staged and untracked files. Everything lands in one summary with branch, task, commit count and file counts. If changes look ready, the command suggests running /worktree-deliver. It only uses git and file reads, so it does not touch your repository.
What it helps with
- figure out which worktree the terminal is sitting in
- confirm the branch follows the naming convention
- count commits ahead of origin/main
- read the assigned task from .worktree-task.md
- size up uncommitted changes before delivering
Example prompts for the agent
- /worktree-check
- show the status of the current worktree and its task
- check the branch and how many commits ahead of main we are
How to install worktree-check
1claude-code-templates
npx claude-code-templates@latest --command git-workflow/worktree-check2Manually: put the files in place
.claude/commands/worktree-check.mdCall it with /worktree-check. For all projects use ~/.claude/commands/
Manually: put the files in place
~/.codex/prompts/worktree-check.mdCall it with /prompts:worktree-check. Codex marks this format deprecated in favour of skills
Manually: put the files in place
.github/prompts/worktree-check.prompt.mdManually: put the files in place
.gemini/commands/worktree-check.tomlGemini stores commands as TOML: the prompt text goes into the prompt field
Questions about worktree-check
How do I install worktree-check in Claude?
Through the templates package: npx claude-code-templates@latest --command git-workflow/worktree-check. The command lands in .claude/commands/worktree-check.md.
What does worktree-check do?
It reports whether you are in a worktree or the main repo, the active branch, commits ahead of origin/main, the contents of .worktree-task.md, and the state of your working copy.
Which files does worktree-check read?
The task file .worktree-task.md in the worktree root. If it is missing, the command says so and moves on to the git status.
Source text
worktree-check.md · MIT
--- allowed-tools: Bash(git:*), Bash(cat:*), Bash(pwd:*), Bash(ls:*) description: Check current worktree status, branch, and assigned task --- # Worktree Status Check Verify the current worktree environment and show task details. ## Instructions You are inside a worktree (or the main repo). Gather and display the current status clearly. ### Step 1: Detect Worktree 1. Get the current directory: `pwd` 2. List all worktrees: `git worktree list` 3. Determine if the current directory is a worktree (not the main working tree). The main working tree is listed first in `git worktree list` output — if the current path matches the first entry, this is the main repo, not a worktree. If this is **not** a worktree, inform the user: > You're in the main repository, not a worktree. Use `/worktree-init` to create worktrees. Then list any existing worktrees and exit. ### Step 2: Show Branch Info 1. Get current branch: `git branch --show-current` 2. Verify it follows the `claude/*`, `claude-daniel/*`, or `review/*` naming convention 3. Show how many commits ahead of origin/main: `git rev-list --count origin/main..HEAD` ### Step 3: Read Task 1. Check if `.worktree-task.md` exists in the worktree root 2. If it exists, read and display its contents 3. If it doesn't exist, note that no task file was found (may have been created manually) ### Step 4: Show Working Status Run and display: 1. `git status --short` — show modified, staged, and untracked files 2. `git diff --stat` — show a summary of unstaged changes ### Step 5: Display Summary Present a clean summary: ``` Worktree Status ────────────────────────────────── Branch: claude/<name> Task: <task description from .worktree-task.md> Commits: <N> ahead of main Modified: <N> files Staged: <N> files Untracked: <N> files ────────────────────────────────── ``` If there are changes ready to deliver, suggest: "Run `/worktree-deliver` when you're ready to commit, push, and create a PR."
© davila7 · MIT · davila7/claude-code-templates