agent-engineering-skills 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +249 -0
- package/LICENSE +21 -0
- package/README.md +113 -0
- package/bin/cli.js +223 -0
- package/docs/agent-integration.md +200 -0
- package/docs/philosophy.md +131 -0
- package/docs/reference-authoring.md +117 -0
- package/docs/skill-authoring.md +126 -0
- package/examples/authorization-bypass.md +191 -0
- package/examples/frontend-review.md +244 -0
- package/examples/race-condition.md +128 -0
- package/examples/xp-reward-loop.md +123 -0
- package/package.json +45 -0
- package/references/engineering.yaml +88 -0
- package/references/frontend.yaml +139 -0
- package/references/product.yaml +54 -0
- package/references/research.yaml +88 -0
- package/references/security.yaml +85 -0
- package/references/ux.yaml +37 -0
- package/scripts/validate.py +454 -0
- package/skills/audit/adversarial-review/SKILL.md +190 -0
- package/skills/audit/business-logic-audit/SKILL.md +182 -0
- package/skills/audit/edge-case-hunter/SKILL.md +159 -0
- package/skills/audit/error-flow-audit/SKILL.md +184 -0
- package/skills/audit/state-consistency-audit/SKILL.md +174 -0
- package/skills/audit/user-flow-audit/SKILL.md +161 -0
- package/skills/frontend/accessibility-review/SKILL.md +186 -0
- package/skills/frontend/animation-review/SKILL.md +171 -0
- package/skills/frontend/interaction-design/SKILL.md +162 -0
- package/skills/frontend/ux-review/SKILL.md +172 -0
- package/skills/frontend/visual-quality-review/SKILL.md +160 -0
- package/skills/meta/research-router/SKILL.md +184 -0
- package/skills/meta/skill-router/SKILL.md +206 -0
- package/skills/product/gamification-audit/SKILL.md +213 -0
- package/skills/reliability/data-integrity-audit/SKILL.md +187 -0
- package/skills/reliability/idempotency-audit/SKILL.md +191 -0
- package/skills/reliability/race-condition-hunter/SKILL.md +181 -0
- package/skills/research/github-reference-research/SKILL.md +197 -0
- package/skills/research/implementation-research/SKILL.md +181 -0
- package/skills/research/market-research/SKILL.md +202 -0
- package/skills/research/reference-research/SKILL.md +186 -0
- package/skills/security/api-abuse-audit/SKILL.md +178 -0
- package/skills/security/authorization-audit/SKILL.md +176 -0
- package/skills/security/input-trust-audit/SKILL.md +178 -0
- package/templates/audit-report.md +89 -0
- package/templates/bug-report.md +107 -0
- package/templates/design-review.md +122 -0
- package/templates/research-report.md +96 -0
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: github-reference-research
|
|
3
|
+
description: Researches how features are implemented on GitHub, searching for feature implementation, architecture, database, API, and framework patterns, and evaluating activity, quality, tests, documentation, adoption, license, and architecture to extract ideas without copying.
|
|
4
|
+
category: research
|
|
5
|
+
triggers:
|
|
6
|
+
- "research github"
|
|
7
|
+
- "find production implementations"
|
|
8
|
+
- "compare feature architecture database api framework"
|
|
9
|
+
- "evaluate a github project"
|
|
10
|
+
- "what are real projects doing"
|
|
11
|
+
priority: high
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# GitHub Reference Research
|
|
15
|
+
|
|
16
|
+
## Objective
|
|
17
|
+
|
|
18
|
+
Ensinar o agente a pesquisar como **implementações reais** resolvem o problema, usando
|
|
19
|
+
GitHub como fonte, e a **extrair ideias sem copiar cegamente** (ver `AGENTS.md` § 1).
|
|
20
|
+
|
|
21
|
+
## When to Use
|
|
22
|
+
|
|
23
|
+
* Quando o `research-router` despacha para GitHub (problemas de arquitetura,
|
|
24
|
+
implementação, ou quando documentação oficial não basta).
|
|
25
|
+
* Quando você precisa ver como projetos de produção implementam: `feature
|
|
26
|
+
implementation`, `feature architecture`, `feature database`, `feature API`,
|
|
27
|
+
`feature framework`.
|
|
28
|
+
* Quando o pedido menciona "how is this done in production", "GitHub reference",
|
|
29
|
+
"open source example", "real-world implementation".
|
|
30
|
+
* **Composição:** pareia com `reference-research` (catálogo) e
|
|
31
|
+
`implementation-research` (como resolver um problema técnico específico). Alimenta
|
|
32
|
+
`market-research` (produtos reais).
|
|
33
|
+
|
|
34
|
+
## Mental Model
|
|
35
|
+
|
|
36
|
+
GitHub é uma biblioteca de decisões de engenharia — cada repositório maduro é uma
|
|
37
|
+
resposta documentada a um conjunto de trade-offs. O modelo é:
|
|
38
|
+
|
|
39
|
+
```text
|
|
40
|
+
per feature:
|
|
41
|
+
como a implementação é estruturada? (feature implementation)
|
|
42
|
+
como a arquitetura encaixa? (feature architecture)
|
|
43
|
+
como o dado é modelado? (feature database)
|
|
44
|
+
como a API expõe? (feature API)
|
|
45
|
+
qual framework/primitiva é usado? (feature framework)
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
E a avaliação de cada repositório candidato (do `plan.md` §13):
|
|
49
|
+
|
|
50
|
+
```text
|
|
51
|
+
atividade — recente? mantido? abandonado?
|
|
52
|
+
qualidade — código limpo? padrões? complexidade?
|
|
53
|
+
testes — há testes? cobrem os casos críticos?
|
|
54
|
+
documentação — README, docs, exemplos?
|
|
55
|
+
adoção — stars/forks/uso real (com cuidado: stars ≠ qualidade)
|
|
56
|
+
licença — compatível com o uso pretendido?
|
|
57
|
+
arquitetura — limpa? modular? acoplada?
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
A pergunta central: **o que esta implementação decide, e por quê?** Não "copie o
|
|
61
|
+
código", mas "que trade-off esta decisão representa, e ele é bom para o meu caso?"
|
|
62
|
+
|
|
63
|
+
## Investigation Procedure
|
|
64
|
+
|
|
65
|
+
1. **Definir a feature e as 5 dimensões** (implementation/architecture/database/API/
|
|
66
|
+
framework) que importam para o problema.
|
|
67
|
+
2. **Buscar repositórios** com queries de `references/research.yaml` e
|
|
68
|
+
`references/engineering.yaml` (ex: "<feature> implementation", "<feature> database
|
|
69
|
+
schema").
|
|
70
|
+
3. **Triar candidatos** — avaliar atividade, qualidade, testes, documentação, adoção,
|
|
71
|
+
licença, arquitetura. Descartar os que falham nos critérios.
|
|
72
|
+
4. **Ler a implementação relevante** — os arquivos-chave da feature (não o repo
|
|
73
|
+
inteiro). Entender a estrutura, o modelo de dados, a API, o framework.
|
|
74
|
+
5. **Extrair as decisões** — quais escolhas estruturais, quais trade-offs, quais
|
|
75
|
+
padrões (idempotência, transações, cache, tratamento de erro).
|
|
76
|
+
6. **Adaptar** — como aplicar ao projeto atual sem copiar. (princípios sim, código
|
|
77
|
+
específico não).
|
|
78
|
+
7. **Sintetizar** no formato obrigatório de pesquisa (ver `AGENTS.md` § 5).
|
|
79
|
+
|
|
80
|
+
## Questions to Ask
|
|
81
|
+
|
|
82
|
+
* A implementação da feature é modular ou um blob?
|
|
83
|
+
* A arquitetura é limpa? (camadas, boundaries) ou acoplada?
|
|
84
|
+
* O modelo de dados reflete o domínio? (unique, FK, enums — ver `data-integrity-audit`)
|
|
85
|
+
* A API expõe primitivas limpas ou vaza detalhes internos?
|
|
86
|
+
* Qual framework/primitiva resolve a parte difícil? (e qual trade-off isso impõe?)
|
|
87
|
+
* O projeto é mantido? (atividade recente, responde a issues)
|
|
88
|
+
* Tem testes? Cobrem os casos críticos (concorrência, erro, edge)?
|
|
89
|
+
* A documentação explica decisões, ou só a API?
|
|
90
|
+
* A adoção é real ou só stars? (forks, dependents, empresas conhecidas)
|
|
91
|
+
* A licença permite o uso? (MIT/Apache vs GPL/copyleft)
|
|
92
|
+
* O que NÃO copiar? (estrutura específica, código proprietário, configuração de
|
|
93
|
+
ambiente do repo)
|
|
94
|
+
|
|
95
|
+
## Attack Patterns
|
|
96
|
+
|
|
97
|
+
A skill não "ataca" o sistema, mas os padrões de investigação são:
|
|
98
|
+
|
|
99
|
+
```text
|
|
100
|
+
feature específica
|
|
101
|
+
↓
|
|
102
|
+
buscar repositórios (implementation/architecture/database/api/framework)
|
|
103
|
+
↓
|
|
104
|
+
triar por atividade/qualidade/testes/docs/adoção/licença/arquitetura
|
|
105
|
+
↓
|
|
106
|
+
ler a implementação relevante (arquivos-chave da feature)
|
|
107
|
+
↓
|
|
108
|
+
extrair decisões e trade-offs (não copiar)
|
|
109
|
+
↓
|
|
110
|
+
adaptar ao contexto
|
|
111
|
+
↓
|
|
112
|
+
sintetizar e recomendar
|
|
113
|
+
|
|
114
|
+
busca muito ampla ou vaga
|
|
115
|
+
↓
|
|
116
|
+
refinar query (references/research.yaml) + priorizar fonte de alta autoridade
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
## Evidence Requirements
|
|
120
|
+
|
|
121
|
+
* **Nomear o repositório e a URL.**
|
|
122
|
+
* **Avaliar os critérios explicitamente** — atividade, qualidade, testes,
|
|
123
|
+
documentação, adoção, licença, arquitetura. Diga o que você verificou e o que não.
|
|
124
|
+
* **Mostrar o padrão extraído** (não o link — o padrão). Ex: "o projeto usa um
|
|
125
|
+
idempotency key + unique constraint para evitar duplicação de pedido".
|
|
126
|
+
* **Explicitar a adaptação** — como aplicar sem copiar.
|
|
127
|
+
* **Escalar confiança (Research):**
|
|
128
|
+
* `CONFIRMED` — leu a implementação e o padrão está claramente presente.
|
|
129
|
+
* `HIGH CONFIDENCE` — padrão identificado em leitura parcial, forte indício.
|
|
130
|
+
* `POSSIBLE` — padrão inferido de README/estrutura, não confirmado no código.
|
|
131
|
+
* `SPECULATIVE` — suposição sobre o repo sem ler a parte relevante.
|
|
132
|
+
|
|
133
|
+
## False Positives
|
|
134
|
+
|
|
135
|
+
* **Stars ≠ qualidade** — repositório popular pode ter arquitetura ruim. Avaliar a
|
|
136
|
+
implementação, não a popularidade.
|
|
137
|
+
* **Repo desatualizado** — um projeto parado há 3 anos pode usar padrões obsoletos.
|
|
138
|
+
Verificar atividade antes de confiar.
|
|
139
|
+
* **Licença incompatível** — código GPL/copyleft não pode ser copiado livremente.
|
|
140
|
+
Verificar licença antes de recomendar adoção.
|
|
141
|
+
* **Copiar em vez de extrair** — "este repo faz X assim" ≠ "devemos fazer X assim".
|
|
142
|
+
Sempre adaptar ao contexto. Ver `AGENTS.md` § 1.
|
|
143
|
+
* **Repo como única fonte** — GitHub é uma perspectiva; combinar com documentação
|
|
144
|
+
oficial e produtos reais. Não decidir só por um repo.
|
|
145
|
+
|
|
146
|
+
## Output Format
|
|
147
|
+
|
|
148
|
+
Usar o formato de síntese do `plan.md` §17:
|
|
149
|
+
|
|
150
|
+
```markdown
|
|
151
|
+
## Research
|
|
152
|
+
|
|
153
|
+
### Reference
|
|
154
|
+
[Nome do repositório + link]
|
|
155
|
+
|
|
156
|
+
### Relevant Pattern
|
|
157
|
+
O que foi encontrado.
|
|
158
|
+
|
|
159
|
+
### Why It Matters
|
|
160
|
+
Por que este padrão é útil.
|
|
161
|
+
|
|
162
|
+
### Adaptation
|
|
163
|
+
Como ele poderia se aplicar ao projeto atual.
|
|
164
|
+
|
|
165
|
+
### Trade-offs
|
|
166
|
+
Que problemas ele introduz.
|
|
167
|
+
|
|
168
|
+
### Recommendation
|
|
169
|
+
O que deve de fato ser adotado.
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
### Evidence Requirements
|
|
173
|
+
|
|
174
|
+
* **Nomear o repositório e a URL.**
|
|
175
|
+
* **Avaliar os critérios explicitamente** — atividade, qualidade, testes,
|
|
176
|
+
documentação, adoção, licença, arquitetura. Diga o que você verificou e o que não.
|
|
177
|
+
* **Mostrar o padrão extraído** (não o link — o padrão). Ex: "o projeto usa um
|
|
178
|
+
idempotency key + unique constraint para evitar duplicação de pedido".
|
|
179
|
+
* **Explicitar a adaptação** — como aplicar sem copiar.
|
|
180
|
+
* **Escalar confiança (Research):**
|
|
181
|
+
* `CONFIRMED` — leu a implementação e o padrão está claramente presente.
|
|
182
|
+
* `HIGH CONFIDENCE` — padrão identificado em leitura parcial, forte indício.
|
|
183
|
+
* `POSSIBLE` — padrão inferido de README/estrutura, não confirmado no código.
|
|
184
|
+
* `SPECULATIVE` — suposição sobre o repo sem ler a parte relevante.
|
|
185
|
+
|
|
186
|
+
### False Positives
|
|
187
|
+
|
|
188
|
+
* **Stars ≠ qualidade** — repositório popular pode ter arquitetura ruim. Avaliar a
|
|
189
|
+
implementação, não a popularidade.
|
|
190
|
+
* **Repo desatualizado** — um projeto parado há 3 anos pode usar padrões obsoletos.
|
|
191
|
+
Verificar atividade antes de confiar.
|
|
192
|
+
* **Licença incompatível** — código GPL/copyleft não pode ser copiado livremente.
|
|
193
|
+
Verificar licença antes de recomendar adoção.
|
|
194
|
+
* **Copiar em vez de extrair** — "este repo faz X assim" ≠ "devemos fazer X assim".
|
|
195
|
+
Sempre adaptar ao contexto. Ver `AGENTS.md` § 1.
|
|
196
|
+
* **Repo como única fonte** — GitHub é uma perspectiva; combinar com documentação
|
|
197
|
+
oficial e produtos reais. Não decidir só por um repo.
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: implementation-research
|
|
3
|
+
description: Researches how specific technical problems are solved in practice, prioritizing official documentation, GitHub, maintainer discussions, production code, and technical articles, and synthesizes findings into an actionable recommendation.
|
|
4
|
+
category: research
|
|
5
|
+
triggers:
|
|
6
|
+
- "research a technical problem"
|
|
7
|
+
- "find how to implement a pattern"
|
|
8
|
+
- "official documentation lookup"
|
|
9
|
+
- "maintainer discussions and production code"
|
|
10
|
+
- "technical article research"
|
|
11
|
+
priority: high
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# Implementation Research
|
|
15
|
+
|
|
16
|
+
## Objective
|
|
17
|
+
|
|
18
|
+
Ensinar o agente a pesquisar como **problemas técnicos específicos** são resolvidos na
|
|
19
|
+
prática — com uma hierarquia de fontes priorizada — e a sintetizar em uma recomendação
|
|
20
|
+
acionável, nunca apenas uma lista de links.
|
|
21
|
+
|
|
22
|
+
## When to Use
|
|
23
|
+
|
|
24
|
+
* Quando há um problema técnico concreto (biblioteca, API, padrão, integração,
|
|
25
|
+
performance, concorrência) e você precisa saber como resolvê-lo bem.
|
|
26
|
+
* Quando o `research-router` despacha para implementação (arquitetura, framework,
|
|
27
|
+
problemas específicos).
|
|
28
|
+
* Quando o pedido menciona "how to implement X", "best way to do X", "library
|
|
29
|
+
choice", "framework pattern", "technical deep dive".
|
|
30
|
+
* **Composição:** pareia com `github-reference-research` (implementações reais),
|
|
31
|
+
`reference-research` (catálogo), e `market-research` (produtos).
|
|
32
|
+
|
|
33
|
+
## Mental Model
|
|
34
|
+
|
|
35
|
+
A pergunta é: **como este problema técnico é resolvido na prática, e qual solução se
|
|
36
|
+
encaixa no meu contexto?** A resposta vem de fontes em uma hierarquia de confiabilidade
|
|
37
|
+
(do `plan.md` §13):
|
|
38
|
+
|
|
39
|
+
```text
|
|
40
|
+
official documentation — a fonte de verdade para a API/framework
|
|
41
|
+
GitHub — implementações reais, issues, PRs
|
|
42
|
+
maintainer discussions — issues/PRs/CHANGELOG explicam decisões e gotchas
|
|
43
|
+
production code — como projetos maduros fazem na prática
|
|
44
|
+
technical articles — análises, comparações, benchmarks
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
Cada fonte responde a uma pergunta diferente:
|
|
48
|
+
* **official docs** — o que a API permite, a forma canônica;
|
|
49
|
+
* **GitHub/issues/PRs** — como é usado na prática, quais problemas apareceram, quais
|
|
50
|
+
decisões os maintainers tomaram;
|
|
51
|
+
* **production code** — o padrão real em escala, com edge cases reais;
|
|
52
|
+
* **articles** — comparações e análise crítica que sintetizam o acima.
|
|
53
|
+
|
|
54
|
+
## Investigation Procedure
|
|
55
|
+
|
|
56
|
+
1. **Definir o problema técnico específico** — não "caching", mas "invalidação de
|
|
57
|
+
cache com escrita concorrente em Redis".
|
|
58
|
+
2. **Consultar a documentação oficial** primeiro — a API/framework, o pattern
|
|
59
|
+
canônico. Esta é a base.
|
|
60
|
+
3. **Se a dúvida persiste** (edge case, trade-off, comportamento não documentado):
|
|
61
|
+
ir para GitHub/issues/PRs e maintainer discussions — como outros resolveram, que
|
|
62
|
+
problemas relataram.
|
|
63
|
+
4. **Conferir com production code** — como projetos maduros implementam o padrão.
|
|
64
|
+
5. **Sintetizar com artigos** se necessário — comparações, benchmarks, análise.
|
|
65
|
+
6. **Extrair decisões e trade-offs** — a recomendação final.
|
|
66
|
+
7. **Sintetizar** no formato obrigatório de pesquisa (ver `AGENTS.md` § 5).
|
|
67
|
+
|
|
68
|
+
## Questions to Ask
|
|
69
|
+
|
|
70
|
+
* O que a documentação oficial diz? (a forma canônica)
|
|
71
|
+
* A documentação resolve o caso específico ou só o happy path?
|
|
72
|
+
* Que issues/PRs existem sobre este caso? (gotchas relatados)
|
|
73
|
+
* Que decisão os maintainers tomaram e por quê? (design rationale)
|
|
74
|
+
* Como projetos de produção implementam? (padrão real, edge cases reais)
|
|
75
|
+
* Que trade-offs a solução escolhida introduz?
|
|
76
|
+
* Há uma alternativa melhor para o meu contexto? (framework, versão, escala)
|
|
77
|
+
* O que é específico do meu projeto e não deve ser copiado?
|
|
78
|
+
* A fonte é de alta autoridade (docs, maintainers) ou inferência? (peso da evidência)
|
|
79
|
+
|
|
80
|
+
## Attack Patterns
|
|
81
|
+
|
|
82
|
+
A skill não "ataca" o sistema, mas os padrões de investigação são:
|
|
83
|
+
|
|
84
|
+
```text
|
|
85
|
+
problema técnico específico
|
|
86
|
+
↓
|
|
87
|
+
consultar documentação oficial (fonte de verdade)
|
|
88
|
+
↓
|
|
89
|
+
se edge case / trade-off não resolvido → GitHub issues/PRs
|
|
90
|
+
↓
|
|
91
|
+
se ainda necessário → production code (projetos maduros)
|
|
92
|
+
↓
|
|
93
|
+
se comparação ou benchmark → artigos técnicos
|
|
94
|
+
↓
|
|
95
|
+
extrair decisões e trade-offs
|
|
96
|
+
↓
|
|
97
|
+
sintetizar e recomendar (nunca lista de links)
|
|
98
|
+
|
|
99
|
+
hierarquia de fontes:
|
|
100
|
+
official docs > GitHub/issues > production code > articles
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
## Evidence Requirements
|
|
104
|
+
|
|
105
|
+
* **Nomear a fonte e sua autoridade** (official docs > GitHub/issues > production
|
|
106
|
+
code > articles).
|
|
107
|
+
* **Mostrar a solução encontrada** — o padrão, a API, a decisão. Não só o link.
|
|
108
|
+
* **Explicitar os trade-offs** — a solução tem custo (complexidade, lock-in,
|
|
109
|
+
performance, manutenção)?
|
|
110
|
+
* **Recomendação acionável** — o que adotar no contexto.
|
|
111
|
+
* **Escalar confiança (Research):**
|
|
112
|
+
* `CONFIRMED` — padrão confirmado em documentação oficial ou maintainer discussion.
|
|
113
|
+
* `HIGH CONFIDENCE` — padrão claro de produção/artigos de qualidade.
|
|
114
|
+
* `POSSIBLE` — padrão inferido, uma fonte de autoridade média.
|
|
115
|
+
* `SPECULATIVE` — especulação sem fonte verificada.
|
|
116
|
+
|
|
117
|
+
## False Positives
|
|
118
|
+
|
|
119
|
+
* **Documentação não lida** — citar "segundo a doc" sem ler é especulação. Baixar
|
|
120
|
+
confiança.
|
|
121
|
+
* **Stack Overflow como fonte primária** — útil para gotchas, mas não substitui a
|
|
122
|
+
documentação oficial para a forma canônica. Priorizar hierarquia de fontes.
|
|
123
|
+
* **Copiar em vez de adaptar** — o código de produção de outro projeto raramente se
|
|
124
|
+
adapta direto. Extrair o padrão, adaptar a solução. Ver `AGENTS.md` § 1.
|
|
125
|
+
* **Artigo desatualizado** — benchmarks e comparações envelhecem. Verificar data e
|
|
126
|
+
versão.
|
|
127
|
+
* **Pesquisa excessiva** — para um problema bem conhecido, a doc oficial basta.
|
|
128
|
+
Não acumular fontes além do necessário (ver `AGENTS.md` § 6).
|
|
129
|
+
|
|
130
|
+
## Output Format
|
|
131
|
+
|
|
132
|
+
Usar o formato de síntese do `plan.md` §17:
|
|
133
|
+
|
|
134
|
+
```markdown
|
|
135
|
+
## Research
|
|
136
|
+
|
|
137
|
+
### Reference
|
|
138
|
+
[Nome da fonte + link]
|
|
139
|
+
|
|
140
|
+
### Relevant Pattern
|
|
141
|
+
O que foi encontrado.
|
|
142
|
+
|
|
143
|
+
### Why It Matters
|
|
144
|
+
Por que este padrão é útil.
|
|
145
|
+
|
|
146
|
+
### Adaptation
|
|
147
|
+
Como ele poderia se aplicar ao projeto atual.
|
|
148
|
+
|
|
149
|
+
### Trade-offs
|
|
150
|
+
Que problemas ele introduz.
|
|
151
|
+
|
|
152
|
+
### Recommendation
|
|
153
|
+
O que deve de fato ser adotado.
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
### Evidence Requirements
|
|
157
|
+
|
|
158
|
+
* **Nomear a fonte e sua autoridade** (official docs > GitHub/issues > production
|
|
159
|
+
code > articles).
|
|
160
|
+
* **Mostrar a solução encontrada** — o padrão, a API, a decisão. Não só o link.
|
|
161
|
+
* **Explicitar os trade-offs** — a solução tem custo (complexidade, lock-in,
|
|
162
|
+
performance, manutenção)?
|
|
163
|
+
* **Recomendação acionável** — o que adotar no contexto.
|
|
164
|
+
* **Escalar confiança (Research):**
|
|
165
|
+
* `CONFIRMED` — padrão confirmado em documentação oficial ou maintainer discussion.
|
|
166
|
+
* `HIGH CONFIDENCE` — padrão claro de produção/artigos de qualidade.
|
|
167
|
+
* `POSSIBLE` — padrão inferido, uma fonte de autoridade média.
|
|
168
|
+
* `SPECULATIVE` — especulação sem fonte verificada.
|
|
169
|
+
|
|
170
|
+
### False Positives
|
|
171
|
+
|
|
172
|
+
* **Documentação não lida** — citar "segundo a doc" sem ler é especulação. Baixar
|
|
173
|
+
confiança.
|
|
174
|
+
* **Stack Overflow como fonte primária** — útil para gotchas, mas não substitui a
|
|
175
|
+
documentação oficial para a forma canônica. Priorizar hierarquia de fontes.
|
|
176
|
+
* **Copiar em vez de adaptar** — o código de produção de outro projeto raramente se
|
|
177
|
+
adapta direto. Extrair o padrão, adaptar a solução. Ver `AGENTS.md` § 1.
|
|
178
|
+
* **Artigo desatualizado** — benchmarks e comparações envelhecem. Verificar data e
|
|
179
|
+
versão.
|
|
180
|
+
* **Pesquisa excessiva** — para um problema bem conhecido, a doc oficial basta.
|
|
181
|
+
Não acumular fontes além do necessário (ver `AGENTS.md` § 6).
|
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: market-research
|
|
3
|
+
description: Researches real products and how they solved a problem at scale, comparing UX, onboarding, navigation, information architecture, interaction, empty states, errors, mobile, and terminology.
|
|
4
|
+
category: research
|
|
5
|
+
triggers:
|
|
6
|
+
- "research the market"
|
|
7
|
+
- "compare with real products"
|
|
8
|
+
- "how do products solve this at scale"
|
|
9
|
+
- "onboarding navigation information architecture"
|
|
10
|
+
- "market benchmark"
|
|
11
|
+
priority: high
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# Market Research
|
|
15
|
+
|
|
16
|
+
## Objective
|
|
17
|
+
|
|
18
|
+
Ensinar o agente a pesquisar **produtos reais** que resolveram o problema em escala, e
|
|
19
|
+
a comparar como abordam UX, onboarding, navigation, information architecture,
|
|
20
|
+
interaction, empty states, errors, mobile, e terminology. A pergunta não é "qual é o
|
|
21
|
+
mais bonito?" — é (do `plan.md` §13):
|
|
22
|
+
|
|
23
|
+
> "Como produtos que resolveram esse problema em escala fazem isso?"
|
|
24
|
+
|
|
25
|
+
## When to Use
|
|
26
|
+
|
|
27
|
+
* Quando o `skill-router`/`research-router` despacha para pesquisa de mercado (tarefas
|
|
28
|
+
de produto, UX, frontend).
|
|
29
|
+
* Quando você precisa saber como a indústria resolve um problema de experiência.
|
|
30
|
+
* Quando o pedido menciona "market research", "what do competitors do", "how do
|
|
31
|
+
products handle X", "benchmark", "best-in-class".
|
|
32
|
+
* **Composição:** pareia com `reference-research` (metodologia de UX) e
|
|
33
|
+
`github-reference-research` (implementação). Alimenta decisões de produto e frontend.
|
|
34
|
+
|
|
35
|
+
## Mental Model
|
|
36
|
+
|
|
37
|
+
Produtos de sucesso em escala resolveram problemas de experiência que você enfrenta.
|
|
38
|
+
Eles são uma **evidência do que funciona** — não porque são bonitos, mas porque
|
|
39
|
+
sobreviveram a milhões de usuários e ao mercado. O padrão que eles convergem é um forte
|
|
40
|
+
sinal de "isto funciona em escala".
|
|
41
|
+
|
|
42
|
+
Mas cuidado: convergência de mercado ≠ o que você deve fazer. O modelo é:
|
|
43
|
+
|
|
44
|
+
```text
|
|
45
|
+
identificar o problema de experiência
|
|
46
|
+
↓
|
|
47
|
+
encontrar produtos que o resolveram em escala
|
|
48
|
+
↓
|
|
49
|
+
comparar como cada um aborda cada dimensão
|
|
50
|
+
↓
|
|
51
|
+
extrair padrões convergentes (o que TODO mundo faz)
|
|
52
|
+
↓
|
|
53
|
+
identificar padrões divergentes (onde há espaço para diferenciar)
|
|
54
|
+
↓
|
|
55
|
+
adaptar ao nosso contexto, não copiar
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
Dimensões de comparação (do `plan.md` §13):
|
|
59
|
+
|
|
60
|
+
```text
|
|
61
|
+
UX — usabilidade geral, clareza
|
|
62
|
+
onboarding — primeira experiência, ativação
|
|
63
|
+
navigation — como o usuário se move
|
|
64
|
+
information architecture — como o conteúdo é organizado
|
|
65
|
+
interaction — feedback, micro-interações
|
|
66
|
+
empty states — o que aparece sem dados
|
|
67
|
+
errors — como falhas são comunicadas
|
|
68
|
+
mobile — comportamento responsivo/específico
|
|
69
|
+
terminology — vocabulário usado (consistente? claro?)
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
## Investigation Procedure
|
|
73
|
+
|
|
74
|
+
1. **Identificar o problema de experiência** em escopo.
|
|
75
|
+
2. **Selecionar produtos de comparação** — os que resolveram este problema em escala.
|
|
76
|
+
(De preferência: líderes de mercado, conhecidos, com produto acessível.)
|
|
77
|
+
3. **Para cada produto, avaliar cada dimensão** — UX, onboarding, navigation, IA,
|
|
78
|
+
interaction, empty states, errors, mobile, terminology.
|
|
79
|
+
4. **Registrar evidências concretas** — não "boa UX", mas "onboarding pergunta 3
|
|
80
|
+
perguntas antes de pedir signup; empty state tem CTA 'criar primeiro item'".
|
|
81
|
+
5. **Comparar** — onde os produtos convergem? (padrão maduro) onde divergem? (espaço
|
|
82
|
+
para diferenciação)
|
|
83
|
+
6. **Adaptar** — o que faz sentido para o nosso produto/contexto/público.
|
|
84
|
+
7. **Sintetizar** no formato obrigatório.
|
|
85
|
+
|
|
86
|
+
## Questions to Ask
|
|
87
|
+
|
|
88
|
+
* Quais produtos resolveram este problema em escala? (não só os "bonitos")
|
|
89
|
+
* O onboarding deles pede o mínimo antes do valor? Ou exige tudo primeiro?
|
|
90
|
+
* A navegação deles é óbvia ou precisa tutorial? (menu, tabs, search)
|
|
91
|
+
* A information architecture agrupa por tarefa do usuário ou por estrutura interna?
|
|
92
|
+
* As interações dão feedback imediato? (loading, confirmação, undo)
|
|
93
|
+
* O empty state orienta a próxima ação? (ou é um vazio)
|
|
94
|
+
* Erros são legíveis e acionáveis? (ou genéricos)
|
|
95
|
+
* O mobile é uma extensão natural ou uma versão degradada?
|
|
96
|
+
* A terminology é consistente? (o mesmo termo para a mesma coisa)
|
|
97
|
+
* Onde TODOS convergem? (padrão maduro que devemos adotar)
|
|
98
|
+
* Onde eles divergem? (espaço para diferenciar)
|
|
99
|
+
|
|
100
|
+
## Attack Patterns
|
|
101
|
+
|
|
102
|
+
A skill não "ataca" o sistema, mas os padrões de investigação são:
|
|
103
|
+
|
|
104
|
+
```text
|
|
105
|
+
problema de experiência
|
|
106
|
+
↓
|
|
107
|
+
selecionar produtos que resolveram em escala (líderes de mercado)
|
|
108
|
+
↓
|
|
109
|
+
avaliar cada dimensão (UX/onboarding/nav/IA/interaction/empty/errors/mobile/terms)
|
|
110
|
+
↓
|
|
111
|
+
registrar evidência concreta (o que o produto faz, não opinião)
|
|
112
|
+
↓
|
|
113
|
+
comparar convergência vs divergência
|
|
114
|
+
↓
|
|
115
|
+
adaptar ao nosso contexto (não copiar)
|
|
116
|
+
↓
|
|
117
|
+
sintetizar e recomendar
|
|
118
|
+
|
|
119
|
+
produtos selecionados demais ou vagos
|
|
120
|
+
↓
|
|
121
|
+
refinar: 3-6 produtos líderes, foco nas dimensões críticas
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
## Evidence Requirements
|
|
125
|
+
|
|
126
|
+
* **Nomear o produto** e sua relevância (líder de mercado, conhecido, em escala).
|
|
127
|
+
* **Registrar a evidência concreta** por dimensão — o que o produto faz, não opinião.
|
|
128
|
+
* **Mostrar convergência/divergência** — onde os padrões se alinham e onde não.
|
|
129
|
+
* **Explicitar a adaptação** — o que faz sentido para o nosso contexto.
|
|
130
|
+
* **Escalar confiança (Research):**
|
|
131
|
+
* `CONFIRMED` — padrão observado em múltiplos produtos líderes.
|
|
132
|
+
* `HIGH CONFIDENCE` — padrão observado em 1-2 produtos com clareza.
|
|
133
|
+
* `POSSIBLE` — padrão inferido de screenshots/descrição.
|
|
134
|
+
* `SPECULATIVE` — suposição sobre um produto sem ter visto a experiência real.
|
|
135
|
+
|
|
136
|
+
## False Positives
|
|
137
|
+
|
|
138
|
+
* **Beleza ≠ solução em escala** — Dribbble (inspiração) não é mercado; é estética.
|
|
139
|
+
Comparar com produtos que *funcionam*, não com designs bonitos.
|
|
140
|
+
* **Copiar o produto** — "produto X faz assim" não significa que devemos fazer igual.
|
|
141
|
+
A convergência de mercado é um sinal, não uma ordem. Ver `AGENTS.md` § 1.
|
|
142
|
+
* **Contexto diferente** — um padrão do B2B enterprise pode não se aplicar a um
|
|
143
|
+
consumer app, e vice-versa. Avaliar o contexto.
|
|
144
|
+
* **Produto sem acesso real** — julgar por screenshots/YouTube é possível, não
|
|
145
|
+
confirmado. Baixar a confiança.
|
|
146
|
+
* **Pesquisa excessiva** — comparar 20 produtos é overengineering para uma decisão
|
|
147
|
+
pequena. Proporcionalidade (ver `AGENTS.md` § 6).
|
|
148
|
+
|
|
149
|
+
## Output Format
|
|
150
|
+
|
|
151
|
+
Usar o formato de síntese do `plan.md` §17:
|
|
152
|
+
|
|
153
|
+
```markdown
|
|
154
|
+
## Research
|
|
155
|
+
|
|
156
|
+
### Reference
|
|
157
|
+
[Nome do produto]
|
|
158
|
+
|
|
159
|
+
### Relevant Pattern
|
|
160
|
+
O que foi encontrado.
|
|
161
|
+
|
|
162
|
+
### Why It Matters
|
|
163
|
+
Por que este padrão é útil.
|
|
164
|
+
|
|
165
|
+
### Adaptation
|
|
166
|
+
Como ele poderia se aplicar ao projeto atual.
|
|
167
|
+
|
|
168
|
+
### Trade-offs
|
|
169
|
+
Que problemas ele introduz.
|
|
170
|
+
|
|
171
|
+
### Recommendation
|
|
172
|
+
O que deve de fato ser adotado.
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
Para comparações entre múltiplos produtos, produza um bloco por produto e uma seção
|
|
176
|
+
final "Convergência e divergência" resumindo os padrões convergentes (adotar) e
|
|
177
|
+
divergentes (avaliar).
|
|
178
|
+
|
|
179
|
+
### Evidence Requirements
|
|
180
|
+
|
|
181
|
+
* **Nomear o produto** e sua relevância (líder de mercado, conhecido, em escala).
|
|
182
|
+
* **Registrar a evidência concreta** por dimensão — o que o produto faz, não opinião.
|
|
183
|
+
* **Mostrar convergência/divergência** — onde os padrões se alinham e onde não.
|
|
184
|
+
* **Explicitar a adaptação** — o que faz sentido para o nosso contexto.
|
|
185
|
+
* **Escalar confiança (Research):**
|
|
186
|
+
* `CONFIRMED` — padrão observado em múltiplos produtos líderes.
|
|
187
|
+
* `HIGH CONFIDENCE` — padrão observado em 1-2 produtos com clareza.
|
|
188
|
+
* `POSSIBLE` — padrão inferido de screenshots/descrição.
|
|
189
|
+
* `SPECULATIVE` — suposição sobre um produto sem ter visto a experiência real.
|
|
190
|
+
|
|
191
|
+
### False Positives
|
|
192
|
+
|
|
193
|
+
* **Beleza ≠ solução em escala** — Dribbble (inspiração) não é mercado; é estética.
|
|
194
|
+
Comparar com produtos que *funcionam*, não com designs bonitos.
|
|
195
|
+
* **Copiar o produto** — "produto X faz assim" não significa que devemos fazer igual.
|
|
196
|
+
A convergência de mercado é um sinal, não uma ordem. Ver `AGENTS.md` § 1.
|
|
197
|
+
* **Contexto diferente** — um padrão do B2B enterprise pode não se aplicar a um
|
|
198
|
+
consumer app, e vice-versa. Avaliar o contexto.
|
|
199
|
+
* **Produto sem acesso real** — julgar por screenshots/YouTube é possível, não
|
|
200
|
+
confirmado. Baixar a confiança.
|
|
201
|
+
* **Pesquisa excessiva** — comparar 20 produtos é overengineering para uma decisão
|
|
202
|
+
pequena. Proporcionalidade (ver `AGENTS.md` § 6).
|