Outsider Stage 0.5
Replay and verify a real, sealed Outsider Stage 0.5 intervention chain.
Translation pending
The Zanii transparency log, live: verifiable AI-agent actions streaming in real time.
Translation pending
SecurityTypeScript · PythonGitHub @vigilancetrentOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Claude Code Zanii (CCZ) — open build of Claude Code with verifiable proof-of-action: every tool call signed and auditable on a transparency log. Runs on Bun and Node.js.
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
A fully restored, open build of Anthropic's Claude Code CLI — every core loop rebuilt in TypeScript on Bun, with the telemetry and lock-ins removed and a few things added that upstream doesn't have. Compatible with existing CLAUDE.md / .claude setups out of the box. 中文文档:ccb.agent-aura.top · 社区项目留影 v2.14.0 — /harness-improve self-improvement loop (mines your sessions for repeated failures → bounded CLAUDE.md/hooks/permissions edits with a falsifiable prediction + ledger), /run + /run-skill-generator, /verify for everyone.Read the full README ↗
A fully restored, open build of Anthropic's Claude Code CLI — every core loop rebuilt in TypeScript on Bun, with the telemetry and lock-ins removed and a few things added that upstream doesn't have. Compatible with existing CLAUDE.md / .claude setups out of the box.
中文文档:ccb.agent-aura.top · 社区项目留影
v2.14.3 — App-owned ChatGPT sign-in: run
ccz auth login --chatgpt, choose from the connected account's model catalog, and use the existing local tool permission flow. Any ChatGPT account may attempt sign-in; OpenAI determines plan permission and request access. Setup · Verification and remaining live-account checks v2.14.0 —/harness-improveself-improvement loop (mines your sessions for repeated failures → bounded CLAUDE.md/hooks/permissions edits with a falsifiable prediction + ledger),/run+/run-skill-generator,/verifyfor everyone.v2.12.1 — Harness parity with Claude Code 2.1.274: auto mode + fork mode by default, nested subagents,
/undo/focus/skill-doctor/import/deep-research,librarianagent, repo map,modelPricing/planModel, effort on every provider, gateway routing headers, Hermes-style skill learning, 15 audit fixes; 2.12.1 self-installs ripgrep when npm skips postinstall. What changed · Research
Claude Code's agent loop is the best in the business — but it only runs against Anthropic's cloud, it phones home, and you can't read or change it. CCZ is that same loop, rebuilt in the open, and then pushed past it: it runs on any model (Anthropic, Bedrock, Vertex, Foundry, or any OpenAI-compatible server — vLLM, llama.cpp, Ollama, DeepSeek, Qwen, GLM), it proves what it did, and it improves its own harness from your sessions.
| CCZ | Claude Code | Codex CLI | OpenCode | Aider | |
|---|---|---|---|---|---|
| Source you can read and change | ✓ readable TypeScript, bun run dev (study/research license — rights remain Anthropic's) | ✗ minified | ✓ | ✓ | ✓ |
| Runs on local / self-hosted models | ✓ auto-detects context window from /v1/models, adapts reasoning_effort to what the server accepts, retries without images on text-only models | ✗ Anthropic only | partial (OpenAI-shaped) | ✓ | ✓ |
| Auto-approve classifier that works on your model | ✓ provider-agnostic auto mode, on by default | Anthropic endpoint only | Guardian (OpenAI) | permission rules | ✗ |
| Nested subagents with depth/concurrency caps, output scanning | ✓ depth 3, cap 20, librarian + Explore/Plan built-ins | ✓ | ✓ | depth knob | ✗ |
| Deterministic multi-agent workflows | ✓ Ultracode: agent/pipeline/parallel JS with journal replay + live monitor | ✓ | ✗ | ✗ | ✗ |
| Self-improving harness | ✓ /harness-improve mines your transcripts → bounded CLAUDE.md/hooks/permissions edits with a falsifiable prediction + ledger; Hermes-style skill learning | ✗ | ✗ | ✗ | ✗ |
| Behavioural verification | ✓ /verify + /run launch and drive the app; independent verification agent before "done"; postEditChecks auto lint/test | /verify internal-only | ✗ | ✗ | --auto-lint/--auto-test |
| Tamper-evident audit trail | ✓ Zanii: every tool call → signed, hash-chained receipt, anchored on-chain, hashes only | ✗ | ✗ | ✗ | ✗ |
| Memory | ✓ L1/L2/L3 layered memory, dream consolidation, team loadouts | auto-memory | ✗ | ✗ | ✗ |
| Honest cost for any model | ✓ modelPricing, $0 + hint for unknown local models |
Every row links to code or docs in this repo — nothing here is roadmap. Full gap analysis against upstream 2.1.274 and the other harnesses: docs/harness-gap-research-2026-09.md. What we deliberately don't do: Claude 5 model aliases (upstream-only pricing/capability tables) and cloud VMs — use RCS + worktrees instead.
Every session can leave a verifiable trail. Claude Code Zanii integrates Zanii, a transparency log for AI agents: each tool call becomes a signed, hash-chained receipt in an append-only Merkle log that is periodically anchored on-chain. Only a hash of each action is stored — your code and file contents never leave the machine.
There is no signup form to fill. On first launch CCZ derives an identity from your hardware (SMBIOS UUID, so it survives OS reinstalls), registers an org named zaniicode-<fingerprint>, issues its own ingest key, and keeps everything under ~/.zaniicode/. From then on, the banner shows live proof state:
zanii ✓ proof verified · log #6156 · root 54874cc8
What this buys you. Anyone — you, your client, an auditor — can take a receipt hash or export the full history at https://ledger.zanii.agency/export/<agent DID> and verify it offline: signature, delegation scope, Merkle inclusion, chain consistency. No trust in the server required. "What exactly did the agent run?" becomes a checkable question instead of a promise.
| File | Contents |
|---|---|
~/.zaniicode/zanii-account.json | org id, admin key, zk_live_ ingest key |
~/.zaniicode/zanii-agent.json | Ed25519 agent keys, owner-signed delegation cert |
| Setting | Default | Meaning |
|---|---|---|
ZANII_PROOF | on | set 0 to disable all ledger activity |
ZANII_API_KEY | auto-provisioned | bring your own ingest key |
ZANII_SERVER_URL | https://ledger.zanii.agency | point at your own log |
Receipts record that a tool ran and whether it succeeded — not what was in it. Full details: docs/features/zanii-proof.md.
Goal mode — /goal drives the agent across turns until done; token budgets, pause/resume, blocked-attempt audits | Ultracode orchestration — deterministic JS workflows (agent/pipeline/parallel) with journal replay and a live monitor panel | Multi-provider login — Anthropic, Bedrock, Vertex, Foundry, plus OpenAI/Gemini/Grok-compatible endpoints via /login |
| Remote Control — self-hosted Docker control panel, run sessions from your phone (docs) | ACP support — first-class Zed/Cursor integration with session resume and permission bridging (docs) | Langfuse tracing — inspect every agent-loop step, export runs as datasets (docs) |
| Pipe IPC & LAN swarm — multi-instance collaboration on one machine or across the LAN (docs) | Web search — built-in Bing/Brave search tool (docs) | Computer & Chrome use — screenshots, keyboard/mouse, browser automation (docs) |
Poor mode — /poor cuts memory extraction and suggestions to slash request volume | Channels — push external messages into a session (Slack, Discord, 飞书, WeChat) (docs) | Teach-me skill — /teach-me <topic> walks you through this codebase Socratically |
| Layered memory — L1/L2/L3 distillation pipeline, provable writes via Zanii receipts, `/memory audit |
npm i -g claude-code-zanii
ccz # Node.js entry
ccz-bun # Bun entry
ccz update
CCZ has no install scripts: the ripgrep binary for your platform is fetched on first use (or a system rg is used), and the Chrome native host is registered when you enable Chrome integration. If npm still prints an allow-scripts warning it is for the optional @claude-code-best/mcp-chrome-bridge dependency's own script — safe to ignore; run npm run setup:chrome inside the package only if you use the standalone bridge (mcp-chrome on port 12306).
If install or update misbehaves: npm rm -g claude-code-best && npm i -g claude-code-zanii@latest.
Requires Bun ≥ 1.3.11 — use the newest version, older ones produce confusing failures.
# Linux / macOS
curl -fsSL https://bun.sh/install | bash
# Windows (PowerShell)
powershell -c "irm bun.sh/install.ps1 | iex"
git clone https://github.com/vigilancetrent/claude-code-zanii.git
cd claude-code-zanii
bun install
bun run dev # dev mode — version ending in .888 means you're set
bun run build # production bundle → dist/ (runs under both Bun and Node.js)
Type /login in the REPL and pick Anthropic Compatible, OpenAI, or Gemini. For the compatible path you'll need:
| Field | Example |
|---|---|
| Base URL | https://api.example.com/v1 |
| API Key | sk-xxx |
| Haiku / Sonnet / Opus model IDs | claude-haiku-4-5-20251001, claude-sonnet-4-6, claude-opus-4-6 |
Tab / Shift+Tab moves between fields, Enter confirms.
CCZ uses ~/.zaniicode/ by default and never touches official Claude Code's ~/.claude — settings, credentials, and session history stay separate even when both tools are installed. Project-level .claude/ folders are still read, as usual. Override with CLAUDE_CONFIG_DIR if needed.
Everything is compiled behind named flags, defaulting per build config:
FEATURE_BUDDY=1 FEATURE_GOAL=1 bun run dev
The registry lives in scripts/defines.ts.
bun run typecheck # strict tsc, must be clean
bun test # 6000+ tests across ~450 files
bun run lint # Biome
bun run precheck # all of the above
bun run dev:inspect # debugger for attach mode
TUI debugging needs a real terminal, so use attach: start bun run dev:inspect, then F5 → "Attach to Bun (TUI debug)" in VS Code with breakpoints set under src/.
Architecture notes and module map: AGENTS.md · DeepWiki
For study and research only. Claude Code and all related rights belong to Anthropic.
| Anthropic prices |
| OpenAI prices |
| ✓ |
| ✓ |
| Architect/editor split across providers | ✓ planModel (plan on a big model, edit on a cheap one) | opusplan (Anthropic only) | ✗ | ✗ | ✓ |
| Repo map in context | ✓ CodeGraph repoMap (incremental, ranked symbols) | ✗ | ✗ | ✗ | ✓ tree-sitter |
| Loop-breaker for stuck local models | ✓ 3 identical failing calls → forced change of approach; reactive compaction on context overflow | partial | ✗ | ✗ | ✗ |
| Remote control from your phone | ✓ self-hosted Docker panel, no cloud account | cloud only | cloud only | web UI | ✗ |
| Editor / protocol integration | ✓ ACP (Zed, Cursor), MCP 1.30, Chrome + computer use, channels (Slack/Discord/飞书/WeChat) | MCP, IDE ext | MCP | ACP, LSP | ✗ |
| Telemetry | none — analytics/GrowthBook/Sentry are empty stubs | opt-out | opt-out | opt-out | opt-in |
| Model routing for a GPU box | ✓ model_gateway/: classifier/subagent traffic → small model, main turn → big model, by request-class header | ✗ | ✗ | ✗ | ✗ |
| list |
| clear` (docs) |
Skill promotion — /skill-promote moves skills from project to user scope with semver versioning (docs) | Team loadouts — role-based memory filtering per agent with persistent registry (docs) | CodeGraph — incremental TS/JS indexer with mtime tracking + JSON persistence; repoMap: true injects a ranked symbol map into the prompt |
Auto mode by default — classifier reviews every tool call; nested subagents (depth 3, cap 20); /undo, /focus, /subtask, /list-agents, /skill-doctor (docs) | Any-provider parity — /effort → reasoning_effort / Gemini thinkingBudget, planModel architect/editor split, modelPricing for honest /cost, gateway hint headers + model_gateway/ router | Self-improvement — /harness-improve mines your sessions and proposes bounded harness edits with predictions; /run /run-skill-generator /verify launch and drive the app; Hermes-style skill learning (/skill-learning start); librarian agent for library docs; postEditChecks auto lint/test; /import from Cursor / Codex / Copilot |