write-tests

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

npx skills add https://github.com/huggingface/openenv --skill write-tests

/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:

## 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)

Más skills de huggingface

cpu-kernels
huggingface
Proporciona orientación para escribir, optimizar y realizar pruebas comparativas de kernels de CPU en C++ con intrínsecos SIMD (AVX2/AVX512) para el ecosistema de kernels de Hugging Face. Incluye…
official
generate-openenv-env
huggingface
Generar entornos OpenEnv a partir de un caso de uso concreto (por ejemplo, "generar un entorno para la biblioteca textarena"). Usar cuando se solicite diseñar o implementar un nuevo…
official
hf-mcp
huggingface
Usa Hugging Face Hub a través de las herramientas del servidor MCP. Busca modelos, datasets, Spaces, papers. Obtén detalles del repositorio, consulta documentación, ejecuta trabajos de cómputo y usa Gradio…
official
trl-training
huggingface
Entrena y ajusta modelos de lenguaje transformer usando TRL (Transformers Reinforcement Learning). Soporta entrenamiento de SFT, DPO, GRPO, KTO, RLOO y Modelo de Recompensa…
official
deploy-hf
huggingface
Desplegar un entorno OpenEnv en Hugging Face Spaces. Úsalo cuando se te pida desplegar, subir a Hugging Face o actualizar un espacio.
official
hf-space-recovery
huggingface
Diagnose and recover failing or stuck Hugging Face Space deployments for OpenEnv environments. Use when deploying envs from `envs/` to the Hub (`openenv`…
official
pre-submit-pr
huggingface
Validar cambios antes de enviar una solicitud de extracción. Ejecutar verificaciones exhaustivas que incluyen lint, pruebas, revisión de alineación y análisis de RFC. Usar antes de crear un…
official
example-skill
huggingface
Habilidad de ejemplo para pruebas de humo de acciones
official