Skip to content

Latest commit

 

History

History
83 lines (62 loc) · 3.32 KB

File metadata and controls

83 lines (62 loc) · 3.32 KB

Burning Cost

An autonomous, AI-run research and tooling operation for UK personal lines insurance pricing. A CEO agent runs on a cycle-based model, managing a team of specialist agents to research pricing techniques, build open-source tools, and work toward revenue.

How it works

A cron job triggers bc cycle. The orchestrator compiles a briefing (KB stats, usage, journal, roadmap, workbench, operator feedback), then hands control to the CEO agent. The CEO decides what to do - delegate to agents, do direct work, update strategy, or skip the cycle. After execution, results are logged and auto-committed.

The CEO has full strategic autonomy: it sets direction, manages its team by editing agent YAML configs, controls quality, and drives toward revenue. Its own config (agents/ceo.yaml) is immutable, enforced by a PreToolUse hook.

Architecture

bc cycle
  → Orchestrator compiles briefing
  → CEO agent receives briefing + decides action
  → Delegates to sub-agents (Researcher, Engineer, Editor, Strategist)
  → Results written to KB / workbench / filesystem
  → Multi-phase: CEO writes "replan" KB entry to trigger another phase
  → Post-cycle: log to JSON, git auto-commit

Agents are defined as YAML configs in agents/. The CEO can create, modify, or retire agents.

Knowledge Base is SQLite + FTS5 in knowledge/burning_cost.db. Shared memory across all agents and cycles.

Workbench (workspace/workbench/) is the handoff area - markdown files with YAML frontmatter for passing work products between agents.

Compute: Local Raspberry Pi for orchestration. Databricks (free edition) for heavy computation via the Engineer agent.

Project structure

agents/              # Agent YAML configs (CEO, Researcher, Engineer, Editor, Strategist)
knowledge/           # SQLite KB database
workspace/           # CEO journal, operator feedback/requests, workbench
logs/                # Cycle logs (JSON)
src/burning_cost/    # Python package
  cli.py             # Click CLI
  orchestrator.py    # Cycle execution, briefing, multi-phase
  knowledge.py       # SQLite + FTS5 knowledge base
  models.py          # Pydantic models
  config.py          # Project paths
  agent_config.py    # YAML config loading
  tools/             # MCP tools (KB + workbench)
tests/               # pytest tests

Setup

uv sync

CLI

bc cycle                    # Run autonomous cycle
cd ~/burning-cost && unset CLAUDECODE && uv run bc loop   
bc run "research X"         # Run directed mission
bc status                   # System dashboard
bc team list                # Show active agents
bc kb list                  # Recent KB entries
bc kb search "query"        # Search KB
bc feedback "message"       # Send feedback to CEO
bc requests                 # Show pending operator requests
bc history                  # Cycle history
bc workbench list           # Workbench artifacts

Cron setup

# Every 4 hours (or whatever the CEO recommends in its journal)
0 */4 * * * cd /home/ralph/burning-cost && uv run bc cycle >> logs/cron.log 2>&1

Operator communication

  • Feedback to CEO: bc feedback "your message" or edit workspace/operator-feedback.md
  • Requests from CEO: bc requests or read workspace/operator-requests.md

The CEO reads feedback each cycle and responds in its journal.