LLM Instructions

Table of Contents

This is the entry point for every LLM session on ORE Studio. Read it in full before acting. Each section below names the rule and links to the canonical document; follow the link for depth. Non-negotiable rules are inlined rather than linked.

1. Non-negotiable rules

These apply in every session, with no exceptions:

  • UNIX line endings — all new files use LF, never CRLF.
  • New org docs via compass only — never write .org frontmatter by hand. Always use ./projects/ores.compass/compass.sh add <type>. See How do I create a new doc?.
  • Check recipes first — before searching for how to do anything, open Recipes and find the matching topic.
  • Every new .org file is scaffolded via compass add — this ensures correct frontmatter (:ID:, #+type:, #+description:, etc.).
  • Pull requests via compass only — never open one unless the user asks in that turn. Raise, merge, check and record it with compass pr create, compass pr merge, compass pr checks and compass pr record, never with gh pr. gh may only read what compass does not cover. The raw verbs skip the title check, the fixed body, the Traceability table and the guard rails. See How do I create a PR?.

2. Orientation

Read these first on a new contact:

  • Compass — top-level map of doc/; the entry point.
  • Orientation — navigation guide by reader intent.
  • Glossary — definitions for task, story, sprint, version, function, recipe.
  • Agile — current version and sprint at a glance.

3. Build

4. Code style

  • Code review checklist — naming (snake_case, include order), include order, comment quality, platform isolation, and all review categories.

5. Architecture

  • System model — four-layer architecture and component inventory.
  • Codegen patterns: choosing a model shape — read this before authoring or changing any model, and pick one pattern from the library.
  • Knowledge — cross-cutting reference: entity patterns, SQL schema, presentation patterns, CLI/shell patterns, unit-test conventions.

6. Documentation

7. Database isolation

  • ores.sql — component overview; the strict service-table isolation invariant lives under "Service Table Isolation" in this doc.
  • Rule: each service user holds DML only on its own ores_<service>_* tables. Do not add cross-service grants without documented justification. Trigger functions that SELECT across services must be SECURITY DEFINER SET search_path = public, pg_temp.

8. Testing

9. Git and pull requests

10. Claude Code configuration

11. Memory

Non-negotiable: all memories go in doc/llm/memory/ via compass add memory. Never write to the Claude Code harness memory system (~/.claude/projects/*/memory/) — it is disabled via autoMemoryEnabled: false in .claude/settings.json and its files are not version-controlled or reviewed.

12. See also

  • Execution model — how LLMs and agents operate within the cybernetic information architecture during a sprint.
  • Recipes — full index of operational how-tos by topic.

Emacs 29.3 (Org mode 9.6.15)