Skip to content

Agent skills ​

If your team writes tests with AI coding agents, brighttest can install skills into your project that teach the agent how to work with the tool — authoring correct Rooibos specs, setting the project up, and debugging failing runs. Skills follow the open Agent Skills format (a SKILL.md plus references/), and the content is authored once and adapted to whichever agent your project uses.

The skills ​

SkillTeaches
writing-rooibos-testsSuite/test annotations, assertions, test doubles, parameterized tests, headless-vs-device rules, and the pitfalls that make specs silently fail.
setting-up-brighttestInstalling the package, brighttest.json, where specs live, choosing a lane, npm scripts, and CI.
debugging-failing-testsReading the output, isolating causes, --cross-check fidelity, globalFields seeding, and testing the Task/API layer.
writing-e2e-flowsAuthoring/running on-device UI flows (*.e2e.yaml): the inspect → write → run workflow, steps, selectors (id not testId), focus navigation, record/stamp, multi-device sharding, and CI.

Install ​

sh
npx brighttest skills install

With no --agent, this auto-detects the agents your project already uses and installs to each:

DetectedInstalls to
.claude/.claude/skills/<skill>/ (native Claude Code skill, with reference files)
.agents/.agents/skills/<skill>/ (generic Agent Skills folder; override root with --skills-dir)
.cursor/.cursor/rules/<skill>.mdc (scoped to **/*.spec.bs)
.windsurf/.windsurf/rules/<skill>.md
.clinerules.clinerules/<skill>.md
.rulesmanaged block in .rules (Zed)
AGENTS.md / opencode.jsonmanaged block in AGENTS.md (also covers opencode, Codex)
.github/managed block in .github/copilot-instructions.md

Target explicitly with --agent (creates the folders if needed):

sh
npx brighttest skills install --agent claude
npx brighttest skills install --agent all
npx brighttest skills install --skill writing-rooibos-tests --agent cursor

--agent accepts claude, agentskills, cursor, windsurf, cline, zed, agents, copilot, opencode, hermes, or all.

Keep them up to date ​

skills update pulls the newest skills straight from the brighttest repository — independent of your installed package version:

sh
npx brighttest skills update              # from the default branch (main)
npx brighttest skills update --ref v0.3.0 # pin a tag/branch

It reads the skills manifest over HTTPS, fetches each file, and re-installs to your agents, reporting vOLD → vNEW where it can tell. Requires network access.

List and remove ​

sh
npx brighttest skills list        # available skills + detected agents
npx brighttest skills uninstall   # remove installed skills (respects --agent / --skill)

Safe to re-run ​

AGENTS.md, .rules, and .github/copilot-instructions.md are updated in place inside a managed block, one per skill:

<!-- BEGIN brighttest:writing-rooibos-tests -->
…
<!-- END brighttest:writing-rooibos-tests -->

Re-running replaces only that block — everything else in the file is preserved. The folder- and file-based targets (Claude Code, Agent Skills, Cursor, Windsurf, Cline) are brighttest-owned; re-running refreshes them. If one of those paths already exists and wasn't created by brighttest, it's skipped with a hint — pass --force to overwrite.

Export for manual placement ​

sh
npx brighttest skills export --out ./brighttest-skills

Writes each skill as a standard Agent Skills folder so you can drop it wherever your agent reads skills.

Scaffolding a new project ​

brighttest init sets up a project for testing — brighttest.json, a first spec at source/tests/Example.spec.bs, git-ignore entries, and an npm test script — then points you at skills install:

sh
npx brighttest init