Subtask
Sender parallelle AI-arbeidere inn i isolerte git worktrees via subtask CLI
Krever oppsett
Hva den gjør
Lærer Claude Code å orkestrere parallelt arbeid gjennom `subtask` Go CLI: hver oppgave får sitt eget git worktree og gren, pluss en oppgavepost med tittel, basegren og en hendelseshistorikk. Dekker hele løkken med utkast, send til en arbeider, gjennomgå diffen, fremme stadier (fra doing til review til ready), og squash-merge tilbake til basegrenen. Utløses når brukeren ber om å delegere arbeid til arbeidere eller underagenter, kjøre flere oppgaver parallelt, eller nevner Subtask ved navn.
Testrapport
Bygget Go CLI fra kilde (go1.26.5) og kjørte alt under en mktemp HOME; de virkelige ~/.claude/skills og ~/.subtask ble verifisert uberørt. Alle 13 kommandoene SKILL.md-tabellen lister (ask, draft, send, stage, list, show, diff, merge, close, workspace, interrupt, log, trace) eksisterer i binærfilen, og `subtask install --no-prompt --scope user --harness claude` skrev SKILL.md til ~/.claude/skills/subtask/SKILL.md. Baseline-artefakt (/tmp/st-baseline): fiksing av to uavhengige Python-feil på min egen måte ga 2 sekvensielle grener og `git worktree list` som viste 1 oppføring, uten oppgavemetadata. Ferdighetsartefakt (/tmp/st-skill2): å følge teksten ordrett ga `git worktree list` med 3 oppføringer (main + fix/duration-hours + feat/retry-validation levende samtidig på forskjellige stier), en .subtask/tasks/<task>/-mappe per oppgave som inneholder TASK.md (tittel/base-gren frontmatter), WORKFLOW.yaml og history.jsonl, en `subtask list`-status tabell som viser begge i gang med +1 -1 og +7 -3, og `subtask merge` som squasher hver til main ("Merged ... Workspace freed") for en ren 2-commit main. Det ene trinnet jeg ikke kunne utføre er den faktiske AI-arbeideren: `subtask send` provisjonerte worktree og sendte, men harness døde på 3.6s og `subtask trace` viste at arbeiderprompten svarte med "Invalid API key - Please run /login" fordi den midlertidige HOME ikke har legitimasjon, så jeg hånd-commitet arbeiderutdataene for å teste gjennomgang/merge. Traff også en udokumentert blokkering: i et repo der /.subtask/ ikke var gitignored før utkast, nektet `subtask merge` med "has uncommitted changes" (ensureGitignore kalles kun fra `subtask config`, ikke `draft`). Sikkerhetsskanning ren: SKILL.md har ingen URL-er, skript, base64 eller injeksjonstekst, og de valgfrie plugin-hookene ekkoer kun "consider loading the subtask skill" påminnelser.
Testet på: 2026-07-21 · Claude Code 2.x (agent harness)
Installer
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 Kommandoer og eksempelprompter
/subtaskSender parallelle AI-arbeidere inn i isolerte git worktrees via subtask CLI
Skills utløses av vanlige forespørsler — ingen kommandoer å huske. Etter installasjonen aktiverer prompter som disse skillen (på engelsk):
Delegate this task to a subtask workerRun these three tasks in parallel workspacesCreate a new subtask for this feature