Run the project's build / typecheck / lint / test commands and emit the build.passing + tests.passing signals devloop convergence reads.
66
80%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./plugins/_official/atoms/build-test/SKILL.mdSpec §20.2 / §22.4: the "subjective critique-theater panel" is
not enough on its own — a code-migration / tune-collab run must
prove the build still passes. This atom shells out to the
project's declared test commands and emits structured signals the
devloop's until evaluator reads.
code/index.json +
plan.md's targetStack block).od plugin run --input testCommand='pnpm test').| framework | typecheck | test |
|---|---|---|
| next | pnpm typecheck | pnpm test |
| vite | pnpm typecheck | pnpm test |
| remix | pnpm typecheck | pnpm test |
| custom | (read from package.json.scripts) | (read from package.json.scripts) |
project-cwd/
└── critique/
├── build-test.json # { build: 'passing' | 'failing', tests: 'passing' | 'failing' | 'skipped', durationMs, commandsRun: [...], failures: [...] }
└── build-test.log # raw stdout / stderr (truncated to the runner's logBudgetBytes limit, default 1 MiB)The atom emits two signals the devloop reads:
build.passing: boolean — the typecheck command exited 0.tests.passing: boolean — the test command exited 0.Plus the legacy critique.score so existing pipelines that read
the score keep working: 5 when both pass, 3 when only build
passes, 1 when both fail.
Pipelines wire the atom into a devloop:
{
"id": "verify",
"atoms": ["patch-edit", "build-test"],
"repeat": true,
"until": "(build.passing && tests.passing) || iterations >= 8"
}patch-edit, and only when plan.steps's
current step is in completed state).tests: 'skipped' without a non-empty reason field.Implemented by the daemon runner in
apps/daemon/src/plugins/atoms/build-test.ts. It executes the configured
build and test commands, bounds runtime and captured logs, and persists the
report and log outputs above.
f2760fd
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.