Skip to content

codex-harness-mirror

Makes the Codex CLI harness do everything the Claude Code harness does — same skills, shared house memory, house open-model councils, caveman compression — with the review positions inverted: on this harness Codex is primary and Claude reviews Codex's code / chairs council-code-review.

Full rationale + architecture: BOOK-OF-TRUTH.md.

Files

File Goes to Purpose
BOOK-OF-TRUTH.md (reference) Master doc: identity, house, memory, council, app design, inversion
AGENTS.md ~/.codex/AGENTS.md Global Codex instructions (prefs + caveman + inverted gate)
config/config-additions.toml merge into ~/.codex/config.toml MCP servers + optional local Ollama provider (reference; script registers via codex mcp add)
skills/* ~/.codex/skills/* caveman, claude-review, gemini-review, council-code-review (inverted), llm-council (inverted), pavlok-page, codex-delegate
setup-codex-harness.ps1 run on target device Wires all of the above into Codex, idempotent

Where this lives

  • Dev/canonical edit copy: C:\Users\fives\source\repos\codex-harness-mirror\
  • House-sync copy (auto-propagates to bedroom + back PCs): C:\Users\fives\OneDrive\codex-harness-mirror\
  • All setup scripts self-locate via $PSScriptRoot, so run them from EITHER copy. After editing the dev copy, re-sync: robocopy <dev> <onedrive> /MIR.

Run order (bedroom PC = primary Codex driver)

  1. Open models (once per device, if not already up):
    C:\Users\fives\source\repos\setup-local-ai.ps1
    
  2. Copy this folder to the device (hand-carry or share), then:
    C:\Users\fives\source\repos\codex-harness-mirror\setup-codex-harness.ps1
    
    It auto-detects the claude-mem host (hostname ANDYGREATROOMPC, or 127.0.0.1 on the main PC), sets the Bearer key env var, registers the 3 MCP servers, installs AGENTS.md + skills, and verifies.

Verify it worked

codex mcp list          # claude-mem-server + gaming-pc-council + streaming-pc-council, enabled
codex exec "search shared memory (claude-mem-server, projectId a8295af4-e485-402f-9734-1f47b45b882f) for 'preferences' and summarize what you find"
In a repo with uncommitted changes, invoke the council-code-review skill (or the claude-review skill for a single Claude second opinion) — Claude chairs, Codex implements.

Prereqs

  • Codex CLI (codex.exe) and Claude CLI (claude) both installed — the inversion is Codex shelling out to claude -p for reviews.
  • Node + Ollama (via setup-local-ai.ps1).
  • Main PC (ANDYGREATROOMPC) up for shared memory; house PCs up for councils (both degrade gracefully — claude-review alone is the fallback gate).

Notes

  • Reversible. Only file writes + MCP registrations. No reboots, no accounts.
  • Do not edit the shared llm-council/council.config.json chairman field — that would flip the Claude harness too. Chair inversion is enforced per-skill.
  • Caveman is also injected by the caveman plugin's .codex/hooks.json SessionStart hook; AGENTS.md carries the always-on block so it works even without the plugin.

Generated one-brain (FLT-95, 2026-07-17)

This repo is no longer the source of truth for house rules. ~/.claude/CLAUDE.md is the single master; fleet-constitution generates and installs hashed managed blocks into the file each harness actually loads (proven per-harness by the FLT-94 probe matrix: fleet-constitution/scripts/probe-matrix.ps1). FLEET-BRIEF.md and BOOK-OF-TRUTH.md here carry the same generated fleet-constitution + fleet-role blocks; hand-syncing rules anywhere in this repo is retired. Facts (operational learnings) propagate separately via fleet-memory (gated promotion + house-facts inject).