build-test
Runs project build, type checking, and test commands to ensure development convergence.
What it does
Checks if your code works correctly and if the tests pass. It runs commands to check for errors and execute tests, reporting if everything is 'passing' or 'failing'.
When to use it
- ✓After making code changes.
- ✓Before submitting your work.
- ✓To ensure everything is working before proceeding.
Example of what to ask your AI
“Check if the code and tests are working.”
Want more? Open the sections below.
How to use
The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.
Skill link
Ready-to-paste message
How it works
It runs the build and test commands defined for your project. Then, it tells you whether the build and tests were successful or not.
Installation
Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.
In the terminal (Claude Code, Codex, Cursor), in your project folder:
npx skills add nexu-io/open-design --skill build-testOr download just the file:
curl -L https://raw.githubusercontent.com/nexu-io/open-design/main/plugins/_official/atoms/build-test/SKILL.md -o SKILL.mdTechnical content (original SKILL.md)
Original text by the author, straight from GitHub.
Build test
Spec §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.
Inputs
- The active target stack (recorded in
code/index.json+plan.md's targetStack block). - The user's optional override (
od plugin run --input testCommand='pnpm test').
Default commands by framework
| 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) |
Output
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.
Convergence
Pipelines wire the atom into a devloop:
{
"id": "verify",
"atoms": ["patch-edit", "build-test"],
"repeat": true,
"until": "(build.passing && tests.passing) || iterations >= 8"
}
Anti-patterns the prompt fragment forbids
- Running tests on a partially-edited working tree (the atom
always runs after
patch-edit, and only whenplan.steps's current step is incompletedstate). - Suppressing test failures by changing test files; that violates the rewrite-plan ownership rule.
- Setting
tests: 'skipped'without a non-emptyreasonfield.
Status
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.
FAQ
What are 'build' and 'test'?
'Build' is the process of checking if your code is written correctly (without typos or syntax errors). 'Test' is running automatic checks to see if your code's features are working as expected.
What happens if something fails?
If the 'build' or 'tests' fail, it will notify you. You'll need to fix the errors in your code before proceeding.
How does it know which commands to run?
It uses the default commands for the type of project you are using (like Next, Vite, etc.) or reads the commands you've defined in your project file.
Details
Original description by the author
Run the project's build / typecheck / lint / test commands and emit the build.passing + tests.passing signals devloop convergence reads.
repo: nexu-io/open-design
Popularity
- GitHub stars
- 101k
- Ranking position
- #518
- License
- Apache-2.0
- Updated
- 10/16/2026
Comments
- …
More skills from this repository
sample-plugin
Makes your agent create a metadata file for tests. It helps ensure code works correctly in different situations.
nexu-io/open-design
aster-atelier
Helps your agent create an artistic website with a classic look. It uses elegant imagery, blue skies, and serif fonts for a cinematic feel.
nexu-io/open-design
audio-jingle
Makes your agent generate audio like jingles and sound effects. It can create music and voices, saving the result as an audio file.
nexu-io/open-design
blog-post
Helps your agent write long articles or blog posts. It includes space for images, quotes, and author information.
nexu-io/open-design
Similar skills
bun-runtime
Has your agent use Bun to run, organize, and test code. It helps choose Bun over other tools and migrate existing projects.
affaan-m/ECC
database-migrations
Helps your agent make safe changes to databases. It ensures changes can be undone and minimizes downtime.
affaan-m/ECC
deployment-patterns
Sets up deployment and CI/CD workflows, containerization, and rollback strategies to ensure safe releases.
affaan-m/ECC