From 38a309517e24104e44436b83929ebf02969b60d9 Mon Sep 17 00:00:00 2001 From: Francisco Solla Date: Tue, 18 Aug 2026 11:26:11 -0300 Subject: [PATCH] =?UTF-8?q?simplify:=20skills-map/AGENTS.md=20p=C3=B3s=20I?= =?UTF-8?q?2=20=E2=80=94=20vocab=20do=20plan-issue=20sem=20heran=C3=A7a=20?= =?UTF-8?q?teqo,=20update=20n=C3=A3o-interativo=20(Related=20#4)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .agents/skills/plan-issue/skills-map.md | 14 +++++++------- AGENTS.md | 4 ++-- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/.agents/skills/plan-issue/skills-map.md b/.agents/skills/plan-issue/skills-map.md index 32f2386..f337699 100644 --- a/.agents/skills/plan-issue/skills-map.md +++ b/.agents/skills/plan-issue/skills-map.md @@ -21,15 +21,15 @@ Na Iara: **idea-refine / interview** antes se vago; **spec + plan + tasks** = es | ----- | ----------------------------- | ----------------------- | | **idea-refine** | Se a ideia for vaga: HMW + 3–5 sharpening Qs + Not Doing + assumptions a validar **antes** do plano. Gate: "ainda não dá para registrar". | Sessão divergente completa (5–8 variações); salvar em `docs/ideas/` | | **interview-me** | Só se o usuário não sabe o que quer (rotear). | Extrair requirements longos aqui | -| **spec-driven-development** | Premissas explícitas; objetivos como critérios de aceite testáveis; Boundaries Always/Ask/Never da Iara; reframing de pedido vago → sucesso mensurável | Spec de 6 seções / fase IMPLEMENT | -| **planning-and-task-breakdown** | Fatias **verticais**; fases com aceite + verificação; grafo de deps; high-risk cedo; XL → bipartir `{id}-plan`/`{id}-exec` | Checkpoint humano entre cada fase na implementação | -| **incremental-implementation** | Tracer bullet = 1ª fase; risco-primeiro se incerteza; cada fase deixa o sistema compilável | Ciclo implement→test→commit (é `work-issue`) | -| **doubt-driven-development** | Em decisão **cara** (protocolo WS, schema de settings, URL/contrato imutável): CLAIM curto + adversarial self-check antes de travar | Doubt em cada bullet; cross-model CLI; doubt pós-código | -| **source-driven-development** | Se a Abordagem depende de API externa (gateway ZeroClaw, Web Speech): anotar "verificar docs na implementação" + versão em `package.json` | Fetch de docs e citações no plano | +| **spec-driven-development** | Premissas explícitas; objetivos como critérios de aceite testáveis; invariantes do AGENTS.md (token nunca logado, aprovações nunca auto-aprovadas); reframing de pedido vago → sucesso mensurável | Template de spec completo no plano / fase IMPLEMENT | +| **planning-and-task-breakdown** | Fatias **verticais**; fases com aceite + verificação; grafo de deps; high-risk cedo; pedido grande → fatiar em Issues | Checkpoint humano entre cada fase na implementação | +| **incremental-implementation** | Risco-primeiro se incerteza de direção; incrementos pequenos e verificáveis | Tracer bullet, fases, ciclo implement→test→commit (é `work-issue`) | +| **doubt-driven-development** | Em decisão **cara** que o humano levanta (ex.: contrato público, dado sensível): CLAIM curto + adversarial self-check antes de travar | Doubt em cada bullet; cross-model CLI; doubt pós-código | +| **source-driven-development** | Se a direção do plano depende de API externa (gateway ZeroClaw, Web Speech): anotar "verificar docs na implementação" + versão em `package.json` | Fetch de docs e citações no plano | | **documentation-and-adrs** | Decisões travadas = ADR-lite do item (contexto + rejeitadas). Repo-wide → apontar follow-up em `docs/` | Criar `docs/decisions/` novo sem precedente | | **domain-driven-design** / **clean-architecture** / **software-design-philosophy** | Vocabulário, Dependency Rule, deep modules — via [decision-quality.md](../work-issue/decision-quality.md) sob demanda | Modelar bounded contexts do zero num item de lista | -| **test-driven-development** | Na fase: "Verify: pin unit/int …" | RED/GREEN no planning | -| **api-and-interface-design** | Contratos de action/URL no Abordagem quando há API nova | Desenhar OpenAPI completo | +| **test-driven-development** | Aceite cita verificação (unit/int) | RED/GREEN no planning | +| **api-and-interface-design** | Contrato público (URL/slug) quando o humano levantar; resto → `work-issue` | Desenhar OpenAPI completo | | **context-engineering** | Plano cita arquivos reais (não dump do repo) | Carregar contexto de implementação aqui | **Nota:** o que o teqo emprestava de `37signals-way` (appetite, rabbit holes, no-gos) e de `design-code-architecture` (caro/barato, depth) já está destilado em [shaping.md](shaping.md) e [decision-quality.md](../work-issue/decision-quality.md) — essas skills não estão no pack da Iara (sem produto/marketing). diff --git a/AGENTS.md b/AGENTS.md index 1af2bf2..0b8fa54 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -13,8 +13,6 @@ usuário. - `bun run gate` — gate local: `lint` (oxlint) + `build` (typecheck + build). Rode antes de push. - `bun run test:e2e` — **e2e Playwright; roda SÓ no CI, nunca local** (decisão do fluxo: não rodar e2e local para não divergir do CI). -**Pack de skills de engenharia:** em `.agents/skills/` (além das 5 de fluxo custom), com proveniência/hashes em `skills-lock.json` na raiz — fonte de verdade; upgrade deliberado via `npx skills update`. - ## Arquitetura do código - `src/lib/ws.ts` — protocolo WebSocket `zeroclaw.v1` (tipos de mensagens, conecta em `/ws/chat?token=&agent=&name=`). **Contrato**: mudar tipos de protocolo é breaking. @@ -32,6 +30,8 @@ identificadores em inglês; assets offline em `globPatterns` do PWA. ## Workflow de trabalho (fluxo tipo teqo) +**Pack de skills de engenharia:** em `.agents/skills/` (além das 5 de fluxo custom), com proveniência/hashes em `skills-lock.json` na raiz — fonte de verdade; upgrade deliberado via `npx skills update -y`. + Issues do Forgejo (`git.solla.dev/amana/iara-pwa`) são a fonte canônica de spec/status/deps/prio. Estado em labels: `ready | in-progress | blocked | done` (+ `in-prod`). Frontmatter no body da Issue: -- 2.45.2