--- name: create-branch description: Create, rename, check out, or prepare libcrafter branches and worktrees with typed branch names such as feature/slug or fix/slug instead of bare task names. --- # Create Branch Use this skill whenever you create, rename, check out, or prepare a branch or worktree for repository work. ## Branch Name Format Use: ```text kind/short-slug ``` Allowed kinds: - `feature`: new behavior, capabilities, protocol support, tooling, or planned feature work - `fix`: bug fixes, regressions, correctness issues, reliability fixes - `docs`: documentation-only work - `test`: tests, fixtures, validation harnesses, oracle coverage - `ci`: GitHub Actions, hooks, commit policy, runner setup - `chore`: repository maintenance, dependency hygiene, generated metadata - `refactor`: behavior-preserving restructuring - `perf`: performance improvements - `release`: release preparation and publish plumbing ## Slug Rules Keep slugs lowercase ASCII, hyphen-separated, and specific enough to identify the work. Prefer 2-5 words. Do not use spaces, underscores, uppercase letters, PR numbers, personal names, timestamps, or bare plan names. Good examples: ```text feature/complete-oracle fix/normalize-tcp-options test/oracle-pcap-fixtures docs/release-checklist ci/conventional-commit-policy release/crafter-0-1 ``` Bad examples: ```text complete-oracle oracle agent-work fix stuff feat_complete_oracle ``` When a tool proposes a bare plan or task branch such as `complete-oracle`, convert it to the nearest typed branch, usually `feature/complete-oracle` for new capability work or `fix/` for corrective work.