agentsclimarketplace

Strict validation setup

Skill OutlineDriven/odin-claude-plugin/skills/strict-validation-setup

Bootstrap strict-mode tooling and per-task GOALS.md scaffolding so an agentic loop can self-verify.From its SKILL.md

Install
npx -y skills add OutlineDriven/odin-claude-plugin --skill strict-validation-setup

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

SKILL.md

4.8 KB, ~1.0k tokens by cl100k_base, as published. Nobody here has run it

The skill ships two distinct concerns split by temporal phase:

  • Project-stable: strict-mode tooling config + AGENTS.md authoring (defer the AGENTS.md content to init; this skill only ensures it exists and references the per-task pattern).
  • Task-ephemeral: .agent-tasks/<task-id>/GOALS.md per task plus failing-test scaffolding co-located with it.

These never mix. Task goals never go into AGENTS.md (would leak as project policy). Project invariants never go into per-task GOALS.md (would duplicate per task and drift).

Modality differentiation

SkillOwns
strict-validation-setupStrict-mode tooling configs + per-task GOALS.md convention (this file)
initAGENTS.md authoring (project-stable): defer to it for content
test-drivenTDD discipline (RED → GREEN → REFACTOR): defer for test-writing methodology
type-drivenRefined-type / typestate specs: defer for type-system invariants
design-by-contractPre/post conditions, runtime contracts: defer for assertion patterns
validation-firstState-machine specs (typestate / FSM / actor): defer for FSM modeling
tests-adversarialAssumption-violation tests: defer for the adversarial test pattern
setup-pre-commitCommit-hook installation: defer for hook tooling
setup-gitignoreGitignore patterns: defer for ignore-file composition

When the surface narrows to a single concern above, defer.

Three parts

1. Strict-mode tooling bootstrap (project-stable)

Detect the ecosystem from manifests, then write strict-mode config per the relevant references/<ecosystem>.md. Idempotency: merge with existing config; raise if a destructive overwrite would be required and --overwrite is not explicit.

Languages with bundled references (Q5-approved set; framework specifics deferred to a follow-up):

  • references/typescript.md
  • references/python.md
  • references/rust.md
  • references/go.md
  • references/ocaml.md

Languages noted but not yet bundled are deferred per Q8 rollback path: C++, Java, Kotlin, plus framework specifics (Spring Boot, Nest, React-strict). When the user invokes the skill on one of these, surface the gap explicitly and propose authoring the reference now or escalating to a follow-up commit.

2. AGENTS.md and per-task GOALS.md split (load-bearing)

  • AGENTS.md: project-wide, stable across sessions and tasks. Contains: build/test commands, banned tooling, conventions, contract patterns, and the location pattern of per-task goal files (.agent-tasks/<task-id>/GOALS.md or whatever path the project chooses). Defer authoring the AGENTS.md content to init. This skill only ensures the file exists and contains the goal-location pointer.
  • .agent-tasks/<task-id>/GOALS.md: task-ephemeral. Contains: the user's goal in prose, the success criteria the loop checks against, links to the failing tests in .agent-tasks/<task-id>/tests/. Cleaned up after the task merges. Write it from references/agent-goals.md, which carries the section layout and the rules for what belongs here rather than in AGENTS.md.

The architectural rule: task A's goals never appear in AGENTS.md. AGENTS.md never contains task-specific success criteria. If the line blurs, surface and refuse.

3. Verifiable-goals scaffolding (task-ephemeral)

For the current task, translate the user's stated goal into failing tests / contract assertions. The tests live in .agent-tasks/<task-id>/tests/ alongside the GOALS.md. The loop runs until the tests pass. Goals therefore exist both as prose (GOALS.md) and as code (tests).

Three sub-shapes, decide while drafting per task:

  • Interactive: ask the user what success means, stub failing tests, hand back for review before agent loop begins.
  • Template-driven: language-specific test stubs in references/ (per-ecosystem). Pick the matching language template; let the user fill specifics.
  • Hybrid: start template-driven; promote to interactive when the user's goal does not fit the template.

The term verifiable goals (Devin Agents101, Jun 2025) is preferred over TDD-for-agents (non-idiomatic in 2026 production stacks).

Posture

Bootstrap is a one-shot mode. After running, do not stay resident.

What ships with it: 6 files

14.9 KB alongside SKILL.md

references/

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.