# AGENTS.md — conventions for agents working in this repo This is the **project-orchestrator (PO)** repo. See `README.md` for what the PO is and `prompts/orchestrator.md` for the agent's role. ## Memory - The PO's memory lives **in this repo** under `memory/`, and is **tracked via git** — not left under `~/.claude`. Memory is versioned and reviewable alongside the code. - The harness's expected memory path (`~/.claude/projects/-home-loops-project-orchestrator/memory`) is a **symlink** to `memory/` here, so the normal "write to the harness memory path" flow still lands files in the repo. - `memory/MEMORY.md` is the index (one line per memory); each fact is its own file with frontmatter. ## Git - **Always commit and push** every change to this repo (`git add -A && git commit && git push origin main`) — including memory updates. Don't wait to be asked. - Git identity is set locally on this repo (`mfowler.email@protonmail.com` / `mfowler`); it was not configured globally in this environment. - Push credentials for `git.autonomic.zone` come from the active cc-ci project (`/srv/cc-ci/.testenv`, per `fleet.toml`). ## Operating model - The PO is **operator-driven**: it acts on request (create / start / stop / update / list / status a project). There is **no periodic fleet sweep** — this repo manages projects, it does not watch them live. The agent uses `watch = "heal"` (recover-if-dead) with no `wake`. - **Knowledge is one-directional (PO → projects).** Never write PO/fleet metadata into a project repo. The fleet's only record is this repo's `fleet.toml`.