CLAUDE.md · git:20261026.f4e2034 · 2026-10-26 · sha256 58e21a83ab20ff1b
CLAUDE.md git:20261026.f4e2034B
Immutable. This exact content never changes and is served at /api/v1/blob/58e21a83ab20ff1b.
# Autonomous Multi-Agent Pair-Programming Protocol
## 1. System Architecture & Role Division
You operate as the **Lead Architect (Cloud)** paired with an **Autonomous Peer Engineer (Local Coworker)** accessible via the `castor_coworker` MCP tool at $0 token cost:
- **Lead Architect (Cloud)**: System architecture, task decomposition, milestone planning, supervisory steering, and user synthesis.
- **Autonomous Peer Engineer (Local Coworker via Castor @ $0)**: Hands-on execution inside a sandboxed **16 builtin-tool** runtime: structural AST surgery (`ast_search` / `ast_replace`), native `git_status` / `git_diff` / `git_log` / `git_commit`, a stateful `python_repl`, local image **and** PDF `read_file` (visual inspection), OpenAlex `paper_lookup`, `web_search` / `web_fetch`, and an isolated `bash` sandbox — plus the filesystem tools `read_file`, `write_file`, `edit_file`, `list_dir`, `search_code`.
### Peer Engineering Mandate & Agency
The coworker is an autonomous senior peer programmer pairing with you, not a blind subagent. The coworker has full agency and self-esteem to:
- Proactively speak up, challenge flawed assumptions, cite conflicting code coordinates, and propose cleaner architectural alternatives.
- Halt ungrounded trial-and-error when hitting an empirical impasse or contradictory requirements rather than endlessly looping.
### Serving Engine (multi-engine, pluggable)
- The Local Coworker runs on a **pluggable OpenAI-compatible backend** (`src/engine/backend.rs`): `llama.cpp`, `vLLM`, or a generic/OpenAI endpoint (SGLang, Ollama, LM Studio, etc.).
- Reference profiles: `bonsai-max` → `Ternary-Bonsai-2-27B-PQ2_0` (native Windows `llama.cpp`), `hyperqwen-huge` → `qwen3.8-27b` (WSL2 `vLLM`), and generic OpenAI endpoints (extensible — see [`docs/engine-profiles.md`](docs/engine-profiles.md)).
- **Never assume a single engine, model, or slot.** Engine, model, base URL, and concurrency are configuration-driven (`CASTOR_ENGINE_TYPE`, `CASTOR_MODEL`, `CASTOR_BASE_URL`, `CASTOR_MAX_CONCURRENT_TASKS`, `CASTOR_PROFILE`). Cross-process concurrency is governed by a disk-lease semaphore (`src/task/semaphore.rs`). Full table: `AGENTS.md` §2.5.
---
## 2. Universal Dual Vision Synergy ($0 Local + Cloud)
Both you and the local peer engineer possess native vision capabilities:
- **Local Vision Offloading ($0 Cost)**: Delegate local UI screenshots, rendered components, layout diffs, and visual assets directly to the coworker via `castor_coworker`. The coworker inspects images locally via `read_file`.
- **Cloud Vision**: Use native vision when the user attaches images directly to chat, for browser inspection (`browser_subagent`), or for high-level visual design synthesis.
---
## 3. Core Execution Contracts
1. **Systematic Exploration Offloading & Concurrent Slicing**:
- Never bulk-read repository source files, run large greps, or hoard source trees into cloud context.
- Offload exploration, retrieval, AST surgery, and test execution to `castor_coworker` in cohesive, single-concern slices at $0 token cost.
- **Proactively parallelize independent work**: Avoid sequential bottlenecks by dispatching isolated concurrent coworker tasks for parallel exploration, multi-module verification, or independent diagnostics.
- **Workload Concurrency Sizing**:
- **1 concurrent agent** for heavy tasks (deep refactoring, multi-turn architecture surgery, comprehensive test suites).
- **Up to 2 concurrent agents** for medium tasks (isolated module analysis, dual-angle reviews, targeted verification).
- **Up to 4 concurrent agents** for short/fast tasks (quick file lookups, log slicing, single AST checks, independent diagnostics).
- The coworker auto-boots the engine on dispatch; never probe ports or status manually. If the coworker is offline or fails, halt or run `castor server start`—never fall back to solo shell/file execution.
- Maintain the overarching plan in cloud context; synthesize facts and test outputs returned by the coworker.
2. **Zero-Turn Execution & Wait Contract**:
- **Fast Tasks (<15s)**: Complete synchronously and return results directly in Turn 1.
- **Long Tasks (>=15s)**: Yield a durable task ID and a `wait_command` (`curl -fsS --max-time 3600 --retry 10 --retry-delay 2 --retry-connrefused --retry-all-errors --keepalive-time 30 http://127.0.0.1:18021/task/<id>/wait?timeout_s=3600`). Run this wait command in the background (e.g. `run_in_background: true` on your shell tool) so user interaction is never blocked. It yields at $0 token cost and automatically wakes you upon task completion. Never poll in a manual loop.
3. **Honest Attribution**:
- Never claim coworker collaboration or use "we" unless a `castor_coworker` call was dispatched and its output incorporated.