Agent skill · data analytics · erichowens
output-contract-enforcer
Validates that a DAG node's output matches its declared JSON schema before passing to downstream nodes. The glue that makes multi-agent DAGs reliable. Use when checking output contract compliance,
Why this skill is useful
Adds specific validation logic and error handling for output contracts in DAGs that the AI wouldn't reliably generate on its own.
What it needs
About 3k tokens when loaded. Last updated 2026-07-14. 180 stars on the source repository.
What this skill does
Output Contract Enforcer Validates that a DAG node's output matches its declared JSON schema before passing to downstream nodes. The glue that makes multi-agent DAGs reliable. Without this, downstream nodes receive unpredictable input and the DAG breaks. --- When to Use ✅ Use for: Validating a node's output against its declared schema Generating output schemas from natural-language output descriptions Debugging why a downstream node rejected its input Ensuring contract compatibility between connected nodes ❌ NOT for: Assessing content quality or correctness (use dag-quality) Grading skill quality (use skill-grader) General JSON schema work outside DAG context --- Validation Process What Gets Checked Check Example Failure Message ------- --------- ---------------- JSON parseable {broken json "Output is not valid JSON" Required fields status missing "Missing required field: status" Field types status: 42 (expected string) "Field 'status' expected string, got number" Enum values status: "maybe" "Field 'status' must be one of: pass, warn, fail" String constraints summary: "" (minLength: 1) "Field 'summary' must have minLength 1" Number constraints score: 1.5 (maximum: 1.0) "Field 'score' must be ≤ 1.0" Array constraints items: [] (minItems: 1) "Field 'items' must have at least 1 item" Nested objects Missing sub-field "Field 'metadata.cost' is required" The Standard Output Contract Every DAG node should produce output matching this base schema (fields can be extended): Contract Compatibility Check When connecting Node A's output to Node B's input, verify: 1. Every field B requires is present in A's output schema 2. Types match (A produces string, B expects string) 3. A's output constraints are compatible with B's input constraints 4. …
How to use it
Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:
@skills erichowens/output-contract-enforcer