Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
different-ai avatar

Worktree Workflow

  • 2 installs
  • 29 repo stars
  • Updated March 27, 2026
  • different-ai/openwork-hub

Enforces a worktree-per-task workflow with scripts to start a fresh worktree and commit and push regularly.

About

Requires each file-changing task to begin in a dedicated worktree, with scripts for starting the worktree and committing/pushing after each chunk. A developer uses it to keep tasks isolated with frequent commits and pushes.

  • start-task-worktree.sh creates a per-task worktree with submodules
  • regular-commit.sh commits and pushes each meaningful chunk

Worktree Workflow by the numbers

  • 2 all-time installs (skills.sh)
  • Ranked #498 of 733 Git & Pull Requests skills by installs in the Skillselion catalog
  • Data as of Aug 3, 2026 (Skillselion catalog sync)
npx skills add https://github.com/different-ai/openwork-hub --skill worktree-workflow

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs2
repo stars29
Last updatedMarch 27, 2026
Repositorydifferent-ai/openwork-hub

What it does

Enforces a worktree-per-task workflow with scripts to start a fresh worktree and commit and push regularly.

Files

SKILL.mdMarkdownGitHub ↗

Quick Usage (Already Configured)

Start a task with a fresh worktree

skills/worktree-workflow/scripts/start-task-worktree.sh "task-name"

Commit regularly and push

skills/worktree-workflow/scripts/regular-commit.sh "message describing why"

Behavior

  • Any task that changes files should begin by creating a dedicated worktree.
  • Commit after each meaningful chunk of work.
  • Push the branch after each commit.
  • Submodules are initialized in the new worktree.

Related skills

  • For UX PR flows with screenshots, use skills/worktree-ux-pr/SKILL.md.

Common Gotchas

  • Use a short, kebab-case task name; it becomes the branch suffix.
  • If your default branch is not main, set BASE_BRANCH.
  • If you update submodule pins, make sure the target submodule SHA is reachable from a remote branch/tag (avoid pinning to commits that were only on a force-pushed ref).

First-Time Setup (If Not Configured)

1. Ensure you are in a git repo with origin configured. 2. Optional: set BASE_BRANCH or WORKTREES_DIR in your shell.

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.