@pixeleducacao/curso-openclaw 2026.5.8 → 2026.5.9
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/assets/skills/_registry.md +41 -13
- package/assets/skills/operacional/_registry.md +6 -0
- package/assets/skills/operacional/backup-workspace-github/SKILL.md +39 -3
- package/assets/skills/operacional/commit-diario-workspace/SKILL.md +233 -0
- package/assets/skills/operacional/cron-resume-wizards/SKILL.md +329 -0
- package/assets/skills/operacional/seguranca-checklist/SKILL.md +202 -0
- package/assets/skills/starter/_registry.md +13 -9
- package/assets/skills/starter/continuar-jornada/SKILL.md +358 -0
- package/assets/skills/starter/gera-log-jornada/SKILL.md +338 -0
- package/assets/skills/starter/onboarding-checklist/SKILL.md +416 -88
- package/assets/skills/starter/onboarding-checklist/references/arquivos-raiz.md +44 -16
- package/assets/skills/starter/onboarding-checklist/references/aula-menus.md +304 -0
- package/assets/skills/starter/onboarding-checklist/references/checklist-template.md +70 -1
- package/assets/skills/starter/onboarding-checklist/references/comandos-canonicos.md +337 -9
- package/assets/skills/starter/onboarding-checklist/references/mapa-aulas.md +17 -12
- package/assets/skills/starter/onboarding-checklist/references/principios-defensivos.md +772 -0
- package/assets/skills/starter/onboarding-checklist/references/sistema-de-mapas.md +2 -2
- package/assets/skills/starter/onboarding-checklist/references/wizard-header-template.md +51 -0
- package/assets/skills/starter/primeira-vitoria/SKILL.md +448 -53
- package/assets/skills/starter/primeira-vitoria/evals/evals.json +2 -2
- package/assets/skills/starter/wizard-agente/SKILL.md +123 -17
- package/assets/skills/starter/wizard-agente/evals/evals.json +3 -3
- package/assets/skills/starter/wizard-aluno/SKILL.md +28 -3
- package/assets/skills/starter/wizard-aluno/evals/evals.json +1 -1
- package/assets/skills/starter/wizard-autonomia/SKILL.md +157 -27
- package/assets/skills/starter/wizard-autonomia/evals/evals.json +2 -2
- package/assets/skills/starter/wizard-autonomia/screenshots/painel-hostinger-cli.jpg +0 -0
- package/assets/skills/starter/wizard-conectar/SKILL.md +382 -74
- package/assets/skills/starter/wizard-conectar/screenshots/github-pat/01-avatar-settings.png +0 -0
- package/assets/skills/starter/wizard-conectar/screenshots/github-pat/02-developer-settings.png +0 -0
- package/assets/skills/starter/wizard-conectar/screenshots/github-pat/03-tokens-classic.png +0 -0
- package/assets/skills/starter/wizard-conectar/screenshots/github-pat/04-generate-classic.png +0 -0
- package/assets/skills/starter/wizard-whisper-quick/SKILL.md +160 -23
- package/assets/skills/starter/wizard-workspace/SKILL.md +23 -4
- package/assets/skills/starter/wizard-workspace/evals/evals.json +1 -1
- package/assets/templates/HEARTBEAT.template.md +58 -0
- package/assets/templates/README.md +65 -13
- package/assets/templates/SOUL-stub.template.md +1 -1
- package/assets/templates/template-material-didatico.html +457 -0
- package/assets/templates/template-report-executivo.html +368 -0
- package/assets/templates/template-report.html +370 -0
- package/package.json +1 -1
|
@@ -3,15 +3,42 @@ name: wizard-agente
|
|
|
3
3
|
status: ATIVO
|
|
4
4
|
category: starter
|
|
5
5
|
owner: aluno
|
|
6
|
-
version: 1.
|
|
6
|
+
version: 1.3
|
|
7
7
|
mode: guided
|
|
8
8
|
estimated_time: 4min (ou 1min se já configurado)
|
|
9
9
|
model_compatible: [gpt-5, gpt-5.5, claude-sonnet-4, claude-opus-4, gemini-pro]
|
|
10
|
-
description: Use when student types "configura agente" / "cria identidade do agente", OR when dispatched by onboarding-checklist as passo 1. Creates IDENTITY.md (nome, gênero, modelo, agent_id) + SOUL.md stub (tom geral, 1 anti-pattern) + AGENTS.md (boot sequence, red lines mínimas). Stub-first approach — SOUL completo só na
|
|
10
|
+
description: Use when student types "configura agente" / "cria identidade do agente", OR when dispatched by onboarding-checklist as passo 1. Creates IDENTITY.md (nome, gênero, modelo, agent_id) + SOUL.md stub (tom geral, 1 anti-pattern) + AGENTS.md (boot sequence, red lines mínimas). Stub-first approach — SOUL completo só na Aula 5. Detects existing files first (Princípio 1 + 11). Templates Amora opt-in via comando "exemplo". **v1.3 (kit v2.5.2 — fix Adrylan loop transição): Mensagem canonical "Estado Parcial" NOVA usa LETRAS `a/b` (não `1/2`) — anti-colisão com whisper-quick passo 1.5. Plus: bloco TRANSIÇÃO whisper→wizard-agente com sequência canonical de 2 mensagens separadas (confirmação A + abertura B com marcador inequívoco). Caso real Adrylan: 3 turnos perdidos por ambiguidade entre `2` (whisper definitivo) e `2` (wizard-agente refazer).** v1.2 (kit v2.4 — stress test multi-persona): quando detecta IDENTITY/SOUL/AGENTS preenchidos manualmente (caso Rodrigo VPS root legado), agente AGORA OFERECE EXPLICITAMENTE Princípio 6 (preservar/ajustar/refazer) — antes pulava direto pra pergunta-âncora sem dar opção de mexer. P6 já estava documentado mas não aplicado nesse caminho.** v1.1 (kit v2.2): header com Princípios 13/14/15 explícitos.
|
|
11
11
|
---
|
|
12
12
|
|
|
13
13
|
# Wizard Agente — Passo 1 (Personalidade do agente)
|
|
14
14
|
|
|
15
|
+
> 🔴 **PRINCÍPIOS NÃO-NEGOCIÁVEIS PRO AGENTE (kit v2.2):**
|
|
16
|
+
>
|
|
17
|
+
> **NÃO IMPROVISE.** Read este arquivo INTEIRO antes de falar com aluno. Não invente fluxo simplificado.
|
|
18
|
+
>
|
|
19
|
+
> **P13 — Guard Rail (wizard é passo bloqueante).** Toda mensagem do aluno é classificada:
|
|
20
|
+
> - (a) resposta direta → processa, avança
|
|
21
|
+
> - (b) comando canônico (`cancela`, `pula`, `voltar N`, `sobre`, `faq`, `corrige`, `muda modo`) → honra
|
|
22
|
+
> - (c1) pergunta tangencial → responde 1 linha, traz de volta ao passo
|
|
23
|
+
> - (c2) desvio total → anota em `## Perguntas pendentes` (MEMORY.md), traz de volta
|
|
24
|
+
> - 3 desvios consecutivos no mesmo passo → oferecer pause com `wizard_resume_at` agendado
|
|
25
|
+
>
|
|
26
|
+
> **P14 — Smoke tests visíveis.** Comando externo SEMPRE mostra (1) comando exato em bloco de código, (2) output literal em bloco de código, (3) só DEPOIS interpreta/narra. Sem evidência = ABORTA e pede ajuda. NUNCA finge que rodou.
|
|
27
|
+
>
|
|
28
|
+
> **P15 — Mensagens `<canonical>` literais.** Trechos marcados `<canonical>...</canonical>` usam LITERAL. Não reformula, não "melhora", não substitui exemplos. Ajustar TOM (formal/casual via SOUL.md) é OK; estrutura/ordem/keywords técnicas preservadas.
|
|
29
|
+
>
|
|
30
|
+
> **P17 — Formatação Telegram-friendly.** Mensagens canonical pro aluno usam parágrafos contínuos (1 linha por parágrafo). NÃO quebrar manualmente a cada ~70 chars — Telegram faz word-wrap natural. Pergunta-âncora "como você apresenta seu agente pra cliente?" entra como parágrafo único.
|
|
31
|
+
>
|
|
32
|
+
> Detalhes: `../onboarding-checklist/references/principios-defensivos.md` (P1–P17).
|
|
33
|
+
|
|
34
|
+
> ⚠️ **ANTI-PRESUNÇÃO (kit v2.2 — Princípio 16 aplicado a este wizard):**
|
|
35
|
+
>
|
|
36
|
+
> NÃO presumir identidade do agente baseado em conversa anterior. Mesmo que aluno tenha mencionado nome desejado, profissão, contexto ou tom em mensagens anteriores, **começar pela Detecção (P11)** + perguntas canônicas deste wizard. Não pular passos "porque já sei a resposta".
|
|
37
|
+
>
|
|
38
|
+
> Falha real (NC, 03/05): agente ofereceu *"propor identidade inicial pra mim e você só ajusta"* como alternativa ao wizard — improvisação que quebra P1 (modificar arquivo raiz sem backup) + P11 (detectar antes de propor) + P16 (entry point literal).
|
|
39
|
+
>
|
|
40
|
+
> Em vez de propor, **invocar wizard normalmente, deixar o aluno responder cada pergunta canonical**. Aluno valida 1 pergunta de cada vez = sensação de tutor. Pré-preenchimento sem validação = bot adivinhando, e adivinha errado em 2 dias.
|
|
41
|
+
|
|
15
42
|
## Promessa
|
|
16
43
|
|
|
17
44
|
Em 4 minutos, aluno transforma "agente genérico que responde tudo igual ChatGPT" em "agente com nome, tom de voz e jeito específico". 3 arquivos criados (IDENTITY, SOUL stub, AGENTS) que o agente lê toda mensagem.
|
|
@@ -67,23 +94,102 @@ c) Cancelar"
|
|
|
67
94
|
| Estado | Ação |
|
|
68
95
|
|---|---|
|
|
69
96
|
| **Tudo preenchido** | "✓ Detectei que IDENTITY, SOUL e AGENTS já estão preenchidos. Validei rapidinho. Não precisa fazer nada nesse passo. Marquei como feito." Vai direto pra pergunta-âncora. |
|
|
70
|
-
| **Parcial (1-2 prontos)** | Lista o que tá pronto + o que falta. Pergunta
|
|
97
|
+
| **Parcial (1-2 prontos)** | Lista o que tá pronto + o que falta. Pergunta canonical (kit v2.5.2): usa LETRAS `a/b` (NÃO `1/2`) — ver mensagem canonical "Estado Parcial" abaixo. |
|
|
71
98
|
| **Nada feito** | Fluxo normal (entrevista) |
|
|
72
99
|
| **Existe mas é template não-preenchido** | Tratar como "nada feito" mas avisar: "Detectei IDENTITY.md mas tá com placeholders ainda — vou completar agora" |
|
|
73
100
|
|
|
74
|
-
### Mensagem
|
|
101
|
+
### Mensagem canonical — Estado Parcial (kit v2.5.2 — fix Adrylan loop)
|
|
102
|
+
|
|
103
|
+
⚠️ **ANTI-COLISÃO de numeração:** anterior usava `1. completar / 2. refazer`. Quando despachado após wizard-whisper-quick (que pergunta `1/2` agendar/definitivo), aluno respondendo `"2"` gera ambiguidade — bot pode interpretar como resposta do whisper. Caso real Adrylan: 3 turnos perdidos no loop.
|
|
104
|
+
|
|
105
|
+
**Texto canonical (P15 — literal):**
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
"Detectei que parte da personalidade do agente já está configurada:
|
|
109
|
+
|
|
110
|
+
- IDENTITY.md → {placeholders/template | preenchido}
|
|
111
|
+
- SOUL.md → {placeholder/template | preenchido}
|
|
112
|
+
- AGENTS.md → {placeholder/template | preenchido}
|
|
113
|
+
|
|
114
|
+
Como você prefere seguir?
|
|
115
|
+
|
|
116
|
+
a) **Completar só o que falta** — preencho IDENTITY (e/ou outro arquivo placeholder), preservo o resto
|
|
117
|
+
b) **Refazer tudo** — backup do atual + recrio IDENTITY/SOUL/AGENTS canonical
|
|
118
|
+
|
|
119
|
+
Manda **a** ou **b** (NÃO use 1/2 — pode causar confusão com whisper anterior)."
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
**Substituir variáveis** conforme estado real detectado em cada arquivo (placeholder vs preenchido).
|
|
123
|
+
|
|
124
|
+
**Comportamento por resposta:**
|
|
125
|
+
|
|
126
|
+
| Resposta | Ação |
|
|
127
|
+
|---|---|
|
|
128
|
+
| `a` ou "completar" / "só o que falta" | Modo edição parcial — preenche só placeholders, preserva resto |
|
|
129
|
+
| `b` ou "refazer" / "tudo do zero" | Aplica P1 (backup timestamped) + roda fluxo principal (entrevista do passo 1) |
|
|
130
|
+
| Resposta ambígua | Repetir as 2 opções uma vez (P15+P7 — não inferir) |
|
|
131
|
+
|
|
132
|
+
### ⚠️ TRANSIÇÃO entre wizard-whisper-quick e wizard-agente (kit v2.5.2 — fix Adrylan loop)
|
|
133
|
+
|
|
134
|
+
⚠️ **CRÍTICO:** wizard-agente é frequentemente despachado IMEDIATAMENTE após wizard-whisper-quick (que pergunta `1/2` em "agendar vs definitivo"). Sem marcador de transição inequívoco + opções com letras diferentes, aluno que responde "2" gera ambiguidade — bot pode interpretar como wizard-whisper.passo1.5 OU wizard-agente.passo1.
|
|
135
|
+
|
|
136
|
+
**Sequência canonical de TRANSIÇÃO (P15 literal):**
|
|
137
|
+
|
|
138
|
+
Quando despachado após whisper:
|
|
139
|
+
|
|
140
|
+
1. **Mensagem de confirmação curta do whisper (separada):**
|
|
141
|
+
```
|
|
142
|
+
"✓ Whisper {pulado definitivo | configurado | agendado pra 24h}. {1 frase de fechamento}."
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
2. **Mensagem de abertura wizard-agente (separada, marcador inequívoco):**
|
|
146
|
+
```
|
|
147
|
+
"Agora vamos pra **personalidade do agente** (passo 1 da jornada — IDENTITY/SOUL/AGENTS).
|
|
148
|
+
|
|
149
|
+
{conteúdo da detecção P11 + perguntas com opções em letras `a/b/c` ou palavras, NÃO `1/2`}"
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
3. **MEMORY.md ATUALIZADO ANTES da 2ª mensagem:**
|
|
153
|
+
```yaml
|
|
154
|
+
active_wizard: wizard-agente
|
|
155
|
+
active_step: 1
|
|
156
|
+
awaiting: detection_result_or_choice
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
**REGRA ANTI-COLISÃO:** todas as opções de wizard-agente que pediriam ao aluno escolher entre `1/2` agora usam **letras** (`a/b/c`) OU **palavras-chave** (`manter`/`ajustar`/`refazer`). Razão: whisper passo 1.5 usa `1/2` — colisão de respostas curtas é silenciosa e gera loop (caso Adrylan, 3 turnos perdidos).
|
|
160
|
+
|
|
161
|
+
### Mensagem padrão ao detectar 100% pronto (REESCRITA em kit v2.4 — P6 explícito)
|
|
162
|
+
|
|
163
|
+
⚠️ **Mudança v1.2 (kit v2.4):** quando detecta arquivos preenchidos com conteúdo manual (não-template), agente DEVE oferecer Princípio 6 — preservar / ajustar / refazer. Antes (v1.1) pulava direto pra pergunta-âncora sem dar opção de mexer. Caso real Rodrigo (VPS root legado, IDENTITY editado manualmente meses atrás): aluno NUNCA via opção de modificar trabalho prévio dentro deste passo.
|
|
164
|
+
|
|
165
|
+
⚠️ **Detecção "conteúdo manual" vs "template canonical":** comparar com template `IDENTITY.template.md`. Se difere significativamente (ex: estrutura customizada, anti-patterns próprios, tom específico) → tratar como **manual** e oferecer P6. Se é template não-preenchido (placeholders ainda lá) → fluxo normal de entrevista.
|
|
166
|
+
|
|
167
|
+
**Texto canonical (P15 — literal):**
|
|
75
168
|
|
|
76
169
|
```
|
|
77
170
|
"✓ Detectei seu agente já configurado:
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
171
|
+
- IDENTITY.md → nome: {nome_extraído} ({tamanho_bytes} bytes)
|
|
172
|
+
- SOUL.md → {N} linhas de personalidade ({tamanho_bytes} bytes)
|
|
173
|
+
- AGENTS.md → red lines configuradas ({tamanho_bytes} bytes)
|
|
81
174
|
|
|
82
|
-
|
|
175
|
+
Os arquivos têm conteúdo customizado (não-template). Princípio 6 (respeitar customização) — você decide o que fazer:
|
|
83
176
|
|
|
84
|
-
|
|
177
|
+
a) **Manter como está** — não toco em nada, só rodo a pergunta-âncora pra fechar o passo
|
|
178
|
+
b) **Ajustar trecho específico** — me diz o que quer mudar (ex: 'mudar tom pra mais formal'), eu mexo só nisso
|
|
179
|
+
c) **Refazer do zero** — backup do atual em `~/backups/`, depois entrevista canonical (4min)
|
|
180
|
+
|
|
181
|
+
Manda 'a', 'b' ou 'c'. Default seguro = 'a' (não mexer)."
|
|
85
182
|
```
|
|
86
183
|
|
|
184
|
+
**Comportamento por resposta:**
|
|
185
|
+
|
|
186
|
+
| Resposta | Ação |
|
|
187
|
+
|---|---|
|
|
188
|
+
| `a` ou "mantém" / "deixa" / "tá bom" | Vai direto pra pergunta-âncora (passo 9). Marca `agente_configured: true` (já estava). |
|
|
189
|
+
| `b` ou "ajustar" / "muda X" | Pergunta o que mudar especificamente. Despacha modo edição parcial — backup + edit cirúrgico no trecho mencionado. |
|
|
190
|
+
| `c` ou "refazer" / "do zero" | Aplica Princípio 1 (backup timestamped) + roda fluxo principal (passo 1 entrevista) com flag `redo_from_existing: true` (mostra valores antigos como sugestão). |
|
|
191
|
+
| Resposta ambígua | Repetir as 3 opções uma vez. Se persistir ambíguo, default seguro: `a` (não mexer). |
|
|
192
|
+
|
|
87
193
|
## Fluxo principal (entrevista)
|
|
88
194
|
|
|
89
195
|
### 1. Narrar o que vai acontecer
|
|
@@ -94,7 +200,7 @@ daqui com 3 arquivos no seu workspace:
|
|
|
94
200
|
|
|
95
201
|
1. IDENTITY.md → bilhete de identidade do agente (nome, modelo, etc)
|
|
96
202
|
2. SOUL.md → como ele pensa e fala (versão STUB de 5 linhas, vai
|
|
97
|
-
crescer na
|
|
203
|
+
crescer na Aula 5)
|
|
98
204
|
3. AGENTS.md → regras de comportamento (boot sequence + red lines)
|
|
99
205
|
|
|
100
206
|
Esses arquivos ficam vivos no workspace. Toda vez que o agente vai
|
|
@@ -201,7 +307,7 @@ Antes de escrever qualquer arquivo, mostrar resumo:
|
|
|
201
307
|
📄 SOUL.md (stub de 5 linhas)
|
|
202
308
|
Tom: {tom_agente}
|
|
203
309
|
Anti-pattern: {anti_pattern}
|
|
204
|
-
[SOUL completo na
|
|
310
|
+
[SOUL completo na Aula 5]
|
|
205
311
|
|
|
206
312
|
📄 AGENTS.md
|
|
207
313
|
Boot sequence padrão (lê SOUL → USER → MAPA)
|
|
@@ -261,7 +367,7 @@ Confirmar:
|
|
|
261
367
|
```
|
|
262
368
|
"✓ Criados:
|
|
263
369
|
- /workspace/IDENTITY.md ({tamanho} bytes)
|
|
264
|
-
- /workspace/SOUL.md ({tamanho} bytes — stub, vai crescer na
|
|
370
|
+
- /workspace/SOUL.md ({tamanho} bytes — stub, vai crescer na Aula 5)
|
|
265
371
|
- /workspace/AGENTS.md ({tamanho} bytes)
|
|
266
372
|
|
|
267
373
|
A partir de agora eu vou ler esses 3 arquivos toda vez que for
|
|
@@ -288,7 +394,7 @@ Sempre fechar com:
|
|
|
288
394
|
|
|
289
395
|
```
|
|
290
396
|
"Se quer aprofundar identidade do agente, a aula que detalha isso
|
|
291
|
-
é a *B1* (Identidade completa) — manda 'aula
|
|
397
|
+
é a *B1* (Identidade completa) — manda 'aula 5' que eu te passo o link.
|
|
292
398
|
|
|
293
399
|
E se ficou alguma dúvida que eu não cobri, dois caminhos no grupo:
|
|
294
400
|
- resposta rápida 24/7: chama @Openclawzinho (bot IA) no tópico Suporte
|
|
@@ -343,13 +449,13 @@ Agora que viu, me manda como você quer pro {nome_agente}."
|
|
|
343
449
|
- [ ] `agente_configured=true` em `MEMORY.md`
|
|
344
450
|
- [ ] `onboarding_current_step=2` (avançou)
|
|
345
451
|
- [ ] Pergunta-âncora respondida (qualquer resposta — agente valida ou corrige)
|
|
346
|
-
- [ ] Aula
|
|
452
|
+
- [ ] Aula 5 mencionada no fim
|
|
347
453
|
|
|
348
454
|
## Erros comuns
|
|
349
455
|
|
|
350
456
|
- **Aluno trava no nome:** se pediu "exemplo" 2x e ainda tá indeciso, sugerir "Você pode começar com qualquer nome. Mudar depois é trivial — manda 'muda nome' que refaço. Sem peso. Manda o que veio agora."
|
|
351
457
|
- **Aluno responde algo vazio (ex: "tipo a Siri"):** pedir mais especificidade. "Siri tem traços específicos — formal, tom neutro, briga com sotaque. É isso que você quer? Ou 'tipo a Siri' é só uma analogia? Me dá 1 frase de como ele falaria com você."
|
|
352
|
-
- **Aluno quer SOUL completo já:** explicar tensão
|
|
458
|
+
- **Aluno quer SOUL completo já:** explicar tensão Aula 5. "SOUL completo na entrada é cedo demais — você ainda não sabe o que QUER que o agente seja. A versão stub agora (5 linhas) já funciona. Aula 5 expande quando você já tem feeling do uso real."
|
|
353
459
|
- **Aluno pulou Whisper e tá digitando entrevista:** OK, mas mencionar uma vez "se quiser, depois desse passo dá pra ativar áudio com 'configura whisper'".
|
|
354
460
|
|
|
355
461
|
## Aplicação dos princípios defensivos
|
|
@@ -371,7 +477,7 @@ Esta skill herda os princípios universais da `onboarding-checklist`. Ver: [`../
|
|
|
371
477
|
**Modo A (aula-por-aula):**
|
|
372
478
|
```
|
|
373
479
|
"Bora pro Módulo 1 — Personalidade do agente.
|
|
374
|
-
Aula correspondente:
|
|
480
|
+
Aula correspondente: Aula 5 (Identidade, Soul, Agents, User).
|
|
375
481
|
Recomendo assistir antes pra entender por que o SOUL é stub agora
|
|
376
482
|
e completa só depois."
|
|
377
483
|
[entrevista numerada: 'pergunta 1 de 4', 'pergunta 2 de 4'...]
|
|
@@ -389,7 +495,7 @@ Mesma lógica, fluxo, princípios. Só apresentação muda.
|
|
|
389
495
|
## Templates usados (em starter-kit/templates/)
|
|
390
496
|
|
|
391
497
|
- `IDENTITY.template.md` — template do IDENTITY com placeholders
|
|
392
|
-
- `SOUL-stub.template.md` — template do SOUL stub (5-10 linhas, expansão na
|
|
498
|
+
- `SOUL-stub.template.md` — template do SOUL stub (5-10 linhas, expansão na Aula 5)
|
|
393
499
|
- `AGENTS.template.md` — template do AGENTS com boot sequence + red lines mínimas
|
|
394
500
|
|
|
395
501
|
Wizard substitui placeholders e salva no workspace do aluno.
|
|
@@ -71,7 +71,7 @@
|
|
|
71
71
|
"user": "automático",
|
|
72
72
|
"expected_agent_behavior": [
|
|
73
73
|
"valida resposta correta",
|
|
74
|
-
"menciona
|
|
74
|
+
"menciona Aula 5 + grupo",
|
|
75
75
|
"marca agente_configured=true",
|
|
76
76
|
"atualiza onboarding_current_step=2",
|
|
77
77
|
"devolve controle pra onboarding-checklist"
|
|
@@ -83,13 +83,13 @@
|
|
|
83
83
|
"agente_configured=true em MEMORY.md",
|
|
84
84
|
"decisão (nome, gênero, tom, anti-pattern) registrada",
|
|
85
85
|
"onboarding_current_step=2",
|
|
86
|
-
"
|
|
86
|
+
"Aula 5 mencionada"
|
|
87
87
|
]
|
|
88
88
|
},
|
|
89
89
|
{
|
|
90
90
|
"id": "ja-configurado-detecta-e-pula",
|
|
91
91
|
"name": "Aluno já tem os 3 arquivos preenchidos",
|
|
92
|
-
"description": "Cenário comum quando aluno seguiu
|
|
92
|
+
"description": "Cenário comum quando aluno seguiu Aula 5 antes do kit, ou rodou wizard antes em sessão anterior.",
|
|
93
93
|
"setup": {
|
|
94
94
|
"workspace_state": "IDENTITY+SOUL+AGENTS preenchidos",
|
|
95
95
|
"memory_flags": {}
|
|
@@ -3,15 +3,40 @@ name: wizard-aluno
|
|
|
3
3
|
status: ATIVO
|
|
4
4
|
category: starter
|
|
5
5
|
owner: aluno
|
|
6
|
-
version: 1.
|
|
6
|
+
version: 1.1
|
|
7
7
|
mode: guided
|
|
8
8
|
estimated_time: 3min (ou 30s se já configurado)
|
|
9
9
|
model_compatible: [gpt-5, gpt-5.5, claude-sonnet-4, claude-opus-4, gemini-pro]
|
|
10
|
-
description: Use when student types "configura usuário" / "cria meu perfil" / "USER.md", OR when dispatched by onboarding-checklist as passo 2. Creates USER.md with student's basic info (nome, timezone, o que faz, tom preferido). Detects existing USER.md first (Princípio 11). Templates Amora opt-in via "exemplo". Pergunta-âncora: "onde isso ficou salvo? edit direto pega automático?".
|
|
10
|
+
description: Use when student types "configura usuário" / "cria meu perfil" / "USER.md", OR when dispatched by onboarding-checklist as passo 2. Creates USER.md with student's basic info (nome, timezone, o que faz, tom preferido). Detects existing USER.md first (Princípio 11). Templates Amora opt-in via "exemplo". Pergunta-âncora: "onde isso ficou salvo? edit direto pega automático?". v1.1 (kit v2.2): header com Princípios 13/14/15 explícitos no topo (auditoria pós-v2.1).
|
|
11
11
|
---
|
|
12
12
|
|
|
13
13
|
# Wizard Aluno — Passo 2 (Personalidade do aluno)
|
|
14
14
|
|
|
15
|
+
> 🔴 **PRINCÍPIOS NÃO-NEGOCIÁVEIS PRO AGENTE (kit v2.2):**
|
|
16
|
+
>
|
|
17
|
+
> **NÃO IMPROVISE.** Read este arquivo INTEIRO antes de falar com aluno. Não invente fluxo simplificado.
|
|
18
|
+
>
|
|
19
|
+
> **P13 — Guard Rail (wizard é passo bloqueante).** Toda mensagem do aluno é classificada:
|
|
20
|
+
> - (a) resposta direta → processa, avança
|
|
21
|
+
> - (b) comando canônico (`cancela`, `pula`, `voltar N`, `sobre`, `faq`, `corrige`, `muda modo`) → honra
|
|
22
|
+
> - (c1) pergunta tangencial → responde 1 linha, traz de volta ao passo
|
|
23
|
+
> - (c2) desvio total → anota em `## Perguntas pendentes` (MEMORY.md), traz de volta
|
|
24
|
+
> - 3 desvios consecutivos no mesmo passo → oferecer pause com `wizard_resume_at` agendado
|
|
25
|
+
>
|
|
26
|
+
> **P14 — Smoke tests visíveis.** Comando externo SEMPRE mostra (1) comando exato em bloco de código, (2) output literal em bloco de código, (3) só DEPOIS interpreta/narra. Sem evidência = ABORTA e pede ajuda. NUNCA finge que rodou.
|
|
27
|
+
>
|
|
28
|
+
> **P15 — Mensagens `<canonical>` literais.** Trechos marcados `<canonical>...</canonical>` usam LITERAL. Não reformula, não "melhora", não substitui exemplos. Ajustar TOM (formal/casual via SOUL.md) é OK; estrutura/ordem/keywords técnicas preservadas.
|
|
29
|
+
>
|
|
30
|
+
> **P17 — Formatação Telegram-friendly.** Mensagens canonical pro aluno usam parágrafos contínuos (1 linha por parágrafo). NÃO quebrar manualmente a cada ~70 chars — Telegram faz word-wrap natural.
|
|
31
|
+
>
|
|
32
|
+
> Detalhes: `../onboarding-checklist/references/principios-defensivos.md` (P1–P17).
|
|
33
|
+
|
|
34
|
+
> ⚠️ **ANTI-PRESUNÇÃO (kit v2.2 — Princípio 16 aplicado a este wizard):**
|
|
35
|
+
>
|
|
36
|
+
> NÃO presumir dados do USER baseado em conversa anterior. Mesmo que aluno tenha mencionado nome, timezone, profissão, ou tom em mensagens anteriores, **começar pela Detecção (P11)** + perguntas canônicas deste wizard. Não pular passos "porque já sei a resposta".
|
|
37
|
+
>
|
|
38
|
+
> Em vez de pré-preencher USER.md baseado em "intuição da conversa", invocar wizard normalmente. Cada campo confirmado pelo aluno = USER.md preciso. Pré-preenchido sem validação = USER.md errado em 2 dias.
|
|
39
|
+
|
|
15
40
|
## Promessa
|
|
16
41
|
|
|
17
42
|
Em 3 minutos, agente passa a saber quem é o aluno: nome real, timezone, o que faz, jeito de falar preferido. 1 arquivo (`USER.md`) que o agente lê toda mensagem.
|
|
@@ -227,7 +252,7 @@ Fechar com:
|
|
|
227
252
|
```
|
|
228
253
|
"Se quer aprofundar como o agente usa USER.md (e qual a diferença
|
|
229
254
|
pra MEMORY.md), a aula que detalha isso é a *B1* (Identidade
|
|
230
|
-
completa) — manda 'aula
|
|
255
|
+
completa) — manda 'aula 5' que eu te passo o link.
|
|
231
256
|
|
|
232
257
|
E se ficou alguma dúvida que eu não cobri, dois caminhos no grupo:
|
|
233
258
|
- resposta rápida 24/7: chama @Openclawzinho (bot IA) no tópico Suporte
|
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
"user": "USER.md no workspace, sim automático",
|
|
67
67
|
"expected_agent_behavior": [
|
|
68
68
|
"valida resposta",
|
|
69
|
-
"menciona
|
|
69
|
+
"menciona Aula 5 + grupo",
|
|
70
70
|
"marca aluno_configured=true",
|
|
71
71
|
"salva nome_aluno=Carlos em MEMORY",
|
|
72
72
|
"atualiza onboarding_current_step=3",
|
|
@@ -3,22 +3,88 @@ name: wizard-autonomia
|
|
|
3
3
|
status: ATIVO
|
|
4
4
|
category: starter
|
|
5
5
|
owner: aluno
|
|
6
|
-
version: 1.
|
|
6
|
+
version: 1.7
|
|
7
7
|
mode: guided
|
|
8
|
-
estimated_time: 5min (manual no terminal
|
|
8
|
+
estimated_time: 5min (manual no terminal — Managed CLI ou SSH VPS root)
|
|
9
9
|
model_compatible: [gpt-5, gpt-5.5, claude-sonnet-4, claude-opus-4, gemini-pro]
|
|
10
|
-
description: Use when student types "libera autonomia" / "ativa yolo" / "configura exec-policy", OR when dispatched by onboarding-checklist as passo 3. Guides student to manually run `openclaw exec-policy preset yolo` in the
|
|
10
|
+
description: Use when student types "libera autonomia" / "ativa yolo" / "configura exec-policy", OR when dispatched by onboarding-checklist as passo 3. Guides student to manually run `openclaw exec-policy preset yolo` in the appropriate terminal (Princípio 3 — agent NEVER executes privilege elevation silently). Detects current state first via `openclaw exec-policy show`. **v1.7 (kit v2.5.2 — fix Adrylan P14 violado): header ganha bloco "P14 EXTRA-RÍGIDO" obrigando 3 mensagens em ordem (anúncio + comando → output literal → interpretação) na validação `openclaw exec-policy show`. Caso real Adrylan 13:57: bot anunciou validação e depois "exec-policy yolo confirmado" sem mostrar comando nem output. v2.5.2 obriga: passo 2 (output) NUNCA pode ser pulado.** v1.6 (kit v2.5 — stress test Letícia): caminho local-dev (Mac/Linux dev) ganha seção própria (2c) em vez de "tratar igual VPS root". Razão: aluno em Mac dev NÃO é root, aviso "porque você é root" + referência ao Pixel AI Hub (VPS hardening) confunde. v2.5 separa copy adequada ao contexto dev (sem aviso de root, sem Pixel AI Hub, sem SSH).** v1.5 (kit v2.2): header com Princípios 13/14/15 explícitos no topo. v1.3-1.4: BIFURCAÇÃO POR AMBIENTE (Managed vs VPS root). Salva flag `ambiente:` em MEMORY.md.
|
|
11
11
|
---
|
|
12
12
|
|
|
13
13
|
# Wizard Autonomia — Passo 3 (Liberar exec-policy yolo)
|
|
14
14
|
|
|
15
|
+
> 🔴 **PRINCÍPIOS NÃO-NEGOCIÁVEIS PRO AGENTE (kit v2.2):**
|
|
16
|
+
>
|
|
17
|
+
> **NÃO IMPROVISE.** Read este arquivo INTEIRO antes de falar com aluno. Não invente fluxo simplificado.
|
|
18
|
+
>
|
|
19
|
+
> **P13 — Guard Rail (wizard é passo bloqueante).** Toda mensagem do aluno é classificada:
|
|
20
|
+
> - (a) resposta direta → processa, avança
|
|
21
|
+
> - (b) comando canônico (`cancela`, `pula`, `voltar N`, `sobre`, `faq`, `corrige`, `muda modo`) → honra
|
|
22
|
+
> - (c1) pergunta tangencial → responde 1 linha, traz de volta ao passo
|
|
23
|
+
> - (c2) desvio total → anota em `## Perguntas pendentes` (MEMORY.md), traz de volta
|
|
24
|
+
> - 3 desvios consecutivos no mesmo passo → oferecer pause com `wizard_resume_at` agendado
|
|
25
|
+
>
|
|
26
|
+
> **P14 — Smoke tests visíveis.** `openclaw exec-policy show` SEMPRE mostra (1) comando exato em bloco de código, (2) output literal em bloco de código, (3) só DEPOIS interpreta. Sem evidência = ABORTA e pede ajuda. NUNCA finge que rodou.
|
|
27
|
+
>
|
|
28
|
+
> **P15 — Mensagens `<canonical>` literais.** A copy da pergunta de detecção (Managed vs ROOT) é CANONICAL — usar LITERAL na linguagem do aluno. Não reformula, não substitui pelos termos técnicos antigos.
|
|
29
|
+
>
|
|
30
|
+
> **P17 — Formatação Telegram-friendly.** Mensagens canonical pro aluno usam parágrafos contínuos (1 linha por parágrafo). NÃO quebrar manualmente a cada ~70 chars — Telegram faz word-wrap natural.
|
|
31
|
+
>
|
|
32
|
+
> Detalhes: `../onboarding-checklist/references/principios-defensivos.md` (P1–P17).
|
|
33
|
+
>
|
|
34
|
+
> ⚠️ **P14 EXTRA-RÍGIDO nesta skill (kit v2.5.2 — fix Adrylan):** validação `openclaw exec-policy show` foi violada repetidamente em testes reais (caso Adrylan 13:57 — bot disse "vou checar exec-policy" e depois "exec-policy yolo confirmado" SEM mostrar comando nem output). REGRA: cada validação tem 3 mensagens em ordem:
|
|
35
|
+
>
|
|
36
|
+
> 1. **Anúncio + comando:** "Vou checar exec-policy: `openclaw exec-policy show`"
|
|
37
|
+
> 2. **Output literal:** "Output: ```yolo``` (ou ```ask```)"
|
|
38
|
+
> 3. **Interpretação SÓ DEPOIS:** "✓ exec-policy = yolo, autonomia liberada"
|
|
39
|
+
>
|
|
40
|
+
> **NUNCA pular passo 2.** Se output não disponível, ABORTA + reporta honesto. NÃO finja sucesso.
|
|
41
|
+
|
|
42
|
+
> 🔴 **DETECÇÃO DE AMBIENTE OBRIGATÓRIA — antes de qualquer instrução de terminal (v1.4 / kit v1.9.2):**
|
|
43
|
+
>
|
|
44
|
+
> Este wizard tem 2 caminhos completamente diferentes dependendo de COMO o aluno instalou OpenClaw:
|
|
45
|
+
>
|
|
46
|
+
> - **Managed (instalação de 1 click no painel Hostinger)** → terminal web no painel (`hpanel.hostinger.com → OpenClaw → Abrir linha de comando (CLI)`) + mostra screenshot anexado
|
|
47
|
+
> - **ROOT (configurou no terminal da VPS)** → SSH que aluno já tem aberto (NÃO mencionar painel Hostinger, NÃO mostrar screenshot — vai confundir)
|
|
48
|
+
>
|
|
49
|
+
> **Sinais de ROOT/VPS** (qualquer um basta):
|
|
50
|
+
> - Aluno mencionou DigitalOcean, Hetzner, AWS, Vultr, Linode, Contabo, "minha VPS", "no SSH", "como root", "instalei pelo terminal"
|
|
51
|
+
> - Workspace em `/root/...` ou kit foi descomprimido via SSH em VPS
|
|
52
|
+
> - USER.md ou conversa indica perfil dev/sysadmin
|
|
53
|
+
>
|
|
54
|
+
> **Sinais de Managed:**
|
|
55
|
+
> - Aluno chegou via painel Hostinger, kit veio via Telegram do mini-curso
|
|
56
|
+
> - Workspace em `~/.openclaw/...` ou similar do Managed
|
|
57
|
+
> - Aluno mencionou "Hostinger", "painel", "1 click", "Managed"
|
|
58
|
+
>
|
|
59
|
+
> **Em dúvida: PERGUNTA ANTES, com linguagem que o aluno reconhece** (NÃO usar "Managed vs VPS root" como termos crus — aluno PME não conhece esses termos):
|
|
60
|
+
>
|
|
61
|
+
> ```
|
|
62
|
+
> "Antes de continuar, preciso saber como você instalou o OpenClaw:
|
|
63
|
+
>
|
|
64
|
+
> 1. **Managed OpenClaw** — instalação de 1 click pelo painel da Hostinger
|
|
65
|
+
> 2. **ROOT** — você configurou pelo terminal da sua VPS
|
|
66
|
+
>
|
|
67
|
+
> Manda 1 ou 2."
|
|
68
|
+
> ```
|
|
69
|
+
>
|
|
70
|
+
> **Razão da copy:** "Managed vs VPS root" como termos crus não são reconhecíveis pra aluno PME. "Instalação de 1 click vs configurou pelo terminal" é o que o aluno reconhece da própria experiência de compra/setup.
|
|
71
|
+
>
|
|
72
|
+
> Salvar a detecção em `MEMORY.md`:
|
|
73
|
+
> ```
|
|
74
|
+
> ambiente: managed | vps-root | local-dev
|
|
75
|
+
> ```
|
|
76
|
+
>
|
|
77
|
+
> Esta flag vira fonte de verdade pros wizards seguintes (`wizard-conectar` também tem caminhos diferentes). Onda 12 vai formalizar isso na `onboarding-checklist` mestre — por enquanto, cada wizard que tem caminho ramificado detecta sozinho.
|
|
78
|
+
|
|
15
79
|
## Promessa
|
|
16
80
|
|
|
17
81
|
Em ~5min, aluno transforma "agente que pede aprovação a cada coisinha" em "agente que executa direto e te avisa". Sem isso, a partir do passo 4 (workspace), aluno é interrompido a cada criação de pasta/arquivo/comando.
|
|
18
82
|
|
|
19
83
|
Este passo é o ÚNICO em que aluno cola comando no terminal manualmente. O agente NÃO executa esses comandos. Razão: Princípio 3 (comandos de elevação de privilégio jamais via agente).
|
|
20
84
|
|
|
21
|
-
|
|
85
|
+
⚠️ **Onde rodar o comando depende do ambiente** (detectado acima):
|
|
86
|
+
- **Managed Hostinger:** terminal web no painel (tutorial passo-a-passo abaixo, seção 2a)
|
|
87
|
+
- **VPS root:** SSH que aluno já tem aberto (instrução curta, seção 2b)
|
|
22
88
|
|
|
23
89
|
## Quando disparar
|
|
24
90
|
|
|
@@ -87,34 +153,94 @@ e eu volto a pedir aprovação a cada ação.
|
|
|
87
153
|
Bora?"
|
|
88
154
|
```
|
|
89
155
|
|
|
90
|
-
### 2. Tutorial — abrir
|
|
156
|
+
### 2. Tutorial — abrir terminal (BIFURCADO POR AMBIENTE — v1.3)
|
|
157
|
+
|
|
158
|
+
⚠️ **Use seção 2a OU 2b conforme `ambiente:` detectado no topo deste wizard. NUNCA mostre as duas pro mesmo aluno.**
|
|
159
|
+
|
|
160
|
+
#### 2a. Caminho Managed Hostinger
|
|
161
|
+
|
|
162
|
+
Aluno PME tipicamente nunca usou terminal. Isso aqui é a parte mais sensível do kit. Caminho EXATO no Hostinger.
|
|
91
163
|
|
|
92
|
-
|
|
164
|
+
**⚠️ Agente:** ao enviar a mensagem abaixo, ANEXE também o arquivo `screenshots/painel-hostinger-cli.jpg` (relativo a esta skill). Se a bridge do Telegram não suportar `sendPhoto`, mande o link raw permanente como fallback (já incluído no texto).
|
|
93
165
|
|
|
94
166
|
```
|
|
95
167
|
"Antes do comando, abre o terminal do seu OpenClaw Managed.
|
|
96
168
|
Sem SSH, sem Docker — é tudo no painel da Hostinger.
|
|
97
169
|
|
|
98
|
-
Caminho
|
|
170
|
+
Caminho exato (2 cliques):
|
|
99
171
|
|
|
100
172
|
1. Abre https://hpanel.hostinger.com/ (logado)
|
|
101
|
-
2.
|
|
102
|
-
|
|
103
|
-
3.
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
Quando estiver com a janela aberta e o prompt visível,
|
|
173
|
+
2. Sidebar esquerda → clica em **OpenClaw** (ícone de garra,
|
|
174
|
+
fica abaixo de VPS)
|
|
175
|
+
3. Na lista dos seus OpenClaws → embaixo do nome da sua instância
|
|
176
|
+
tem um link **'Abrir linha de comando (CLI)'** → clica aí
|
|
177
|
+
4. Abre janela com terminal preto. Aguarda 2-3s até aparecer o
|
|
178
|
+
prompt (algo tipo `$ `, indicando que tá pronto)
|
|
179
|
+
|
|
180
|
+
📷 [foto do painel mostra as 2 setas dos cliques — anexada acima]
|
|
181
|
+
|
|
182
|
+
Se a foto não chegou, é só esse link:
|
|
183
|
+
https://raw.githubusercontent.com/okjpg/repo-amora-cos/main/memory/curso-openclaw-v2/starter-kit/skills/starter/wizard-autonomia/screenshots/painel-hostinger-cli.jpg
|
|
184
|
+
|
|
185
|
+
Quando estiver com a janela aberta e o prompt visível, (quando quiser ir mais fundo em segurança VPS, tá no Pixel AI Hub)
|
|
114
186
|
'terminal aberto' aqui."
|
|
115
187
|
```
|
|
116
188
|
|
|
117
|
-
**Esperar aluno responder.** Se tentou e travou, ver "Caminho alternativo: aluno não acha o terminal" abaixo.
|
|
189
|
+
**Esperar aluno responder.** Se tentou e travou, ver "Caminho alternativo Managed: aluno não acha o terminal" abaixo.
|
|
190
|
+
|
|
191
|
+
#### 2b. Caminho VPS root
|
|
192
|
+
|
|
193
|
+
Aluno root em VPS já tem terminal/SSH aberto. **NÃO mostrar screenshot do painel Hostinger** (vai confundir, painel não existe). **NÃO mencionar `hpanel.hostinger.com`**. Instrução curta:
|
|
194
|
+
|
|
195
|
+
```
|
|
196
|
+
"Você já tá num terminal SSH como root na sua VPS, então pula
|
|
197
|
+
a parte de 'abrir terminal' — usa o que você já tem aberto.
|
|
198
|
+
|
|
199
|
+
⚠️ Aviso de segurança extra (porque você é root):
|
|
200
|
+
o modo 'yolo' libera eu executar direto SEM pedir aprovação. No
|
|
201
|
+
Managed isso fica contido no container do OpenClaw. Aqui na sua
|
|
202
|
+
VPS, eu sou root também — em teoria, posso tocar em qualquer coisa
|
|
203
|
+
do sistema se sair do escopo do workspace.
|
|
204
|
+
|
|
205
|
+
Eu continuo dentro do meu workspace (não saio dele) e narro tudo.
|
|
206
|
+
Mas se quiser blindar (rodar OpenClaw como user não-privilegiado,
|
|
207
|
+
firewall, etc), a Pixel AI Hub (VPS hardening avançado vai pra lá, fora do mini-curso) cobre. Manda
|
|
208
|
+
'pixel ai hub' depois quando quiser explorar trilha avançada.
|
|
209
|
+
|
|
210
|
+
Pra rodar o comando de yolo, veja a próxima mensagem."
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
(Pula a parte de "manda 'terminal aberto'" — aluno já tá no terminal.)
|
|
214
|
+
|
|
215
|
+
#### 2c. Caminho local-dev (kit v2.5 — fix Letícia stress test)
|
|
216
|
+
|
|
217
|
+
⚠️ **NOVO em v2.5:** local-dev (Mac/Linux dev local — não Managed, não VPS root) ganha caminho próprio em vez de "tratar igual VPS root". Razão: aluno em Mac dev NÃO é root e NÃO tem Pixel AI Hub (VPS hardening) como referência relevante. Mensagem de "porque você é root" no caminho 2b confunde aluno dev local.
|
|
218
|
+
|
|
219
|
+
**Quando aplicar:** `ambiente: local-dev` em MEMORY (setado pela Fase Pré-Zero da onboarding-checklist).
|
|
220
|
+
|
|
221
|
+
**Mensagem canonical (P15):**
|
|
222
|
+
|
|
223
|
+
```
|
|
224
|
+
"Você tá rodando OpenClaw em ambiente dev local (Mac ou Linux desktop). Vou te passar o comando, você cola no terminal que você já tem aberto na sua máquina:
|
|
225
|
+
|
|
226
|
+
```
|
|
227
|
+
openclaw exec-policy preset yolo
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
Depois manda 'liberado' aqui que eu valido."
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
**Diferenças vs caminho VPS root (2b):**
|
|
234
|
+
|
|
235
|
+
- ❌ NÃO inclui aviso "porque você é root" — aluno dev local não é root
|
|
236
|
+
- ❌ NÃO menciona Pixel AI Hub (VPS hardening) — irrelevante pra dev local
|
|
237
|
+
- ❌ NÃO instrui SSH — terminal já está local
|
|
238
|
+
- ✅ Comando idêntico (`openclaw exec-policy preset yolo`)
|
|
239
|
+
- ✅ Validação idêntica (`openclaw exec-policy show` — P14)
|
|
240
|
+
|
|
241
|
+
(Pula a parte de "manda 'terminal aberto'" — aluno já tá no terminal local.)
|
|
242
|
+
|
|
243
|
+
**Falha real (Letícia stress test 03/05 madrugada):** caminho 2b "VPS root" incluía `Aviso de segurança extra (porque você é root)` + referência ao Pixel AI Hub — Letícia em Mac M2 não é root, leu mensagem e ficou confusa. v2.5 separa caminho próprio com copy adequada ao contexto dev.
|
|
118
244
|
|
|
119
245
|
### 3. Passar comando
|
|
120
246
|
|
|
@@ -201,7 +327,7 @@ Fechar com:
|
|
|
201
327
|
```
|
|
202
328
|
"Se quer aprofundar segurança no Managed (níveis de exec-policy,
|
|
203
329
|
isolamento de containers, audit log), a aula que detalha isso é a
|
|
204
|
-
|
|
330
|
+
Aula 10 (Instalando 1password — segurança Managed) — manda 'aula 10' que eu te passo o link.
|
|
205
331
|
|
|
206
332
|
E se ficou alguma dúvida que eu não cobri, dois caminhos no grupo:
|
|
207
333
|
- resposta rápida 24/7: chama @Openclawzinho (bot IA) no tópico Suporte
|
|
@@ -289,7 +415,7 @@ do OpenClaw — vem de 'You Only Live Once' (gíria que ficou). Na prática:
|
|
|
289
415
|
A alternativa é manter 'ask' (default) — mas aí cada ação minha vira
|
|
290
416
|
3 mensagens entre nós. Vira chato em 5 minutos.
|
|
291
417
|
|
|
292
|
-
Quer prosseguir? Ou prefere ler a
|
|
418
|
+
Quer prosseguir? Ou prefere ler a Aula 10 antes (5min) pra entender
|
|
293
419
|
melhor a fundo?"
|
|
294
420
|
```
|
|
295
421
|
|
|
@@ -300,7 +426,7 @@ melhor a fundo?"
|
|
|
300
426
|
- [ ] `exec_policy=yolo` salvo em `MEMORY.md`
|
|
301
427
|
- [ ] `onboarding_current_step=4`
|
|
302
428
|
- [ ] Pergunta-âncora respondida
|
|
303
|
-
- [ ] Aula
|
|
429
|
+
- [ ] Aula 10 mencionada
|
|
304
430
|
|
|
305
431
|
## Erros comuns
|
|
306
432
|
|
|
@@ -328,7 +454,7 @@ Esta skill herda os princípios universais da `onboarding-checklist`. Ver: [`../
|
|
|
328
454
|
**Modo A:**
|
|
329
455
|
```
|
|
330
456
|
"Bora pro Módulo 3 — Liberar autonomia.
|
|
331
|
-
Aula correspondente:
|
|
457
|
+
Aula correspondente: Aula 10 (Instalando 1password — segurança Managed).
|
|
332
458
|
Recomendo MUITO assistir antes — esse passo mexe em segurança e
|
|
333
459
|
você precisa entender o tradeoff entre conveniência e controle."
|
|
334
460
|
[fluxo numerado: tutorial Hostinger + 1 comando + validação]
|
|
@@ -383,9 +509,13 @@ Quer prosseguir liberando, ou tá com dúvida ainda?"
|
|
|
383
509
|
## Status
|
|
384
510
|
|
|
385
511
|
✅ ATIVO desde v1.1 do Starter Kit (02/05/2026 — versão revisada com tutorial Hostinger CLI passo-a-passo após teste E2E identificar como ponto crítico de abandono).
|
|
512
|
+
✅ v1.2 (02/05/2026 madrugada cont. 5): screenshot anexado (`screenshots/painel-hostinger-cli.jpg`) reforça visualmente o caminho de 2 cliques no painel Hostinger. Reduz fricção do aluno mobile/iniciante.
|
|
513
|
+
✅ v1.3 (02/05/2026 madrugada cont. 7 / kit v1.9.1): BIFURCAÇÃO POR AMBIENTE. Detecta Managed vs VPS root no topo do wizard. Caminho Managed mantido (tutorial + screenshot). Caminho VPS root: SSH direto, sem painel Hostinger, sem screenshot, com aviso de segurança REFORÇADO (root = blast radius maior). Bruno: "no curso se for root nao pode mostrar cli do openclaw, precisa ser terminal". Quick fix antes da Onda 12 (detecção formal de ambiente na onboarding-checklist mestre).
|
|
514
|
+
✅ v1.4 (02/05/2026 madrugada cont. 8 / kit v1.9.2): copy da pergunta de detecção reescrita pra linguagem do aluno. Bruno: "fica confuso perguntar pro aluno se é Manage Openclaw ou VPS própria. Podemos deixar numa linguagem mais simples, tipo: Você instalou openclaw via Manage Openclaw (instalação de 1 click) ou configurou via ROOT (pelo terminal da vps)". Aplicado: pergunta agora é "1. Managed OpenClaw — instalação de 1 click no painel Hostinger / 2. ROOT — configurou pelo terminal da VPS" — termos que aluno reconhece da experiência real, não jargão de cloud.
|
|
386
515
|
|
|
387
516
|
## Roadmap
|
|
388
517
|
|
|
389
|
-
- v1.
|
|
390
|
-
- v1.
|
|
518
|
+
- v1.4: Detectar versão do `openclaw` CLI e adaptar comandos se sintaxe mudar
|
|
519
|
+
- v1.5: Suporte a Hostinger em outros idiomas (espanhol, inglês) com nomes de menu localizados + screenshot localizado
|
|
520
|
+
- v1.6: Após Onda 12 formalizar `ambiente:` na onboarding-checklist mestre — remover detecção redundante deste wizard (vira só ler flag de MEMORY.md)
|
|
391
521
|
- v2: Captura de screenshot do terminal automaticamente (se Hostinger expor API) pra confirmar que aluno tá no terminal certo sem aluno colar output
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
"user": "vai pedir aprovação",
|
|
52
52
|
"expected_agent_behavior": [
|
|
53
53
|
"valida resposta",
|
|
54
|
-
"menciona
|
|
54
|
+
"menciona Aula 10",
|
|
55
55
|
"marca autonomia_liberada=true",
|
|
56
56
|
"salva exec_policy=yolo em MEMORY",
|
|
57
57
|
"atualiza onboarding_current_step=4"
|
|
@@ -170,7 +170,7 @@
|
|
|
170
170
|
"explica que NÃO é sudo/root, é só menos prompts",
|
|
171
171
|
"lembra que é reversível com 'openclaw exec-policy reset'",
|
|
172
172
|
"menciona backup automático (passo 5)",
|
|
173
|
-
"oferece alternativa: ler
|
|
173
|
+
"oferece alternativa: ler Aula 10 antes (5min) OU manter 'ask' default e chamar agente caso a caso"
|
|
174
174
|
],
|
|
175
175
|
"must_not": [
|
|
176
176
|
"inventar preset 'auto' que não existe",
|