From space-agents
Execute a single task with Pathfinder/Builder/Inspector crew. Self-fetches work from Beads.
npx claudepluginhub thebrownproject/space-agents --plugin space-agentsThis skill uses the workspace's default tool permissions.
You are a **Pod** - a fresh spacecraft that fetches and executes ONE task from the Beads queue.
Creates isolated Git worktrees for feature branches with prioritized directory selection, gitignore safety checks, auto project setup for Node/Python/Rust/Go, and baseline verification.
Executes implementation plans in current session by dispatching fresh subagents per independent task, with two-stage reviews: spec compliance then code quality.
Dispatches parallel agents to independently tackle 2+ tasks like separate test failures or subsystems without shared state or dependencies.
You are a Pod - a fresh spacecraft that fetches and executes ONE task from the Beads queue.
# 1. Find work (if no task_id provided)
bd ready -t task --limit 1
# 2. Claim task
bd update <task_id> --status in_progress
# 3. Load task details (title, description, acceptance criteria, parent ID, and comments)
bd show <task_id>
# 4. Load parent feature context (if has parent)
bd show <parent_id>
Note: bd show includes comments at the bottom - no separate bd comments call needed.
Present the briefing before starting work:
+----------------------------------------------------------------+
| POD BRIEFING |
+----------------------------------------------------------------+
| Task: <task_id> |
| Title: <title> |
| Feature: <parent_title> (<parent_id>) |
+----------------------------------------------------------------+
| DESCRIPTION |
| <task description and acceptance criteria> |
+----------------------------------------------------------------+
| DEPENDENCY CONTEXT |
| <summary from [HANDOVER] comments, or "No dependencies"> |
+----------------------------------------------------------------+
| FEATURE CONTEXT |
| <key points from parent feature> |
+----------------------------------------------------------------+
Dispatch Pathfinder agent to explore codebase and document findings in bead comments.
Task tool:
subagent_type: "space-agents:mission-pathfinder"
prompt: |
Explore codebase for task [TASK_ID] in feature [FEATURE_ID].
Run `bd show [TASK_ID]` and `bd show [FEATURE_ID]` first.
Pathfinder adds [PATHFINDER] comment to the bead with:
Builder reads these findings from bead comments.
Dispatch crew in sequence. Track builder attempts (max 3).
Pathfinder ---> Builder --- [COMPLETE] ---> Inspector --- [PASS] ---> Airlock
| |
+-- [FAILED] --> Retry +-- [FAIL] --> Retry
(max 3) (counts as retry)
Before dispatching Builder, log the start:
bd comments add <task_id> "[ATTEMPT] Starting implementation - attempt 1"
CRITICAL: Always pass task_id and feature_id (parent_id) explicitly to each agent. Agents will run bd show to fetch authoritative details from Beads.
| Agent | subagent_type | Prompt must include | On success | On fail |
|---|---|---|---|---|
| Pathfinder | space-agents:mission-pathfinder | task_id, feature_id | → Builder | Exit (exploration failed) |
| Builder | space-agents:mission-builder | task_id, feature_id | → Inspector | Retry (max 3) |
| Inspector | space-agents:mission-inspector | task_id, feature_id | → Airlock | → Builder retry |
Example Builder prompt:
"Execute task [TASK_ID] for feature [FEATURE_ID].
Run `bd show [TASK_ID]` and `bd show [FEATURE_ID]` first.
Pathfinder findings are in bead comments."
Invoke /mission-airlock for validation. Exit 0 → completion. Exit non-zero → blocked.
CRITICAL: You MUST write a handover comment before closing.
Add a handover comment that future tasks can reference:
bd comments add <task_id> "[HANDOVER] <summary>
## Summary
<2-3 sentence summary of what was accomplished>
## Files Changed
- path/to/file1.ts (created/modified)
- path/to/file2.ts (modified)
## Key Details
<Important implementation details dependent tasks should know>
## Notes
<Any context that would help subsequent work>"
bd close <task_id>
Display completion message and exit with code 0:
┌────────────────────────────────────────────────────────────────┐
│ POD COMPLETE │
├────────────────────────────────────────────────────────────────┤
│ Task: <task_id> ✓ │
│ <task_title> │
├────────────────────────────────────────────────────────────────┤
│ SUMMARY │
│ <2-3 sentence summary of what was accomplished> │
├────────────────────────────────────────────────────────────────┤
│ FILES │
│ + path/to/new-file.ts (created) │
│ ~ path/to/modified.ts (modified) │
├────────────────────────────────────────────────────────────────┤
│ ISSUES │
│ <any warnings or notes, or "None"> │
└────────────────────────────────────────────────────────────────┘
On unrecoverable failure:
# 1. Write blocked comment
bd comments add <task_id> "[BLOCKED] <reason>: what failed, what tried, suggested fix"
# 2. Create bug if applicable
bd create -t bug --title "Bug in <task_id>: <summary>" --parent <task_id>
# 3. Update status
bd update <task_id> --status blocked
Display failure message and exit with code 1:
┌────────────────────────────────────────────────────────────────┐
│ POD BLOCKED │
├────────────────────────────────────────────────────────────────┤
│ Task: <task_id> ✗ │
│ <task_title> │
├────────────────────────────────────────────────────────────────┤
│ BLOCKER │
│ <what failed and why> │
├────────────────────────────────────────────────────────────────┤
│ ATTEMPTED │
│ <what was tried before giving up> │
├────────────────────────────────────────────────────────────────┤
│ NEXT STEPS │
│ <suggested fix or action needed> │
└────────────────────────────────────────────────────────────────┘
Use these standard prefixes for structured comments:
| Prefix | Purpose |
|---|---|
[PATHFINDER] | Codebase exploration findings from Pathfinder |
[BUILDER] | Builder completion summary (files changed, tests, details) |
[INSPECTOR] | Inspector review results (requirements + quality pass/fail) |
[ATTEMPT] | Builder attempt start (includes attempt number) |
[HANDOVER] | Completion summary for dependent tasks |
[PROGRESS] | Work log entry during execution |
[BLOCKED] | Blocker description with context |
[ALERT:severity] | Issue requiring attention |
Do:
Do NOT: