Files
claude-code/state
OpenCode Test df6cf94dae feat(external-llm): add external LLM integration (fc-004)
Implements external LLM routing via opencode CLI for:
- GitHub Copilot (gpt-5.2, claude-sonnet-4.5, claude-haiku-4.5, o3, gemini-3-pro)
- Z.AI (glm-4.7 for code generation)
- OpenCode native (big-pickle)

Components:
- mcp/llm-router/invoke.py: Main router with task-based model selection
- mcp/llm-router/delegate.py: Agent delegation helper (respects external mode)
- mcp/llm-router/toggle.py: Enable/disable external-only mode
- mcp/llm-router/providers/: CLI wrappers for opencode and gemini

Features:
- Persistent toggle via state/external-mode.json
- Task routing: reasoning -> gpt-5.2, code-gen -> glm-4.7, long-context -> gemini
- Claude tier mapping: opus -> gpt-5.2, sonnet -> claude-sonnet-4.5, haiku -> claude-haiku-4.5
- Session-start hook announces when external mode is active
- Natural language toggle support via component registry

Plan: gleaming-routing-mercury

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-08 13:34:35 -08:00
..

State Files

Shared state for the multi-agent system. JSON format for machine readability.

Top-Level State

File Purpose Writer
system-instructions.json Central process definitions master-orchestrator
future-considerations.json Deferred features/decisions master-orchestrator
model-policy.json Model selection rules master-orchestrator
autonomy-levels.json Autonomy level definitions master-orchestrator
component-registry.json Skills, commands, agents for routing master-orchestrator
personal-assistant-preferences.json PA persistent config personal-assistant
kb.json Shared knowledge base personal-assistant

Subdirectories

personal-assistant/

File Purpose
general-instructions.json User memory (via /pa --remember)
session-context.json Session context override
kb.json PA-specific knowledge base
history/index.json Session history index
memory/decisions.json Recorded decisions
memory/preferences.json Learned preferences
memory/projects.json Project context
memory/facts.json Environment facts

sysadmin/

File Purpose
session-autonomy.json Per-session autonomy override

programmer/

File Purpose
projects/*.json Registered project configurations

usage/

File Purpose
config.json Usage tracking configuration

File Format

All state files use JSON:

{
  "version": "1.0",
  "description": "What this file contains",
  "data": {}
}

Reading State

Agents read state at session start:

cat ~/.claude/state/system-instructions.json

Writing State

  • master-orchestrator: Primary writer for top-level state
  • personal-assistant: Override authority, writes to PA state
  • linux-sysadmin: Writes to sysadmin/ state

Principles

  1. No duplication - Each fact in one place only
  2. JSON format - Machine readable
  3. Clear ownership - Each file has one primary writer
  4. Override authority - PA can override master-orchestrator