4.2 KiB
EpiphanyAgent Instructions
Project Purpose
This repo explores an Epiphany mode for AI coding agents: external typed state, explicit mental maps, bounded scratch work, verifier evidence, and aggressive anti-churn discipline.
The motivating failure mode is that an agent can make many plausible local edits after global coherence has already failed. The project goal is to test whether explicit map/scratch/evidence channels reduce that drift.
Canonical State
- Treat
state/map.yamlas the canonical project map. - Treat
state/scratch.mdas disposable working memory for one bounded subgoal. - Treat
state/evidence.jsonlas the durable log of what was learned, verified, rejected, or accepted. - Treat
notes/codex-epiphany-mode-plan.mdas the current patch plan for adding Epiphany mode to the vendored Codex repo. - Update
state/map.yamlwhen project understanding changes. - Append evidence after meaningful research, implementation, verification, or rejected paths.
Current Status
The old preset-backed TUI experiment is no longer the active path.
What is already landed in vendored Codex:
- Phase 1 durable Epiphany thread state
- Phase 2 prompt integration
- a minimal Phase 3 typed app-server/client read surface via
Thread.epiphanyState
Current next phase:
- Phase 4 repo-local hybrid retrieval
Important Paths
- Project root:
E:\Projects\EpiphanyAgent - Vendored Codex repo:
E:\Projects\EpiphanyAgent\vendor\codex - Patch plan:
E:\Projects\EpiphanyAgent\notes\codex-epiphany-mode-plan.md - Handoff summary:
E:\Projects\EpiphanyAgent\notes\fresh-workspace-handoff.md - Epiphany delta map:
E:\Projects\EpiphanyAgent\notes\epiphany-current-algorithmic-map.md - State CLI:
E:\Projects\EpiphanyAgent\tools\epiphany_state.py
Useful Commands
Use the bundled Python runtime if python is not on PATH:
& 'C:\Users\Meta\.cache\codex-runtimes\codex-primary-runtime\dependencies\python\python.exe' '.\tools\epiphany_state.py' status
& 'C:\Users\Meta\.cache\codex-runtimes\codex-primary-runtime\dependencies\python\python.exe' '.\tools\epiphany_state.py' add-evidence --type research --status ok --note '...'
Useful Codex repo searches:
rg -n "pub enum ModeKind|TUI_VISIBLE_COLLABORATION_MODES" .\vendor\codex\codex-rs\protocol\src\config_types.rs
rg -n "builtin_collaboration_mode_presets|fn plan_preset|fn default_preset" .\vendor\codex\codex-rs\models-manager\src\collaboration_mode_presets.rs
rg -n "collaboration_mode_label|collaboration_mode_indicator|set_collaboration_mask" .\vendor\codex\codex-rs\tui\src\chatwidget.rs
Session Bootstrap And Re-entry Protocol
On fresh session load, do this before wandering off into implementation:
- read:
state/map.yamlnotes/fresh-workspace-handoff.mdnotes/epiphany-current-algorithmic-map.mdnotes/codex-epiphany-mode-plan.md
- run:
& 'C:\Users\Meta\.cache\codex-runtimes\codex-primary-runtime\dependencies\python\python.exe' '.\tools\epiphany_state.py' status
- restate the current next action from the persisted state before starting edits
After compaction, resume, or any suspicious loss of continuity:
- rerun
epiphany_state.py status - reread
state/map.yamlandnotes/fresh-workspace-handoff.md - treat the persisted next action as authoritative unless fresh evidence in the repo contradicts it
When context pressure is clearly rising:
- stop broad exploration
- narrow the active move to a bounded landing zone
- persist map/evidence/handoff updates before forced compaction hits
Do not wait for the blackout and then act surprised.
Operating Discipline
- Before substantial edits, restate the current mechanism and intended change.
- Prefer one clear hypothesis per iteration.
- Verify with checks that reflect the real goal, not just proxy success.
- Revert or discard changes that do not clearly improve the target.
- If the diff grows while understanding shrinks, stop implementation and switch to diagnosis.
- Keep maps and prose together; do not replace useful maps with prose-only explanations.
- Before handoff, compaction, or phase boundaries, sync
state/map.yaml, appendstate/evidence.jsonl, refreshnotes/fresh-workspace-handoff.md, and make the next action explicit.