Files
bible/AGENT-BOOTSTRAP.md
2026-04-02 13:48:36 +03:00

2.0 KiB

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.