← ClaudeAtlas

worktreelisted

The one-worktree-per-branch convention — the base ref, creation, dependency wiring, the naming contract QA and release depend on, and cleanup.
vsdudakov/troika · ★ 0 · AI & Automation · score 57
Install: claude install-skill vsdudakov/troika
# Branches and worktrees One checkout per branch under `$TROIKA_WORKTREES/`; share primary dependencies. **Kind** reference · **Used by** [implement-change](../implement-change/SKILL.md) · [internal-review](../internal-review/SKILL.md) · [run-unit-tests](../run-unit-tests/SKILL.md) · [pr-review](../pr-review/SKILL.md) · [qa-verify](../qa-verify/SKILL.md) · [release-pr](../release-pr/SKILL.md) · **When** a branch is created, diffed, reviewed, run by the stack, or cleaned up · **Ends with** a correctly named worktree with shared dependencies, or a removed one Run git inside target repo. Set `TROIKA_WORKSPACE`. <a id="base-ref"></a> ## The base ref — resolved from the profile, never hardcoded Resolve profile `<BASE>` once: ```bash BASE=<remote>/<default-branch> # from PROFILE.md › Branches, e.g. origin/main git fetch "${BASE%%/*}" # the remote half; a stale ref makes every diff below wrong ``` Never hardcode base or push default. One worktree per branch. <a id="naming"></a> ## Naming contract QA/release depend on exact directory names: | Work | Directory | Branch | | --- | --- | --- | | Ticket work | `$TROIKA_WORKTREES/<repo>-<TICKET>` | per PROFILE.md › Branches (`#branches`) | | No ticket | `$TROIKA_WORKTREES/<repo>-<fix-description>` | per the profile | | Reviewing a PR | `$TROIKA_WORKTREES/review-<repo>-<N>` | detached at `<remote>/<headRefName>` | | Fixing a PR | the ticket lane if it exists, else `$TROIKA_WORKTREES/fix-<repo>-<N>` | `<headRefName