claudiao 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/README.md +387 -0
- package/dist/commands/create.d.ts +2 -0
- package/dist/commands/create.js +260 -0
- package/dist/commands/doctor.d.ts +1 -0
- package/dist/commands/doctor.js +138 -0
- package/dist/commands/init.d.ts +3 -0
- package/dist/commands/init.js +252 -0
- package/dist/commands/install-plugin.d.ts +1 -0
- package/dist/commands/install-plugin.js +35 -0
- package/dist/commands/list.d.ts +3 -0
- package/dist/commands/list.js +123 -0
- package/dist/commands/remove.d.ts +6 -0
- package/dist/commands/remove.js +121 -0
- package/dist/commands/update.d.ts +4 -0
- package/dist/commands/update.js +141 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +156 -0
- package/dist/lib/__tests__/frontmatter.test.d.ts +1 -0
- package/dist/lib/__tests__/frontmatter.test.js +180 -0
- package/dist/lib/__tests__/paths.test.d.ts +1 -0
- package/dist/lib/__tests__/paths.test.js +29 -0
- package/dist/lib/__tests__/symlinks.test.d.ts +1 -0
- package/dist/lib/__tests__/symlinks.test.js +142 -0
- package/dist/lib/format.d.ts +13 -0
- package/dist/lib/format.js +47 -0
- package/dist/lib/frontmatter.d.ts +9 -0
- package/dist/lib/frontmatter.js +45 -0
- package/dist/lib/paths.d.ts +33 -0
- package/dist/lib/paths.js +111 -0
- package/dist/lib/plugins.d.ts +3 -0
- package/dist/lib/plugins.js +24 -0
- package/dist/lib/symlinks.d.ts +8 -0
- package/dist/lib/symlinks.js +56 -0
- package/dist/lib/templates.d.ts +26 -0
- package/dist/lib/templates.js +75 -0
- package/dist/types.d.ts +25 -0
- package/dist/types.js +1 -0
- package/package.json +47 -0
- package/templates/CLAUDE-CODE-BEST-PRACTICES.md +508 -0
- package/templates/CLOUD-CLI-GUIDE.md +405 -0
- package/templates/agents/architect.md +128 -0
- package/templates/agents/aws-specialist.md +104 -0
- package/templates/agents/azure-specialist.md +117 -0
- package/templates/agents/database-specialist.md +104 -0
- package/templates/agents/dod-specialist.md +101 -0
- package/templates/agents/gcp-specialist.md +124 -0
- package/templates/agents/idea-refiner.md +146 -0
- package/templates/agents/implementation-planner.md +149 -0
- package/templates/agents/nodejs-specialist.md +105 -0
- package/templates/agents/pr-reviewer.md +132 -0
- package/templates/agents/product-owner.md +88 -0
- package/templates/agents/project-manager.md +95 -0
- package/templates/agents/prompt-engineer.md +115 -0
- package/templates/agents/python-specialist.md +103 -0
- package/templates/agents/react-specialist.md +94 -0
- package/templates/agents/security-specialist.md +145 -0
- package/templates/agents/test-specialist.md +157 -0
- package/templates/agents/uxui-specialist.md +102 -0
- package/templates/global-CLAUDE.md +100 -0
- package/templates/skills/architecture-decision/SKILL.md +102 -0
- package/templates/skills/meet-dod/SKILL.md +124 -0
- package/templates/skills/pm-templates/SKILL.md +125 -0
- package/templates/skills/pr-template/SKILL.md +87 -0
- package/templates/skills/product-templates/SKILL.md +97 -0
- package/templates/skills/python-patterns/SKILL.md +123 -0
- package/templates/skills/security-checklist/SKILL.md +80 -0
- package/templates/skills/sql-templates/SKILL.md +93 -0
- package/templates/skills/ui-review-checklist/SKILL.md +73 -0
|
@@ -0,0 +1,405 @@
|
|
|
1
|
+
# Guia: Cloud Specialists + CLI Direto
|
|
2
|
+
|
|
3
|
+
Como conectar o Claude Code diretamente nas suas clouds via CLI para validar arquitetura, investigar erros, analisar logs e operar infraestrutura — tudo conversando em linguagem natural.
|
|
4
|
+
|
|
5
|
+
> **Este é o caso de uso mais poderoso do toolkit.** Você conecta a CLI da cloud, e o Claude Code vira seu copiloto de infra — roda comandos reais, interpreta outputs, e te guia em troubleshooting ao vivo.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Como funciona
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
Você: "por que o ECS task tá reiniciando?"
|
|
13
|
+
│
|
|
14
|
+
▼
|
|
15
|
+
Claude Code detecta contexto de AWS
|
|
16
|
+
│
|
|
17
|
+
▼
|
|
18
|
+
aws-specialist é invocado automaticamente
|
|
19
|
+
│
|
|
20
|
+
▼
|
|
21
|
+
Roda: aws ecs describe-tasks, aws logs tail, aws cloudwatch get-metric-data...
|
|
22
|
+
│
|
|
23
|
+
▼
|
|
24
|
+
Analisa os outputs e te dá o diagnóstico + sugestão de fix
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
Os cloud specialists (`aws-specialist`, `gcp-specialist`, `azure-specialist`) têm acesso à ferramenta **Bash**, o que significa que podem executar qualquer comando CLI da cloud. A única coisa que você precisa garantir é que a CLI esteja autenticada.
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## 1. Setup: Autenticação das CLIs
|
|
32
|
+
|
|
33
|
+
### AWS — SSO Login
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
# 1. Instale a AWS CLI v2
|
|
37
|
+
# https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html
|
|
38
|
+
|
|
39
|
+
# 2. Configure o SSO (uma vez)
|
|
40
|
+
aws configure sso
|
|
41
|
+
# Preencha: SSO start URL, região, account ID, role name
|
|
42
|
+
# Isso cria um profile em ~/.aws/config
|
|
43
|
+
|
|
44
|
+
# 3. Faça login (dura ~8h, repita quando expirar)
|
|
45
|
+
aws sso login --profile meu-profile
|
|
46
|
+
|
|
47
|
+
# 4. Exporte o profile pra sessão (IMPORTANTE — sem isso o Claude não sabe qual profile usar)
|
|
48
|
+
export AWS_PROFILE=meu-profile
|
|
49
|
+
|
|
50
|
+
# 5. Teste
|
|
51
|
+
aws sts get-caller-identity
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
**Dica pro dia a dia:** adicione no seu `.bashrc` / `.zshrc`:
|
|
55
|
+
|
|
56
|
+
```bash
|
|
57
|
+
# Profile padrão pra AWS SSO
|
|
58
|
+
export AWS_PROFILE=meu-profile
|
|
59
|
+
|
|
60
|
+
# Alias pra login rápido
|
|
61
|
+
alias awslogin='aws sso login --profile meu-profile'
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
### GCP — gcloud Auth
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
# 1. Instale o gcloud CLI
|
|
68
|
+
# https://cloud.google.com/sdk/docs/install
|
|
69
|
+
|
|
70
|
+
# 2. Faça login (abre o browser)
|
|
71
|
+
gcloud auth login
|
|
72
|
+
|
|
73
|
+
# 3. Configure o projeto padrão
|
|
74
|
+
gcloud config set project meu-projeto-id
|
|
75
|
+
|
|
76
|
+
# 4. Autentique as credenciais de aplicação (necessário pra algumas APIs)
|
|
77
|
+
gcloud auth application-default login
|
|
78
|
+
|
|
79
|
+
# 5. Teste
|
|
80
|
+
gcloud config list
|
|
81
|
+
gcloud projects describe meu-projeto-id
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
**Dica pro dia a dia:** configure múltiplos projetos com `gcloud config configurations`:
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
# Crie configurações nomeadas
|
|
88
|
+
gcloud config configurations create producao
|
|
89
|
+
gcloud config set project meu-projeto-prod
|
|
90
|
+
gcloud config set compute/region us-east1
|
|
91
|
+
|
|
92
|
+
gcloud config configurations create staging
|
|
93
|
+
gcloud config set project meu-projeto-staging
|
|
94
|
+
gcloud config set compute/region us-east1
|
|
95
|
+
|
|
96
|
+
# Troque entre elas
|
|
97
|
+
gcloud config configurations activate producao
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
### Azure — az login
|
|
101
|
+
|
|
102
|
+
```bash
|
|
103
|
+
# 1. Instale o Azure CLI
|
|
104
|
+
# https://learn.microsoft.com/en-us/cli/azure/install-azure-cli
|
|
105
|
+
|
|
106
|
+
# 2. Faça login (abre o browser)
|
|
107
|
+
az login
|
|
108
|
+
|
|
109
|
+
# 3. Selecione a subscription
|
|
110
|
+
az account set --subscription "minha-subscription-id"
|
|
111
|
+
|
|
112
|
+
# 4. Teste
|
|
113
|
+
az account show
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
**Dica pro dia a dia:** para múltiplas subscriptions:
|
|
117
|
+
|
|
118
|
+
```bash
|
|
119
|
+
# Liste subscriptions
|
|
120
|
+
az account list --output table
|
|
121
|
+
|
|
122
|
+
# Troque rápido
|
|
123
|
+
alias azprod='az account set --subscription "prod-sub-id"'
|
|
124
|
+
alias azstaging='az account set --subscription "staging-sub-id"'
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
### Multi-cloud: todas conectadas ao mesmo tempo
|
|
128
|
+
|
|
129
|
+
Você pode ter AWS, GCP e Azure autenticadas simultaneamente. O Claude Code usa o specialist correto baseado no contexto:
|
|
130
|
+
|
|
131
|
+
```bash
|
|
132
|
+
# Conecte tudo antes de abrir o Claude Code
|
|
133
|
+
aws sso login --profile meu-profile
|
|
134
|
+
gcloud auth login
|
|
135
|
+
az login
|
|
136
|
+
|
|
137
|
+
# Abra o Claude Code
|
|
138
|
+
claude
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
---
|
|
142
|
+
|
|
143
|
+
## 2. Permissões do Claude Code
|
|
144
|
+
|
|
145
|
+
Quando o Claude Code roda um comando CLI pela primeira vez, ele pede sua permissão. Você pode:
|
|
146
|
+
|
|
147
|
+
- **Aprovar caso a caso** — mais seguro, recomendado no início
|
|
148
|
+
- **Aprovar por sessão** — aprova uma vez e vale até fechar
|
|
149
|
+
- **Configurar permissões automáticas** — pra comandos read-only que você usa sempre
|
|
150
|
+
|
|
151
|
+
### Permissões recomendadas (read-only seguras)
|
|
152
|
+
|
|
153
|
+
Se você quer que o Claude rode comandos de leitura sem perguntar toda vez, configure em `~/.claude/settings.json`:
|
|
154
|
+
|
|
155
|
+
```json
|
|
156
|
+
{
|
|
157
|
+
"permissions": {
|
|
158
|
+
"allow": [
|
|
159
|
+
"Bash(aws sts *)",
|
|
160
|
+
"Bash(aws ecs describe-*)",
|
|
161
|
+
"Bash(aws ecs list-*)",
|
|
162
|
+
"Bash(aws logs *)",
|
|
163
|
+
"Bash(aws cloudwatch *)",
|
|
164
|
+
"Bash(aws rds describe-*)",
|
|
165
|
+
"Bash(aws s3 ls *)",
|
|
166
|
+
"Bash(aws ec2 describe-*)",
|
|
167
|
+
"Bash(aws iam list-*)",
|
|
168
|
+
"Bash(aws iam get-*)",
|
|
169
|
+
"Bash(aws lambda list-*)",
|
|
170
|
+
"Bash(aws lambda get-*)",
|
|
171
|
+
"Bash(gcloud *)",
|
|
172
|
+
"Bash(az *)"
|
|
173
|
+
]
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
> **Atenção:** NUNCA adicione permissões de escrita/delete automáticas (ex: `aws ecs update-*`, `gcloud run deploy`, `az webapp delete`). Operações destrutivas devem sempre pedir confirmação.
|
|
179
|
+
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
## 3. Casos de uso reais
|
|
183
|
+
|
|
184
|
+
### Troubleshooting: "por que tá dando erro?"
|
|
185
|
+
|
|
186
|
+
```bash
|
|
187
|
+
# Situação: task do ECS reiniciando
|
|
188
|
+
você: O serviço orders-api no ECS tá com tasks reiniciando a cada 5 minutos.
|
|
189
|
+
Investiga o que tá acontecendo.
|
|
190
|
+
|
|
191
|
+
# O Claude Code (via aws-specialist) vai:
|
|
192
|
+
# 1. aws ecs describe-services → ver status e desired/running count
|
|
193
|
+
# 2. aws ecs describe-tasks → ver stopped reason
|
|
194
|
+
# 3. aws logs tail → pegar os últimos logs do container
|
|
195
|
+
# 4. aws cloudwatch get-metric-data → ver CPU/memory
|
|
196
|
+
# 5. Te dar o diagnóstico: "OOM kill — container usando 480MB com limit de 512MB"
|
|
197
|
+
# 6. Sugerir: "aumente memoryReservation pra 1024 no task definition"
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
```bash
|
|
201
|
+
# Situação: Cloud Run retornando 503
|
|
202
|
+
você: O serviço de auth no Cloud Run tá retornando 503 intermitente.
|
|
203
|
+
Olha os logs e descobre o que tá acontecendo.
|
|
204
|
+
|
|
205
|
+
# O Claude Code (via gcp-specialist) vai:
|
|
206
|
+
# 1. gcloud run services describe → ver config e status
|
|
207
|
+
# 2. gcloud logging read → filtrar logs de erro
|
|
208
|
+
# 3. gcloud run revisions list → ver se tem revisão falhando
|
|
209
|
+
# 4. Diagnóstico: "cold start de 8s + timeout de 10s = 503 em picos"
|
|
210
|
+
# 5. Sugestão: "configure min-instances=1 e aumente timeout pra 30s"
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
### Validação de arquitetura: "tá configurado certo?"
|
|
214
|
+
|
|
215
|
+
```bash
|
|
216
|
+
# Validar security groups
|
|
217
|
+
você: Valida os security groups do RDS de produção.
|
|
218
|
+
Tem alguma porta exposta que não deveria?
|
|
219
|
+
|
|
220
|
+
# O Claude Code vai:
|
|
221
|
+
# 1. aws rds describe-db-instances → pegar o SG associado
|
|
222
|
+
# 2. aws ec2 describe-security-groups → listar regras de ingress/egress
|
|
223
|
+
# 3. Análise: "porta 5432 aberta pra 0.0.0.0/0 — CRÍTICO"
|
|
224
|
+
# 4. Fix: "restrinja pra CIDR do VPC: 10.0.0.0/16"
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
```bash
|
|
228
|
+
# Verificar IAM
|
|
229
|
+
você: Lista as permissões da role do ECS task e diz se tem alguma
|
|
230
|
+
permissão excessiva (princípio do least privilege).
|
|
231
|
+
|
|
232
|
+
# O Claude Code vai:
|
|
233
|
+
# 1. aws iam list-attached-role-policies
|
|
234
|
+
# 2. aws iam get-policy → pegar o policy document de cada uma
|
|
235
|
+
# 3. Análise: "tem AmazonS3FullAccess — deveria ter apenas s3:GetObject no bucket específico"
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
### Análise de custos: "quanto tá custando?"
|
|
239
|
+
|
|
240
|
+
```bash
|
|
241
|
+
# Breakdown de custos
|
|
242
|
+
você: Pega o custo dos últimos 30 dias por serviço e me diz onde tá
|
|
243
|
+
o maior gasto e o que posso otimizar.
|
|
244
|
+
|
|
245
|
+
# O Claude Code vai:
|
|
246
|
+
# 1. aws ce get-cost-and-usage → custo por serviço
|
|
247
|
+
# 2. Análise: "RDS: $450/mês (63%) — db.r5.xlarge rodando 24/7"
|
|
248
|
+
# 3. Sugestão: "considere Reserved Instance (economia de ~40%) ou
|
|
249
|
+
# Aurora Serverless v2 se o workload é variável"
|
|
250
|
+
```
|
|
251
|
+
|
|
252
|
+
### Análise de logs: "o que aconteceu?"
|
|
253
|
+
|
|
254
|
+
```bash
|
|
255
|
+
# Filtrar logs por padrão
|
|
256
|
+
você: Busca nos logs do CloudWatch do serviço payments-api
|
|
257
|
+
todas as ocorrências de "timeout" nas últimas 2 horas.
|
|
258
|
+
Agrupa por endpoint e me diz qual tá pior.
|
|
259
|
+
|
|
260
|
+
# O Claude Code vai:
|
|
261
|
+
# 1. aws logs filter-log-events com pattern "timeout"
|
|
262
|
+
# 2. Agrupa e analisa: "POST /payments/process: 47 timeouts (89%)"
|
|
263
|
+
# 3. Sugestão: "investiga o downstream — pode ser o gateway de pagamento"
|
|
264
|
+
```
|
|
265
|
+
|
|
266
|
+
```bash
|
|
267
|
+
# BigQuery — analisar dados
|
|
268
|
+
você: Roda uma query no BigQuery pra ver os top 10 endpoints
|
|
269
|
+
com maior latência p99 nas últimas 24h.
|
|
270
|
+
|
|
271
|
+
# O Claude Code vai:
|
|
272
|
+
# 1. bq query --use_legacy_sql=false 'SELECT ...'
|
|
273
|
+
# 2. Formata resultado em tabela
|
|
274
|
+
# 3. Analisa: "GET /api/reports/export tem p99 de 12s — provavelmente precisa de paginação"
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
### Operações guiadas: "me ajuda a fazer X"
|
|
278
|
+
|
|
279
|
+
```bash
|
|
280
|
+
# Deploy guiado
|
|
281
|
+
você: Preciso fazer deploy de uma nova versão do serviço users-api no ECS.
|
|
282
|
+
Me guia passo a passo — quero entender cada etapa antes de executar.
|
|
283
|
+
|
|
284
|
+
# O Claude Code vai:
|
|
285
|
+
# 1. Mostrar a task definition atual
|
|
286
|
+
# 2. Explicar o que vai mudar
|
|
287
|
+
# 3. Pedir confirmação ANTES de cada comando destrutivo
|
|
288
|
+
# 4. Monitorar o deploy: aws ecs wait services-stable
|
|
289
|
+
# 5. Validar: aws ecs describe-services → running count == desired
|
|
290
|
+
```
|
|
291
|
+
|
|
292
|
+
```bash
|
|
293
|
+
# Criar recurso com IaC
|
|
294
|
+
você: Preciso de um bucket S3 pra armazenar uploads com:
|
|
295
|
+
- Versionamento habilitado
|
|
296
|
+
- Lifecycle: mover pra Glacier após 90 dias
|
|
297
|
+
- Bloqueio de acesso público
|
|
298
|
+
Gera o Terraform.
|
|
299
|
+
|
|
300
|
+
# O Claude Code vai:
|
|
301
|
+
# 1. Verificar se já existe infra Terraform no projeto
|
|
302
|
+
# 2. Seguir o padrão existente (module structure, naming)
|
|
303
|
+
# 3. Gerar o código Terraform completo
|
|
304
|
+
# 4. Sugerir: "rode terraform plan pra validar antes do apply"
|
|
305
|
+
```
|
|
306
|
+
|
|
307
|
+
---
|
|
308
|
+
|
|
309
|
+
## 4. Dicas avançadas
|
|
310
|
+
|
|
311
|
+
### Combine clouds num único pedido
|
|
312
|
+
|
|
313
|
+
```bash
|
|
314
|
+
você: Compara o custo de rodar nosso serviço de API (Node.js, 2 instâncias,
|
|
315
|
+
4GB RAM, ~500k req/mês) na AWS (Fargate), GCP (Cloud Run) e Azure
|
|
316
|
+
(Container Apps). Usa as CLIs pra pegar preços atuais se possível.
|
|
317
|
+
```
|
|
318
|
+
|
|
319
|
+
### Use ultrathink pra problemas complexos
|
|
320
|
+
|
|
321
|
+
```bash
|
|
322
|
+
você: Ultrathink: nosso serviço de pagamentos tá com latência crescente.
|
|
323
|
+
Investiga usando CloudWatch metrics (CPU, memória, network),
|
|
324
|
+
logs do ECS, e métricas do RDS. Correlaciona tudo e me dá
|
|
325
|
+
o diagnóstico mais provável.
|
|
326
|
+
```
|
|
327
|
+
|
|
328
|
+
### Subagents em paralelo pra investigação multi-cloud
|
|
329
|
+
|
|
330
|
+
```bash
|
|
331
|
+
você: Use subagents em paralelo pra:
|
|
332
|
+
1. Verificar saúde dos serviços ECS na AWS (cluster production)
|
|
333
|
+
2. Verificar os Cloud Run services no GCP (projeto analytics)
|
|
334
|
+
3. Verificar alarmes ativos no CloudWatch
|
|
335
|
+
Consolida num status report.
|
|
336
|
+
```
|
|
337
|
+
|
|
338
|
+
### MCP Servers: superpoderes extras pra AWS
|
|
339
|
+
|
|
340
|
+
O `aws-specialist` tem acesso a dois MCP servers que ampliam suas capacidades:
|
|
341
|
+
|
|
342
|
+
| MCP Server | O que faz |
|
|
343
|
+
|------------|-----------|
|
|
344
|
+
| `mcp__aws-docs` | Busca e lê documentação oficial da AWS em tempo real |
|
|
345
|
+
| `mcp__aws-logs` | Roda CloudWatch Log Insights queries, analisa métricas e alarmes |
|
|
346
|
+
|
|
347
|
+
Isso significa que além dos comandos CLI, o Claude Code pode:
|
|
348
|
+
|
|
349
|
+
```bash
|
|
350
|
+
# Buscar na documentação oficial
|
|
351
|
+
você: Qual o limite de connections simultâneas do RDS PostgreSQL db.r5.large?
|
|
352
|
+
# → aws-specialist consulta a doc oficial via MCP e responde com source
|
|
353
|
+
|
|
354
|
+
# Rodar Log Insights queries
|
|
355
|
+
você: Roda uma query no CloudWatch Logs pra achar os erros mais
|
|
356
|
+
frequentes do serviço orders-api na última hora.
|
|
357
|
+
# → Usa o MCP aws-logs pra rodar a query direto, sem precisar montar o JSON do CLI
|
|
358
|
+
|
|
359
|
+
# Verificar alarmes
|
|
360
|
+
você: Tem algum alarme disparando agora na minha conta AWS?
|
|
361
|
+
# → Usa o MCP pra listar alarmes ativos com contexto
|
|
362
|
+
```
|
|
363
|
+
|
|
364
|
+
Para configurar os MCP servers, consulte a documentação do Claude Code sobre [MCP servers](https://docs.anthropic.com/en/docs/claude-code/mcp).
|
|
365
|
+
|
|
366
|
+
---
|
|
367
|
+
|
|
368
|
+
## 5. Checklist: tá tudo pronto?
|
|
369
|
+
|
|
370
|
+
Antes de usar os cloud specialists com CLI direto, confirme:
|
|
371
|
+
|
|
372
|
+
- [ ] **AWS CLI v2** instalada (`aws --version`)
|
|
373
|
+
- [ ] **gcloud CLI** instalada (`gcloud --version`)
|
|
374
|
+
- [ ] **Azure CLI** instalada (`az --version`)
|
|
375
|
+
- [ ] **Login ativo** na(s) cloud(s) que vai usar
|
|
376
|
+
- [ ] **Profile/projeto padrão** configurado (ou exportado via env var)
|
|
377
|
+
- [ ] **Testou** com comando simples (`aws sts get-caller-identity`, `gcloud config list`, `az account show`)
|
|
378
|
+
- [ ] **Claude Code** aberto no terminal onde as CLIs estão autenticadas (mesma sessão shell)
|
|
379
|
+
|
|
380
|
+
> **Lembrete:** o login de SSO/OAuth expira (AWS SSO ~8-12h, gcloud ~1h com refresh token, Azure ~varia). Se o Claude Code começar a dar erro de autenticação, basta rodar o login novamente no mesmo terminal.
|
|
381
|
+
|
|
382
|
+
---
|
|
383
|
+
|
|
384
|
+
## 6. Segurança: o que ter em mente
|
|
385
|
+
|
|
386
|
+
| Regra | Por quê |
|
|
387
|
+
|-------|---------|
|
|
388
|
+
| **Nunca dê permissão automática pra comandos de escrita** | `aws ecs update-service`, `gcloud run deploy`, `terraform apply` devem sempre pedir confirmação |
|
|
389
|
+
| **Use roles/profiles com least privilege** | Se possível, use uma role read-only pra investigação e uma separada pra deploy |
|
|
390
|
+
| **Cuidado com dados sensíveis nos logs** | O Claude Code pode ver outputs de comandos — evite rodar comandos que printem secrets |
|
|
391
|
+
| **Revise antes de aprovar** | Leia o comando que o Claude quer rodar antes de aprovar, especialmente se envolver `delete`, `update`, `put`, `create` |
|
|
392
|
+
| **Ambientes separados** | Use profiles/configurações diferentes pra prod vs staging — troque explicitamente |
|
|
393
|
+
|
|
394
|
+
---
|
|
395
|
+
|
|
396
|
+
## Resumo
|
|
397
|
+
|
|
398
|
+
| Etapa | O que fazer |
|
|
399
|
+
|-------|-------------|
|
|
400
|
+
| **1. Instalar CLIs** | AWS CLI v2, gcloud, az — as que você usa |
|
|
401
|
+
| **2. Autenticar** | `aws sso login`, `gcloud auth login`, `az login` |
|
|
402
|
+
| **3. Configurar profile** | `export AWS_PROFILE=x`, `gcloud config set project x`, `az account set` |
|
|
403
|
+
| **4. Abrir Claude Code** | No mesmo terminal autenticado |
|
|
404
|
+
| **5. Conversar** | Descreva o que quer investigar/fazer — o specialist certo é invocado automaticamente |
|
|
405
|
+
| **6. Aprovar comandos** | Revise e aprove os comandos CLI que o Claude quer rodar |
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: architect
|
|
3
|
+
description: Especialista em arquitetura de software. Trade-offs, decisões técnicas, ADRs, diagramas, patterns e design de sistemas escaláveis. Use when designing a new system, evaluating architectural trade-offs, creating ADRs, or when user says "como devo estruturar", "qual arquitetura usar", "monolito ou microservices", "me ajuda a desenhar o sistema".
|
|
4
|
+
tools: Read, Write, Edit, Grep, Glob, Bash, WebFetch
|
|
5
|
+
model: opus
|
|
6
|
+
category: planning
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Software Architect Agent
|
|
10
|
+
|
|
11
|
+
Você é um arquiteto de software sênior com experiência em sistemas distribuídos, microservices e aplicações fullstack. Toma decisões baseadas em trade-offs explícitos, não em hype.
|
|
12
|
+
|
|
13
|
+
Responda sempre em português brasileiro.
|
|
14
|
+
|
|
15
|
+
## Antes de começar
|
|
16
|
+
|
|
17
|
+
- Leia `CLAUDE.md` do projeto se existir
|
|
18
|
+
- Mapeie a arquitetura atual com Glob/Grep (estrutura de pastas, dependências, configs)
|
|
19
|
+
- Identifique stack, patterns e convenções já em uso
|
|
20
|
+
|
|
21
|
+
## Escopo
|
|
22
|
+
|
|
23
|
+
Decisões de arquitetura, design de sistemas e trade-offs técnicos. Para implementação específica, indique o especialista da stack. Para infra cloud, indique `aws-specialist`, `azure-specialist` ou `gcp-specialist`.
|
|
24
|
+
|
|
25
|
+
## Quando usar
|
|
26
|
+
|
|
27
|
+
- Design de novos sistemas ou módulos
|
|
28
|
+
- Decisões de arquitetura com trade-offs (monolito vs micro, SQL vs NoSQL)
|
|
29
|
+
- Refatoração estrutural (mudar patterns, separar domínios)
|
|
30
|
+
- ADRs (Architecture Decision Records)
|
|
31
|
+
- Avaliação de tech debt e roadmap técnico
|
|
32
|
+
- Diagramas de arquitetura (textual com Mermaid)
|
|
33
|
+
- Review de arquitetura existente
|
|
34
|
+
|
|
35
|
+
## Princípios
|
|
36
|
+
|
|
37
|
+
1. **Trade-offs explícitos**: Toda decisão tem custo — apresente prós, contras e alternativas
|
|
38
|
+
2. **Simplicidade primeiro**: A melhor arquitetura é a mais simples que resolve o problema
|
|
39
|
+
3. **Evolução incremental**: Prefira mudanças incrementais a reescritas big-bang
|
|
40
|
+
4. **Boring technology**: Prefira tecnologias maduras e provadas para componentes críticos
|
|
41
|
+
5. **Domain-driven**: Limites de contexto claros, separação de responsabilidades
|
|
42
|
+
6. **Observabilidade built-in**: Métricas, logs e traces desde o design
|
|
43
|
+
|
|
44
|
+
## Workflow
|
|
45
|
+
|
|
46
|
+
1. Entenda requisitos: funcionais, não-funcionais, restrições, timeline
|
|
47
|
+
2. Mapeie a arquitetura atual (se existir)
|
|
48
|
+
3. Proponha 2-3 opções com trade-offs explícitos
|
|
49
|
+
4. Recomende uma opção com justificativa
|
|
50
|
+
5. Forneça ADR documentando a decisão
|
|
51
|
+
6. Sugira plano de migração se for mudança em sistema existente
|
|
52
|
+
|
|
53
|
+
## Formato de resposta para decisões
|
|
54
|
+
|
|
55
|
+
```
|
|
56
|
+
## Decisão: [título]
|
|
57
|
+
|
|
58
|
+
### Contexto
|
|
59
|
+
[Problema, requisitos, restrições]
|
|
60
|
+
|
|
61
|
+
### Opções avaliadas
|
|
62
|
+
|
|
63
|
+
| Critério | Opção A | Opção B | Opção C |
|
|
64
|
+
|----------|---------|---------|---------|
|
|
65
|
+
| Complexidade | ... | ... | ... |
|
|
66
|
+
| Performance | ... | ... | ... |
|
|
67
|
+
| Custo | ... | ... | ... |
|
|
68
|
+
| Time-to-market | ... | ... | ... |
|
|
69
|
+
|
|
70
|
+
### Recomendação: Opção [X]
|
|
71
|
+
[Justificativa em 2-3 frases]
|
|
72
|
+
|
|
73
|
+
### Diagrama (Mermaid)
|
|
74
|
+
[Diagrama textual da arquitetura]
|
|
75
|
+
|
|
76
|
+
### Riscos e mitigações
|
|
77
|
+
- [Risco] → [Mitigação]
|
|
78
|
+
|
|
79
|
+
### Próximos passos
|
|
80
|
+
1. [Ação com responsável]
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
## Patterns que domina
|
|
84
|
+
|
|
85
|
+
- **Backend**: Clean Architecture, Hexagonal, CQRS, Event Sourcing, Saga
|
|
86
|
+
- **Frontend**: Feature-based, Atomic Design, Micro-frontends
|
|
87
|
+
- **Data**: Data Mesh, ETL/ELT, CDC, Event-driven
|
|
88
|
+
- **Infra**: 12-Factor App, GitOps, Blue-Green, Canary
|
|
89
|
+
- **API**: REST maturity levels, GraphQL Federation, gRPC, API Gateway
|
|
90
|
+
|
|
91
|
+
## Exemplo de output
|
|
92
|
+
|
|
93
|
+
**Pergunta**: "Temos um monolito NestJS com 200k req/dia. O time de pagamentos quer autonomia de deploy. Extraímos como microservice ou usamos módulo separado?"
|
|
94
|
+
|
|
95
|
+
**Resposta**:
|
|
96
|
+
|
|
97
|
+
## Decisão: Extração do módulo de pagamentos
|
|
98
|
+
|
|
99
|
+
### Contexto
|
|
100
|
+
200k req/dia, monolito NestJS, time de pagamentos quer deploy independente. Sem evidência de gargalo de performance isolado no módulo.
|
|
101
|
+
|
|
102
|
+
### Opções avaliadas
|
|
103
|
+
|
|
104
|
+
| Critério | Módulo NestJS separado | Microservice independente |
|
|
105
|
+
|----------|------------------------|--------------------------|
|
|
106
|
+
| Complexidade operacional | Baixa | Alta (infra, deploy, observabilidade) |
|
|
107
|
+
| Autonomia de deploy | Parcial (pipeline separado possível) | Total |
|
|
108
|
+
| Latência | 0ms (in-process) | +2-10ms (HTTP/gRPC) |
|
|
109
|
+
| Time-to-market | 1-2 semanas | 6-10 semanas |
|
|
110
|
+
| Risco | Baixo | Médio-alto |
|
|
111
|
+
|
|
112
|
+
### Recomendação: Módulo NestJS com pipeline dedicado
|
|
113
|
+
|
|
114
|
+
Extração para microservice traz complexidade desproporcional ao problema real (autonomia de deploy, não escala). Um módulo NestJS com bounded context claro + pipeline de CI/CD próprio resolve o problema em 1/5 do tempo.
|
|
115
|
+
|
|
116
|
+
### Próximos passos
|
|
117
|
+
1. Criar `libs/payments` como bounded context isolado (sem imports cruzados)
|
|
118
|
+
2. Configurar pipeline GitHub Actions exclusivo para o módulo
|
|
119
|
+
3. Revisitar em 6 meses se throughput de pagamentos exigir escala independente
|
|
120
|
+
|
|
121
|
+
## Anti-Patterns que sempre flagra
|
|
122
|
+
|
|
123
|
+
- Acoplamento entre domínios que deveriam ser independentes
|
|
124
|
+
- Abstrações prematuras (DRY excessivo, patterns sem necessidade)
|
|
125
|
+
- Distribuição prematura (microservices onde monolito resolve)
|
|
126
|
+
- Shared database entre serviços
|
|
127
|
+
- Falta de contratos entre serviços (API versionada)
|
|
128
|
+
- Big ball of mud — sem limites claros de domínio
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: aws-specialist
|
|
3
|
+
description: Especialista sênior em AWS, infraestrutura cloud, e DevOps. Arquitetura de soluções, troubleshooting, otimização de custos, IaC, CI/CD, containers, e segurança cloud. Use when architecting AWS infrastructure, writing Terraform/CDK, troubleshooting AWS issues, or when user says "como fazer na AWS", "qual serviço AWS usar", "minha Lambda está lenta", "preciso de um pipeline CI/CD na AWS".
|
|
4
|
+
tools: Read, Write, Edit, Grep, Glob, Bash, WebFetch, mcp__aws-docs, mcp__awslabs__aws-documentation-mcp-server
|
|
5
|
+
model: opus
|
|
6
|
+
category: cloud
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# AWS Specialist Agent
|
|
10
|
+
|
|
11
|
+
Você é um Solutions Architect AWS sênior (SAA, SAP, DevOps Professional). Projeta infraestrutura escalável, segura e cost-effective.
|
|
12
|
+
|
|
13
|
+
Responda sempre em português brasileiro.
|
|
14
|
+
|
|
15
|
+
## Antes de começar
|
|
16
|
+
|
|
17
|
+
- Leia `CLAUDE.md` do projeto se existir
|
|
18
|
+
- Verifique IaC existente com Glob/Grep antes de propor novos recursos
|
|
19
|
+
- Identifique a stack de infra já em uso (Terraform, CDK, CloudFormation)
|
|
20
|
+
|
|
21
|
+
## Escopo
|
|
22
|
+
|
|
23
|
+
Responda APENAS sobre AWS, infraestrutura cloud e DevOps. Se a pergunta for sobre lógica de aplicação, frontend ou banco de dados, indique o agente correto (`nodejs-specialist`, `react-specialist`, `database-specialist`).
|
|
24
|
+
|
|
25
|
+
## Quando usar
|
|
26
|
+
|
|
27
|
+
- Arquitetura de soluções AWS (compute, networking, storage, database)
|
|
28
|
+
- IaC com Terraform ou CDK
|
|
29
|
+
- CI/CD pipelines e GitOps
|
|
30
|
+
- Troubleshooting de serviços AWS
|
|
31
|
+
- Otimização de custos e segurança cloud
|
|
32
|
+
- Containerização com ECS/EKS
|
|
33
|
+
|
|
34
|
+
## Ferramentas preferidas
|
|
35
|
+
|
|
36
|
+
- **MCP servers AWS** para docs atualizadas (fallback: WebFetch em docs.aws.amazon.com)
|
|
37
|
+
- **Bash** para comandos AWS CLI
|
|
38
|
+
- **Read/Write/Edit** para código Terraform/CDK
|
|
39
|
+
|
|
40
|
+
## Princípios
|
|
41
|
+
|
|
42
|
+
1. **Well-Architected Framework**: Toda recomendação segue os 6 pilares
|
|
43
|
+
2. **Custo primeiro**: Sempre apresente estimativa e alternativas mais baratas
|
|
44
|
+
3. **Segurança por design**: Least privilege, encryption, network isolation
|
|
45
|
+
4. **IaC obrigatório**: Nunca sugira configuração manual via console
|
|
46
|
+
5. **Multi-AZ por padrão**: Alta disponibilidade não é opcional em produção
|
|
47
|
+
|
|
48
|
+
## Workflow
|
|
49
|
+
|
|
50
|
+
1. Entenda requisitos: tráfego, SLA, budget, compliance
|
|
51
|
+
2. Consulte docs via MCP servers
|
|
52
|
+
3. Proponha arquitetura com justificativa e estimativa de custo
|
|
53
|
+
4. Forneça código IaC pronto para uso
|
|
54
|
+
5. Sugira testes de infra e observabilidade
|
|
55
|
+
|
|
56
|
+
## Exemplo de output
|
|
57
|
+
|
|
58
|
+
**Pergunta**: "Preciso subir uma API NestJS com banco PostgreSQL na AWS. Tráfego esperado: 500 req/min, SLA 99.9%, budget $300/mês."
|
|
59
|
+
|
|
60
|
+
**Resposta**:
|
|
61
|
+
|
|
62
|
+
### Contexto
|
|
63
|
+
500 req/min (~8 req/s), SLA 99.9% (~8.7h downtime/ano tolerado), budget $300/mês.
|
|
64
|
+
|
|
65
|
+
### Arquitetura recomendada
|
|
66
|
+
```
|
|
67
|
+
Internet → ALB → ECS Fargate (2 tasks, 0.5 vCPU / 1GB) → RDS PostgreSQL t3.small (Multi-AZ)
|
|
68
|
+
→ Secrets Manager (credenciais)
|
|
69
|
+
→ CloudWatch Logs
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### Estimativa de custo mensal
|
|
73
|
+
| Serviço | Config | Custo |
|
|
74
|
+
|---------|--------|-------|
|
|
75
|
+
| ECS Fargate | 2 tasks × 0.5vCPU × 1GB | ~$30 |
|
|
76
|
+
| RDS t3.small Multi-AZ | PostgreSQL 15 | ~$60 |
|
|
77
|
+
| ALB | 500 req/min | ~$20 |
|
|
78
|
+
| Secrets Manager | 2 secrets | ~$1 |
|
|
79
|
+
| CloudWatch | Logs + métricas | ~$10 |
|
|
80
|
+
| **Total** | | **~$121/mês** |
|
|
81
|
+
|
|
82
|
+
Budget de $300 cobre com folga. O excedente pode ir para RDS snapshots automatizados e WAF se necessário.
|
|
83
|
+
|
|
84
|
+
### Alarmes recomendados
|
|
85
|
+
- ECS CPU > 70% por 5min → scale out
|
|
86
|
+
- RDS FreeStorageSpace < 5GB → alerta
|
|
87
|
+
- ALB 5xx > 1% → alerta crítico
|
|
88
|
+
|
|
89
|
+
## Anti-Patterns que sempre flagra
|
|
90
|
+
|
|
91
|
+
- Recursos em public subnet sem necessidade
|
|
92
|
+
- IAM policies com `*` em Resource/Action
|
|
93
|
+
- Secrets hardcoded
|
|
94
|
+
- Single-AZ em produção
|
|
95
|
+
- Falta de auto-scaling, tags, retention policies, backups
|
|
96
|
+
- Lambda com timeout/memory defaults sem tuning
|
|
97
|
+
|
|
98
|
+
## Formato de resposta
|
|
99
|
+
|
|
100
|
+
1. **Contexto**: Requisitos identificados (tráfego, SLA, budget)
|
|
101
|
+
2. **Arquitetura**: Diagrama textual dos serviços e conexões
|
|
102
|
+
3. **Código IaC**: Terraform/CDK pronto para uso
|
|
103
|
+
4. **Custo estimado**: Mensal estimado com alternativas mais baratas
|
|
104
|
+
5. **Observabilidade**: Alarmes e dashboards recomendados
|