Skip to main content

write-tests

Write failing tests from requirements. Invoke for each todo before /implement.

Source facts

Repository
huggingface/OpenEnv
Last source activity
January 21, 2026 at 00:24
Detected SKILL.md language
English
Stars
2,711
Forks
481

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
write-tests
description
Write failing tests from requirements. Invoke for each todo before /implement.
context
fork
agent
tester
# /write-tests Write failing tests that encode acceptance criteria. ## Usage ``` /write-tests /write-tests Add logout button to header ``` ## When to Use - After creating a todo that requires implementation - Before running `/implement` - When you have clear acceptance criteria ## When NOT to Use - Implementation already exists (tests would pass immediately) - You're exploring or prototyping (not TDD mode) - Just adding to existing test coverage ## What It Does 1. Analyzes the current todo/requirement 2. Reads existing tests to understand patterns 3. Writes test files that verify acceptance criteria 4. **Verifies tests FAIL** (proves they test something real) 5. Returns test file paths for `/implement` ## Output The tester agent will produce: ```markdown ## Tests Written ### Files Created/Modified - `tests/test_client.py` ### Tests Added | Test | Verifies | |------|----------| | `test_client_reset_returns_observation` | Reset returns valid observation | | `test_client_step_advances_state` | Step mutates state correctly | | `test_client_handles_invalid_action` | Error handling for bad input | ### Verification All tests FAIL as expected (no implementation yet). ### Next Step Run `/implement` to make these tests pass. ``` ## Rules 1. **Read existing tests first** to understand patterns and conventions 2. **Test behavior, not implementation** - write from user's perspective 3. **Integration tests first**, then unit tests if needed 4. **Each test verifies ONE thing** clearly 5. **Run tests to verify they fail** before returning ## Anti-patterns (NEVER do these) - Writing tests that pass without implementation - Testing implementation details instead of behavior - Writing overly complex test setups - Adding implementation code (that's `/implement`'s job) - Writing tests that duplicate existing coverage ## Completion Criteria Before returning, verify: 1. Tests compile/run successfully (pytest can collect them) 2. Tests FAIL (no implementation yet) 3. Test names clearly describe what they verify 4. Tests follow existing project patterns (see `tests/` for examples)
View on GitHub