Subtask

Verzendt parallelle AI-workers naar geïsoleerde git worktrees via de subtask CLI

Door zippoxer · zippoxer/subtask

Werkt met setup ★ 7.6/10

Subtask — Verzendt parallelle AI-workers naar geïsoleerde git worktrees via de subtask CLI

Wat het doet

Leert Claude Code om parallel werk te orkestreren via de `subtask` Go CLI: elke taak krijgt zijn eigen git worktree en branch, plus een taakrecord met titel, basisbranch en een gebeurtenisgeschiedenis. Omvat de volledige loop van concept, verzenden naar een worker, de diff beoordelen, stadia vooruitgaan (van bezig naar beoordeling naar klaar), en squash-mergen terug naar de basisbranch. Activeert wanneer de gebruiker vraagt om werk te delegeren aan workers of subagents, meerdere taken parallel uit te voeren, of Subtask bij naam noemt.

Testrapport

De Go CLI gebouwd vanuit de bron (go1.26.5) en alles uitgevoerd onder een mktemp HOME; de echte ~/.claude/skills en ~/.subtask werden ongemoeid geverifieerd. Alle 13 commando's die de SKILL.md tabel vermeldt (ask, draft, send, stage, list, show, diff, merge, close, workspace, interrupt, log, trace) bestaan in de binary, en `subtask install --no-prompt --scope user --harness claude` schreef SKILL.md naar ~/.claude/skills/subtask/SKILL.md. Baseline artefact (/tmp/st-baseline): het oplossen van twee onafhankelijke Python bugs op mijn eigen manier gaf 2 sequentiële branches en `git worktree list` toonde 1 entry, zonder taakmetadata. Skill artefact (/tmp/st-skill2): het verbatim volgen van de body gaf `git worktree list` met 3 entries (main + fix/duration-hours + feat/retry-validation live tegelijkertijd op verschillende paden), een .subtask/tasks/<task>/ map per taak met TASK.md (titel/basis-branch frontmatter), WORKFLOW.yaml en history.jsonl, een `subtask list` status tabel die beide in uitvoering toonde met +1 -1 en +7 -3, en `subtask merge` die elk op main squashte ("Merged ... Workspace freed") voor een schone 2-commit main. De enige stap die ik niet kon uitvoeren is de eigenlijke AI worker: `subtask send` voorzag de worktree en verzond, maar de harness stierf in 3.6s en `subtask trace` toonde dat de worker prompt antwoordde met "Invalid API key - Please run /login" omdat de tijdelijke HOME geen credentials heeft, dus ik heb de worker output handmatig gecommit om review/merge te testen. Ook stuitte ik op een ongedocumenteerde blokkade: in een repo waar /.subtask/ niet gitignored was vóór het opstellen, weigerde `subtask merge` met "has uncommitted changes" (ensureGitignore wordt alleen aangeroepen vanuit `subtask config`, niet `draft`). Beveiligingsscan schoon: SKILL.md heeft geen URL's, scripts, base64 of injection tekst, en de optionele plugin hooks echoën alleen "consider loading the subtask skill" herinneringen.

Getest op: 2026-07-21 · Claude Code 2.x (agent harness)

Installatie

git clone --depth 1 https://github.com/zippoxer/subtask.git /tmp/subtask-src
mkdir -p ~/.claude/skills/subtask
cp /tmp/subtask-src/pkg/install/SKILL.md ~/.claude/skills/subtask/SKILL.md
# REQUIRED: the skill is a thin wrapper and does nothing without the `subtask` Go binary.
#   brew install zippoxer/tap/subtask
#   # or: go install github.com/zippoxer/subtask/cmd/subtask@latest
#   # or: curl -fsSL https://subtask.dev/install.sh | bash   (upstream install script; audit before running)
# Then configure the worker harness (writes the same SKILL.md itself, so the copy above is optional):
#   subtask install --no-prompt --scope user --harness claude   # or --harness codex / opencode
#   # plain `subtask install` is interactive and fails without a TTY ("could not open a new TTY")
# REQUIRED: the chosen harness CLI (claude / codex / opencode) must be installed and authenticated,
#   otherwise `subtask send` fails with "claude failed: exit status 1".
# Recommended: commit `/.subtask/` to .gitignore BEFORE drafting tasks, or `subtask merge` aborts
#   with "has uncommitted changes" because .subtask/ is untracked inside each worktree.
# Optional plugin (adds hooks that remind Claude to load the skill):
#   /plugin marketplace add zippoxer/subtask  &&  /plugin install subtask@subtask

Commando's en voorbeeldprompts

  • /subtaskVerzendt parallelle AI-workers naar geïsoleerde git worktrees via de subtask CLI

Skills reageren op gewone verzoeken — geen commando's om te onthouden. Na installatie activeren prompts zoals deze de skill (in het Engels):

  • Delegate this task to a subtask worker
  • Run these three tasks in parallel workspaces
  • Create a new subtask for this feature