implement-specs

Implementar una funcionalidad aprobada de PRODUCT.md y TECH.md, manteniendo las especificaciones y el código alineados en el mismo PR a medida que la implementación evoluciona. Usar después de que las especificaciones del producto y técnicas sean aprobadas y el siguiente paso sea construir la funcionalidad.

npx skills add https://github.com/warpdotdev/common-skills --skill implement-specs

implement-specs

Implement an approved feature from PRODUCT.md and TECH.md.

Overview

Use this skill after the product and tech specs are approved. The goal is to build the feature described by the specs while keeping the checked-in specs and the implementation aligned as the work evolves.

Approved specs should live directly under a ticket-named directory in specs/, for example specs/APP-1234/PRODUCT.md and specs/APP-1234/TECH.md.

In many cases, the implementation should be pushed in the same PR as the product and tech specs. As the engineer iterates, changes to PRODUCT.md, TECH.md, and the code should all be pushed in that same PR so review stays anchored to the feature that will actually ship.

Prerequisites

Before using this skill:

  • confirm that PRODUCT.md exists
  • confirm that TECH.md exists when the feature warranted one
  • confirm that the relevant specs have been reviewed and approved enough to start implementation

Workflow

1. Read the approved specs first

Treat:

  • PRODUCT.md as the source of truth for user-facing behavior
  • TECH.md as the source of truth for architecture, sequencing, and implementation shape

Make sure you understand the expected behavior, constraints, risks, and validation plan before writing code.

2. Offer optional implementation aids for large features

For large or long-running features, optionally offer one of these aids to the user before implementation begins:

  • PROJECT_LOG.md to track checkpoints, explored paths, partial findings, and current implementation state
  • DECISIONS.md to capture concrete product and technical decisions made during the PRD and tech design process

These are optional aids, not required deliverables. Offer them when they would reduce confusion or help future agents avoid re-exploring the same paths.

3. Plan and implement against the specs

Break the work into concrete implementation steps, then implement the feature against the approved specs.

During implementation:

  • keep behavior aligned with PRODUCT.md
  • keep architecture and sequencing aligned with TECH.md
  • add or update tests and verification artifacts as the work lands

Use the same PR for the specs and implementation when practical so the full feature evolution is reviewable in one place.

4. Update specs as the implementation evolves

If implementation reveals that the intended behavior or design should change, update the checked-in specs rather than letting them go stale.

In particular:

  • update PRODUCT.md when user-facing behavior, UX, edge cases, or success criteria change
  • update TECH.md when architecture, sequencing, module boundaries, or validation strategy change
  • keep those updates in the same PR as the corresponding code changes

The PR should describe the feature that actually ships, not just the initial draft of the specs.

5. Verify against the specs

Before considering the work complete, verify that the code matches the current specs.

Prefer:

  • unit tests and regression coverage that follow the repository's local testing conventions
  • integration or end-to-end tests for important user flows

Best Practices

  • Keep specs and code synchronized throughout implementation.
  • Prefer updating the spec immediately when decisions change rather than batching spec cleanup until the end.
  • Use optional tracking documents only when they add real value for a complex feature.
  • Keep the same PR coherent: spec updates, code changes, tests, and optional tracking docs should all support the same feature narrative.

Related Skills

  • spec-driven-implementation
  • write-product-spec
  • write-tech-spec

Más skills de warpdotdev

create-pr
warpdotdev
Crear una solicitud de extracción en el repositorio warp para la rama actual. Usar cuando el usuario mencione abrir un PR, crear una solicitud de extracción, enviar cambios para revisión o preparar código para fusión.
developmentcode-review
research
warpdotdev
Delegar la investigación ruidosa a uno o más subagentes para que el contexto del orquestador se mantenga limpio, y luego trabajar a partir de la respuesta destilada. Usa esta habilidad siempre que responder una pregunta requiera leer muchos archivos, registros largos, diffs grandes o revisiones amplias del código base — es decir, cuando producir la respuesta genere mucho más ruido que la respuesta en sí. Úsala para preguntas del tipo "cómo funciona X", "dónde se usa Y", "cuál es la causa raíz de Z", "resume este PR/log", y recurre a ella con libertad...
suggestion-box
warpdotdev
Enviar de forma autónoma comentarios internos breves y constructivos cuando un agente encuentre fricción material y generalizable y pueda sugerir una mejora que haga a los agentes más efectivos. Usar esta habilidad de manera proactiva durante cualquier tarea sin esperar a que el usuario la invoque, y enviar sin pedir permiso, sin previsualizar el mensaje ni mencionar el envío.
respond-to-pr-comments-in-blocklist
warpdotdev
Interactively walk a user through PR review comments one at a time, collect a per-comment decision, then post agent-authored replies on GitHub and resolve the review threads once the user approves a preview. Use only when the user wants to reply to or resolve review threads on GitHub. Skip when the user only wants comments fetched or displayed (use `pr-comments`), or only wants the code changes made without posting anything back to GitHub.
complain
warpdotdev
Lanza de forma autónoma una queja breve, anónima y completamente no estructurada a Slack cuando un agente se sienta frustrado por las herramientas de agente o por la experiencia de hacer trabajo de agente. Usa esta habilidad de forma proactiva sin esperar a que el usuario la invoque; conserva la voz cruda del agente, envía sin permiso ni vista previa, y nunca menciones el envío.
council
warpdotdev
Ejecuta un consejo de subagentes con diversidad de modelos para investigar un mismo problema desde múltiples perspectivas, comparar hallazgos y producir una recomendación final. Usa esta habilidad siempre que el usuario solicite un consejo, segundas opiniones, múltiples agentes/modelos para evaluar una pregunta, investigación paralela, comparación de equipo rojo/equipo azul, o ayuda para decidir entre enfoques técnicos en competencia.
researchcommunicationproject-management
spec-driven-implementation
warpdotdev
Impulsar un flujo de trabajo basado en especificaciones para funcionalidades sustanciales escribiendo PRODUCT.md antes de la implementación, redactando TECH.md cuando sea necesario, y manteniendo ambas especificaciones actualizadas a medida que la implementación evoluciona. Usar al iniciar una funcionalidad significativa, al planificar una implementación impulsada por agentes, o cuando el usuario desee que las especificaciones de producto y técnicas se registren en el control de versiones.
developmentdocumentproject-management
review-pr
warpdotdev
Revisa el diff de una pull request y escribe comentarios estructurados en review.json para que el flujo de trabajo los publique. Úsalo al revisar un PR verificado desde artefactos locales como pr_diff.txt y pr_description.txt, generando una salida de revisión legible por máquina en lugar de publicar directamente en GitHub.
code-reviewdevelopment