Autonomous Claude System

User sets goals. Claude orchestrates specialists. Quality over speed.

Updated: February 2026 | Architecture v3 (3-Prompt + Prompt Critic)

System Overview

👤 USER

Types rough prompt in Launcher UI or browser

✨ PROMPT IMPROVE

Haiku polishes prompt automatically at queue time

📋 PROMPT QUEUE

future_prompts table — GET /api/future-prompts

🎯 ORCHESTRATOR

Reads queue, runs /build_prompt, manages worker lifecycle

🚨 PROMPT CRITIC

Gates vague prompts

🔧 BUILD PROMPT

3-part: identity + task + tools

🎨 web_designer

UI, dashboards

🔬 researcher

Deep research

🖥️ infrastructure

Deploy, SSH

🗃️ database

DB queries

📧 emails

Email processing

⏰ scheduled

Cron jobs

⚙️ fc_manager

Pipeline changes

✅ REPLY & RECYCLE

Worker replies via send-prompt → orchestrator verifies → /clear → next task

Prompt Lifecycle

1
User submits rough prompt
Via Launcher UI (localhost:5111) or browser sync
launcher.py — Flask server
2
Prompt Improve NEW
Haiku automatically polishes prompt at queue insertion time. Stores original in prompt_original, improved in prompt_raw
improve_prompt_at_queue_time() in launcher.py
3
Prompt Queue
future_prompts table in Master_Claude.db. GET /api/future-prompts returns next prompt
4
Orchestrator reads & builds prompt
Runs /build_prompt to create 3-part prompt: identity (who the worker is) + task (what to do) + tools (MCPs, skills, learnings from DB)
build_3prompt_architecture() in launcher.py
5
Prompt Critic gates dispatch GATE
Claude Haiku semantic validation — blocks vague prompts from wasting worker sessions
prompt_critic.py
6
Worker launch
Specialist Claude launched in split pane (add_to_grid: true). Prompt includes CLAUDE.md, skills, domain context from DB
POST /launch → grid layout
7
Worker executes
Specialist works autonomously. Contextual hints inject just-in-time via hooks at tool-call time
8
Worker replies
Sends completion message via POST /send-prompt/{orchestrator_id}. Messages arrive as system-reminders on next tool call
pipe_inbox.py — inter-session messaging via named pipes
9
Orchestrator verifies & recycles
/verify/goodbye (capture learnings) → /clear → send next task to same worker session

3-Prompt Architecture

Every worker receives a prompt assembled from three parts, pulled from Master_Claude.db:

Part Contains
Identity Who the worker is, constraints, design principles, session ID
Task The actual work, reply-back instructions, messaging protocol
Tools Skills, MCPs, learnings, domain context, available commands
# /build_prompt pulls from:
- specialist_identities  (who)
- specialist_contexts    (domain knowledge)
- skills table           (available skills)
- learnings table        (past experience)
- mcp_configs            (tool servers)
- hooks                  (contextual hints)

Specialist Workers

🎨
web_designer
UI, dashboards, HTML pages, Cloudflare Pages deploy
🔬
researcher
Deep research, web search, analysis
🖥️
infrastructure
Deploy, SSH, server work, tunnels
🗃️
database
DB queries, schema changes, migrations
📧
emails
Email processing (hansenemail)
scheduled_tasks
Cron jobs, recurring automation
⚙️
focused_claudes_manager
Launcher & pipeline changes

Workers launch as split panes in the grid. After /clear, any worker becomes any specialist — the prompt defines the role, not the project directory.

Key Components

Component Purpose Location
Launcher API Flask server — sessions, grid layout, prompt queue, messaging localhost:5111
/build_prompt Assembles 3-part prompts from Master_Claude.db context launcher.py
prompt_critic.py Haiku-powered semantic validation — gates vague prompts claudequeue/
pipe_inbox.py Inter-session messaging via named pipes claudequeue/
Contextual hints Just-in-time reminders injected via hooks at tool-call time ~/.claude/skills/contextual_hints/
cls search / cls all BM25 knowledge search across all FTS tables Master_Claude.db
Grid layout Orchestrator + workers in split panes (add_to_grid: true) launcher.py
Master_Claude.db Central knowledge — skills, learnings, errors, hooks, contexts D:/ClaudeQueue/

API Endpoints

Session Management

POST /launchLaunch new Claude session
GET /sessions/activeList active sessions
POST /send-prompt/{id}Send message to session
POST /complete/{id}Mark session complete

Prompt Queue

GET /api/future-promptsGet queued prompts
POST /api/future-promptsAdd prompt to queue
DELETE /api/future-prompts/{id}Remove from queue

Worker Lifecycle

📨 Send Task

Prompt via /send-prompt

⚒️ Execute

Autonomous work

💬 Reply Back

Results to orchestrator

✅ /verify

Check work quality

🔄 /clear

Recycle for next task

Key principle: Launch once, reuse forever. Max 2 panes: orchestrator + 1 worker. After /goodbye captures learnings and /clear resets context, the same session handles the next task as any specialist.

Infrastructure

  ┌─────────────────┐     ┌──────────────────┐     ┌─────────────────────┐
  │  d_pc (Windows)  │     │  Cloudflare Pages │     │  londonserver (VPS) │
  │                  │     │                   │     │                     │
  │ launcher.py:5111 │───▶│  claudequeue.com  │     │  /api/* via tunnel  │
  │ Master_Claude.db │     │  (static files)   │───▶│  datasette, APIs    │
  │ Claude sessions  │     │                   │     │                     │
  └─────────────────┘     └──────────────────┘     └─────────────────────┘
        │                                                    │
        │  Wrangler deploy                    Cloudflare tunnel
        │  C:/Projects/ClaudeQueue/*.html     (only /api/*)
        ▼
  Static HTML → Cloudflare Pages → claudequeue.com
Architecture documented: February 2026 | Prompt lifecycle v3
← Back to Dashboard