work-on-issue

Commencer le travail sur un issue GitHub. Extrait les exigences, crée un worktree, met en place un workflow TDD.

npx skills add https://github.com/huggingface/openenv --skill work-on-issue

/work-on-issue

Start focused work on a GitHub issue using TDD workflow.

EXECUTE THESE STEPS NOW

When this skill is invoked, you MUST execute these steps immediately. Do NOT just describe what will happen - actually do it.

Step 1: Parse Issue Number

Extract the issue number from $ARGUMENTS:

  • Remove # prefix if present
  • The issue number is: $ARGUMENTS

Step 2: Spawn Issue Worker Agent

Use the Task tool to spawn the issue-worker agent:

Task tool:
  subagent_type: issue-worker
  prompt: "Read GitHub issue #<NUMBER> and extract:
    1. Goal - what the user wants to achieve
    2. Acceptance criteria - specific testable requirements
    3. Edge cases and constraints
    4. Suggested PR split if complex"

Wait for the agent to return requirements.

Step 3: Create Worktree

After receiving requirements, run this command:

.claude/scripts/worktree-create.sh issue-<NUMBER>-<short-description>

Where <short-description> is 2-3 words from the goal (e.g., add-mcp-tools).

Step 4: Activate TDD Enforcement

Activate TDD enforcement in the new worktree. This uses tdd-state.sh's direct-execution mode so it works in a single Bash call:

cd .worktrees/issue-<NUMBER>-<short-description> && bash .claude/hooks/tdd-state.sh activate <NUMBER>

This writes .tdd-session.json to the worktree root, which all hooks check. Without this step, hooks would not block direct edits.

Step 5: Create Todos

Use TodoWrite to create a todo for EACH acceptance criterion:

TodoWrite:
  todos:
    - content: "Test: <acceptance criterion 1>"
      status: pending
      activeForm: "Testing <criterion 1>"
    - content: "Test: <acceptance criterion 2>"
      status: pending
      activeForm: "Testing <criterion 2>"
    ...

Step 6: Begin TDD Cycle

Immediately invoke /write-tests for the first todo.

DO NOT stop and wait for user input. Start the TDD cycle now.


When to Use

  • Starting work on a GitHub issue
  • You want TDD enforcement (opt-in via this skill)
  • You want isolated work (no branch switching)

When NOT to Use

  • Quick exploration (just stay in main repo)
  • Already in a worktree for this issue
  • Issue doesn't exist in GitHub

Workflow Overview

/work-on-issue #42
    ↓
Step 1: Parse "42" from arguments
    ↓
Step 2: Spawn issue-worker → get requirements
    ↓
Step 3: Create worktree issue-42-<name>
    ↓
Step 4: Activate TDD enforcement (.tdd-session.json)
    ↓
Step 5: Create todos from acceptance criteria
    ↓
Step 6: Invoke /write-tests → begin TDD cycle

Important

This skill runs in the MAIN conversation context (not forked) because it needs to:

  1. Spawn the issue-worker agent and receive its results
  2. Run worktree-create.sh script
  3. Create todos that persist in the conversation
  4. Invoke /write-tests to continue the workflow

The issue-worker agent runs in a forked context and returns requirements.

Plus de skills de huggingface

sync-models
huggingface
Synchroniser la configuration des modèles de chat-ui avec le routeur HuggingFace — ajouter des descriptions pour les nouveaux modèles, marquer ceux capables de raisonnement, activer les artefacts pour les modèles de 32B+…
custom-blocks
huggingface
Use when the user has written (or wants to write) a `ModularPipelineBlocks` subclass in a local Python file and needs to package it into a Hub-uploadable…
self-review
huggingface
Use before opening a PR, or whenever asked to self-review a diffusers contribution. Applies the same rubric as the `@claude` CI (checks the diff against…
hf-cloud-sagemaker-production-defaults
huggingface
Créer un endpoint SageMaker (en temps réel ou asynchrone) avec mise à l’échelle automatique, alarmes CloudWatch et balisage activés par défaut. Utilisez cette compétence chaque fois que vous êtes sur le point de créer un…
hf-cloud-serving-image-selection
huggingface
Choisir le bon conteneur de service pour un déploiement de modèle SageMaker et trouver son URI d’image actuelle. Utilisez cette compétence lorsque vous êtes sur le point de déployer un modèle vers un…
Hugging Face Cli
huggingface
Execute Hugging Face Hub operations using the `hf` CLI. Use when the user needs to download models/datasets/spaces, upload files to Hub repositories, create repos, manage local cache, or run compute jobs on HF infrastructure. Covers authentication, file transfers, repository creation, cache operations, and cloud compute.
Hugging Face Datasets
huggingface
Créer et gérer des ensembles de données sur Hugging Face Hub. Prend en charge l'initialisation de dépôts, la définition de configurations/invites système, la mise à jour en continu des lignes, et l'interrogation/transformation d'ensembles de données basée sur SQL. Conçu pour fonctionner avec le serveur HF MCP pour des workflows complets sur les ensembles de données.
Hugging Face Evaluation
huggingface
Ajouter et gérer les résultats d'évaluation dans les fiches de modèles Hugging Face. Prend en charge l'extraction de tableaux d'évaluation à partir du contenu README, l'importation de scores depuis l'API Artificial Analysis, et l'exécution d'évaluations personnalisées de modèles avec vLLM/lighteval. Fonctionne avec le format de métadonnées model-index.