# AGENTS > **Note:** this file is staged in `cproof-context` for review. Its > destination is the **cproof** repo root, not this one. It is **not** > agent instructions for the `cproof-context` repository itself. Project-level agent instructions for cproof (terminal XMPP client, fork of Profanity). ## Agent context bundle Detailed architecture, patterns, testing, build, playbooks, and known pitfalls for this project live in a separate repository: - **Repo:** https://git.jabber.space/devs/cproof-context - **Pinned commit:** `22977846a3b2c1727ae6aeeaa1de70971bc0136e46b131febac7591df7d72e75` (branch `draft/split-context`) Bump the pinned commit explicitly when the context bundle is updated. Do not track a moving branch. ## Load order On session start (before doing meaningful work in this repo): 1. Read `SKILL.md` from the pinned commit — the always-loaded entry hint. 2. Read `INDEX.md` — map of every context file with churn labels and "When to load" guidance. 3. Pull individual files from the bundle on demand, driven by the task and the `INDEX.md` "When to load" column. Do **not** preload the whole bundle. 4. Always scan `gotchas.md` before completing a non-trivial task. 5. If working on a feature branch listed under `wip/` (currently `wip/feat-ai.md` for branch `feat/ai`), load that file as well — the stable bundle layers describe `master` only. ## Hard rules for this project - **Build inside Docker.** Use `Dockerfile.debian` at the repo root. Do not run `./autogen.sh`, `./configure`, or `make` on the host shell. See `build/docker.md` in the context bundle. - **`make check` is the only routine test entry point.** Functional tests (`tests/functionaltests/`) and benches (`tests/bench/`) are not part of CI; run them locally inside the Docker image when needed. - **Treat path / identifier references in the context bundle as claims to verify.** They were authored against a specific cproof commit; grep the live tree before relying on them. - **`master` is the canonical baseline.** Feature-branch surface (e.g. `src/ai/` on `feat/ai`) is documented only under `wip/.md` in the context bundle. Do not assume branch-specific files exist on `master`. ## Where agent context does NOT live - This file is the only project-level agent instruction. There is no parallel `CLAUDE.md`, `.cursorrules`, or per-tool variant. - User-specific preferences (language, commit-trailer policy, identity) belong in the agent runtime's user-memory, not in this file. ## Updating the bundle Edits to architectural / pattern / test / build documentation land in the `cproof-context` repo, not here. After a context-bundle PR merges, update the pinned commit hash above in the same PR cycle that consumes the new content.