memory-recap
Create evidence-linked work profiles, diagnose Coding Agent collaboration friction, and recommend concrete improvements from…
Generate, revise, or review complete Harness as Code `.harness` files when a coding-agent workflow, agent role, skill, tool contract, MCP connection, runtime, or deployment must be compiler-valid and resolvable with `@qoder-ai/harness`.
Claude Code
$ npx -y skills add QoderAI/better-harness --skill generate-harness-dsl --agent claude-code
Codex
$ npx skills add QoderAI/better-harness --skill generate-harness-dsl -a codex -y
Cursor
$ npx skills add QoderAI/better-harness --skill generate-harness-dsl -a cursor -y
Gemini CLI
$ npx skills add QoderAI/better-harness --skill generate-harness-dsl -a gemini-cli -y
GitHub Copilot
$ npx skills add QoderAI/better-harness --skill generate-harness-dsl -a github-copilot -y
OpenCode
$ npx skills add QoderAI/better-harness --skill generate-harness-dsl -a opencode -y
Windsurf
$ npx skills add QoderAI/better-harness --skill generate-harness-dsl -a windsurf -y
name: generate-harness-dsl description: Generate, revise, or review complete Harness as Code `.harness` files when a coding-agent workflow, agent role, skill, tool contract, MCP connection, runtime, or deployment must be compiler-valid and resolvable with `@qoder-ai/harness`.
Create a standalone Harness as Code v0.3 document and prove the execution contract with the package compiler and resolver.
1. Identify the host, the capabilities it must actually expose, and the real control owner. Use `session` for one host session. Use `state-machine` or `program` only when a selected adapter explicitly implements that mode. 2. Read [the DSL contract](references/dsl-contract.md). Start from [the minimal example](../../examples/minimal.harness); open [the standard example](../../examples/standard-coding.harness) when callable tools are required. 3. Generate one self-contained document unless the user requests a fragment. Include `language 0.3`, every referenced declaration, a concrete runtime, and a named deployment. Standard tools may remain implicit. 4. Run `scripts/validate.mjs`. Fix every compiler or resolution error and rerun. A compile-only state machine is not an executable Qoder or Pi deployment. 5. Return the DSL or saved file plus the harness id, deployment id, runtime, resolution status, and any execution boundary the selected adapter cannot satisfy.
degradation, binding, input/output-name, or runtime-execution syntax; v0.3 intentionally has none.
or `connect mcp`.
tool declares a stable `contract` id that the adapter exposure must match.
names exactly the one agent role declared by each harness that uses it.
destination, entry, and stop must exist, and every agent must be reachable.
the same language in `programmaticLanguages`.
remember that declaring an endpoint does not connect it; the adapter must do that.
while generating or validating DSL.
From this skill directory, run:
node scripts/validate.mjs /path/to/workflow.harness [harness-id ...]
The command prints JSON and exits non-zero when compilation or any selected named deployment fails resolution. A successful exit is required before calling generated DSL executable.
When editing this skill, build the package first so `dist/` reflects the current compiler:
npm run harness:build
An open-source Harness Engineering platform for coding agents—define harnesses as code, run controlled experiments, inspect evidence, and compare outcomes. Turn task evidence into actionable team and organization insights.
Create evidence-linked work profiles, diagnose Coding Agent collaboration friction, and recommend concrete improvements from…
Use when /better-harness reviews the outer coding-agent Harness for lifecycle controls, repeated work, project feedback, agent…
Analyze a bounded IntentCorrelationPacketV1 and propose reviewable links among user inputs, execution slices, change units,…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.