kiln-test

Run end-to-end plugin-skill tests in real Claude subprocesses with TAP output.

Updated Mar 26, 2026
One-click install
npx skills add https://github.com/yoshisada/ai-repo-template --skill kiln-test
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: kiln-test
Source: https://github.com/yoshisada/ai-repo-template/tree/main/plugin-kiln/skills/kiln-test
Command: npx skills add https://github.com/yoshisada/ai-repo-template --skill kiln-test

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Runs executable tests against plugin skills — the real skill, in a real Claude subprocess, against a scratch-dir fixture, with assertions that verify final scratch-dir state.

Core Features & Use Cases

  • Delegates to wheel's scripts/harness/wheel-test-runner.sh, resolved via the dual-layout sibling traversal shown in What to do below.
  • Supports auto-detect plugin invocation, explicit plugin, or per-test execution forms, producing TAP v14 output and verdicts under .kiln/logs.
  • Keeps scratch dirs for post-mortem analysis when tests fail.

Quick Start

Run /kiln:kiln-test to execute all tests for the detected plugin, or specify a plugin and test to run a single suite.

Frequently Asked Questions about kiln-test

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I run end-to-end tests for Claude plugins in a sandbox?

End-to-end tests for Claude plugins are automated by running real Claude subprocesses in a scratch directory. The testing harness executes plugin skills against fixture data and verifies final scratch-directory state through automated assertions.

How does automated plugin testing verify final scratch directory state?

Automated plugin testing verifies final scratch directory state by executing the real skill within a Claude subprocess against a fixture. After execution, the harness evaluates assertions against the resulting scratch directory contents to determine a pass or fail verdict.

What is TAP-based verdict reporting in automated testing harnesses?

TAP-based verdict reporting is a standardized output format used to communicate test results. The testing harness produces TAP v14 output and records verdicts under the .kiln/logs directory, providing a structured and readable summary of plugin test executions.

Can I execute a single test suite instead of running a full plugin test?

Yes, you can execute a single test suite instead of a full plugin run. The harness supports auto-detect plugin invocation, explicit full-plugin runs, and per-test execution forms, allowing you to target specific tests across plugin directories.

Does the test harness keep scratch data for post-mortem analysis when tests fail?

Yes, the test harness retains scratch directories for post-mortem analysis when tests fail. This allows developers to inspect the exact state of the fixture data and debug the Claude subprocess execution after a failing assertion.

What are the limitations of running real Claude subprocesses for plugin testing?

A limitation of running real Claude subprocesses for plugin testing is the dependency on resolving the wheel-test-runner.sh script via dual-layout sibling traversal. The harness requires this specific directory structure to discover and execute the underlying test scripts successfully.