Soothe Wiki
Goal-driven orchestration framework for building 24/7 long-running autonomous agents
Welcome to the Soothe documentation. This wiki provides comprehensive guides for users, developers, and operators.
π Quick Start
New to Soothe? Start with Quick Start β install CLI, start the daemon (Docker or local), run your first prompt. Then browse Getting Started for installation details and core concepts.
π Documentation Index
π Getting Started
- Getting Started Hub - Start here!
- Installation - System requirements, installation methods, troubleshooting
- Quick Start - Install, daemon, first prompt, production
- Basic Concepts - Core architecture and concepts
- CLI Reference - Complete CLI documentation with examples
- TUI Guide - Terminal UI, slash commands, keyboard shortcuts
- Architecture Overview β - System design and concepts
π€ Core Capabilities
- Autonomous Mode - Multi-step autonomous task execution
- Subagents - Specialized subagents (planner, deep_research, academic_research, veritas, etc.)
- Thread Management - Conversation threads and session resumption
π§ Configuration & Management
- Configuration Guide β - Complete configuration reference
- YAML Reference - Full YAML schema with all options
- Environment Variables - SOOTHE_* variables reference
- Common Patterns - Real-world configuration examples
- Provider Setup - LLM providers, vector stores, persistence
- Configuration (Quick Reference) - Quick config overview
- Daemon Management - Daemon lifecycle (start, stop, attach)
- Transport Setup - WebSocket transport configuration
- Authentication - External authentication with reverse proxies
π Deployment & Operations
- Deployment Guide β - Production deployment patterns
- Production Setup - Docker Compose, systemd, Kubernetes
- Monitoring & Observability - Langfuse, logs, health checks
- Security Hardening - Reverse proxy, TLS, access control
- Scaling Strategies - Horizontal scaling, Kubernetes, performance tuning
- Backup & Recovery - PostgreSQL backup, disaster recovery
ποΈ Architecture & Core Modules
- Core Modules Overview β - Core framework architecture
- Agent Factory - CoreAgent construction and runtime
- SootheRunner - Protocol-orchestrated execution
- StrangeLoop - Plan-Execute loop for single goals
- ContextEngine - Autonomous goal management
- Event System - Event infrastructure and registration
- Protocol Resolver - Protocol wiring from config
- Workspace Management - Workspace resolution and validation
- Architecture Overview - System design and concepts
π§ Backend Implementations
- Backends Overview β - Protocol implementations
- Memory Backends - MemU semantic memory
- Durability Backends - SQLite, PostgreSQL thread storage
- Persistence Backends - Key-value storage
- Vector Store Backends - PGVector, SQLiteVec, Weaviate
- Policy Backends - Config-driven security policies
π οΈ Troubleshooting
- Troubleshooting - Common issues, error messages, and solutions
- Query Processing Flow - How queries flow through the system
π Reference & Community
- FAQ β - Frequently asked questions organized by topic
- Changelog - Version history and release notes
- Testing Guide - Comprehensive testing workflow
- Contributing Guide - Development workflow and code standards
ποΈ Architecture
Three-Level Execution Model
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β ContextEngine: Autonomous Goal Management (RFC-624) β
β β’ Manages goal DAGs, delegates single goals to StrangeLoop β
β β’ Loop: Goal/Goals β PLAN β PERFORM β REFLECT β Update β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β PERFORM (full delegation)
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β StrangeLoop: Agentic Goal Execution (RFC-201) β
β β’ Executes single goals through Plan β Execute iterations β
β β’ Loop: Plan β Execute (max ~8 iterations) β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β EXECUTE (step execution)
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β CoreAgent: Runtime (RFC-100) β
β β’ Model β Tools β Model loop (LangGraph native) β
β β’ Foundation: create_soothe_agent() β CompiledStateGraph β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Key Principles:
- Protocol-first design - All modules defined as protocols with pluggable implementations
- Durable by default - Agent state persists and recovers from crashes
- Plan-driven execution - Complex goals decomposed into plans with steps
- Least-privilege delegation - Fine-grained permissions for tools and subagents
| Learn more: Architecture Overview | RFC-000 |
Framework Stack
+------------------------------------------------------+
| Soothe (orchestration framework) |
| - ContextEngine: Autonomous Goal Management |
| - StrangeLoop: Agentic Goal Execution |
| - CoreAgent: Runtime |
| - MemoryProtocol, PlannerProtocol, |
| PolicyProtocol, DurabilityProtocol |
+------------------------------------------------------+
| deepagents (agent framework) |
| - BackendProtocol, AgentMiddleware, |
| SubAgent/CompiledSubAgent, SummarizationMiddleware|
+------------------------------------------------------+
| langchain / langgraph (runtime layer) |
| - BaseChatModel, BaseTool, StateGraph, |
| Checkpointer, BaseStore, RemoteGraph |
+------------------------------------------------------+
Plan β Execute Loop
User Query
β
PLAN (LLM plans, assesses progress, decides steps)
β
EXECUTE (execute tools, collect results)
β
Assess Progress β More steps needed? β PLAN
β
Complete β Return Result
Benefits:
- Automatic strategy adjustment
- Structured tool outputs for reliable evaluation
- Sub-second responses for simple queries
- Intelligent iteration for complex tasks
π Plugin System
Extend Soothe with custom tools and subagents:
from soothe_sdk.plugin import plugin, tool
@plugin(name="my-plugin", version="1.0.0")
class MyPlugin:
@tool(name="my_tool", description="Custom tool")
def my_tool(self, arg: str) -> str:
return f"Result: {arg}"
Learn more: RFC-600: Plugin Extension System
π Additional Resources
- Architecture Overview - Detailed system design
- RFC Index - All specifications (73 RFCs)
- Implementation Guides - Implementation tracking
- Debugging Guide - Debug and diagnostics
- User Guides - Comprehensive user documentation
π Getting Help
- Documentation: Youβre here! Browse the guides above.
- Troubleshooting: See Troubleshooting Guide
- Issues: Report bugs on GitHub Issues
- Community: Join discussions on GitHub Discussions
Feature Status
| Feature | Status | Documentation |
|---|---|---|
| Intelligent Execution Loop | β Production Ready | RFC-201 |
| Research Subagent | β Production Ready | Subagents Guide |
| Plugin System | β Production Ready | RFC-600 |
| Multi-Transport Daemon | β Production Ready | Multi-Transport Setup |
| Thread Management | β Production Ready | Thread Management |
| Security Policies | β Production Ready | RFC-102 |
| Autonomous Mode | π§ Experimental | Autonomous Mode |
Additional Resources
π Extended Documentation
- User Guides - Comprehensive usage guide with detailed examples
- RFCs & Specifications - Technical architecture and design documents
- Implementation Guides - Development documentation
π External Links
- PyPI Package - Install the latest version
- GitHub Repository - Source code and issues
- DeepWiki - AI-powered documentation search
Getting Help
Common Issues
- API key errors: See Configuration
- Connection errors: See Troubleshooting
- Performance issues: See Troubleshooting
Community
- Report issues: GitHub Issues
- Ask questions: Use GitHub Discussions or check the Troubleshooting guide
Contributing
Interested in contributing to Soothe? See:
- CLAUDE.md - Development guide for AI agents
- RFCs - Architecture design documents
- Implementation Guides - Development documentation