agent-environment-retr…
Use when a completed session needs an agent-environment retrospective. Not for an engineering retrospective from telemetry: use engineering-retrospective.
Use when writing or restructuring code, before adding a helper, wrapper, config key, or dependency, or when the user asks for minimal or DRY code. Not for performance tuning: use optimize.
$ npx -y skills add OutlineDriven/odin-claude-plugin --skill minimalism-driven --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/minimalism-drivenContext preview
The summary Claude sees to decide when to auto-load this skill.
Use when writing or restructuring code, before adding a helper, wrapper, config key, or dependency, or when the user asks for minimal or DRY code. Not for performance tuning: use optimize.
name: minimalism-driven description: 'Use when writing or restructuring code, before adding a helper, wrapper, config key, or dependency, or when the user asks for minimal or DRY code. Not for performance tuning: use optimize.'
| Field | Bound contract | |---|---| | Trigger | Writing or restructuring code; considering a helper, wrapper, config key, or dependency; or an explicit request for minimal code, DRY code, or no gold-plating. | | Authority | Reversible local: writes only reversible local edits needed by the ask; rollback is version control or undo. No remote mutation. | | Side effect | Edit code within the requested scope; do not implement adjacent improvements. | | Done | Every addition has a concrete reason, intent and failure behavior are obvious, and the resulting scope exactly matches the ask. |
Supply the requested behavior and the local code surface to change. Supply explicit constraints or acceptance criteria when they exist. Existing nearby implementations and call sites are required evidence for reuse decisions; no additional input is optional if its absence would require guessing behavior.
1. Bound the requested behavior, affected files, and acceptance criteria before editing. If any required behavior cannot be determined from the request or local code, stop rather than invent it. Done when: the behavior, files, and criteria are stated and no unknown remains. 2. Inspect the affected code and its relevant call sites for an existing implementation or convention that can satisfy the ask; reuse that before creating a second form. Done when: every reuse candidate is identified and the reuse-or-create decision is recorded. 3. Try deletion first, then modification of existing code. Add new code only when neither can produce the required behavior. Done when: the smallest-form approach is selected and justified. 4. Before adding a helper, wrapper, config key, dependency, branch, or other surface, state its concrete necessity in one sentence. Omit it if removing it would leave the requested outcome unchanged. Done when: every retained addition has a stated necessity and every rejected addition is omitted. 5. Keep each retained addition sufficient rather than merely short: use clear names, handle required error paths, and encode or state assumptions where the code otherwise permits a silent gap. Done when: every addition handles its required error paths and states its assumptions. 6. Make only the bounded local edits. Do not build an adjacent improvement; report it separately only when it materially affects the requested work. Done when: the change set contains only bounded edits and no adjacent improvement. 7. Verify the changed behavior using the narrowest available check that exercises it, then inspect the final change set. Done when: the check passes, every addition retains concrete necessity, intent and failure behavior remain obvious, and no change lies outside the ask.
Never report the done predicate while a required check fails or evidence is missing.
Return the completed local code change and a concise report naming the behavior implemented, the files changed, the necessity of each new surface, the verification performed and its observed result, and any blocked adjacent work. On failure, return the exact blocked or non-converged classification defined above and preserve or restore the pre-edit state as specified.
Formerly the ODIN Claude Plugin. The repository URL is unchanged. Outline-Driven Development, nicknamed ODIN, is a highly opinionated code-agent skill library: principles-first engineering, surgical editing, and workflow automation, published as installable
Repo: OutlineDriven/odin-claude-plugin
Use when a completed session needs an agent-environment retrospective. Not for an engineering retrospective from telemetry: use engineering-retrospective.
Use when a repo needs agent setup, AGENTS.md added or made lean, CLAUDE.md audited, or agent instructions scored or pruned. Not for remote, credential,…
Use when a human explicitly asks for a full repository agent-compatibility pass returning a scored report with prioritized fixes. Not for tasks that require…
Use when setting up a project, auditing agent command permissions, or asking which read-only bash commands and domains to allow. Not for remote, credential,…
Use when asked to build or review a CLI intended for coding agents and return flag-driven, pipeline-safe, idempotent design advice. Not for running or…
Use when the user asks to make the skills framework work in a new harness, IDE, or CLI. Not for remote, credential, publish, deploy, or irreversible changes.