Skills overstory-integration

Integrates overstory Claude Code agent swarm with nanobot orchestrator. Manages agent lifecycle, SQLite mail bridge, and git worktree coordination.

install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/austindixson/overstory-integration" ~/.claude/skills/openclaw-skills-overstory-integration && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/austindixson/overstory-integration" ~/.openclaw/skills/openclaw-skills-overstory-integration && rm -rf "$T"
manifest: skills/austindixson/overstory-integration/SKILL.md
source content

overstory Integration

Description

Integrates overstory's Claude Code agent swarm system with the nanobot orchestrator. Provides agent lifecycle management, an inter-agent SQLite mail bridge, and git worktree coordination for parallel agent workstreams.

Architecture

┌──────────────┐       ┌───────────────────┐
│   nanobot     │──────▶│ overstory_wrapper │──▶ overstory CLI (tmux sessions)
│  orchestrator │       └───────────────────┘
│               │       ┌───────────────────┐
│               │──────▶│ agent_lifecycle    │──▶ SQLite (agent_lifecycle.db)
│               │       └───────────────────┘
│               │       ┌───────────────────┐
│               │──────▶│   mail_bridge     │──▶ SQLite (.overstory/mail.db)
└──────────────┘       └───────────────────┘
  • overstory_wrapper.py — Thin wrapper around the
    overstory
    CLI. Spawns agents via tmux, manages worktrees, installs hooks.
  • agent_lifecycle.py — Tracks agent state (spawned → running → completed/failed/terminated) in a local SQLite database. Provides async monitoring and cleanup.
  • mail_bridge.py — Thread-safe message bridge using overstory's native SQLite mail format. Supports direct messages, broadcasts, and threaded conversations.

Requirements

  • Python 3.9+
  • overstory
    CLI installed and on PATH (or set
    OVERSTORY_BIN
    )
  • git (for worktree management)
  • tmux (overstory uses tmux for agent sessions)
  • No external Python dependencies (stdlib only)

Environment Variables

VariableDefaultDescription
OVERSTORY_BIN
overstory
Path to overstory binary
OVERSTORY_WORKSPACE
current directoryWorkspace root for overstory operations

Commands

Initialize workspace

python3 scripts/overstory_wrapper.py init --workspace /path/to/project

Spawn an agent

python3 scripts/overstory_wrapper.py sling \
  --task-id TASK-42 \
  --capability code \
  --name builder-alice \
  --description "Implement auth module" \
  --worktree

Check status

python3 scripts/overstory_wrapper.py status
python3 scripts/overstory_wrapper.py status --agent builder-alice --verbose

Inspect agent transcript

python3 scripts/overstory_wrapper.py inspect --agent builder-alice --lines 100

Kill an agent

python3 scripts/overstory_wrapper.py kill --agent builder-alice

Worktree management

python3 scripts/overstory_wrapper.py list-worktrees
python3 scripts/overstory_wrapper.py cleanup-worktree --agent builder-alice

Agent lifecycle

python3 scripts/agent_lifecycle.py spawn --task "Fix login bug" --capability code --name bug-fixer
python3 scripts/agent_lifecycle.py list-active --json
python3 scripts/agent_lifecycle.py wait --agent bug-fixer --timeout 1800
python3 scripts/agent_lifecycle.py cleanup --max-age 24

Mail bridge

python3 scripts/mail_bridge.py send --from orchestrator --to builder-alice --subject "Priority change" --body "Switch to auth module"
python3 scripts/mail_bridge.py read --agent builder-alice --unread
python3 scripts/mail_bridge.py broadcast --from orchestrator --channel @all --message "Stand down"
python3 scripts/mail_bridge.py create-thread --agents orchestrator,builder-alice --subject "Auth design"
python3 scripts/mail_bridge.py reply --thread THREAD-ID --from builder-alice --body "Done with phase 1"

Usage as Python Module

from overstory_wrapper import OverstoryWrapper
from agent_lifecycle import AgentLifecycle
from mail_bridge import MailBridge

wrapper = OverstoryWrapper("/path/to/workspace")
wrapper.init()

lifecycle = AgentLifecycle()
agent = lifecycle.spawn_agent(task="Build API", capability="code", name="api-builder")

bridge = MailBridge("/path/to/workspace")
bridge.send("orchestrator", "api-builder", "Context", "Here are the specs...")

Database Schemas

agent_lifecycle.db (~/.nanobot/agent_lifecycle.db)

ColumnTypeDescription
idINTEGER PRIMARY KEYAuto-increment
agent_nameTEXT UNIQUEAgent identifier
capabilityTEXTAgent capability (code, research, etc.)
statusTEXTspawned/running/completed/failed/terminated
taskTEXTTask description
resultTEXTFinal output (nullable)
start_timeREALUnix timestamp
end_timeREALUnix timestamp (nullable)
timeoutINTEGERMax runtime in seconds

mail.db (.overstory/mail.db)

ColumnTypeDescription
idINTEGER PRIMARY KEYAuto-increment
thread_idTEXTThread identifier (nullable)
from_agentTEXTSender agent name
to_agentTEXTRecipient agent name
subjectTEXTMessage subject
bodyTEXTMessage body
priorityTEXTnormal/high/urgent
readINTEGER0=unread, 1=read
created_atREALUnix timestamp