# Agent Bootstrap Read this file first when `bible/` is attached as a submodule. Do not read the whole repository by default. This repository is a rule library, not a codebase. Use targeted reading. ## Reading Order 1. Read this file. 2. Read `bible-local/README.md`. 3. Read only the relevant files in `bible-local/architecture/` and `bible-local/decisions/`. 4. Read only the relevant shared contracts in `bible/rules/patterns/`. If you are editing this `bible/` repository itself, read the target contract and its nearby `README.md`. Do not walk all contracts unless the task is explicitly about restructuring the library. ## Always-On Contracts Read these on most tasks: - `bible/rules/patterns/kiss/contract.md` - `bible/rules/patterns/task-discipline/contract.md` - `bible/rules/patterns/testing-policy/contract.md` - `bible/rules/patterns/secret-management/contract.md` - `bible/rules/patterns/go-code-style/contract.md` ## Task Router Read additional contracts by task type: - HTTP handlers, JSON APIs, status codes: `go-api`, `go-background-tasks`, `go-logging` - DB queries, migrations, backups, startup DB safety: `go-database`, `backup-management` - Local-first desktop migration/recovery: `local-first-recovery` - Tables, bulk actions, filters, pagination: `table-management`, `controls-selection` - Forms, validation, modals: `forms-validation`, `modal-workflows` - Import/export, CSV, upload batching: `import-export`, `batch-file-upload` - Build/deploy/runtime packaging: `app-binary`, `build-version-display`, `module-versioning` - LiveCD/OpenRC/boot-time services: `alpine-livecd`, `unattended-boot-services`, `vendor-installer-verification` - Release authenticity / signed binaries: `release-signing` - Identifiers, vendors, data normalization: `identifier-normalization`, `no-hardcoded-vendors` - Project architecture documentation rules: `go-project-bible` ## Default Rule If a contract is not clearly relevant to the current task, skip it. Prefer reading one correct contract fully over skimming twenty unrelated ones.