360 Secure SkillHub
360 安全技能中心

Overstory Integration

核心功能是打通overstory Claude Code智能体集群与nanobot编排器,含三大模块:包装overstory CLI管理智能体会话与Git工作树、SQLite跟踪智能体全生命周期、线程安全SQLite消息桥支持多智能体通信。适用于多智能体并行协作的代码开发等场景,可通过命令行或Python模块调用,支持智能体创建、监控、销毁,消息收发,工作树管理等操作,输出智能体状态、消息记录等结果。

RuneweaverStudios
RuneweaverStudios
热度 57.72
最近更新 2026-05-20 03:38:59
分类:开发依赖:代码执行 / 读写文件 / 第三方 API应用场景:API 集成 / DevOps / 自动化脚本 / 任务管理

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add overstory-integration
Metadata
name
overstory-integration
displayName
overstory Integration
description
Integrates overstory Claude Code agent swarm with nanobot orchestrator. Manages agent lifecycle, SQLite mail bridge, and git worktree coordination.
version
1.0.0

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

Variable Default Description
OVERSTORY_BIN overstory Path to overstory binary
OVERSTORY_WORKSPACE current directory Workspace 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)

Column Type Description
id INTEGER PRIMARY KEY Auto-increment
agent_name TEXT UNIQUE Agent identifier
capability TEXT Agent capability (code, research, etc.)
status TEXT spawned/running/completed/failed/terminated
task TEXT Task description
result TEXT Final output (nullable)
start_time REAL Unix timestamp
end_time REAL Unix timestamp (nullable)
timeout INTEGER Max runtime in seconds

mail.db (.overstory/mail.db)

Column Type Description
id INTEGER PRIMARY KEY Auto-increment
thread_id TEXT Thread identifier (nullable)
from_agent TEXT Sender agent name
to_agent TEXT Recipient agent name
subject TEXT Message subject
body TEXT Message body
priority TEXT normal/high/urgent
read INTEGER 0=unread, 1=read
created_at REAL Unix timestamp