Work in rat-stack mode
AGENTS.md is law. VISION.md sets the intent, reliability goals, scope20, package-removal test, and shrinking debt. Use this skill to choose playbooks under those rules.ΒΆ
A capability is one named action with shared value definitions and a server-side implementation. A cartridge36 is a package for one job with its implementation and required infrastructure.ΒΆ
Non-negotiables
- Start a todo list with reading the principles index below.ΒΆ
- Open every leaf that bears on a decision. Report which rules changed which choices.ΒΆ
- Name the data shape, authoritative store, copies calculated from it, and writer before writing code.ΒΆ
- Reuse stores when their facts and operation guarantees fit. Reporting does not justify gating unrelated execution.ΒΆ
- Measure before setting a timeout, rate cap, batch size, or concurrency limit. Put the baseline first; requested values remain hypotheses.ΒΆ
Principles index
Leaves live in the repo; read them from a checkout.ΒΆ
Product and UXΒΆ
skills/rat-stack-mode/principles/judge-through-the-person.md: changing an interface or user-visible behavior.ΒΆskills/rat-stack-mode/principles/keep-boundary-words-honest.md: naming failures, outcomes, and public claims.ΒΆ
ArchitectureΒΆ
skills/rat-stack-mode/principles/one-contract-many-projections.md: adding actions for agents or browser clients.ΒΆskills/rat-stack-mode/principles/keep-the-stack-floor.md: choosing runtime patterns, infrastructure, and validation.ΒΆskills/rat-stack-mode/principles/prove-move-delete.md: replacing an internal API or implementation.ΒΆskills/rat-stack-mode/principles/use-real-provider-guarantees.md: choosing an adapter or testing its behavior.ΒΆskills/rat-stack-mode/principles/gates-guard-invariants.md: adding a gate or approval check.ΒΆskills/rat-stack-mode/principles/keep-unknown-distinct.md: handling crashes, refusal, or missing results.ΒΆ
Data and truthΒΆ
skills/rat-stack-mode/principles/name-the-system-of-record.md: adding stores, caches, aggregates, or nightly reports.ΒΆskills/rat-stack-mode/principles/store-source-facts.md: capturing observations or interpreting missing fields.ΒΆskills/rat-stack-mode/principles/keep-execution-receipts.md: recording runs or claiming an operation succeeded.ΒΆskills/rat-stack-mode/principles/scope-private-data.md: handling identities, credentials, logs, or analytics.ΒΆskills/rat-stack-mode/principles/version-content-artifacts.md: writing public content or quoting code.ΒΆskills/rat-stack-mode/principles/no-dual-writes.md: copying a fact across stores or maintaining a read model.ΒΆskills/rat-stack-mode/principles/validate-before-durable-write.md: recording rows, events, or snapshots.ΒΆskills/rat-stack-mode/principles/bound-every-read.md: listing, querying, exporting, or rebuilding data.ΒΆskills/rat-stack-mode/principles/one-writer-per-partition.md: updating shared mutable state.ΒΆskills/rat-stack-mode/principles/make-operations-idempotent.md: replaying commands or recovering after crashes.ΒΆskills/rat-stack-mode/principles/subtract-before-you-add.md: sequencing new work or removing unused interfaces.ΒΆ
VerificationΒΆ
skills/rat-stack-mode/principles/check-the-actual-artifact.md: finishing work or reviewing another agentβs result.ΒΆskills/rat-stack-mode/principles/prove-the-recipient-path.md: changing runtime wiring or deployed interfaces.ΒΆskills/rat-stack-mode/principles/tests-detect-broken-behavior.md: adding tests or judging their coverage.ΒΆskills/rat-stack-mode/principles/find-the-cause-first.md: fixing failures or slow runs.ΒΆskills/rat-stack-mode/principles/rebuild-what-you-run.md: running or debugging an artifact someone else built.ΒΆskills/rat-stack-mode/principles/measure-real-limits.md: setting budgets or diagnosing contention.ΒΆ
AgentsΒΆ
skills/rat-stack-mode/principles/look-it-up-first.md: entering unfamiliar code or deciding whether to ask.ΒΆskills/rat-stack-mode/principles/ask-one-material-question.md: reaching a decision that needs owner sign-off.ΒΆskills/rat-stack-mode/principles/separate-writers-verify-readers.md: dividing work or accepting delegated results.ΒΆskills/rat-stack-mode/principles/encode-lessons-in-structure.md: correcting a repeated bad pattern.ΒΆ
Prose and visualΒΆ
skills/rat-stack-mode/principles/use-plain-language.md: writing docs, skills, or system pages.ΒΆskills/rat-stack-mode/principles/design-serves-function.md: changing layout, focus, or visual emphasis.ΒΆskills/rat-stack-mode/principles/make-review-views-complete.md: rendering evidence for people and agents.ΒΆ
Cost and speedΒΆ
skills/rat-stack-mode/principles/optimise-the-whole-loop.md: changing builds, tests, generation, or feedback time.ΒΆ
Playbooks
Match every applicable playbook; a capability with new persistence matches capability and store playbooks. Open each match and copy its steps into the todo list before task-specific steps. For unnumbered skills, copy action lists; keep skipped steps as skip: <reason>. Finish with each matching playbookβs report requirements.ΒΆ
- New action: add-a-capability.ΒΆ
- States, retries, or cancellation: add-a-lifecycle-machine.ΒΆ
- New persistence: add-a-store.ΒΆ
- Public prose or skill pages: write-a-wiki-page.ΒΆ
- Package or interface choices: keep-or-cut.ΒΆ
- Stateful design, replacement, or read-model design: uncomplect.ΒΆ
- Pins, recurring bad patterns, or repository maintenance: gardener.ΒΆ
- Peer research or shared dependency updates: find-peers.ΒΆ
- Cloud resources or unfamiliar deployment wiring: learn-alchemy.ΒΆ
- Unfamiliar stack integration: learn-rat-stack.ΒΆ
- Crashes, flaky tests, wrong output, or slow runs: investigate-a-failure.ΒΆ
write-a-query, add-a-read-model, and explore-limits are planned. Use applicable leaves and existing playbooks; identify uncovered steps explicitly.ΒΆ
Autonomy and child-project slots
Follow AGENTS.mdβs Boundaries and sign-off for autonomy. In a child project, name production write authority, deploy gates, and the model roster here and in AGENTS.md.ΒΆ
Router and adapted principles credit pstack by Lauren Tan9 (MIT, skills/rat-stack-mode/LICENSE-pstack).ΒΆ
Last changed 2026-10-10 in 0d43dfc. Source on GitHub. Change log.