Antonio Herrera.
10Fase 10 · Claude desde cero

Trabajar con especificaciones: Claude Code y OpenSpec

Del prompt suelto al cambio especificado, implementado y archivado

Por Antonio Herrera Publicada en octubre 2026 3 min de lectura
12/13
Qué vas a conseguir: hacer un cambio de principio a fin con especificación: propuesta, diseño, tareas, implementación y archivo, usando Claude Code y OpenSpec.
Tiempo: 40 minutos. Necesitas: Node.js e instalar OpenSpec. Resultado: la app con fecha límite y tareas vencidas resaltadas, y su especificación (soluciones/fase-10/).
Por qué especificar

Hasta ahora hemos pedido cosas en un prompt. Funciona para cambios pequeños, pero en uno mediano la intención, las decisiones y los criterios de «hecho» se quedan en la conversación y se pierden. Con Spec-Driven Development esa información se escribe antes de programar, se revisa y queda en el repositorio.

OpenSpec organiza cada cambio en una carpeta con cuatro piezas: proposal (qué y por qué), specs (requisitos y escenarios), design (cómo) y tasks (pasos comprobables). Si quieres profundizar, tienes la guía completa SDD Lifecycle con OpenSpec.

Paso 1 · Instala e inicializa OpenSpec
terminal · los tres sistemas
npm install -g @fission-ai/openspec@latest cd mis-tareas openspec init --tools claude --language es
Resultado de openspec init: OpenSpec structure created, Setup complete for Claude Code, 6 skills and 6 commands in .claude/, y la sugerencia /opsx:propose
OpenSpec añade a Claude Code 6 comandos /opsx:… y sus skills, y crea la carpeta openspec/. Con --language es los documentos se escriben en español.
Paso 2 · Propón el cambio

Abre Claude Code y escribe:

Claude Code
/opsx:propose Añadir una fecha límite opcional a cada tarea y resaltar las que estén vencidas

OpenSpec ejecuta varios comandos para preparar los documentos y cada uno pide permiso. Puedes aprobarlos uno a uno o, como sugiere Claude Code, pasar a modo auto, que es lo que hicimos nosotros.

Resumen de la propuesta: proposal, specs con 5 requisitos, design con las decisiones técnicas, tasks con 10 tareas en 4 grupos, y una lista de decisiones que Claude tomó por su cuenta para revisar
La propuesta, lista para revisar. Lo más valioso es la lista final: «Decisiones que tomé por mi cuenta (revísalas)». Es el momento de corregir el rumbo, antes de escribir una línea de código.

Comprueba los ficheros y valídalos:

Claude Code · modo shell
!ls -R openspec/changes/anadir-fecha-limite && openspec validate anadir-fecha-limite --strict
Listado de la carpeta del cambio con design.md, proposal.md, specs/fecha-limite/spec.md y tasks.md, y Change anadir-fecha-limite is valid
Las cuatro piezas del cambio y la validación estricta de OpenSpec: «is valid».
Paso 3 · Impleméntalo
Claude Code
/opsx:apply anadir-fecha-limite

Claude implementa las tareas una a una y las comprueba. En nuestra sesión encontró un problema real al probar: escribir la fecha con el teclado perdía dígitos. En lugar de improvisar, se paró y propuso opciones:

Claude explica un problema con el campo de fecha al escribir con el teclado y propone tres opciones, recomendando guardar al perder el foco
Un problema encontrado al verificar, con opciones y una recomendación. (Aquí Claude cambió al inglés; se lo indicamos y siguió en español. Si te pasa, basta con pedirlo.)
Claude informa de 9 de 10 tareas completadas mientras el subagente revisor-accesibilidad trabaja en segundo plano, visible en la parte inferior
El subagente de la fase 9, trabajando solo. Una de las tareas pedía una revisión de accesibilidad y Claude la delegó en revisor-accesibilidad, que se ve abajo, en segundo plano.
Cierre de la implementación: mejoras aplicadas, una pega conocida anotada como riesgo aceptado, sugerencias del revisor no aplicadas por estar fuera del diseño y propuesta de commit
Un cierre honesto: qué se ha hecho, qué pega queda (anotada como riesgo en el diseño) y qué sugerencias no ha aplicado porque estaban fuera del alcance.
La app con un campo de fecha en cada tarea y la tarea Enviar el resumen al equipo resaltada en rojo con la etiqueta Vencida
El resultado: cada tarea puede tener fecha límite y las vencidas se resaltan con la etiqueta «Vencida».

Haz commit pidiéndoselo a Claude, como en la fase 7.

Paso 4 · Archiva el cambio
Claude Code
/opsx:archive anadir-fecha-limite
Pregunta Sincronizar: el delta spec fecha-limite todavía no está en las specs principales, con las opciones Sincronizar ahora (recomendado) y Archivar sin sincronizar
Antes de archivar, ofrece sincronizar los requisitos nuevos con las especificaciones principales del proyecto. Elige Sincronizar ahora.
Confirmación: cambio archivado en openspec/changes/archive/2026-10-15-anadir-fecha-limite y spec principal creada en openspec/specs/fecha-limite/spec.md
El cambio queda archivado con su fecha y la especificación de la app, actualizada. Dentro de un año sabrás qué se quiso hacer, por qué y cómo.
✓ Gate 10 — Cambio especificado
✓
OpenSpec está inicializado con los comandos /opsx
✓
He revisado la propuesta y las decisiones antes de implementar
✓
El cambio pasa openspec validate --strict
✓
La fecha límite funciona en la app
✓
El cambio está archivado y la spec sincronizada

Fuentes oficiales: OpenSpec · Skills · Permission modes. Revisado el 15 de octubre de 2026 con Claude Code 2.1.300 y OpenSpec 1.14.

Hablemos →