.claude/skills/testing/SKILL.md
Guidelines for testing the application with Vitest, including unit tests, integration tests (emulator), AI tests, and eval suites for LLM features
npx skillsauth add elie222/inbox-zero testingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
All testing guidance lives in this directory. Read the relevant file for your task:
| Type | File | When to use |
|------|------|-------------|
| Unit tests | unit.md | Framework setup, mocks, colocated tests |
| Writing tests | write-tests.md | What to test, what to skip, workflow |
| LLM tests | llm.md | Tests that call real LLMs (pnpm test-ai) |
| Eval suite | eval.md | Cross-model comparison, LLM-as-judge |
| Integration | integration.md | Emulator-backed tests (pnpm test-integration) |
| E2E tests | e2e.md | Real email workflow tests from inbox-zero-e2e repo |
Prefer behavior-focused assertions; avoid freezing prompt copy or internal call shapes unless those exact values are the contract under test.
pnpm test -- path/to/file.test.ts # Single unit test
pnpm test --run # All unit tests
pnpm test-integration # Integration tests (emulator)
pnpm test-ai ai-regression/your-feature # Live AI regression test
EVAL_MODELS=all pnpm test-ai eval/your-feature # Eval across models
tools
Use the Inbox Zero API CLI to inspect the live API schema, list and manage automation rules, and read inbox analytics through the public API. Use this when a task involves Inbox Zero rules, stats, or API-driven automation and can be solved through the CLI instead of browser interaction.
tools
Write focused unit tests for backend and utility logic
testing
Pause execution for a user-specified duration
testing
Update workspace packages while respecting the repo's pinned package list in .ncurc.cjs. Use when the user asks to update dependencies or refresh package versions.