Create or read the PRD artifact.
The PRD is the single planning artifact in batuta-dots v15. It replaces the 5-artifact chain (explore + propose + spec + design + tasks) with ONE document that contains everything an implementation agent needs.
| Mode | Who | Where | When |
|---|---|---|---|
| Write | CTO (Desktop) | Notion — child page of project | Before implementation |
| Read | Claude Code | Notion MCP or local openspec/ | At implementation start |
# PRD — {nombre del cambio}
## Problema
{1 parrafo: que esta roto, para quien, por que importa}
## Solucion
{1-2 parrafos: que se va a construir, como funciona a alto nivel.
Decisiones de tecnologia y arquitectura SI. Codigo NO.}
## Criterio de exito
- {condicion verificable 1}
- {condicion verificable 2}
- {condicion verificable 3}
## Datos disponibles
- {fuente 1}: {que es, donde esta, que contiene}
- {fuente 2}: {que es, donde esta, que contiene}
## Constraints
- {restriccion critica 1}
- {restriccion critica 2}
## Fuera de alcance
- {que NO se hace en este cambio}
- {que se difiere para despues}
Reglas:
No necesita PRD formal. Directiva corta en Notion o mensaje directo:
DIRECTIVA: {nombre}
PROBLEMA: {2-3 oraciones}
QUE NECESITO: {resultado en terminos de capacidad}
CRITERIO DE SALIDA: {condicion verificable}
openspec/changes/{change-name}/PRD.mdIf PRD contains implementation detail → flag: "PRD contiene implementacion. El CTO decide QUE, el agente decide COMO."
Implement using subagents with relevant skills. Update session.md each interaction. Write discoveries to Notion KB constantly.
Check each "Criterio de exito":
| CTO (in the PRD) | Agent (during implementation) |
|---|---|
| What technology (embeddings, LLM, OCR) | What functions to create |
| What architectural approach | How to implement it |
| What data exists and what it means | What queries to write |
| What business rules apply | How to code the rules |
| What pattern (CQRS, event sourcing) | How to structure files |
CTO writes PRD in Notion → Code reads via MCP → Implements
↕ (discoveries go back to Notion KB constantly)
If pivot: archive PRD as SUPERSEDED → CTO writes new PRD
| Rationalization | Reality |
|---|---|
| "Include code samples in the PRD for clarity" | The PRD is the CTO's WHAT, not the agent's HOW. Code in PRDs invites the CTO to design the implementation — which is the agent's job. The validation rule "PRD does NOT contain code or SQL" exists precisely because this rationalization is so common. |
| "A longer PRD is more thorough" | The 1-2 page limit is a feature, not a constraint. PRDs that grow beyond 2 pages are usually trying to cover multiple changes — split them. |
| "Skip 'Fuera de alcance' — it's obvious" | Scope creep happens because what's IN scope is documented but what's OUT is implicit. "Fuera de alcance" is mandatory to prevent the agent from gold-plating. |
| "Success criteria can be subjective" | Criteria must be agent-verifiable. "User likes the result" is not a criterion; "Endpoint returns 200 with the expected JSON shape" is. |
| "I'll add data sources later" | Without "Datos disponibles" the agent guesses about data shape and location, then writes code against assumptions. List the sources upfront. |
openspec/changes/{change-name}/PRD.md (local fallback)