- StrawPot — CLI that manages sessions, spawns agents, and enforces policy
- Denden — gRPC server for agent-to-orchestrator communication
- StrawHub — Registry for reusable skills and roles
System Overview
Package Structure
Design Principles
- Protocol-driven — Everything is a protocol. Implementations are pluggable.
- No agent-specific code — The core never hardcodes Claude Code, Codex, etc.
- Generic wrappers — A single
WrapperRuntimehandles all agents via the wrapper protocol. - Shared environment — All agents in a session work in the same directory.
- Config hierarchy — Built-in defaults < global config < project config < CLI flags.
Key Protocols
AgentRuntime
The interface every agent runtime must implement:Isolator
Creates one isolated environment per session:MemoryProvider
Optional pluggable context retrieval:Agent Wrapper Protocol
Every agent wrapper CLI implements two subcommands:WrapperRuntime in the core — wrappers never manage processes.