# SteerSpec key concepts

- **Rule**: A single-phrase behavioral constraint or property definition attached to an entity. Rules have an id, a revision, a lifecycle state and a body written with [RFC-2119](https://www.rfc-editor.org/rfc/rfc2119) keywords. [RUL in the spec](https://steerspec.dev/spec/#RUL)
- **Entity**: An object with a unique identity and lifecycle. The unit of organization; every rule belongs to one entity. [ENT in the spec](https://steerspec.dev/spec/#ENT)
- **Rule Set**: All rules of one entity, versioned as a unit. Each entity file carries its own `rule_set` version, timestamp and hash. [RST in the spec](https://steerspec.dev/spec/#RST)
- **Note**: A supplemental annotation attached to a specific rule. [NTE in the spec](https://steerspec.dev/spec/#NTE)
- **Realm**: A published, versioned collection of entity files plus a manifest. The core realm is `dev.steerspec.core`. An organization can define its own realm on top of it. [RLM in the spec](https://steerspec.dev/spec/#RLM)
- **Manifest**: `rules/latest/index.json`. Lists the realm version and every entity file with a blake3 hash, so consumers can pin and verify. Every release is also served immutably at `/rules/v<version>/index.json`.
- **Schema**: JSON Schema files that validate entities, realms and the consumer config. Every entity file declares the schema it conforms to.
- **Lifecycle state**: D (Draft, the only editable state), P (Published), I (Implemented, in force), R (Retired), T (Terminated), A (Abandoned). Transitions are forward-only. [RULST in the spec](https://steerspec.dev/spec/#RULST)
- **Keywords**: Rule bodies use [RFC-2119](https://www.rfc-editor.org/rfc/rfc2119) keywords, extended with `HAS`, `IS` and `DEFINE` (defined by `KWRD-002`, itself a rule in the set). [KWRD in the spec](https://steerspec.dev/spec/#KWRD)
- **SPCFG**: The consumer-side configuration, a `.strspc/config.yaml` at the root of a project. It declares which rule sources the project subscribes to and how they are enforced (evaluator settings, fail conditions). [SPCFG in the spec](https://steerspec.dev/spec/#SPCFG)
- **Sync**: The `strspc-sync` GitHub Action. Pushes central CLAUDE.md, agents, skills and settings into repos as reviewable pull requests. Nothing is force-pushed or auto-merged.
- **Drift**: A repository's AI configuration diverging from the central definition. The monitor reports it on a schedule; sync reverses it by pull request.
- **Two kinds of rules**: Rules in the config you sync (what your agents are told) are different from rules about rules (how SteerSpec's own format is specified, published at `/spec/`). The second kind is the spec; the first is what you apply it to.

