From Strata
Edits, retires, or learns from vault notes when users correct facts or deprecate content. Maintains audit trail with provenance.
How this skill is triggered — by the user, by Claude, or both
Slash command
/strata:correctThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
The unified correction surface. One skill, three operations distinguished
The unified correction surface. One skill, three operations distinguished by intent and flags.
| Situation | Path |
|---|---|
| One paragraph is wrong, note overall still useful | edit (default) |
| User corrects something Claude proposed in conversation | learn-from (see below) |
| Whole note no longer current, keep history visible | invalidate |
| ADR replaced by new decision | use /strata:decide --supersedes |
| Note must disappear (PHI, secrets) | use /strata:forget |
cat <<'EOF' | "${CLAUDE_PLUGIN_ROOT}/bin/strata" correct \
domain/order-aggregate.md \
--reason "OrderPriced now emitted before OrderConfirmed, not after."
# Order Aggregate
<new content here>
EOF
"${CLAUDE_PLUGIN_ROOT}/bin/strata" correct \
domain/order-aggregate.md \
--set status=stable \
--reason "Adopted in production after two-week rollout."
--set is repeatable. --reason strongly recommended, appears in the
corrections: audit list.
The note stays readable but drops out of default search. Required --reason,
optional --replaced-by:
"${CLAUDE_PLUGIN_ROOT}/bin/strata" invalidate \
domain/old-aggregate-pattern.md \
--reason "Aggregate split into Order + Payment in 2026-05-24 refactor." \
--replaced-by "domain/order-aggregate.md"
When the user corrects an idea Claude just gave ("no, X is actually Y", "that's wrong because Z", "we don't do it that way", "you got it backwards"), that's signal worth keeping. Flow:
recall(query="<topic>", layer=1).--set correction_source=claude-session so the audit trail shows the
correction came from a session, not a manual edit. Several matches → ask
which one. No match → the vault didn't know this yet; create the right
note instead: a chosen approach → /strata:decide, a vocabulary/invariant →
/strata:domain, a newly-surfaced contested point → /strata:propose --status contested. Include in the body: "Claude proposed: ; actual:
" so future readers see the genesis.Skip when the correction is about Claude's local reasoning ("run that without the flag") rather than durable vault knowledge; and don't fire while the user is still arguing the point — wait until the correction is stated definitively.
Edits append to corrections: [{at, by, reason}] and bump updated:.
Invalidations set status: invalidated, invalidated_at,
invalidated_by, invalidation_reason, and optional replaced_by.
Both refresh the FTS index.
invalidated directly — use the invalidate path
so the audit fields land properly./strata:decide --supersedes
carries the reasoning forward.--reason. Semantic changes need it.Provides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
npx claudepluginhub gideondk/strata --plugin strata