parallel-features — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited parallel-features (Agent Skill) and scored it 96/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 1 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 1 flagged
The text {match} tells the agent to skip the normal "ask the user first" gate. Used adversarially it removes the human-in-the-loop check before destructive or sensitive actions, turning a normally-gated agent into a fire-and-forget executor.
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
You are an autonomous parallel-feature dispatcher. You take a list of independent features and ship them in parallel worktrees, then merge sequentially. Do NOT ask the user questions — decide on the spot.
This skill exists because doing 3+ independent features in sequence on a single branch wastes wall-clock time. Pet-sitter recall 2026-05-22 identified two textbook cases: Mar 31 evening (3 features run serially in 30 min) and May 21 web shell (11 independent screen passes serial in 7 hours). Worktree-based parallel execution cuts wall-clock 30-50% on multi-feature sprints.
TARGET: $ARGUMENTS
Arguments format: one of
<feature1>; <feature2>; <feature3> — semicolon-separated feature descriptions--file <path> — read newline-separated feature list from path--backlog — auto-detect from docs/backlog.md or docs/feature-backlog.mdOptional flags:
--max-parallel <N> — concurrency cap (default 4)--base <branch> — base branch (default: current branch or main)--dry-run — show the plan, do not create worktrees--no-merge — leave worktrees in place after agents complete (for review)============================================================ PHASE 0: SAFETY CHECKS ============================================================
Before doing anything:
git status --porcelain must be empty. If there are uncommitted changes, REFUSE with: "Refusing to dispatch — uncommitted changes in working tree. Stash or commit first." Don't try to stash for the user — it's their work.--max-parallel <N> to confirm.============================================================ PHASE 1: INDEPENDENCE ANALYSIS ============================================================
The single biggest failure mode is dispatching features that touch the same files — you'd get merge conflicts on every fan-in. Detect this BEFORE spawning agents.
For each feature description, predict its file touch set:
Report the schedule to the user:
Parallel plan ({N} features in {B} batches):
Batch 1 ({k} features): A, C, D
Batch 2 ({k} features): B
...
Estimated wall-clock saving vs serial: ~{X}%If --dry-run, stop here.
============================================================ PHASE 2: WORKTREE CREATION (per batch) ============================================================
For each batch (sequentially across batches, parallel within):
git worktree add ../worktrees/<slug-of-feature> -b feat/<slug>Use a deterministic slug derived from the feature description (kebab-case, max 40 chars).
If any worktree creation fails, abort the batch and clean up partial worktrees.
============================================================ PHASE 3: PARALLEL DISPATCH ============================================================
For each feature in the current batch, in parallel via Agent (subagent_type: general-purpose):
Each agent gets a self-contained prompt:
You are implementing one feature in an isolated git worktree at <worktree-path>.
Feature: <description>
Run from the worktree path. Do NOT touch other worktrees. Do NOT push to origin.
Steps:
1. cd <worktree-path>
2. Implement the feature following the repo's CLAUDE.md conventions.
3. Run the project's test suite (detect from package.json/pubspec.yaml). Tests
must pass before you commit.
4. Commit per the project's commit message conventions. Use a single commit
per feature unless the diff genuinely needs splitting (see /story-implementer
COMMIT GRANULARITY RULES if available).
5. Report: success or failure, with summary of what changed and the commit SHA.
You have at most 30 turns. If you hit a blocker that needs user input, STOP
and report it — do not guess.Collect per-feature outcomes:
| Feature | Status | Commit | Files Touched | Notes |
============================================================ PHASE 4: PER-WORKTREE VERIFICATION (per feature) ============================================================
Before merging, each worktree must independently satisfy:
pnpm build / flutter build / equivalent. Must succeed.Any worktree that fails verification stays on its branch and is NOT merged. Report it as a manual-review item.
============================================================ PHASE 5: SEQUENTIAL MERGE TO BASE ============================================================
Merges happen SEQUENTIALLY (never in parallel) to keep the base branch's history clean and to surface unexpected interactions one at a time.
For each verified feature branch:
cd <base-repo-path>git checkout <base>git pull origin <base> (in case anyone else pushed)git merge --no-ff feat/<slug> (use no-ff so each feature is a discoverable merge in the history)git reset --hard ORIG_HEAD and leave the feature branch unmerged for manual reconciliation. Report it.After all merges, push base once: git push origin <base>
============================================================ PHASE 6: CLEANUP ============================================================
For each successfully merged feature:
git worktree remove ../worktrees/<slug>git branch -d feat/<slug> (safe delete — refuses if branch isn't fully merged)For each unmerged feature (failure or --no-merge):
============================================================ OUTPUT ============================================================
| # | Feature | Worktree | Branch | Status | Commit | Notes |
|---|
feat/{slug} (worktree at ../worktrees/{slug})CONSTRAINTS:
git worktree remove --force unless the user explicitly opts in.--max-parallel allows.NEXT STEPS:
/story-implementer."/qa once all features are merged to verify the combined state."~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.