branch-workflow
# Branch Workflow Templates
What this skill does
# Branch Workflow Templates This skill provides templates for branch-based workflow instructions that get added to CLAUDE.md. ## Standard Mode Template Use this template when the user chooses **Standard** workflow mode: ```markdown <!-- BRANCH-WORKFLOW-ENABLED --> ## Branch-Based Workflow This project uses a branch-based development workflow. ### CRITICAL: Branch Check Before ANY Work **STOP.** Before making ANY code changes (Edit, Write, or running commands that modify files): 1. Run: `git branch --show-current` 2. If on `main` or `master`: **CREATE A FEATURE BRANCH FIRST** 3. Do NOT proceed with file modifications until on a feature branch This is **NON-NEGOTIABLE**. Never edit files while on a protected branch. ### Branch Strategy - **Protected branches**: `main`, `master` - never commit directly, never edit files on these branches - **Feature branches**: Create from main for ALL new work - **Branch naming**: Use prefixes like `feat/`, `fix/`, `refactor/`, `docs/` ### Workflow Steps 1. **Before ANY work**: Check and create branch if needed ```bash # Check current branch git branch --show-current # If on main/master, create feature branch: git checkout main git pull origin main git checkout -b feat/your-feature-name ``` 2. **Make commits**: Commit to your feature branch ```bash git add . git commit -m "feat: description of change" ``` 3. **Stay in sync**: Periodically rebase on main ```bash git fetch origin git rebase origin/main ``` 4. **Push and create PR**: When ready for review ```bash git push -u origin feat/your-feature-name gh pr create --title "feat: your feature" --body "Description..." ``` 5. **After merge**: Clean up local branch ```bash git checkout main git pull origin main git branch -d feat/your-feature-name ``` ### Task Tracker Integration When working on tracked tasks: - Reference task IDs in branch names: `feat/TASK-123-add-feature` - Include task references in commit messages: `feat: add feature [TASK-123]` - Link PRs to tasks in the PR description ### Configuration - **Sync reminder threshold**: Set `BRANCH_SYNC_HOURS` env var (default: 2 hours) - **Disable workflow**: Run `/toggle-branch-workflow` to turn off <!-- /BRANCH-WORKFLOW-ENABLED --> ``` --- ## Worktree Mode Template Use this template when the user chooses **Worktree** workflow mode: ```markdown <!-- BRANCH-WORKFLOW-ENABLED --> <!-- WORKTREE-MODE --> ## Branch-Based Workflow (Worktree Mode) This project uses a worktree-based development workflow. Each feature gets its own directory. ### CRITICAL: Worktree Check Before ANY Work **STOP.** Before making ANY code changes (Edit, Write, or running commands that modify files): 1. Run: `git branch --show-current` 2. If on `main` or `master`: **CREATE A WORKTREE FIRST** 3. Do NOT proceed with file modifications until in a feature worktree This is **NON-NEGOTIABLE**. Never edit files while on a protected branch. ### Branch Strategy - **Protected branches**: `main`, `master` - never commit directly, never edit files on these branches - **Feature branches**: Create via worktrees from main for ALL new work - **Branch naming**: Use prefixes like `feat/`, `fix/`, `refactor/`, `docs/` ### Worktree Workflow 1. **Before ANY work**: Check branch and create worktree if needed ```bash # Check current branch git branch --show-current # If on main/master, create worktree: git fetch origin git worktree add ../$(basename $PWD)-feat-name -b feat/feature-name origin/main cd ../$(basename $PWD)-feat-name ``` 2. **Make commits**: Work in the worktree directory ```bash git add . git commit -m "feat: description of change" ``` 3. **Stay in sync**: Periodically rebase on main ```bash git fetch origin git rebase origin/main ``` 4. **Push and create PR**: When ready for review ```bash git push -u origin feat/feature-name gh pr create --title "feat: your feature" --body "Description..." ``` 5. **After merge**: Clean up worktree and branch ```bash cd /path/to/main/repo git worktree remove ../$(basename $PWD)-feat-name git branch -d feat/feature-name git pull origin main ``` ### Worktree Management ```bash # List all worktrees git worktree list # Create worktree for existing remote branch (e.g., PR review) git worktree add ../project-review origin/feat/some-branch # Remove worktree when done git worktree remove ../project-review # Prune stale worktree references git worktree prune ``` ### Directory Structure Keep worktrees alongside the main repo: ``` ~/projects/ ├── myproject/ <- main branch (primary repo) ├── myproject-feat-auth/ <- feature worktree ├── myproject-fix-bug/ <- bugfix worktree └── myproject-review/ <- PR review worktree ``` ### Task Tracker Integration When working on tracked tasks: - Reference task IDs in branch names: `feat/TASK-123-add-feature` - Include task references in commit messages: `feat: add feature [TASK-123]` - Link PRs to tasks in the PR description ### Configuration - **Sync reminder threshold**: Set `BRANCH_SYNC_HOURS` env var (default: 2 hours) - **Disable workflow**: Run `/toggle-branch-workflow` to turn off <!-- /BRANCH-WORKFLOW-ENABLED --> ``` --- ## Mode Comparison | Feature | Standard | Worktree | |---------|----------|----------| | Branch switching | `git checkout` | Separate directories | | Parallel work | One branch at a time | Multiple branches simultaneously | | Context switching | Must stash/commit | Just `cd` to other directory | | Disk usage | Single copy | Copy per worktree | | Best for | Solo devs, linear work | Teams, PR reviews, parallel features |
Related in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.