From dodi-dev
Use when starting work on a ticket — creates a worktree, reads ticket context, and gets you ready to implement
How this skill is triggered — by the user, by Claude, or both
Slash command
/dodi-dev:pickupThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Pick up a ticket and set up an isolated workspace for it.
Pick up a ticket and set up an isolated workspace for it.
Either a ticket reference (e.g., DOD-152) or a description to search for.
Ensure we're on the main branch and up to date:
# Determine the main branch (master or main)
git symbolic-ref refs/remotes/origin/HEAD | sed 's@^refs/remotes/origin/@@'
# Switch to it
git checkout <main-branch>
# Pull latest
git pull origin <main-branch>
If there are uncommitted changes on the current branch, warn the user and stop.
Clean up stale worktrees and branches:
Prune remote tracking refs and remove any local branches whose remote branch has been deleted (e.g., from a previous squash-merge with --delete-branch).
git fetch --prune
git branch -v | grep '\[gone\]' | sed 's/^[+* ]//' | awk '{print $1}' | while read branch; do
worktree=$(git worktree list | grep "\\[$branch\\]" | awk '{print $1}')
if [ ! -z "$worktree" ] && [ "$worktree" != "$(git rev-parse --show-toplevel)" ]; then
git worktree remove --force "$worktree"
fi
git branch -D "$branch"
done
If nothing to clean, proceed silently.
Look up the ticket — use available tracker tools to read the full ticket (title, description, acceptance criteria, linked issues)
Create worktree:
git worktree add ../<repo-name>-<ticket-id> -b <ticket-id>
Read context — if the ticket references a spec, read it. Check for related docs.
Report ready state:
Picked up: <ticket-id> — <title>
To start working:
cd ../<repo-name>-<ticket-id> && claude
When finished:
git worktree remove ../<repo-name>-<ticket-id>
master or main)dodi-dev:write-plannpx claudepluginhub dodi-hq/dodi-skills --plugin dodi-devCreates traceable Git branches for current tasks using ticket IDs or short summaries (e.g., <ticket-id>-<short-kebab-summary>). Inspects git status, safely switches/creates, reports uncommitted work.
Manages Git worktrees for isolated parallel development. Creates feature/bug branches from 'development', links ticket IDs, copies local .env files, and pushes to remote.
Creates synced feature branches for new tasks: pulls latest main, fetches context from Jira tickets/GitHub issues/local specs, pushes {type}/{task-number}/{slug} branches.