@ruyfranca/myskills 1.0.22 → 1.0.25
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/.agent/skills/analyze-project/SKILL.md +266 -0
- package/.agent/skills/antigravity-design-expert/SKILL.md +117 -0
- package/.agent/skills/doc-coauthoring/SKILL.md +132 -0
- package/.agent/skills/leiloeiro-risco/SKILL.md +283 -0
- package/.agent/skills/skill-developer/SKILL.md +150 -0
- package/.agent/skills/uncle-bob-craft/SKILL.md +124 -0
- package/.agent/workflows/analyze-project.md +15 -0
- package/README.md +32 -0
- package/index.js +42 -0
- package/package.json +3 -2
|
@@ -0,0 +1,266 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: analyze-project
|
|
3
|
+
description: Forensic root cause analyzer for Antigravity sessions. Classifies scope deltas, rework patterns, root causes, hotspots, and auto-improves prompts/health.
|
|
4
|
+
tags: [analysis, diagnostics, meta, root-cause, project-health, session-review]
|
|
5
|
+
triggers: [analyze-project, analyze project, session analysis, root cause, project health, diagnose sessions]
|
|
6
|
+
risk: safe
|
|
7
|
+
source: sickn33/antigravity-awesome-skills
|
|
8
|
+
date_added: "2026-03-15"
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# /analyze-project — Root Cause Analyst Workflow
|
|
12
|
+
|
|
13
|
+
Analise sessões do Antigravity na pasta `brain/` e produza um relatório diagnóstico que explica não apenas **o que aconteceu**, mas **por que aconteceu**, **quem/o que causou** e **o que deve mudar na próxima vez**.
|
|
14
|
+
|
|
15
|
+
Este workflow não é um painel de métricas simples.
|
|
16
|
+
É um **workflow de análise forense** para sessões de codificação com IA.
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## Primary Objective
|
|
21
|
+
|
|
22
|
+
Para cada sessão, determine:
|
|
23
|
+
|
|
24
|
+
1. O que mudou do pedido inicial para o trabalho final executado
|
|
25
|
+
2. Se a mudança foi causada principalmente por:
|
|
26
|
+
- o usuário/especificação
|
|
27
|
+
- o agente (IA)
|
|
28
|
+
- a base de código/repositório
|
|
29
|
+
- testes/verificação
|
|
30
|
+
- complexidade legítima da tarefa
|
|
31
|
+
3. Se o prompt original era suficiente para o trabalho real
|
|
32
|
+
4. Quais subsistemas ou arquivos se correlacionam repetidamente com dificuldades
|
|
33
|
+
5. Quais mudanças concretas melhorariam mais as sessões futuras
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## Core Principles
|
|
38
|
+
|
|
39
|
+
- Trate contagens `.resolved.N` como **sinais de intensidade de iteração**, não prova de falha
|
|
40
|
+
- Não rotule dificuldades apenas com base em contagens; classifique a **forma** do retrabalho
|
|
41
|
+
- Separe **escopo adicionado pelo humano** de **escopo necessário descoberto**
|
|
42
|
+
- Separe **erro do agente** de **atrito do repositório**
|
|
43
|
+
- Todo diagnóstico deve incluir **evidências**
|
|
44
|
+
- Toda recomendação deve mapear para um padrão observado específico
|
|
45
|
+
- Use níveis de confiança:
|
|
46
|
+
- **Alto** = diretamente suportado por conteúdo de artefato ou timestamps
|
|
47
|
+
- **Médio** = suportado por múltiplos sinais indiretos
|
|
48
|
+
- **Baixo** = inferência plausível, não diretamente comprovada
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## Step 1: Discovery — Encontrar Conversas Relevantes
|
|
53
|
+
|
|
54
|
+
1. Leia os resumos de conversas disponíveis no contexto do sistema.
|
|
55
|
+
2. Liste todos os subdiretórios em `~/.gemini/antigravity/brain/`
|
|
56
|
+
3. Construa um **Índice de Conversas** cruzando resumos com pastas UUID.
|
|
57
|
+
4. Registre para cada conversa:
|
|
58
|
+
- `conversation_id`
|
|
59
|
+
- `title`
|
|
60
|
+
- `objective`
|
|
61
|
+
- `created`
|
|
62
|
+
- `last_modified`
|
|
63
|
+
5. Se o usuário forneceu uma palavra-chave/caminho, filtre por ela. Caso contrário, analise todas as conversas do workspace.
|
|
64
|
+
|
|
65
|
+
> Saída: lista indexada de conversas para analisar.
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## Step 2: Artifact Extraction — Construir Evidências da Sessão
|
|
70
|
+
|
|
71
|
+
Para cada conversa, leia todos os artefatos estruturados existentes.
|
|
72
|
+
|
|
73
|
+
### 2a. Core Artifacts
|
|
74
|
+
- `task.md`
|
|
75
|
+
- `implementation_plan.md`
|
|
76
|
+
- `walkthrough.md`
|
|
77
|
+
|
|
78
|
+
### 2b. Metadata
|
|
79
|
+
- `*.metadata.json`
|
|
80
|
+
|
|
81
|
+
### 2c. Version Snapshots
|
|
82
|
+
- `task.md.resolved.0 ... N`
|
|
83
|
+
- `implementation_plan.md.resolved.0 ... N`
|
|
84
|
+
- `walkthrough.md.resolved.0 ... N`
|
|
85
|
+
|
|
86
|
+
### 2d. Additional Signals
|
|
87
|
+
- outros artefatos `.md`
|
|
88
|
+
- arquivos de relatório/avaliação
|
|
89
|
+
- timestamps entre atualizações de artefatos
|
|
90
|
+
- nomes de arquivos/pastas mencionados em planos e walkthroughs
|
|
91
|
+
- referências repetidas a subsistemas
|
|
92
|
+
- linguagem explícita de teste/validação
|
|
93
|
+
- não-objetivos ou restrições explícitas, se presentes
|
|
94
|
+
|
|
95
|
+
### 2e. Registrar Por Conversa
|
|
96
|
+
|
|
97
|
+
#### Presença / Ciclo de Vida
|
|
98
|
+
- `has_task`
|
|
99
|
+
- `has_plan`
|
|
100
|
+
- `has_walkthrough`
|
|
101
|
+
- `is_completed`
|
|
102
|
+
- `is_abandoned_candidate` = tem task mas sem walkthrough
|
|
103
|
+
|
|
104
|
+
#### Revisão / Volume de Mudanças
|
|
105
|
+
- `task_versions`
|
|
106
|
+
- `plan_versions`
|
|
107
|
+
- `walkthrough_versions`
|
|
108
|
+
- `extra_artifacts`
|
|
109
|
+
|
|
110
|
+
#### Escopo
|
|
111
|
+
- `task_items_initial`
|
|
112
|
+
- `task_items_final`
|
|
113
|
+
- `task_completed_pct`
|
|
114
|
+
- `scope_delta_raw`
|
|
115
|
+
- `scope_creep_pct_raw`
|
|
116
|
+
|
|
117
|
+
#### Tempo
|
|
118
|
+
- `created_at`
|
|
119
|
+
- `completed_at`
|
|
120
|
+
- `duration_minutes`
|
|
121
|
+
|
|
122
|
+
---
|
|
123
|
+
|
|
124
|
+
## Step 3: Prompt Sufficiency Analysis
|
|
125
|
+
|
|
126
|
+
Para cada conversa, avalie se o prompt inicial era suficiente para o trabalho real:
|
|
127
|
+
|
|
128
|
+
- **Altamente suficiente**: prompt inicial capturou escopo, arquivos-alvo, critérios de aceitação, restrições
|
|
129
|
+
- **Moderadamente suficiente**: prompt capturou objetivo principal mas estava incompleto em detalhes
|
|
130
|
+
- **Insuficiente**: prompt era vago, multidimensional demais, ou faltava contexto crítico
|
|
131
|
+
|
|
132
|
+
---
|
|
133
|
+
|
|
134
|
+
## Step 4: Scope Change Classification
|
|
135
|
+
|
|
136
|
+
### 4a. Human-Added Scope
|
|
137
|
+
Novo trabalho solicitado pelo usuário *após* o trabalho inicial começar.
|
|
138
|
+
|
|
139
|
+
### 4b. Necessary Discovered Scope
|
|
140
|
+
Trabalho que o agente *precisou* adicionar para completar a solicitação original corretamente.
|
|
141
|
+
|
|
142
|
+
### 4c. Agent-Introduced Scope
|
|
143
|
+
Trabalho que o agente adicionou que *não era necessário* e que o usuário não pediu.
|
|
144
|
+
|
|
145
|
+
---
|
|
146
|
+
|
|
147
|
+
## Step 5: Rework Shape Analysis
|
|
148
|
+
|
|
149
|
+
Não apenas conte revisões. Determine a **forma** do retrabalho da sessão.
|
|
150
|
+
|
|
151
|
+
Classifique cada conversa em um destes padrões:
|
|
152
|
+
|
|
153
|
+
- **Execução limpa** — pouca mudança, conclusão tranquila
|
|
154
|
+
- **Replano inicial depois conclusão estável** — plano mudou cedo, depois a execução convergiu
|
|
155
|
+
- **Expansão progressiva de escopo** — trabalho continuou crescendo ao longo da sessão
|
|
156
|
+
- **Churn de reabertura/refechamento** — ajustes repetidos de tarefas/retrocesso
|
|
157
|
+
- **Churn de verificação tardia** — implementação quase pronta, mas testes/validação causaram loops
|
|
158
|
+
- **Abandonado no meio** — trabalho iniciou mas não chegou ao walkthrough
|
|
159
|
+
- **Exploratório / sessão de pesquisa** — iterações são altas mas esperadas devido à descoberta do problema
|
|
160
|
+
|
|
161
|
+
---
|
|
162
|
+
|
|
163
|
+
## Step 6: Root Cause Analysis
|
|
164
|
+
|
|
165
|
+
Para cada sessão não-limpa, atribua:
|
|
166
|
+
|
|
167
|
+
### 6a. Causa Raiz Primária (escolha uma)
|
|
168
|
+
|
|
169
|
+
| Código | Categoria | Quando Aplicar |
|
|
170
|
+
|--------|-----------|----------------|
|
|
171
|
+
| `PROMPT_VAGUE` | Prompt vago/incompleto | Objetivo central não estava claro no início |
|
|
172
|
+
| `PROMPT_MISSING_FILES` | Prompt sem arquivos-alvo | Agente teve que descobrir onde fazer as mudanças |
|
|
173
|
+
| `PROMPT_MISSING_ACCEPTANCE` | Sem critérios de aceitação | Sem definição de "feito" levou a loops de verificação |
|
|
174
|
+
| `HUMAN_SCOPE_ADD` | Usuário adicionou escopo | Usuário fez novos pedidos após o início |
|
|
175
|
+
| `AGENT_HALLUCINATION` | Agente alucinador | Agente inventou requisitos não pedidos |
|
|
176
|
+
| `AGENT_OVER_ENGINEERING` | Agente superengenheirou | Agente construiu mais do que necessário |
|
|
177
|
+
| `REPO_FRICTION` | Atrito do repositório | Bugs, inconsistências ou código não documentado causaram dificuldades |
|
|
178
|
+
| `TASK_COMPLEXITY` | Complexidade legítima | O trabalho era genuinamente difícil, não por falha do prompt |
|
|
179
|
+
| `TESTING_DRIVEN` | Achados de testes | Implementação estava correta, mas testes revelaram retrabalho necessário |
|
|
180
|
+
| `UNKNOWN` | Desconhecido | Evidências insuficientes para determinar a causa |
|
|
181
|
+
|
|
182
|
+
---
|
|
183
|
+
|
|
184
|
+
## Step 7: Subsystem / File Clustering
|
|
185
|
+
|
|
186
|
+
Em todas as conversas, agrupe dificuldades repetidas por subsistema, pasta ou menções de arquivo.
|
|
187
|
+
|
|
188
|
+
Para cada cluster, calcule:
|
|
189
|
+
- número de conversas tocando nele
|
|
190
|
+
- média de revisões
|
|
191
|
+
- taxa de conclusão
|
|
192
|
+
- taxa de abandono
|
|
193
|
+
- causas raiz comuns
|
|
194
|
+
|
|
195
|
+
Saída: as principais zonas de atrito recorrentes.
|
|
196
|
+
|
|
197
|
+
---
|
|
198
|
+
|
|
199
|
+
## Step 8: Comparative Cohort Analysis
|
|
200
|
+
|
|
201
|
+
Compare estas coortes:
|
|
202
|
+
- sucessos de primeira tentativa vs sessões replanejadas
|
|
203
|
+
- concluídas vs abandonadas
|
|
204
|
+
- alta suficiência de prompt vs baixa suficiência
|
|
205
|
+
- escopo estreito vs alto crescimento de escopo
|
|
206
|
+
|
|
207
|
+
Para cada comparação, identifique:
|
|
208
|
+
- o que difere materialmente
|
|
209
|
+
- quais características do prompt se correlacionam com execução mais tranquila
|
|
210
|
+
|
|
211
|
+
---
|
|
212
|
+
|
|
213
|
+
## Step 9: Non-Obvious Findings
|
|
214
|
+
|
|
215
|
+
Gere 3–7 descobertas que não são simples reafirmações de métricas.
|
|
216
|
+
|
|
217
|
+
**Bons exemplos:**
|
|
218
|
+
- "A maioria dos replanos acontece em sessões com alvos de arquivo fracos, não critérios de aceitação fracos."
|
|
219
|
+
- "Crescimento de escopo geralmente começa após a primeira implementação bem-sucedida."
|
|
220
|
+
|
|
221
|
+
Cada descoberta deve incluir: observação, por que importa, evidências, confiança.
|
|
222
|
+
|
|
223
|
+
---
|
|
224
|
+
|
|
225
|
+
## Step 10: Report Generation
|
|
226
|
+
|
|
227
|
+
Crie `session_analysis_report.md` na pasta brain da conversa atual.
|
|
228
|
+
|
|
229
|
+
### Template do Relatório
|
|
230
|
+
|
|
231
|
+
```markdown
|
|
232
|
+
# 📊 Relatório de Análise de Sessão — [Nome do Projeto]
|
|
233
|
+
|
|
234
|
+
**Gerado**: [timestamp]
|
|
235
|
+
**Conversas Analisadas**: [N]
|
|
236
|
+
**Período**: [mais antiga] → [mais recente]
|
|
237
|
+
|
|
238
|
+
---
|
|
239
|
+
|
|
240
|
+
## Resumo Executivo
|
|
241
|
+
[2-4 frases: o mais importante que surgiu desta análise]
|
|
242
|
+
|
|
243
|
+
## Breakdown de Causa Raiz
|
|
244
|
+
[tabela com categorias e contagens]
|
|
245
|
+
|
|
246
|
+
## Análise de Suficiência do Prompt
|
|
247
|
+
[distribuição: alto/médio/baixo]
|
|
248
|
+
|
|
249
|
+
## Análise de Mudança de Escopo
|
|
250
|
+
[percentagem de mudança de escopo de cada tipo]
|
|
251
|
+
|
|
252
|
+
## Análise de Forma de Retrabalho
|
|
253
|
+
[distribuição de padrões de retrabalho]
|
|
254
|
+
|
|
255
|
+
## Zonas de Atrito (Friction Hotspots)
|
|
256
|
+
[top subsistemas/arquivos com dificuldades]
|
|
257
|
+
|
|
258
|
+
## Descobertas Não-Óbvias
|
|
259
|
+
[3-7 insights com evidências]
|
|
260
|
+
|
|
261
|
+
## Recomendações
|
|
262
|
+
[priorizadas por impacto esperado]
|
|
263
|
+
|
|
264
|
+
## Breakdown Por Conversa
|
|
265
|
+
[tabela detalhada por sessão]
|
|
266
|
+
```
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: antigravity-design-expert
|
|
3
|
+
description: Core UI/UX engineering skill for building highly interactive, spatial, weightless, and glassmorphism-based web interfaces using GSAP and 3D CSS.
|
|
4
|
+
tags: [ui, ux, glassmorphism, gsap, 3d-css, animation, react, design, spatial]
|
|
5
|
+
triggers: [antigravity design, glassmorphism, gsap animation, spatial ui, floating elements, scroll animation, 3d css, weightless ui, interactive interface]
|
|
6
|
+
risk: safe
|
|
7
|
+
source: sickn33/antigravity-awesome-skills
|
|
8
|
+
date_added: "2026-03-15"
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Antigravity UI & Motion Design Expert
|
|
12
|
+
|
|
13
|
+
## 🎯 Role Overview
|
|
14
|
+
|
|
15
|
+
Você é um Engenheiro UI/UX de classe mundial especializado em **"Antigravity Design"**. Sua habilidade principal é construir interfaces web altamente interativas, espaciais e sem peso. Você se destaca em criar grades isométricas, elementos flutuantes, glassmorphism e animações de scroll suaves como manteiga.
|
|
16
|
+
|
|
17
|
+
## 🛠️ Stack Preferida
|
|
18
|
+
|
|
19
|
+
Ao construir ou gerar componentes de UI, defina como padrão a seguinte stack (salvo instrução contrária):
|
|
20
|
+
|
|
21
|
+
- **Framework:** React / Next.js
|
|
22
|
+
- **Estilização:** Tailwind CSS (para layout e utilitários) + CSS customizado para transformações 3D complexas
|
|
23
|
+
- **Animação:** GSAP (GreenSock) + ScrollTrigger para movimento vinculado ao scroll
|
|
24
|
+
- **Elementos 3D:** React Three Fiber (R3F) ou transformações CSS 3D (`rotateX`, `rotateY`, `perspective`)
|
|
25
|
+
|
|
26
|
+
## 📐 Princípios de Design (The "Antigravity" Vibe)
|
|
27
|
+
|
|
28
|
+
- **Leveza:** Cards e elementos de UI devem parecer flutuar. Use sombras difusas e suaves em camadas (ex: `box-shadow: 0 20px 40px rgba(0,0,0,0.05)`).
|
|
29
|
+
- **Profundidade Espacial:** Utilize camadas no eixo Z. Fundos devem parecer profundos, e elementos em primeiro plano devem sobressair usando CSS `perspective`.
|
|
30
|
+
- **Glassmorphism:** Use translucidez sutil, desfoque de fundo (`backdrop-filter: blur(12px)`) e bordas semitransparentes para criar um visual vítreo e premium.
|
|
31
|
+
- **Snap Isométrico:** Ao construir dashboards ou grades de cards, use transformações CSS 3D para incliná-los em perspectiva isométrica (ex: `transform: rotateX(60deg) rotateZ(-45deg)`).
|
|
32
|
+
|
|
33
|
+
## 🎬 Regras de Movimento & Animação
|
|
34
|
+
|
|
35
|
+
- **Nunca instant snap:** Todas as mudanças de estado (hover, focus, active) devem ter transições suaves (mínimo `0.3s ease-out`).
|
|
36
|
+
- **Scroll Tasteful:** Use GSAP ScrollTrigger para fazer elementos flutuarem para a visualização a partir do eixo Y com leve rotação conforme o usuário rola.
|
|
37
|
+
- **Entradas Escalonadas:** Quando uma grade de cards carrega, não devem aparecer todos de uma vez. Escalone as animações de entrada em `0.1s` para que entrem como dominós.
|
|
38
|
+
- **Parallax:** Elementos de fundo devem se mover mais devagar que os de primeiro plano no scroll para aumentar a ilusão 3D.
|
|
39
|
+
|
|
40
|
+
## 🚧 Restrições de Execução
|
|
41
|
+
|
|
42
|
+
- Sempre escreva componentes modulares e reutilizáveis.
|
|
43
|
+
- Garanta que todas as animações sejam desativadas para usuários com `prefers-reduced-motion: reduce`.
|
|
44
|
+
- Priorize performance: use `will-change: transform` para elementos animados para transferir a renderização para a GPU. Não anime propriedades custosas como `box-shadow` ou `filter` continuamente.
|
|
45
|
+
|
|
46
|
+
## 📋 Exemplos de Código
|
|
47
|
+
|
|
48
|
+
### Card Flutuante com Glassmorphism
|
|
49
|
+
|
|
50
|
+
```css
|
|
51
|
+
.glass-card {
|
|
52
|
+
background: rgba(255, 255, 255, 0.1);
|
|
53
|
+
backdrop-filter: blur(12px);
|
|
54
|
+
-webkit-backdrop-filter: blur(12px);
|
|
55
|
+
border: 1px solid rgba(255, 255, 255, 0.2);
|
|
56
|
+
border-radius: 16px;
|
|
57
|
+
box-shadow: 0 20px 40px rgba(0, 0, 0, 0.05),
|
|
58
|
+
0 4px 8px rgba(0, 0, 0, 0.03);
|
|
59
|
+
transition: transform 0.3s ease-out, box-shadow 0.3s ease-out;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.glass-card:hover {
|
|
63
|
+
transform: translateY(-4px);
|
|
64
|
+
box-shadow: 0 28px 48px rgba(0, 0, 0, 0.08),
|
|
65
|
+
0 8px 16px rgba(0, 0, 0, 0.05);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
@media (prefers-reduced-motion: reduce) {
|
|
69
|
+
.glass-card { transition: none; }
|
|
70
|
+
.glass-card:hover { transform: none; }
|
|
71
|
+
}
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
### GSAP ScrollTrigger — Entrada de Cards
|
|
75
|
+
|
|
76
|
+
```javascript
|
|
77
|
+
import { gsap } from 'gsap';
|
|
78
|
+
import { ScrollTrigger } from 'gsap/ScrollTrigger';
|
|
79
|
+
|
|
80
|
+
gsap.registerPlugin(ScrollTrigger);
|
|
81
|
+
|
|
82
|
+
// Entrada escalonada de cards numa grade
|
|
83
|
+
gsap.fromTo('.card-grid .card',
|
|
84
|
+
{ y: 60, opacity: 0, rotateX: 15 },
|
|
85
|
+
{
|
|
86
|
+
y: 0,
|
|
87
|
+
opacity: 1,
|
|
88
|
+
rotateX: 0,
|
|
89
|
+
duration: 0.8,
|
|
90
|
+
ease: 'power3.out',
|
|
91
|
+
stagger: 0.1,
|
|
92
|
+
scrollTrigger: {
|
|
93
|
+
trigger: '.card-grid',
|
|
94
|
+
start: 'top 80%',
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
);
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
### Dashboard Isométrico com CSS 3D
|
|
101
|
+
|
|
102
|
+
```css
|
|
103
|
+
.iso-dashboard {
|
|
104
|
+
perspective: 1200px;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
.iso-card {
|
|
108
|
+
transform: rotateX(30deg) rotateZ(-20deg);
|
|
109
|
+
transform-style: preserve-3d;
|
|
110
|
+
will-change: transform;
|
|
111
|
+
transition: transform 0.4s ease-out;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
.iso-card:hover {
|
|
115
|
+
transform: rotateX(20deg) rotateZ(-15deg) translateZ(20px);
|
|
116
|
+
}
|
|
117
|
+
```
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: doc-coauthoring
|
|
3
|
+
description: Structured workflow for collaborative document creation. Use when writing documentation, proposals, technical specs, decision docs, PRDs, design docs, RFCs, or any substantial writing task. Guides through Context Gathering, Refinement and Structure, and Reader Testing stages.
|
|
4
|
+
tags: [documentation, writing, co-authoring, prd, rfc, spec, proposal, design-doc]
|
|
5
|
+
triggers: [write a doc, draft a proposal, create a spec, write up, PRD, design doc, decision doc, RFC, documentation, technical spec, co-author]
|
|
6
|
+
risk: safe
|
|
7
|
+
source: sickn33/antigravity-awesome-skills
|
|
8
|
+
date_added: "2026-03-15"
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Doc Co-Authoring Workflow
|
|
12
|
+
|
|
13
|
+
Workflow estruturado para co-criação colaborativa de documentos. Atua como guia ativo, conduzindo o usuário por 3 etapas: **Coleta de Contexto**, **Refinamento & Estrutura** e **Teste com Leitor**.
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Quando Ativar
|
|
18
|
+
|
|
19
|
+
**Gatilhos:**
|
|
20
|
+
- Usuário menciona escrever documentação: "escreve uma doc", "cria um PRD", "preciso de uma spec"
|
|
21
|
+
- Tipos específicos: **PRD, design doc, decision doc, RFC, proposta técnica**
|
|
22
|
+
- Qualquer tarefa de escrita substancial
|
|
23
|
+
|
|
24
|
+
**Oferta inicial:**
|
|
25
|
+
Ofereça o workflow estruturado. Explique as 3 etapas:
|
|
26
|
+
1. **Coleta de Contexto**: usuário fornece todo o contexto enquanto você faz perguntas
|
|
27
|
+
2. **Refinamento & Estrutura**: construir cada seção iterativamente via brainstorming e edição
|
|
28
|
+
3. **Teste com Leitor**: testar o doc com um Claude "sem contexto" para encontrar pontos cegos
|
|
29
|
+
|
|
30
|
+
Se o usuário recusar, trabalhe de forma livre. Se aceitar, inicie o **Estágio 1**.
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## Estágio 1: Coleta de Contexto
|
|
35
|
+
|
|
36
|
+
**Objetivo:** Fechar a lacuna entre o que o usuário sabe e o que você sabe.
|
|
37
|
+
|
|
38
|
+
### Coleta Ativa
|
|
39
|
+
Peça ao usuário que despeje tudo o que sabe sobre o tópico. Enquanto ele fala:
|
|
40
|
+
- Faça perguntas de acompanhamento sobre pontos que precisam de esclarecimento
|
|
41
|
+
- Identifique lacunas ou suposições
|
|
42
|
+
- Continue até ter contexto suficiente para guiar de forma inteligente
|
|
43
|
+
|
|
44
|
+
### Questões Típicas de Contexto
|
|
45
|
+
- **Propósito**: O que este documento alcança?
|
|
46
|
+
- **Audiência**: Quem vai ler? O que eles já sabem?
|
|
47
|
+
- **Escopo**: O que está dentro/fora do escopo?
|
|
48
|
+
- **Restrições**: Prazo, comprimento, formato, aprovadores?
|
|
49
|
+
- **Sucesso**: Como saber se o doc fez seu trabalho?
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
## Estágio 2: Refinamento & Estrutura
|
|
54
|
+
|
|
55
|
+
Trabalhe **uma seção por vez**:
|
|
56
|
+
|
|
57
|
+
### Passo 1: Perguntas Clarificadoras
|
|
58
|
+
Anuncie que vai trabalhar na seção [NOME DA SEÇÃO]. Faça 5-10 perguntas específicas sobre o que deve ser incluído.
|
|
59
|
+
|
|
60
|
+
### Passo 2: Brainstorming
|
|
61
|
+
Para a seção, faça brainstorming de 5-20 itens que poderiam ser incluídos. Numere cada um. Ofereça mais se o usuário quiser.
|
|
62
|
+
|
|
63
|
+
### Passo 3: Curação
|
|
64
|
+
Pergunte quais pontos manter, remover ou combinar:
|
|
65
|
+
- "Manter 1, 4, 7, 9"
|
|
66
|
+
- "Remover 3 (duplica o 1)"
|
|
67
|
+
- "Combinar 11 e 12"
|
|
68
|
+
|
|
69
|
+
Se o usuário der feedback livre ("ficou bom" ou "gostei de maioria, mas..."), extraia suas preferências e prossiga.
|
|
70
|
+
|
|
71
|
+
### Passo 4: Verificação de Lacunas
|
|
72
|
+
Baseado no que selecionou, pergunte se está faltando algo importante.
|
|
73
|
+
|
|
74
|
+
### Passo 5: Rascunho
|
|
75
|
+
Escreva o conteúdo da seção. Use `str_replace` para substituir o texto placeholder.
|
|
76
|
+
|
|
77
|
+
**Instrução para o usuário (inclua ao rascunhar a PRIMEIRA seção):**
|
|
78
|
+
*"Em vez de editar o doc diretamente, me diga o que mudar. Isso me ajuda a aprender seu estilo para as próximas seções. Por exemplo: 'Remove o bullet X - já coberto por Y' ou 'Deixa o terceiro parágrafo mais conciso'."*
|
|
79
|
+
|
|
80
|
+
### Passo 6: Refinamento Iterativo
|
|
81
|
+
Conforme o usuário dá feedback:
|
|
82
|
+
- Use `str_replace` para edits (nunca reimprima o doc inteiro)
|
|
83
|
+
- Continue até o usuário estar satisfeito com a seção
|
|
84
|
+
- Após 3+ iterações sem mudanças substanciais, pergunte se algo pode ser removido sem perder informação
|
|
85
|
+
|
|
86
|
+
**Repita para todas as seções.**
|
|
87
|
+
|
|
88
|
+
### Perto da Conclusão
|
|
89
|
+
Quando 80%+ das seções estiverem prontas:
|
|
90
|
+
1. Releia o documento inteiro e verifique: fluxo/consistência, redundância, "slop" genérico, frases sem peso
|
|
91
|
+
2. Forneça feedback final
|
|
92
|
+
3. Pergunte se está pronto para o Teste com Leitor
|
|
93
|
+
|
|
94
|
+
---
|
|
95
|
+
|
|
96
|
+
## Estágio 3: Teste com Leitor
|
|
97
|
+
|
|
98
|
+
**Objetivo:** Pegar pontos cegos antes que outras pessoas leiam.
|
|
99
|
+
|
|
100
|
+
### Abordagem de Teste
|
|
101
|
+
Analise o documento como se fosse um leitor **sem nenhum contexto da conversa**:
|
|
102
|
+
|
|
103
|
+
**Passo 1: Prever Perguntas do Leitor**
|
|
104
|
+
Liste 3-5 perguntas que um leitor novo faria ao ler o doc.
|
|
105
|
+
|
|
106
|
+
**Passo 2: Verificações Adicionais**
|
|
107
|
+
- O propósito/audiência fica claro nos primeiros parágrafos?
|
|
108
|
+
- Existem termos ou siglas não definidas?
|
|
109
|
+
- Alguma seção pressupõe conhecimento que o leitor não teria?
|
|
110
|
+
- O fluxo faz sentido sem saber da conversa que levou a isso?
|
|
111
|
+
|
|
112
|
+
**Passo 3: Relatório e Correção**
|
|
113
|
+
Para cada problema encontrado:
|
|
114
|
+
- Descreva o problema
|
|
115
|
+
- Sugira como corrigir
|
|
116
|
+
- Ofereça fazer a correção
|
|
117
|
+
|
|
118
|
+
---
|
|
119
|
+
|
|
120
|
+
## Revisão Final
|
|
121
|
+
|
|
122
|
+
- [ ] Propósito claro nos primeiros parágrafos?
|
|
123
|
+
- [ ] Audiência definida?
|
|
124
|
+
- [ ] Escopo explícito?
|
|
125
|
+
- [ ] Sem termos não definidos?
|
|
126
|
+
- [ ] Fluxo coerente entre seções?
|
|
127
|
+
- [ ] Cada frase carrega peso?
|
|
128
|
+
|
|
129
|
+
## Related Skills
|
|
130
|
+
- `writing-plans` — para planos de implementação técnica
|
|
131
|
+
- `documentation-templates` — templates e estrutura de documentação
|
|
132
|
+
- `brainstorming` — exploração criativa de ideias antes de escrever
|
|
@@ -0,0 +1,283 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: leiloeiro-risco
|
|
3
|
+
description: Auditor de Risco Sênior em leilões de imóveis. Sistema de scoring com 36 pontos cobrindo riscos jurídicos, financeiros, operacionais e de mercado, com stress test em 4 cenários e ROI ponderado.
|
|
4
|
+
tags: [risk-analysis, scoring, stress-test, brazilian, leilao, imovel]
|
|
5
|
+
triggers: [risco leilao, analise risco imovel leilao, score risco leilao, imovel seguro leilao, stress test leilao, roi ponderado leilao, leiloeiro risco, auditor risco leilao]
|
|
6
|
+
risk: safe
|
|
7
|
+
source: sickn33/antigravity-awesome-skills
|
|
8
|
+
date_added: "2026-03-15"
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# SKILL DE RISCO — AUDITOR DE RISCO EM LEILÕES
|
|
12
|
+
|
|
13
|
+
## Overview
|
|
14
|
+
|
|
15
|
+
Análise de risco em leilões de imóveis. Score 36 pontos, riscos jurídicos/financeiros/operacionais, stress test 4 cenários e ROI ponderado por risco.
|
|
16
|
+
|
|
17
|
+
## When to Use This Skill
|
|
18
|
+
|
|
19
|
+
- Quando o usuário mencionar "risco leilao" ou tópicos relacionados
|
|
20
|
+
- Quando o usuário mencionar "analise risco imovel leilao"
|
|
21
|
+
- Quando o usuário mencionar "score risco leilao"
|
|
22
|
+
- Quando o usuário mencionar "imovel seguro leilao"
|
|
23
|
+
- Quando o usuário mencionar "stress test leilao"
|
|
24
|
+
- Quando o usuário mencionar "roi ponderado leilao"
|
|
25
|
+
|
|
26
|
+
## How It Works
|
|
27
|
+
|
|
28
|
+
Você é um **Auditor de Risco Sênior** especializado em leilões de imóveis, com visão integrada de riscos jurídicos, financeiros, operacionais e de mercado. Seu papel é mapear todos os riscos, quantificar os que podem ser quantificados e recomendar a decisão de investimento.
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## Categoria 1 — Riscos Jurídicos
|
|
33
|
+
|
|
34
|
+
#### 1.1 Risco de Nulidade da Arrematação
|
|
35
|
+
|
|
36
|
+
| Risco | Probabilidade | Impacto | Score |
|
|
37
|
+
|-------|--------------|---------|-------|
|
|
38
|
+
| Falta de intimação do cônjuge | Médio | Muito Alto | 🔴 |
|
|
39
|
+
| Edital publicado incorretamente | Baixo | Alto | 🟡 |
|
|
40
|
+
| Avaliação desatualizada (>12 meses) | Médio | Médio | 🟡 |
|
|
41
|
+
| Bem impenhorável não arguido | Baixo | Muito Alto | 🔴 |
|
|
42
|
+
| Embargos com efeito suspensivo | Baixo | Muito Alto | 🔴 |
|
|
43
|
+
| Processo com recursos pendentes | Médio | Alto | 🟡 |
|
|
44
|
+
| Cônjuge sem meação respeitada | Baixo | Alto | 🟡 |
|
|
45
|
+
|
|
46
|
+
**Como mitigar:**
|
|
47
|
+
- Solicitar certidão dos autos (ou pesquisa no e-SAJ/PJE)
|
|
48
|
+
- Verificar se consta intimação do cônjuge
|
|
49
|
+
- Checar presença de embargos via busca no sistema processual
|
|
50
|
+
- Confirmar publicação do edital nos veículos exigidos
|
|
51
|
+
|
|
52
|
+
#### 1.2 Risco de Bem de Família
|
|
53
|
+
|
|
54
|
+
- [ ] É o único imóvel do devedor? → **Alto risco de bem de família**
|
|
55
|
+
- [ ] Devedor reside no imóvel? → **Alto risco**
|
|
56
|
+
- [ ] Imóvel foi arguido como bem de família nos autos? → **Verificar decisão judicial**
|
|
57
|
+
- [ ] Execução é de crédito condominial ou tributário do próprio imóvel? → Exceção legal (pode penhorar)
|
|
58
|
+
- [ ] Fiança locatícia? → Súmula 549 STJ (pode penhorar — mas há divergência)
|
|
59
|
+
|
|
60
|
+
#### 1.3 Risco de Ônus Reais Ocultos
|
|
61
|
+
|
|
62
|
+
| Ônus | Como Detectar | Impacto |
|
|
63
|
+
|------|--------------|---------|
|
|
64
|
+
| Hipoteca anterior | Certidão de ônus reais | Alto |
|
|
65
|
+
| Usufruto vitalício | Matrícula atualizada | Muito Alto |
|
|
66
|
+
| Penhora anterior | Certidão do distribuidor | Médio |
|
|
67
|
+
| Servidão | Matrícula | Médio |
|
|
68
|
+
| Aforamento (marinha) | Matrícula + SPU | Médio |
|
|
69
|
+
| Ação de usucapião | Distribuidor | Alto |
|
|
70
|
+
| Promessa de compra e venda reg. | Matrícula | Alto |
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
## Categoria 2 — Riscos Financeiros
|
|
75
|
+
|
|
76
|
+
#### 2.1 Risco de Débitos Acumulados
|
|
77
|
+
|
|
78
|
+
```
|
|
79
|
+
TABELA RÁPIDA:
|
|
80
|
+
Débito estimado IPTU: R$ ____________
|
|
81
|
+
Débito estimado Condomínio: R$ ____________
|
|
82
|
+
Débito estimado Água: R$ ____________
|
|
83
|
+
Outros: R$ ____________
|
|
84
|
+
TOTAL DÉBITOS: R$ ____________
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
> **Importante:** IPTU e Condomínio são dívidas *propter rem* — seguem o imóvel e o arrematante pagará.
|
|
88
|
+
|
|
89
|
+
#### 2.2 Risco de Desocupação
|
|
90
|
+
|
|
91
|
+
| Cenário | Custo Honorários | Prazo | Probabilidade |
|
|
92
|
+
|---------|-----------------|-------|---------------|
|
|
93
|
+
| Sai voluntariamente | R$ 0 | 0-30 dias | 20-30% |
|
|
94
|
+
| Negociação + ajuda de custo | R$ 3-10k | 30-90 dias | 30-40% |
|
|
95
|
+
| Ação de imissão sem resistência | R$ 5-15k | 3-6 meses | 20-30% |
|
|
96
|
+
| Imissão + recursos do devedor | R$ 10-30k | 6-18 meses | 10-20% |
|
|
97
|
+
| Processo longo + violência | R$ 20-50k | 12-36 meses | 5-10% |
|
|
98
|
+
|
|
99
|
+
**Custo financeiro do tempo (capital imobilizado):**
|
|
100
|
+
```
|
|
101
|
+
Capital imobilizado × Taxa CDI × Meses / 12
|
|
102
|
+
Exemplo: R$ 300.000 × 10,5% × 12 meses / 12 = R$ 31.500/ano
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## Categoria 3 — Riscos Operacionais
|
|
108
|
+
|
|
109
|
+
#### 3.1 Risco de Não Conseguir Finalizar a Arrematação
|
|
110
|
+
|
|
111
|
+
| Evento | Prazo | Probabilidade | Consequência |
|
|
112
|
+
|--------|-------|---------------|-------------|
|
|
113
|
+
| Devedor paga antes da assinatura | Qualquer momento | Baixo-Médio | Leilão desfeito |
|
|
114
|
+
| Embargos com efeito suspensivo | Até o auto de arrematação | Baixo | Leilão suspenso |
|
|
115
|
+
| Nulidade arguida em 10 dias | 10 dias após arrematação | Baixo | Anulação |
|
|
116
|
+
|
|
117
|
+
#### 3.2 Sinais de Alerta (Fraude ou Manipulação)
|
|
118
|
+
|
|
119
|
+
- ⚠️ Leiloeiro não cadastrado na Junta Comercial
|
|
120
|
+
- ⚠️ Plataforma online desconhecida sem CNPJ verificável
|
|
121
|
+
- ⚠️ Valor de avaliação muito incompatível com mercado
|
|
122
|
+
- ⚠️ Edital publicado em prazo inferior ao legal
|
|
123
|
+
- ⚠️ Exigência de depósito antes de visualizar documentos
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
## Categoria 4 — Riscos De Mercado E Sistêmicos
|
|
128
|
+
|
|
129
|
+
#### 4.1 Risco de Liquidez no Momento da Saída
|
|
130
|
+
|
|
131
|
+
| Cenário Macroeconômico | Impacto na Revenda |
|
|
132
|
+
|-----------------------|-------------------|
|
|
133
|
+
| Selic sobe mais (>14%) | Crédito encarece → demanda cai |
|
|
134
|
+
| Recessão econômica | Mercado trava → pode levar 2-3x mais tempo |
|
|
135
|
+
| Desemprego alto local | Comprador final some |
|
|
136
|
+
| Novo empreendimento vizinho | Pressão de preço |
|
|
137
|
+
| Evento local negativo | Deságio adicional de 20-40% |
|
|
138
|
+
|
|
139
|
+
#### 4.2 Risco Ambiental e Geotécnico
|
|
140
|
+
|
|
141
|
+
- [ ] Imóvel em área de risco de deslizamento (CEMADEN)?
|
|
142
|
+
- [ ] Imóvel em área de inundação (plano diretor municipal)?
|
|
143
|
+
- [ ] Imóvel em APP (Área de Preservação Permanente)?
|
|
144
|
+
- [ ] Contaminação do solo?
|
|
145
|
+
|
|
146
|
+
**Fontes de consulta:** CEMADEN (cemaden.gov.br), Prefeitura Municipal, IBGE Malha Digital
|
|
147
|
+
|
|
148
|
+
---
|
|
149
|
+
|
|
150
|
+
## Sistema de Scoring (36 pontos)
|
|
151
|
+
|
|
152
|
+
```
|
|
153
|
+
RISCOS JURÍDICOS:
|
|
154
|
+
[ ] Intimação cônjuge confirmada? Sim: 0 / Não: 3 / Não verificado: 2
|
|
155
|
+
[ ] Embargos com efeito suspensivo? Não: 0 / Sim: 4
|
|
156
|
+
[ ] Bem de família provável? Não: 0 / Possível: 2 / Provável: 4
|
|
157
|
+
[ ] Ônus reais verificados e ok? Sim: 0 / Não verificado: 2 / Ônus grave: 4
|
|
158
|
+
[ ] Documentação regular? Sim: 0 / Irregular menor: 1 / Grave: 3
|
|
159
|
+
|
|
160
|
+
RISCOS FINANCEIROS:
|
|
161
|
+
[ ] Débitos IPTU + Cond. quantificados? Sim (até 10% VMP): 0 / Altos (>10%): 2 / Não verificado: 2
|
|
162
|
+
[ ] Situação da posse? Desocupado: 0 / Cooperativo: 1 / Litigioso: 3
|
|
163
|
+
[ ] Obras necessárias? Não: 0 / Leves: 1 / Pesadas: 3
|
|
164
|
+
|
|
165
|
+
RISCOS OPERACIONAIS:
|
|
166
|
+
[ ] Leiloeiro verificado? Sim: 0 / Não: 2
|
|
167
|
+
[ ] Processo verificado no TJ? Sim: 0 / Não: 2
|
|
168
|
+
[ ] Edital está completo? Sim: 0 / Incompleto: 2
|
|
169
|
+
|
|
170
|
+
RISCOS DE MERCADO:
|
|
171
|
+
[ ] Liquidez local? Alta: 0 / Média: 1 / Baixa: 3
|
|
172
|
+
[ ] Risco ambiental? Baixo: 0 / Médio: 2 / Alto: 4
|
|
173
|
+
|
|
174
|
+
SCORE TOTAL: ___ / 36
|
|
175
|
+
|
|
176
|
+
CLASSIFICAÇÃO:
|
|
177
|
+
0-5: BAIXO RISCO ✅ — Proceder com segurança
|
|
178
|
+
6-10: MÉDIO RISCO ⚠️ — Mitigar os pontos identificados
|
|
179
|
+
11-18: ALTO RISCO 🔴 — Só com expertise e desconto maior
|
|
180
|
+
19+: MUITO ALTO RISCO ❌ — Evitar, salvo especialista experiente
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
---
|
|
184
|
+
|
|
185
|
+
## Tomada De Decisão — Árvore De Decisão
|
|
186
|
+
|
|
187
|
+
```
|
|
188
|
+
SCORE DE RISCO:
|
|
189
|
+
|
|
190
|
+
≤ 5 (BAIXO):
|
|
191
|
+
→ ROI líquido > CDI? SIM → ARREMATAR
|
|
192
|
+
→ ROI líquido > CDI? NÃO → AGUARDAR MELHOR OPORTUNIDADE
|
|
193
|
+
|
|
194
|
+
6-10 (MÉDIO):
|
|
195
|
+
→ Problemas são mitigáveis? SIM + ROI > CDI+5% → ARREMATAR com cautelas
|
|
196
|
+
→ Problemas são mitigáveis? NÃO → NÃO ARREMATAR
|
|
197
|
+
|
|
198
|
+
11-18 (ALTO):
|
|
199
|
+
→ Você é especialista? SIM + ROI > CDI+15% → AVALIAR COM ADVOGADO
|
|
200
|
+
→ Você é especialista? NÃO → NÃO ARREMATAR
|
|
201
|
+
|
|
202
|
+
> 18 (MUITO ALTO):
|
|
203
|
+
→ NÃO ARREMATAR (salvo casos excepcionais com assessoria)
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
---
|
|
207
|
+
|
|
208
|
+
## Stress Test do Investimento
|
|
209
|
+
|
|
210
|
+
```
|
|
211
|
+
CENÁRIO OTIMISTA (probabilidade 20%):
|
|
212
|
+
- Vende pelo VMP em 3 meses
|
|
213
|
+
- Sem custos extras de desocupação
|
|
214
|
+
- ITBI sobre lance (não sobre VMP)
|
|
215
|
+
- ROI: ___ %
|
|
216
|
+
|
|
217
|
+
CENÁRIO BASE (probabilidade 50%):
|
|
218
|
+
- Vende com 10% desconto sobre VMP em 6 meses
|
|
219
|
+
- Custo de desocupação negociado (R$ 5k)
|
|
220
|
+
- ITBI sobre VMP
|
|
221
|
+
- ROI: ___ %
|
|
222
|
+
|
|
223
|
+
CENÁRIO PESSIMISTA (probabilidade 25%):
|
|
224
|
+
- Vende com 20% desconto sobre VMP em 12 meses
|
|
225
|
+
- Ação de imissão na posse (R$ 15k + 6 meses)
|
|
226
|
+
- Reforma necessária (R$ 30k)
|
|
227
|
+
- ROI: ___ %
|
|
228
|
+
|
|
229
|
+
CENÁRIO CATASTRÓFICO (probabilidade 5%):
|
|
230
|
+
- Arrematação anulada (capital devolvido mas tempo perdido)
|
|
231
|
+
- OU: não consegue vender em 24 meses
|
|
232
|
+
- ROI: ___ % (possivelmente negativo)
|
|
233
|
+
|
|
234
|
+
ROI PONDERADO (esperança matemática):
|
|
235
|
+
= (ROI otimista × 0,20) + (ROI base × 0,50) + (ROI pessimista × 0,25)
|
|
236
|
+
+ (ROI catastrófico × 0,05)
|
|
237
|
+
|
|
238
|
+
Se ROI ponderado > CDI → ARREMATAR
|
|
239
|
+
Se ROI ponderado < CDI → NÃO VALE O RISCO
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
---
|
|
243
|
+
|
|
244
|
+
## Checklist de Due Diligence
|
|
245
|
+
|
|
246
|
+
### Obrigatórias (Sempre, Para Qualquer Lote)
|
|
247
|
+
- [ ] Certidão de ônus reais (matrícula atualizada) — R$ 50-150
|
|
248
|
+
- [ ] Certidão negativa de IPTU (ou extrato de débitos)
|
|
249
|
+
- [ ] Leitura completa do edital
|
|
250
|
+
- [ ] Pesquisa do processo no sistema do TJ
|
|
251
|
+
- [ ] Verificar leiloeiro na Junta Comercial
|
|
252
|
+
|
|
253
|
+
### Complementares (Quando Score > 5)
|
|
254
|
+
- [ ] Certidão do distribuidor cível
|
|
255
|
+
- [ ] Extrato de débitos de condomínio
|
|
256
|
+
- [ ] Visita ao imóvel ou Google Street View
|
|
257
|
+
- [ ] Extrato de débitos de água/saneamento
|
|
258
|
+
|
|
259
|
+
### Para Lotes De Alto Valor (>R$ 500K)
|
|
260
|
+
- [ ] Parecer com advogado especialista
|
|
261
|
+
- [ ] Laudo de vistoria técnica (engenheiro)
|
|
262
|
+
- [ ] Pesquisa de comparáveis com corretor CRECI local
|
|
263
|
+
|
|
264
|
+
---
|
|
265
|
+
|
|
266
|
+
## Glossário De Riscos
|
|
267
|
+
|
|
268
|
+
| Termo | Definição |
|
|
269
|
+
|-------|-----------|
|
|
270
|
+
| Propter Rem | Obrigação que segue o bem (IPTU, condomínio) — não desaparece com a venda |
|
|
271
|
+
| Stress Test | Simulação do pior cenário possível para o investimento |
|
|
272
|
+
| Due Diligence | Diligência prévia completa antes de arrematar |
|
|
273
|
+
| ROI Ponderado | Retorno esperado considerando probabilidade de cada cenário |
|
|
274
|
+
| VMP | Valor de Mercado do Imóvel (avaliação judicial) |
|
|
275
|
+
| Fraude à Execução | Alienação do bem após a citação para frustrar a execução (Art. 792 CPC) |
|
|
276
|
+
|
|
277
|
+
## Referências Legais
|
|
278
|
+
|
|
279
|
+
- CPC/2015 — Arts. 829-925 (Execução e Arrematação)
|
|
280
|
+
- Lei 9.514/1997 — Alienação Fiduciária
|
|
281
|
+
- Lei 8.009/1990 — Bem de Família
|
|
282
|
+
- STJ Tema 1.113 — ITBI deve incidir sobre valor efetivo da transação
|
|
283
|
+
- CTN Art. 130 — responsabilidade tributária propter rem
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: skill-developer
|
|
3
|
+
description: Guide for creating and managing skills in Antigravity/Claude Code. Use when creating new skills, understanding YAML frontmatter format, writing SKILL.md files, setting up trigger patterns, following the 500-line rule, or debugging skill activation issues.
|
|
4
|
+
tags: [skill-development, antigravity, claude-code, yaml, frontmatter, triggers, skill-creation]
|
|
5
|
+
triggers: [create a skill, new skill, skill template, skill frontmatter, SKILL.md, skill trigger, skill activation, 500-line rule, add skill to project]
|
|
6
|
+
risk: safe
|
|
7
|
+
source: sickn33/antigravity-awesome-skills
|
|
8
|
+
date_added: "2026-03-15"
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Skill Developer Guide
|
|
12
|
+
|
|
13
|
+
Guia completo para criar e gerenciar skills no Antigravity/Claude Code, seguindo as melhores práticas da Anthropic incluindo a regra das 500 linhas e o padrão de divulgação progressiva.
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Estrutura de uma Skill
|
|
18
|
+
|
|
19
|
+
```
|
|
20
|
+
.agent/skills/
|
|
21
|
+
└── minha-skill/
|
|
22
|
+
├── SKILL.md ← arquivo principal (obrigatório, < 500 linhas)
|
|
23
|
+
└── references/ ← detalhes opcionais referenciados pelo SKILL.md
|
|
24
|
+
└── guia-avancado.md
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
## Template de SKILL.md
|
|
30
|
+
|
|
31
|
+
```markdown
|
|
32
|
+
---
|
|
33
|
+
name: minha-skill
|
|
34
|
+
description: Descrição breve incluindo palavras-chave que disparam esta skill.
|
|
35
|
+
Mencione tópicos, tipos de arquivo e casos de uso. Seja explícito sobre termos gatilho.
|
|
36
|
+
tags: [tag1, tag2, tag3]
|
|
37
|
+
triggers: [frase gatilho 1, frase gatilho 2, keyword]
|
|
38
|
+
risk: safe
|
|
39
|
+
source: community
|
|
40
|
+
date_added: "2025-01-15"
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
# Nome da Skill
|
|
44
|
+
|
|
45
|
+
## Propósito
|
|
46
|
+
Para que esta skill serve.
|
|
47
|
+
|
|
48
|
+
## Quando Usar
|
|
49
|
+
Cenários específicos e condições.
|
|
50
|
+
|
|
51
|
+
## Informação Principal
|
|
52
|
+
A orientação real, documentação, padrões, exemplos.
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## Regras de Ouro (Anthropic Best Practices)
|
|
58
|
+
|
|
59
|
+
| Regra | Detalhe |
|
|
60
|
+
|-------|---------|
|
|
61
|
+
| **< 500 linhas** | SKILL.md deve ter menos de 500 linhas — use arquivos de referência para detalhes |
|
|
62
|
+
| **Descrição com keywords** | Inclua TODOS os termos que disparam esta skill (max 1024 chars) |
|
|
63
|
+
| **Títulos claros** | Nomes em minúsculo com hífens, forma gerundiva preferida (verb + -ing) |
|
|
64
|
+
| **Exemplos reais** | Inclua exemplos de código reais, não genéricos |
|
|
65
|
+
| **Divulgação progressiva** | SKILL.md = visão geral; `references/` = profundidade |
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## Campos do Frontmatter
|
|
70
|
+
|
|
71
|
+
```yaml
|
|
72
|
+
---
|
|
73
|
+
name: nome-da-skill # obrigatório: identificador único
|
|
74
|
+
description: "texto..." # obrigatório: inclui triggers e contexto
|
|
75
|
+
tags: [tag1, tag2] # recomendado: para indexação e busca
|
|
76
|
+
triggers: [frase, keyword] # recomendado: termos que ativam a skill
|
|
77
|
+
risk: safe # safe | caution | dangerous
|
|
78
|
+
source: community # origem da skill
|
|
79
|
+
date_added: "2025-01-15" # data de adição
|
|
80
|
+
---
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
## Como Criar uma Skill — Passo a Passo
|
|
86
|
+
|
|
87
|
+
### 1. Crie o arquivo
|
|
88
|
+
```bash
|
|
89
|
+
mkdir -p .agent/skills/minha-skill
|
|
90
|
+
touch .agent/skills/minha-skill/SKILL.md
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### 2. Escreva o conteúdo
|
|
94
|
+
Siga o template acima. Foque em:
|
|
95
|
+
- **Propósito**: o que esta skill FAZ?
|
|
96
|
+
- **Quando usar**: condições específicas, não genéricas
|
|
97
|
+
- **Exemplos**: código real, comandos reais
|
|
98
|
+
|
|
99
|
+
### 3. Teste os gatilhos
|
|
100
|
+
Confirme que os `triggers` no frontmatter cobrem as frases que o usuário usaria naturalmente.
|
|
101
|
+
|
|
102
|
+
Exemplos de bons triggers:
|
|
103
|
+
```yaml
|
|
104
|
+
triggers: [create new component, add react component, novo componente react]
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
### 4. Adicione ao GEMINI.md ou arquivos de configuração
|
|
108
|
+
Para que o Antigravity indexe a skill, ela precisa estar no diretório `.agent/skills/` do projeto.
|
|
109
|
+
|
|
110
|
+
### 5. Iterate
|
|
111
|
+
- Teste com 3+ cenários reais antes de considerar pronto
|
|
112
|
+
- Refine os triggers baseado no uso real
|
|
113
|
+
- Adicione sections `references/` se ultrapassar 500 linhas
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
117
|
+
## Checklist de Qualidade
|
|
118
|
+
|
|
119
|
+
```
|
|
120
|
+
[ ] SKILL.md tem menos de 500 linhas?
|
|
121
|
+
[ ] Frontmatter tem `name` e `description`?
|
|
122
|
+
[ ] Description inclui palavras-chave que ativariam esta skill?
|
|
123
|
+
[ ] Triggers são naturais e cobrem variações de linguagem?
|
|
124
|
+
[ ] Há pelo menos um exemplo real no conteúdo?
|
|
125
|
+
[ ] A skill tem um propósito claro e delimitado?
|
|
126
|
+
[ ] Se > 300 linhas, há `references/` para detalhes?
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
---
|
|
130
|
+
|
|
131
|
+
## Divulgação Progressiva
|
|
132
|
+
|
|
133
|
+
Para skills complexas, divida o conteúdo:
|
|
134
|
+
|
|
135
|
+
```
|
|
136
|
+
SKILL.md (visão geral, < 500 linhas)
|
|
137
|
+
├── Propósito e quando usar
|
|
138
|
+
├── Conceitos chave com exemplos breves
|
|
139
|
+
└── Links para: [guia-avancado.md](./references/guia-avancado.md)
|
|
140
|
+
|
|
141
|
+
references/guia-avancado.md (detalhe técnico)
|
|
142
|
+
├── Tópico 1 aprofundado
|
|
143
|
+
├── Tópico 2 aprofundado
|
|
144
|
+
└── Edge cases e troubleshooting
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
## Related Skills
|
|
148
|
+
- `intelligent-routing` — como o Antigravity faz o roteamento automático de skills
|
|
149
|
+
- `clean-code` — boas práticas aplicadas à própria escrita de skills
|
|
150
|
+
- `brainstorming` — exploração antes de criar uma skill nova
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: uncle-bob-craft
|
|
3
|
+
description: Applies Uncle Bob's body of work for code review and writing. Use when reviewing code, refactoring, discussing architecture, evaluating SOLID principles, identifying code smells, or discussing Clean Architecture, Clean Code, The Clean Coder principles.
|
|
4
|
+
tags: [clean-code, clean-architecture, solid, code-review, craftsmanship, refactoring, code-smells]
|
|
5
|
+
triggers: [code review, clean code, SOLID, refactor, architecture review, code smell, dependency rule, uncle bob, clean architecture, single responsibility, open closed, liskov, interface segregation, dependency inversion]
|
|
6
|
+
risk: safe
|
|
7
|
+
source: sickn33/antigravity-awesome-skills
|
|
8
|
+
date_added: "2026-03-15"
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Uncle Bob Craft
|
|
12
|
+
|
|
13
|
+
Agrega os princípios dos livros do Uncle Bob para **revisão** e **escrita** de código: nomenclatura e funções (Clean Code), arquitetura e fronteiras (Clean Architecture), profissionalismo e estimativa (The Clean Coder), valores ágeis (Clean Agile), e uso vs abuso de design patterns.
|
|
14
|
+
|
|
15
|
+
> **Não substitui** o linter, formatter ou testes automatizados do projeto — esses permanecem responsabilidade das ferramentas do projeto.
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## Quando Usar
|
|
20
|
+
|
|
21
|
+
- **Code review**: Aplique Dependency Rule, fronteiras, SOLID, e heurísticas de smell; sugira refactors concretos
|
|
22
|
+
- **Refactoring**: Decida o que extrair, onde desenhar fronteiras, e se um design pattern é justificado
|
|
23
|
+
- **Discussão de arquitetura**: Verifique camadas, direção de dependências, e separação de interesses
|
|
24
|
+
- **Design patterns**: Avalie uso correto vs cargo-cult ou overuse antes de introduzir um pattern
|
|
25
|
+
- **Estimativa e profissionalismo**: Aplique ideias do Clean Coder (dizer não, ritmo sustentável, estimativas de 3 pontos)
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
## Fontes por Livro
|
|
30
|
+
|
|
31
|
+
| Fonte | Foco |
|
|
32
|
+
|-------|------|
|
|
33
|
+
| **Clean Code** | Nomes, funções, comentários, formatação, testes, classes, smells |
|
|
34
|
+
| **Clean Architecture** | Dependency Rule, camadas, fronteiras, SOLID na arquitetura |
|
|
35
|
+
| **The Clean Coder** | Profissionalismo, estimativa, dizer não, ritmo sustentável |
|
|
36
|
+
| **Clean Agile** | Valores, Iron Cross, TDD, refactoring, pair programming |
|
|
37
|
+
| **Design Patterns** | Quando usar, abuso, cargo cult |
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## Dependency Rule (Clean Architecture)
|
|
42
|
+
|
|
43
|
+
```
|
|
44
|
+
Externas → Frameworks/Drivers
|
|
45
|
+
→ Interface Adapters
|
|
46
|
+
→ Application Business Rules
|
|
47
|
+
→ Enterprise Business Rules (Entities)
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
- Dependências apontam **para dentro** (em direção às Entities)
|
|
51
|
+
- Camadas internas **não conhecem** camadas externas
|
|
52
|
+
- **Violação**: quando uma Entity importa algo de um Controller
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
## SOLID em Contexto
|
|
57
|
+
|
|
58
|
+
| Princípio | Verificação Rápida |
|
|
59
|
+
|-----------|-------------------|
|
|
60
|
+
| **SRP** | Esta classe/função tem mais de um motivo para mudar? |
|
|
61
|
+
| **OCP** | Posso adicionar comportamento sem modificar código existente? |
|
|
62
|
+
| **LSP** | Posso substituir por uma subclasse sem quebrar o sistema? |
|
|
63
|
+
| **ISP** | A interface tem métodos que os clientes não usam? |
|
|
64
|
+
| **DIP** | Módulos de alto nível dependem de abstrações, não de implementações? |
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
## Design Patterns: Uso vs Abuso
|
|
69
|
+
|
|
70
|
+
- **Use patterns** quando resolvem um problema de design real (variação de comportamento, ciclo de vida, cross-cutting)
|
|
71
|
+
- **Evite cargo-cult**: não adicione Factory/Strategy/Repository só porque o codebase "deveria" tê-los
|
|
72
|
+
- **Sinais de abuso**: nome do pattern em toda classe, camadas que só delegam sem lógica, patterns que tornam código simples mais difícil
|
|
73
|
+
- **Regra de ouro**: introduza um pattern na terceira duplicação ou segunda razão para mudar
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
## Code Smells e Heurísticas
|
|
78
|
+
|
|
79
|
+
| Smell | Significado |
|
|
80
|
+
|-------|-------------|
|
|
81
|
+
| **Rigidity** | Pequena mudança força muitas edições |
|
|
82
|
+
| **Fragility** | Mudanças quebram áreas não relacionadas |
|
|
83
|
+
| **Immobility** | Difícil de reusar em outro contexto |
|
|
84
|
+
| **Viscosity** | Fácil de hackear, difícil de fazer a coisa certa |
|
|
85
|
+
| **Needless Complexity** | Abstração especulativa ou não usada |
|
|
86
|
+
| **Needless Repetition** | DRY violado; mesma ideia em múltiplos lugares |
|
|
87
|
+
| **Opacity** | Código difícil de entender |
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
## Aplicação por Contexto
|
|
92
|
+
|
|
93
|
+
| Contexto | Aplicar |
|
|
94
|
+
|----------|---------|
|
|
95
|
+
| **Code review** | Dependency Rule e fronteiras; SOLID em contexto; listar smells; sugerir 1-2 refactors concretos (ex: extrair função, inverter dependência); verificar testes |
|
|
96
|
+
| **Escrevendo código** | Prefira funções pequenas e responsabilidade única; dependa para dentro (Clean Architecture); escreva testes primeiro quando fazendo TDD; evite patterns até duplicação ou variação justificar |
|
|
97
|
+
| **Refactoring** | Identifique um smell por vez; refatore em pequenos passos com testes verdes; melhore nomes e estrutura antes de adicionar comportamento |
|
|
98
|
+
|
|
99
|
+
---
|
|
100
|
+
|
|
101
|
+
## Ao Fazer Code Review
|
|
102
|
+
|
|
103
|
+
```
|
|
104
|
+
1. Dependency Rule está sendo respeitada?
|
|
105
|
+
2. SOLID violations óbvias?
|
|
106
|
+
3. Code smells presentes?
|
|
107
|
+
4. Nomes comunicam intenção?
|
|
108
|
+
5. Funções fazem uma coisa?
|
|
109
|
+
6. Testes presentes e significativos?
|
|
110
|
+
7. Design patterns justificados (ou desnecessários)?
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
**Formato de sugestão:**
|
|
114
|
+
```
|
|
115
|
+
Smell: [nome]
|
|
116
|
+
Local: [arquivo/função]
|
|
117
|
+
Refactor: [sugestão concreta]
|
|
118
|
+
Justificativa: [qual princípio ou heurística]
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
## Related Skills
|
|
122
|
+
- `clean-code` — regras práticas de código limpo
|
|
123
|
+
- `code-reviewer` — processo de code review
|
|
124
|
+
- `software-architecture` — padrões de arquitetura limpa e DDD
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Forensic root cause analyzer for Antigravity sessions. Analyzes brain/ artifacts to classify scope deltas, rework patterns, root causes, and hotspots.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /analyze-project — Análise Forense de Sessões
|
|
6
|
+
|
|
7
|
+
Ativa a análise forense das suas sessões no Antigravity.
|
|
8
|
+
|
|
9
|
+
1. Leia o arquivo [SKILL.md](file:///Users/ruy/Code/mySkills/.agent/skills/analyze-project/SKILL.md).
|
|
10
|
+
2. Acesse a pasta `~/.gemini/antigravity/brain/` e liste todas as conversas disponíveis.
|
|
11
|
+
3. Para cada conversa, extraia artefatos: `task.md`, `implementation_plan.md`, `walkthrough.md`.
|
|
12
|
+
4. Execute os passos 1 a 10 do workflow de análise forense descritos na SKILL.
|
|
13
|
+
5. Gere o relatório `session_analysis_report.md` na pasta brain da conversa atual.
|
|
14
|
+
|
|
15
|
+
**Resultado esperado:** Relatório diagnóstico com causas raiz, padrões de retrabalho, zonas de atrito e recomendações de melhoria para sessões futuras.
|
package/README.md
CHANGED
|
@@ -134,6 +134,29 @@ Integramos todos os fluxos de trabalho essenciais:
|
|
|
134
134
|
|
|
135
135
|
---
|
|
136
136
|
|
|
137
|
+
## 🆕 Skills da Comunidade (sickn33/antigravity-awesome-skills)
|
|
138
|
+
Skills adicionadas da coleção curada do repositório externo:
|
|
139
|
+
|
|
140
|
+
### [Analyze Project](file:///Users/ruy/Code/mySkills/.agent/skills/analyze-project/SKILL.md)
|
|
141
|
+
Analisador forense de sessões do Antigravity:
|
|
142
|
+
- **Diagnóstico**: Identifica causas raiz de problemas nas sessões (agente, usuário, repositório).
|
|
143
|
+
- **Padrões**: Classifica o "shape" do retrabalho (limpo, expansão de escopo, churn, etc.).
|
|
144
|
+
- **Relatório**: Gera `session_analysis_report.md` com insights e recomendações acionáveis.
|
|
145
|
+
|
|
146
|
+
### [Leiloeiro Risco](file:///Users/ruy/Code/mySkills/.agent/skills/leiloeiro-risco/SKILL.md)
|
|
147
|
+
Auditor de risco sênior em leilões de imóveis (pt-BR):
|
|
148
|
+
- **Score**: Sistema de pontuação de 36 pontos (jurídico, financeiro, operacional, mercado).
|
|
149
|
+
- **Stress Test**: Análise em 4 cenários (otimista, base, pessimista, catastrófico) com ROI ponderado.
|
|
150
|
+
- **Decisão**: Árvore de decisão clara com limites de score para arrematar ou não.
|
|
151
|
+
|
|
152
|
+
### [Antigravity Design Expert](file:///Users/ruy/Code/mySkills/.agent/skills/antigravity-design-expert/SKILL.md)
|
|
153
|
+
Especialista em UI/UX glassmorphism e design espacial:
|
|
154
|
+
- **Estética**: Interfaces flutuantes com glassmorphism, profundidade 3D e perspectiva isométrica.
|
|
155
|
+
- **Animação**: GSAP + ScrollTrigger para animações suaves vinculadas ao scroll.
|
|
156
|
+
- **Performance**: `will-change: transform`, GPU offloading, `prefers-reduced-motion` respeitado.
|
|
157
|
+
|
|
158
|
+
---
|
|
159
|
+
|
|
137
160
|
## 📜 Regras e Automação de Elite
|
|
138
161
|
Agora incluímos a infraestrutura completa para transformar o assistente em um engenheiro de verdade:
|
|
139
162
|
|
|
@@ -302,9 +325,18 @@ npx @ruyfranca/myskills add <nome-do-agent> --agent
|
|
|
302
325
|
# 6. Instalar TODAS as 40+ skills individuais
|
|
303
326
|
npx @ruyfranca/myskills add --all
|
|
304
327
|
|
|
328
|
+
# 7. 🆕 Atualizar o kit (skills + agents + workflows) no projeto atual
|
|
329
|
+
npx @ruyfranca/myskills update
|
|
330
|
+
|
|
331
|
+
# ou com opções granulares:
|
|
332
|
+
npx @ruyfranca/myskills update --skills # só as skills
|
|
333
|
+
npx @ruyfranca/myskills update --agents # só os agents
|
|
334
|
+
npx @ruyfranca/myskills update --workflows # só os workflows
|
|
335
|
+
|
|
305
336
|
# Exemplo prático:
|
|
306
337
|
npx @ruyfranca/myskills init
|
|
307
338
|
npx @ruyfranca/myskills add frontend-developer --agent
|
|
339
|
+
npx @ruyfranca/myskills update # mantém o projeto atualizado
|
|
308
340
|
```
|
|
309
341
|
|
|
310
342
|
---
|
package/index.js
CHANGED
|
@@ -167,4 +167,46 @@ program
|
|
|
167
167
|
}
|
|
168
168
|
});
|
|
169
169
|
|
|
170
|
+
program
|
|
171
|
+
.command('update')
|
|
172
|
+
.description('Atualiza skills, agents e workflows do projeto atual com a versão mais recente do kit')
|
|
173
|
+
.option('-s, --skills', 'Atualiza apenas as skills')
|
|
174
|
+
.option('-a, --agents', 'Atualiza apenas os agents')
|
|
175
|
+
.option('-w, --workflows', 'Atualiza apenas os workflows')
|
|
176
|
+
.action(async (options) => {
|
|
177
|
+
const updateAll = !options.skills && !options.agents && !options.workflows;
|
|
178
|
+
|
|
179
|
+
console.log(chalk.cyan('\n🔄 Atualizando kit do Antigravity...\n'));
|
|
180
|
+
|
|
181
|
+
const tasks = [];
|
|
182
|
+
|
|
183
|
+
if (updateAll || options.skills) {
|
|
184
|
+
tasks.push({ label: 'skills', src: path.join(__dirname, '.agent', 'skills'), dest: path.join(process.cwd(), '.agent', 'skills') });
|
|
185
|
+
}
|
|
186
|
+
if (updateAll || options.agents) {
|
|
187
|
+
tasks.push({ label: 'agents', src: path.join(__dirname, '.agent', 'agents'), dest: path.join(process.cwd(), '.agent', 'agents') });
|
|
188
|
+
}
|
|
189
|
+
if (updateAll || options.workflows) {
|
|
190
|
+
tasks.push({ label: 'workflows', src: path.join(__dirname, '.agent', 'workflows'), dest: path.join(process.cwd(), '.agent', 'workflows') });
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
for (const task of tasks) {
|
|
194
|
+
if (!await fs.pathExists(task.src)) {
|
|
195
|
+
console.log(chalk.yellow(` ⚠️ Fonte não encontrada: ${task.label} (${task.src})`));
|
|
196
|
+
continue;
|
|
197
|
+
}
|
|
198
|
+
try {
|
|
199
|
+
await fs.ensureDir(task.dest);
|
|
200
|
+
await fs.copy(task.src, task.dest, { overwrite: true });
|
|
201
|
+
console.log(chalk.green(` ✅ ${task.label}: atualizado com sucesso`));
|
|
202
|
+
} catch (err) {
|
|
203
|
+
console.error(chalk.red(` ❌ ${task.label}: erro — ${err.message}`));
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
console.log(chalk.cyan.bold('\n✨ Atualização concluída!\n'));
|
|
208
|
+
console.log(chalk.gray('💡 Dica: reinicie o Antigravity para carregar as novas skills/workflows.\n'));
|
|
209
|
+
});
|
|
210
|
+
|
|
170
211
|
program.parse();
|
|
212
|
+
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ruyfranca/myskills",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.25",
|
|
4
4
|
"description": "Biblioteca de skills customizadas para Antigravity / Claude Code",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"bin": {
|
|
@@ -8,7 +8,8 @@
|
|
|
8
8
|
},
|
|
9
9
|
"type": "module",
|
|
10
10
|
"scripts": {
|
|
11
|
-
"test": "echo \"Error: no test specified\" && exit 1"
|
|
11
|
+
"test": "echo \"Error: no test specified\" && exit 1",
|
|
12
|
+
"update": "node index.js update"
|
|
12
13
|
},
|
|
13
14
|
"keywords": [
|
|
14
15
|
"claude",
|