baselinelisted
Install: claude install-skill AdarGit008/baseline-skill
# baseline
Workflow scaffolding, not an enforcer. Every rule is a check a script runs on a repo at rest; the exit code is the verdict. *Don't trust a promise — check it.*
`$SKILL_DIR` is this file's directory — run by **absolute path** (`baseline.mjs` loads `rules.json`, `rules/`, `src/` from beside it). Node >= 18, git.
## Modes
- **orient** — session start: `node "$SKILL_DIR/baseline.mjs" orient --repo <r>`. Five lines (repo · work · graph · knowledge · score), exit 0 always. **Git boundary: no file, branch or history changes.** One network act, `git fetch`: behind origin is a *warning* (`--json`: `upstream`/`ahead`/`behind`), never a pull. Plugin lines quote the stamp's `summary`, never the artifact.
- **score** (default): `node "$SKILL_DIR/check.mjs" --repo <r>` — `--json` for CI, `--no-exec` a no-op. Each row's `fix` field is advisory — it rides `--json` and `explain`, never auto-applied.
- **explain** — `baseline explain <rule-id>`: title + rationale, plus the okf concept when `BASELINE_OKF_BUNDLE` is set. Display only, never a verdict.
## What fails CI
Everything. No warn tier: every rule reads repo files, is deterministic, AND-gated into one exit code — BUILD-03 BUILD-04 SEC-01 SEC-02 GOV-03 PLUG-01 PLUG-02 PLUG-03 CTX-15 CTX-16 CTX-17 CTX-19. A rule with no subject resolves `state: "n/a"`, silent to humans, out of the gate. CTX-18 is **frozen**: declared, no severity, silent until `my-onto` exists.
## The two opt-ins, opposite defaults
- **Trust circle** — op