# Nomarchy — agent entry point Nomarchy is a NixOS-based distro: rock-stable, fully reproducible, themed from one JSON, configured through a menu that writes into the user's own flake checkout. Read the README for the architecture. This file is the entry point for **any** AI coding agent, whatever the vendor or harness. Everything agents need lives in vendor-neutral, git-tracked markdown (`agent/`, `docs/`); harness-specific config is a thin *adapter* (see bottom) and never holds shared content. ## Where things live (read this first) | Path | Role | |------|------| | **`agent/`** | Agent instructions + loop state — **only executable queue is `BACKLOG.md`** | | **`agent/README.md`** | Map of the agent files | | **`docs/VISION.md`** | Product themes toward **v1.0** (not a queue) | | **`docs/ROADMAP.md`** | Design history + shipped log | | **`docs/README.md`** | Full documentation map | | **`.claude/`** | Claude Code adapter only (permissions, subagent defs) — not the backlog | ## If you're here to work autonomously (the loop) Follow **`agent/LOOP.md`** — one iteration: orient → pick one BACKLOG item → work → verify → commit+push on `main` → record. All loop state is git-tracked in `agent/`. ## Rules that apply to every session, loop or not - **Before your first change, read `agent/VERIFICATION.md`** and follow it — every change, however small, climbs its V0–V3 ladder. For theme or visual work, also read `agent/THEME-DESIGN.md`; before any VM test, `docs/TESTING.md`. - **Honesty rule** (`agent/VERIFICATION.md`, `docs/TESTING.md`): for visual/interactive changes, evaluation is not rendering — state the tier you reached. Cheap first: `nix flake check --no-build`. - **Conventions** (`agent/CONVENTIONS.md`): in-flake state, menu placement, Waybar parity with whole-swaps, toggle-vs-package discipline, template as SoT for opt-in comments (`templates/downstream`). - **Sync sweep on completion** (`agent/LOOP.md` §5): when a task ships, update or delete every cross-reference it made stale — BACKLOG pitches/pointers, HARDWARE-QUEUE entries, docs — in the same commit. No stale items, no unsynced information. - **Git:** direct commits on `main`, pushed; **`v1` is human-only** — never touch it. Never `nix flake update` unless the task is a lock bump. No formatter — match aligned hand-formatting. - Layout: `hosts/` machine · `modules/` distro · `themes/` data · `pkgs/` code · `tools/` maintainer · `agent/` loop · `docs/` human docs. ## Delegation & escalation Push mechanical work down to cheaper models; keep judgment on the strongest model available. Capability tiers, standing roles (scout / runner), and per-harness model mappings: **`agent/DELEGATION.md`**. Work above your tier? Return it — don't burn tokens. ## Harness adapters One directory per harness, holding only what that harness *requires* in its own format (permissions, subagent/skill registration). Adapters point into `agent/`; they never carry policy, queue items, or vision text. | Harness | Adapter | |---------|---------| | Claude Code | `.claude/` — `CLAUDE.md` is a symlink to this file | | others | add a sibling dir + a row here; keep it a thin shim |