Centaur Layer has no build step. Validate the plugin structure with local commands.
bash scripts/validate-plugin.shThe validation run also executes the bats-style suite under tests/bats/. Run that suite directly while iterating:
bash tests/bats/bin/bats tests/bats/*.batstests/bats/bin/bats is a minimal in-tree runner — no external bats-core install required.
Manual smoke test:
- Load the plugin in a throwaway repository.
- Run
centaur-init. - Confirm
.centaur/contract.md,.centaur/README.md,CLAUDE.md, and.gitignoreexist. - Make a small diff.
- Run
centaur-checkand confirm it reports deterministic diff-specific signals; the skill layer may add one concrete question from the actual diff. - Run
centaur-healthand confirm it separates file presence from Centaur policy, verification command, and guardrail signals. - Run
centaur-drilland confirm it uses synthetic snippets only.
Deterministic script smoke tests:
tmp="$(mktemp -d)"
git -C "$tmp" init
bash scripts/centaur-init.sh "$tmp"
bash scripts/centaur-health.sh "$tmp"
bash scripts/centaur-drill.sh boundary