mycofeature-branch-worktree-squash-merge-deliverylisted
Install: claude install-skill goondocks-co/myco
# Feature Branch Worktree Squash-Merge Delivery
Use this skill when delivering a non-trivial Myco feature that spans multiple files and requires clean commit history in a PR. This is the standard delivery mechanism for all non-trivial Myco features.
## When to Apply
- Delivering a new feature that spans multiple files
- Implementing any non-trivial change that requires a clean PR commit
- Working on a named feature branch (`feature/branch-name` convention)
- Whenever you need to isolate implementation from the main branch during development
## Procedure
### Step 1: Design on `main`
Write the design spec in `docs/superpowers/specs/` while on the main branch. Commit only the spec, not implementation.
```bash
docs/superpowers/specs/2026-04-13-my-feature-design.md
git add docs/superpowers/specs/
git commit -m "docs: add design spec for my-feature"
```
Note: `docs/superpowers/specs/` is gitignored for external contributors but tracked locally.
### Step 2: Create a git worktree
```bash
git worktree add ../myco-branch-name feature/branch-name
cd ../myco-branch-name
```
**Critical**: use a sibling directory (e.g., `../myco-branch-name`), **not a subdirectory inside the repo**. Nested worktrees confuse Myco's CWD detection and create phantom sessions.
### Step 2b: Pin the worktree to its dev binary
```bash
make dev-link-worktree
```
This writes a `.myco/runtime.command` file that pins this worktree to the freshly-built in-repo binary (not via the shared `~/.local/bin/myc