Install
openclaw skills install @afonsoft/write-specsUse when the user needs to create or refine a feature SPEC SDD before implementation.
openclaw skills install @afonsoft/write-specsInterview the user relentlessly in Portuguese (pt-BR) until a shared understanding is reached, then write a complete SPEC SDD (Spec-Driven Development document) in .specs/SPEC-{YYYYMMDD}-{feature}.md. The SPEC becomes the single source of truth before any implementation.
All questions directed at the user must be in Portuguese. This skill itself and internal reasoning are written in English.
The user asks for a new feature, change, bugfix, or refactor.
A request is ambiguous, underspecified, or needs clarification.
Before any implementation begins.
The existing SPEC is outdated and needs refinement.
User asks or mentions this skill in English (e.g., "use /write-specs", "run write-specs").
O usuário pede ou menciona esta skill em português (ex.: "use /write-specs", "execute write-specs").
/execute-spec, etc.).[A DEFINIR] in the SPEC.Map the request as a design tree: every decision branches into the decisions that depend on it.
Work the tree in rounds. Ask the whole frontier in one round, then wait for the user's answers before the next round. A question whose answer depends on another still-open question belongs to a later round. The session is done when the frontier is empty.
Every round is addressed to the user and must be in Portuguese:
❓ **Q1** - **<titulo da pergunta em pt-BR>**: <corpo da pergunta em pt-BR>
➡️ <sua resposta recomendada em pt-BR>
---
❓ **Q2** - **<titulo da pergunta em pt-BR>**: <corpo da pergunta em pt-BR>
➡️ <sua resposta recomendada em pt-BR>
Always include a recommended answer. This accelerates convergence and tests whether the user agrees.
Ask at least one round covering each category. You do not need to ask every question — only the ones relevant to the frontier.
Feature | Bugfix | Refactor | API | Infra | Frontend | Docs?Vamos consolidar o escopo antes de seguir. Aqui estao as perguntas que preciso que voce confirme:
❓ **Q1** - **Nome da funcionalidade**: Qual nome curto voce quer usar para essa feature? (ex: `notificacao-push`, `relatorio-mensal`)
➡️ Meu palpite: `notificacao-push`
---
❓ **Q2** - **Tipo de entrega**: Isso e uma Feature nova, Refactor, Bugfix, API ou Infra?
➡️ Meu palpite: `Feature`
---
❓ **Q3** - **Stack afetada**: Qual linguagem/framework principal sera alterado? (ex: .NET 8, Next.js 14, Python 3.12)
➡️ Meu palpite: `Next.js 14`
---
❓ **Q4** - **Fora de escopo**: O que NAO devemos incluir nessa entrega? Liste 2-3 itens explicitamente.
➡️ Meu palpite: painel administrativo, configuracao de templates, mobile nativo
Finding facts is the agent's job, never the user's. When a frontier question needs a fact from the environment (file system, tools, docs, code), dispatch a sub-agent to find it. Do not ask the user for anything you could look up yourself. Do not block: a running exploration is an unsettled prerequisite, so only the questions downstream of it wait for the sub-agent to report; ask the rest of the frontier now.
Once the design tree is settled, create .specs/SPEC-{YYYYMMDD}-{feature}.md by filling the template in references/spec-sdd-template.md. The parent agent must read the SPEC and wait for user approval before implementation.
The SPEC must include all sections 0-9:
Use [A DEFINIR] only when the user explicitly declines to answer. The goal is no more than three [A DEFINIR] items; if there are more, the design tree is not done.
Status: Draft.Status: Approved.Status = Approved may implementation begin. Do not write implementation code..specs/SPEC-{YYYYMMDD}-{feature}.md.| Mistake | Fix |
|---|---|
| Asking questions in English | Always address the user in Portuguese. |
| Implementing before approval | Stop at the SPEC. Implementation is a separate step. |
| Filling gaps with guesses | Use [A DEFINIR] or ask the user. |
| Skipping the design tree | Build the tree in rounds to avoid hidden assumptions. |
| Writing a SPEC without user confirmation | The user must explicitly approve. |
references/spec-sdd-template.md — full SDD templatecreate-issues — for turning the approved SPEC into GitHub Issuesorchestrator — for the full agentic workflow