← ClaudeAtlas

test-harnesslisted

Generate an MCP server exposing the project's domain and application layers for headless testing.
samuel-stidham/smithy · ★ 1 · Testing & QA · score 77
Install: claude install-skill samuel-stidham/smithy
# /forge:test-harness Generate an MCP server that exposes this project's public API surface as tools, so Claude can drive the application headlessly: launch it, send inputs, read state, find bugs. This command builds the harness. The QA pass is a separate task the user starts afterward. Focus area: $ARGUMENTS. Empty means the full public API surface. ## Orientation Detect the language and tooling from manifests. Never assume them. Find the domain and application layers per the `clean-architecture` skill. The harness wraps the same interfaces the presentation layer uses, never infrastructure or presentation directly. If an MCP server already exists in the project, ask before extending or replacing it. ## Generate - A standalone module in the language's idiomatic layout, such as `cmd/mcp-server/` in Go or an `mcp-server/` package elsewhere. Stdio transport. The harness depends on the project. The project never depends on the harness. - Tools in four groups, as the API surface supports them: lifecycle (start, stop, reset, configure), actions (send inputs, trigger operations, plus a batch tool to cut round trips), inspection (structured state, detailed and summary forms), and targeted testing (state overrides for edge cases, clearly marked test-only). - An `mcpServers` entry in `.mcp.json` at the repo root, merged into any existing file, never overwriting it. Note in the report that Claude Code will ask to approve the project server on next start. - A `TES