Automated summary
Executes all work units for a given outcome, automatically handling dependencies and executing tasks in parallel using isolated git worktrees.
Strengths
- Dependency-aware execution ordering
- Parallel execution with isolated git worktrees
- Integration with Linear for issue tracking
- Intelligent batch planning
Limitations
- Requires initial setup of git worktrees and dependency linking
- Only works with Linear as the issue tracker
- Dependency detection relies on user input
Use this skill when you need to efficiently execute a set of interdependent work units for an outcome, maximizing parallelism while respecting dependencies.
Avoid when work units are trivial or can be executed sequentially without isolation, or when the project setup does not support git worktrees.
Security analysis
SafeThe skill orchestrates git worktree operations and parallel subagent execution for legitimate development workflow. No destructive, exfiltrating, or obfuscated actions are present. Bash commands are standard git operations, and file modifications are constrained to isolated worktrees.
No concerns found
How this analysis is madeExamples
/execute-outcome BHU-139Execute all work units for outcome BHU-139, respecting any dependencies between them.name: execute-outcome description: Execute all Work Units for an Outcome with dependency-aware ordering allowed-tools: Read, Grep, Glob, Edit, Write, Bash, Task, mcp__linear-server__get_issue, mcp__linear-server__list_issues, mcp__linear-server__update_issue
Execute Outcome
Execute all Work Units (sub-issues) for an Outcome, handling dependencies intelligently.
Usage
/execute-outcome <outcome-issue-id>
Example: /execute-outcome BHU-139
Important: Using Linear MCP
Use Linear MCP tools as direct function calls, NOT bash commands.
Git Worktree Strategy
Parallel execution requires isolation. Each parallel Work Unit runs in its own git worktree.
main-repo/
├── .git/
├── src/
├── ...
└── .worktrees/ # Created during execution
├── wu-BHU-141/ # Worktree for WU 1
│ ├── src/
│ └── ...
└── wu-BHU-142/ # Worktree for WU 2
├── src/
└── ...
Why worktrees?
- Each agent modifies files independently
- Tests run in isolation (no interference)
- Git state stays clean (one branch per WU)
- Merge conflicts detected at integration, not during work
Setup requirements:
- Add
.worktrees/to.gitignore(one-time setup) - Worktrees share the same
.gitdirectory — no duplicate clones - Dependencies (node_modules, .venv) must exist in worktree or be symlinked
Worktree Environment Setup
Before running /work in a worktree, ensure dependencies are available:
Python (uv/pip):
# Option A: Install in worktree (isolated, slower)
cd .worktrees/wu-BHU-141 && uv sync
# Option B: Symlink from main (shared, faster)
ln -s $(pwd)/.venv .worktrees/wu-BHU-141/.venv
Node (npm/pnpm):
# Option A: Install in worktree
cd .worktrees/wu-BHU-141 && npm install
# Option B: Symlink node_modules (careful with native deps)
ln -s $(pwd)/node_modules .worktrees/wu-BHU-141/node_modules
Recommendation: Use symlinks for speed. If a WU modifies dependencies, install fresh.
Workflow
Step 1: Fetch Outcome and Work Units
- Fetch Outcome issue via
mcp__linear-server__get_issue - List child issues (Work Units) via
mcp__linear-server__list_issueswithparentId - Display:
Outcome: [title] Work Units found: N 1. [WU-1 title] (proof: X, budget: Y) 2. [WU-2 title] (proof: X, budget: Y) ...
Step 2: Determine Dependencies
Ask human:
Do any Work Units depend on others?
1. WU-1: [title]
2. WU-2: [title]
3. WU-3: [title]
Enter dependencies (e.g., "2→1" means WU-2 depends on WU-1):
Or type "none" if all are independent.
Build dependency graph from response.
Step 3: Plan Execution Order
Based on dependencies:
- Topological sort to find valid order
- Identify parallelizable groups (no interdependencies)
- Present plan:
Execution Plan: Batch 1 (parallel, 2 worktrees): - BHU-141: [title] - BHU-143: [title] Batch 2 (after batch 1): - BHU-142: [title] (depends on BHU-141) Proceed? [y/n]
Step 4: Execute Batches
For each batch:
If batch has 1 Work Unit:
- Execute inline using
/worklogic (no worktree needed) - Commit directly to current branch
If batch has multiple Work Units (parallel):
-
Setup worktrees:
# Get current branch name CURRENT_BRANCH=$(git branch --show-current) # Create worktree directory mkdir -p .worktrees # For each WU in batch, create worktree with feature branch git worktree add .worktrees/wu-BHU-141 -b wu/BHU-141 $CURRENT_BRANCH git worktree add .worktrees/wu-BHU-143 -b wu/BHU-143 $CURRENT_BRANCH -
Launch parallel agents:
For each Work Unit in the batch, invoke the Task tool:
Task( subagent_type: "general-purpose" description: "Execute WU BHU-141" prompt: | Execute Work Unit BHU-141 in isolated worktree. ## Context - Issue ID: BHU-141 - Worktree path: /absolute/path/to/.worktrees/wu-BHU-141 - Base branch: wu/BHU-141 ## Instructions 1. cd to worktree: cd /absolute/path/to/.worktrees/wu-BHU-141 2. Run /work BHU-141 workflow (fetch issue, TDD, implement, review) 3. All file operations MUST happen in the worktree path 4. All git commands MUST use: git -C /absolute/path/to/.worktrees/wu-BHU-141 5. Commit format: [BHU-141] <type>: <description> ## Critical - NEVER modify files outside the worktree - Return verdict: APPROVED / NEEDS_CHANGES / BLOCKED_FOR_HUMAN )Launch all batch agents in parallel (single message with multiple Task calls).
-
Wait and collect:
- Wait for all agents to complete
- Collect results (APPROVE/NEEDS_CHANGES/BLOCKED)
-
Integrate completed work:
# For each successful WU, merge its branch git merge wu/BHU-141 --no-edit git merge wu/BHU-143 --no-edit -
Cleanup worktrees:
git worktree remove .worktrees/wu-BHU-141 git worktree remove .worktrees/wu-BHU-143 git branch -d wu/BHU-141 git branch -d wu/BHU-143
Between batches:
- Report progress
- Ensure all merges from previous batch are complete
- If any Work Unit failed, ask human:
BHU-141 failed review. Options: 1. Retry BHU-141 2. Skip BHU-141, continue with others (cleanup its worktree) 3. Stop execution (cleanup all worktrees)
Step 5: Handle Merge Conflicts
After parallel batch completion, merges may conflict:
-
Detect conflict:
git merge wu/BHU-141 --no-edit # If exit code != 0 and output contains "CONFLICT" -
On conflict, report to human:
Merge conflict integrating BHU-141. Conflicting files: - src/models/land.py - src/services/valuation.py Options: 1. I'll resolve manually (pause execution) 2. Abort BHU-141, keep other WUs 3. Stop execution entirely -
If human resolves:
- Wait for human to run
git add . && git commit - Verify merge complete:
git statusshows clean state - Continue with next merge or batch
- Wait for human to run
-
Conflict prevention tips:
- Work Units touching same files should be sequential, not parallel
- During dependency mapping (Step 2), ask: "Do any WUs modify the same files?"
Step 6: Handle Blocked Items
If a Work Unit is BLOCKED_FOR_HUMAN:
- Pause batch execution
- Report the blocking issue
- Keep worktree intact (human may need to inspect)
- Wait for human decision
- Resume or abort based on decision
Step 7: Update Outcome
After all Work Units complete:
- Update Outcome issue status checklist:
## Status - [x] Work Units defined - [x] Work Units complete - [ ] Success metric verified - Report to human:
## Outcome Execution Complete Outcome: [title] Work Units: N/N complete - [x] WU-1: [title] - APPROVED - [x] WU-2: [title] - APPROVED - [x] WU-3: [title] - APPROVED Total lines changed: X Total decisions logged: Y Next: Verify success metric.
Error Handling
| Situation | Action | |-----------|--------| | Work Unit fails review (NEEDS_CHANGES) | Retry up to 3x in worktree, then ask human | | Work Unit blocked for human | Pause, keep worktree for inspection, wait for decision | | Dependency failed | Skip dependents, cleanup failed worktree, report, ask human | | Merge conflict | Pause, report conflicting files, wait for human resolution | | Worktree creation fails | Check disk space, check for existing worktree, report | | MCP failure | Report error, retry once, then fail |
Cleanup on Abort
If execution is aborted (by human or error), always cleanup:
# List all worktrees created for this outcome
git worktree list | grep ".worktrees/wu-"
# Remove each worktree
git worktree remove .worktrees/wu-BHU-141 --force
git worktree remove .worktrees/wu-BHU-143 --force
# Delete orphan branches
git branch -D wu/BHU-141 wu/BHU-143
# Remove worktrees directory if empty
rmdir .worktrees 2>/dev/null || true
Never leave worktrees behind — they consume disk space and cause confusion.
Execution Modes
Sequential (safe):
/execute-outcome BHU-139 --sequential
Runs all Work Units one by one, no parallelism.
Parallel (fast):
/execute-outcome BHU-139 --parallel
Maximum parallelism based on dependency graph.
Default: Ask about dependencies, then optimize.
Progress Tracking
During execution, maintain state:
Outcome: BHU-139
Started: 2026-01-21 12:30
Base branch: feature/land-valuation
Batch 1/2 (parallel):
Worktrees: .worktrees/wu-BHU-141, .worktrees/wu-BHU-143
- [x] BHU-141: APPROVED → merged ✓
- [x] BHU-143: APPROVED → merged ✓
Worktrees cleaned up ✓
Batch 2/2 (sequential):
- [~] BHU-142: IN PROGRESS...
Active worktrees: 0
Elapsed: 7 min
Worktree Status Commands
To inspect state during execution:
# List all worktrees
git worktree list
# Check branch status in a worktree
git -C .worktrees/wu-BHU-141 status
# View commits made in worktree
git -C .worktrees/wu-BHU-141 log --oneline -5
From the file to a first result
The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.
View the source and supporting filesThis download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.
1. Download the file
Download SKILL.mdFrom the root of a test project, save the file as .skill-downloads/execute-outcome-work-units-mmh8qr1o/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.
Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.
mkdir -p '.skill-downloads/execute-outcome-work-units-mmh8qr1o' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/execute-outcome-work-units-mmh8qr1o/download' --output '.skill-downloads/execute-outcome-work-units-mmh8qr1o/SKILL.md.part' && mv '.skill-downloads/execute-outcome-work-units-mmh8qr1o/SKILL.md.part' '.skill-downloads/execute-outcome-work-units-mmh8qr1o/SKILL.md'2. Check prerequisites
Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.
Tools declared by the author (check availability in your agent): Read, Grep, Glob, Edit, Write, Bash, Task, mcp__linear-server__get_issue, mcp__linear-server__list_issues, mcp__linear-server__update_issue
No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.
The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.
3. Load the skill
After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.
Claude Code
test -f '.skill-downloads/execute-outcome-work-units-mmh8qr1o/SKILL.md' && test -s '.skill-downloads/execute-outcome-work-units-mmh8qr1o/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/execute-outcome' && cp -R '.skill-downloads/execute-outcome-work-units-mmh8qr1o' '.claude/skills/execute-outcome'OpenSkills
OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.
Official OpenSkills installationopenskills install './.skill-downloads/execute-outcome-work-units-mmh8qr1o'openskills read 'execute-outcome-work-units-mmh8qr1o'Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.
For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.
openskills syncManual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.
4. Try a first task
Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:
Read .skill-downloads/execute-outcome-work-units-mmh8qr1o/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.
PDF Reader
Productivity
Read and extract text from PDF files, including documents, reports, contracts, and spreadsheets. Works with local files, URLs, and WhatsApp attachments. Use whenever PDF content is needed, even if not explicitly requested.
Discord Messaging Workflows
Productivity
Use the message tool to send, edit, and moderate Discord messages with interactive components.
Interactive Verdict Preview
Productivity
Generate an interactive HTML preview of keep/drop verdicts for maintainer review, then process the pasted feedback JSON.