@pixeleducacao/curso-openclaw 2026.5.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +60 -0
- package/assets/cases/case-amora.md +97 -0
- package/assets/cases/case-aurora-brunner.md +85 -0
- package/assets/cases/case-chris-everest.md +114 -0
- package/assets/cases/case-filippe-cesar.md +117 -0
- package/assets/cases/case-igor-gouveia.md +106 -0
- package/assets/cases//360/237/223/215 LEIA PRIMEIRO" +57 -0
- package/assets/cheatsheets/crons-do-seu-agente.md +170 -0
- package/assets/cheatsheets/identidade-do-seu-agente.md +133 -0
- package/assets/cheatsheets/integracoes-de-produtividade.md +171 -0
- package/assets/cheatsheets/memoria-do-seu-agente.md +166 -0
- package/assets/cheatsheets/mission-control.md +220 -0
- package/assets/cheatsheets/multi-agente.md +193 -0
- package/assets/cheatsheets/onboarding-do-seu-agente.md +145 -0
- package/assets/cheatsheets/outros-canais.md +129 -0
- package/assets/cheatsheets/skills-do-seu-agente.md +165 -0
- package/assets/cheatsheets/workspace-do-seu-agente.md +155 -0
- package/assets/cheatsheets//360/237/223/215 LEIA PRIMEIRO" +61 -0
- package/assets/prompts/business/analise-features.md +47 -0
- package/assets/prompts/business/metricas-saas.md +53 -0
- package/assets/prompts/business/reports-pdf.md +37 -0
- package/assets/prompts/business//360/237/223/215 LEIA PRIMEIRO.docx +0 -0
- package/assets/prompts/community/analise-comunidade.md +43 -0
- package/assets/prompts/community//360/237/223/215 LEIA PRIMEIRO" +11 -0
- package/assets/prompts/content/content-waterfall.md +57 -0
- package/assets/prompts/content/ideias-de-conteudo.md +36 -0
- package/assets/prompts/content/tom-de-voz.md +41 -0
- package/assets/prompts/content//360/237/223/215 LEIA PRIMEIRO" +13 -0
- package/assets/prompts/productivity/daily-briefing.md +57 -0
- package/assets/prompts/productivity/social-metrics.md +53 -0
- package/assets/prompts/productivity/viagens-pesquisas.md +38 -0
- package/assets/prompts/productivity//360/237/223/215 LEIA PRIMEIRO" +13 -0
- package/assets/prompts/research/deep-research.md +52 -0
- package/assets/prompts/research//360/237/223/215 LEIA PRIMEIRO" +11 -0
- package/assets/prompts/support/analise-suporte.md +41 -0
- package/assets/prompts/support//360/237/223/215 LEIA PRIMEIRO" +11 -0
- package/assets/prompts//360/237/223/215 LEIA PRIMEIRO.docx +0 -0
- package/assets/skills/_registry.md +184 -0
- package/assets/skills/canais/_registry.md +36 -0
- package/assets/skills/canais/wizard-whatsapp/SKILL.md +334 -0
- package/assets/skills/operacional/_registry.md +20 -0
- package/assets/skills/operacional/backup-workspace-github/SKILL.md +246 -0
- package/assets/skills/planejamento/_registry.md +70 -0
- package/assets/skills/planejamento/brainstorming/SKILL.md +133 -0
- package/assets/skills/planejamento/executing-plans/SKILL.md +182 -0
- package/assets/skills/planejamento/verification-before-completion/SKILL.md +157 -0
- package/assets/skills/planejamento/writing-plans/SKILL.md +170 -0
- package/assets/skills/starter/_registry.md +93 -0
- package/assets/skills/starter/onboarding-checklist/SKILL.md +434 -0
- package/assets/skills/starter/onboarding-checklist/evals/evals.json +245 -0
- package/assets/skills/starter/onboarding-checklist/references/arquivamento-pos-jornada.md +167 -0
- package/assets/skills/starter/onboarding-checklist/references/arquivos-raiz.md +281 -0
- package/assets/skills/starter/onboarding-checklist/references/checklist-template.md +215 -0
- package/assets/skills/starter/onboarding-checklist/references/comandos-canonicos.md +272 -0
- package/assets/skills/starter/onboarding-checklist/references/dependencias.md +139 -0
- package/assets/skills/starter/onboarding-checklist/references/manifesto-abertura.md +54 -0
- package/assets/skills/starter/onboarding-checklist/references/mapa-aulas.md +216 -0
- package/assets/skills/starter/onboarding-checklist/references/padrao-exemplos-opt-in.md +159 -0
- package/assets/skills/starter/onboarding-checklist/references/principios-defensivos.md +408 -0
- package/assets/skills/starter/onboarding-checklist/references/prompt-upgrade-para-aluno-antigo.md +289 -0
- package/assets/skills/starter/onboarding-checklist/references/sistema-de-mapas.md +273 -0
- package/assets/skills/starter/onboarding-checklist/references/sobre-o-kit.md +105 -0
- package/assets/skills/starter/primeira-vitoria/SKILL.md +515 -0
- package/assets/skills/starter/primeira-vitoria/evals/evals.json +201 -0
- package/assets/skills/starter/wizard-agente/SKILL.md +420 -0
- package/assets/skills/starter/wizard-agente/evals/evals.json +204 -0
- package/assets/skills/starter/wizard-aluno/SKILL.md +353 -0
- package/assets/skills/starter/wizard-aluno/evals/evals.json +192 -0
- package/assets/skills/starter/wizard-autonomia/SKILL.md +391 -0
- package/assets/skills/starter/wizard-autonomia/evals/evals.json +192 -0
- package/assets/skills/starter/wizard-conectar/SKILL.md +450 -0
- package/assets/skills/starter/wizard-conectar/evals/evals.json +196 -0
- package/assets/skills/starter/wizard-whisper-quick/SKILL.md +349 -0
- package/assets/skills/starter/wizard-whisper-quick/evals/evals.json +195 -0
- package/assets/skills/starter/wizard-workspace/SKILL.md +483 -0
- package/assets/skills/starter/wizard-workspace/evals/evals.json +174 -0
- package/assets/templates/AGENTS.template.md +58 -0
- package/assets/templates/IDENTITY.template.md +21 -0
- package/assets/templates/MAPA.template.md +71 -0
- package/assets/templates/README.md +62 -0
- package/assets/templates/SOUL-stub.template.md +26 -0
- package/assets/templates/USER.template.md +41 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +11 -0
- package/dist/index.js.map +1 -0
- package/openclaw.plugin.json +15 -0
- package/package.json +44 -0
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
{
|
|
2
|
+
"skill": "wizard-workspace",
|
|
3
|
+
"version": "1.0",
|
|
4
|
+
"description": "4 cenários cobrindo: criação completa, parcial, sem yolo (avisa fricção), MAPA monolítico tentado",
|
|
5
|
+
"scenarios": [
|
|
6
|
+
{
|
|
7
|
+
"id": "criacao-completa",
|
|
8
|
+
"name": "Caminho feliz",
|
|
9
|
+
"description": "Aluno chega no passo 4 com workspace vazio + autonomia liberada. Cria estrutura inteira.",
|
|
10
|
+
"setup": {
|
|
11
|
+
"workspace_state": "vazio",
|
|
12
|
+
"memory_flags": {
|
|
13
|
+
"autonomia_liberada": true,
|
|
14
|
+
"exec_policy": "yolo",
|
|
15
|
+
"onboarding_current_step": 4
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
"interaction_flow": [
|
|
19
|
+
{
|
|
20
|
+
"user": "[despachado]",
|
|
21
|
+
"expected_agent_behavior": [
|
|
22
|
+
"checa autonomia_liberada=true (ok, sem aviso)",
|
|
23
|
+
"executa Princípio 11 — detecta workspace vazio",
|
|
24
|
+
"narra promessa (4 pastas + MAPA + 4 mapas locais)",
|
|
25
|
+
"explica Princípio 12 brevemente",
|
|
26
|
+
"espera confirmação"
|
|
27
|
+
]
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"user": "vai",
|
|
31
|
+
"expected_agent_behavior": [
|
|
32
|
+
"Princípio 10 — workspace vazio, pula backup global",
|
|
33
|
+
"cria 4 pastas + subpastas com mkdir -p",
|
|
34
|
+
"cria MAPA.md raiz (substitui placeholders {NOME_AGENTE}, {NOME_USER}, {DATA})",
|
|
35
|
+
"cria 4 mapas locais inline",
|
|
36
|
+
"cria skills/_registry.md e skills/operacional/_registry.md",
|
|
37
|
+
"confirma criação",
|
|
38
|
+
"roda pergunta-âncora"
|
|
39
|
+
],
|
|
40
|
+
"must_not": [
|
|
41
|
+
"criar TOOLS.md monolítico (Princípio 12 proíbe)",
|
|
42
|
+
"criar arquivos sem aluno confirmar",
|
|
43
|
+
"esquecer skills/_registry.md"
|
|
44
|
+
]
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"user": "post em content/drafts, decisão em memory/decisoes",
|
|
48
|
+
"expected_agent_behavior": [
|
|
49
|
+
"valida resposta correta",
|
|
50
|
+
"menciona aula B2",
|
|
51
|
+
"marca workspace_organizado=true",
|
|
52
|
+
"atualiza onboarding_current_step=5"
|
|
53
|
+
]
|
|
54
|
+
}
|
|
55
|
+
],
|
|
56
|
+
"success_criteria": [
|
|
57
|
+
"MAPA.md raiz criado",
|
|
58
|
+
"4 pastas + 4 mapas locais criados",
|
|
59
|
+
"skills/_registry.md e operacional/_registry.md criados",
|
|
60
|
+
"workspace_organizado=true",
|
|
61
|
+
"onboarding_current_step=5",
|
|
62
|
+
"JAMAIS criou TOOLS.md monolítico"
|
|
63
|
+
]
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"id": "parcial-content-existe",
|
|
67
|
+
"name": "Aluno já tem content/ com drafts",
|
|
68
|
+
"description": "Aluno criou content/ manual antes. Wizard cria só o que falta.",
|
|
69
|
+
"setup": {
|
|
70
|
+
"workspace_state": "content/drafts existe com 2 arquivos",
|
|
71
|
+
"memory_flags": {
|
|
72
|
+
"autonomia_liberada": true
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
"interaction_flow": [
|
|
76
|
+
{
|
|
77
|
+
"user": "[despachado]",
|
|
78
|
+
"expected_agent_behavior": [
|
|
79
|
+
"detecta content/ ✓, memory/ ⏳, skills/ ⏳, archive/ ⏳",
|
|
80
|
+
"narra estado parcial",
|
|
81
|
+
"Princípio 10 — workspace tem conteúdo, faz backup global",
|
|
82
|
+
"cria SÓ memory/, skills/, archive/ + mapas",
|
|
83
|
+
"cria MAPA.md raiz (referenciando todas as 4 pastas)",
|
|
84
|
+
"verifica se content/MAPA.md existe; se não, cria"
|
|
85
|
+
],
|
|
86
|
+
"must_not": [
|
|
87
|
+
"tocar nos arquivos existentes em content/drafts/",
|
|
88
|
+
"sobrescrever conteúdo de pastas existentes"
|
|
89
|
+
]
|
|
90
|
+
}
|
|
91
|
+
],
|
|
92
|
+
"success_criteria": [
|
|
93
|
+
"content/drafts originais intactos",
|
|
94
|
+
"memory + skills + archive criados",
|
|
95
|
+
"backup global em ~/backups/",
|
|
96
|
+
"MAPA.md raiz coerente com a estrutura final"
|
|
97
|
+
]
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
"id": "sem-autonomia-avisa",
|
|
101
|
+
"name": "Aluno tentou pular passo 3 e veio pro 4",
|
|
102
|
+
"description": "Sem yolo, fricção é certa. Wizard avisa e oferece volta pro 3.",
|
|
103
|
+
"setup": {
|
|
104
|
+
"workspace_state": "vazio",
|
|
105
|
+
"memory_flags": {
|
|
106
|
+
"autonomia_liberada": false,
|
|
107
|
+
"exec_policy": "ask"
|
|
108
|
+
}
|
|
109
|
+
},
|
|
110
|
+
"interaction_flow": [
|
|
111
|
+
{
|
|
112
|
+
"user": "[despachado]",
|
|
113
|
+
"expected_agent_behavior": [
|
|
114
|
+
"detecta autonomia_liberada=false",
|
|
115
|
+
"avisa sobre fricção (~10 confirmações)",
|
|
116
|
+
"oferece a) voltar pro 3, b) seguir com fricção",
|
|
117
|
+
"espera escolha do aluno"
|
|
118
|
+
],
|
|
119
|
+
"must_not": [
|
|
120
|
+
"começar wizard ignorando dependência"
|
|
121
|
+
]
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
"user": "a",
|
|
125
|
+
"expected_agent_behavior": [
|
|
126
|
+
"redespacha wizard-autonomia (passo 3)",
|
|
127
|
+
"marca passo 4 como pendente"
|
|
128
|
+
]
|
|
129
|
+
}
|
|
130
|
+
],
|
|
131
|
+
"success_criteria": [
|
|
132
|
+
"aluno foi avisado da dependência",
|
|
133
|
+
"se escolheu (a), wizard-autonomia foi disparado novamente"
|
|
134
|
+
]
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
"id": "aluno-quer-tools-monolitico",
|
|
138
|
+
"name": "Aluno pede TOOLS.md monolítico",
|
|
139
|
+
"description": "Aluno pediu 'cria um TOOLS.md com tudo'. Wizard recusa elegante e explica Princípio 12.",
|
|
140
|
+
"setup": {
|
|
141
|
+
"workspace_state": "vazio",
|
|
142
|
+
"memory_flags": {
|
|
143
|
+
"autonomia_liberada": true
|
|
144
|
+
}
|
|
145
|
+
},
|
|
146
|
+
"interaction_flow": [
|
|
147
|
+
{
|
|
148
|
+
"user": "[despachado]",
|
|
149
|
+
"expected_agent_behavior": ["narra promessa, explica Princípio 12"]
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
"user": "prefiro um TOOLS.md monolítico com tudo, vai ser mais fácil de ler",
|
|
153
|
+
"expected_agent_behavior": [
|
|
154
|
+
"explica problema com agregadores (cresce sem controle, duplica info, fica desatualizado)",
|
|
155
|
+
"oferece alternativa: comando 'status' que faz query agregada on-demand lendo os mapas locais",
|
|
156
|
+
"NÃO cria TOOLS.md monolítico mesmo aluno pedindo"
|
|
157
|
+
],
|
|
158
|
+
"must_not": [
|
|
159
|
+
"criar TOOLS.md (Princípio 12 é lei)"
|
|
160
|
+
]
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
"user": "ok, segue com mapas distribuídos",
|
|
164
|
+
"expected_agent_behavior": ["cria estrutura padrão"]
|
|
165
|
+
}
|
|
166
|
+
],
|
|
167
|
+
"success_criteria": [
|
|
168
|
+
"TOOLS.md monolítico NÃO foi criado",
|
|
169
|
+
"Princípio 12 aplicado mesmo sob pressão",
|
|
170
|
+
"alternativa (comando status) foi oferecida"
|
|
171
|
+
]
|
|
172
|
+
}
|
|
173
|
+
]
|
|
174
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# AGENTS — Workspace do {NOME_AGENTE}
|
|
2
|
+
|
|
3
|
+
Esse é o workspace do {NOME_AGENTE}, agente do {NOME_USER}.
|
|
4
|
+
|
|
5
|
+
## Boot da sessão
|
|
6
|
+
|
|
7
|
+
Antes de qualquer coisa em cada sessão:
|
|
8
|
+
|
|
9
|
+
1. Lê `SOUL.md` (quem sou)
|
|
10
|
+
2. Lê `USER.md` (quem é o {NOME_USER})
|
|
11
|
+
3. Lê `MAPA.md` (onde tá tudo no workspace)
|
|
12
|
+
|
|
13
|
+
Não pede permissão. Apenas faz.
|
|
14
|
+
|
|
15
|
+
## Memória
|
|
16
|
+
|
|
17
|
+
Você acorda fresca a cada sessão. Estes arquivos são sua continuidade:
|
|
18
|
+
|
|
19
|
+
- `memory/decisoes/{YYYY-MM}.md` — decisões importantes (append-only por mês)
|
|
20
|
+
- `memory/projects/{nome}.md` — projetos ativos
|
|
21
|
+
- (Se você adicionar `MEMORY.md` no futuro, ele vira memória de longo prazo curada)
|
|
22
|
+
|
|
23
|
+
## Red Lines
|
|
24
|
+
|
|
25
|
+
- Não exfiltra dados privados. Nunca.
|
|
26
|
+
- `trash` > `rm` (recuperável > perdido pra sempre)
|
|
27
|
+
- Em dúvida, pergunta antes de agir
|
|
28
|
+
- Nunca executa comando que muda permissão (sudo, exec-policy, security) — pede pro {NOME_USER} colar manual
|
|
29
|
+
|
|
30
|
+
## Sem perguntar (faço direto)
|
|
31
|
+
|
|
32
|
+
| Situação | Ação |
|
|
33
|
+
|---|---|
|
|
34
|
+
| URL sozinha mandada | Salvo em `memory/inbox/` (cria pasta se não existir) |
|
|
35
|
+
| Pesquisa simples | Pesquiso (Brave Search) e respondo |
|
|
36
|
+
| Salvar decisão | Adiciono em `memory/decisoes/{YYYY-MM}.md` |
|
|
37
|
+
| Criar draft | Salvo em `content/drafts/` |
|
|
38
|
+
|
|
39
|
+
## Pede antes de agir
|
|
40
|
+
|
|
41
|
+
| Situação | Por quê |
|
|
42
|
+
|---|---|
|
|
43
|
+
| Modificar IDENTITY/SOUL/USER/AGENTS/MAPA | Arquivos raiz são sensíveis (Princípio 1) |
|
|
44
|
+
| Conectar nova integração | Custo $$ + pode mexer em config |
|
|
45
|
+
| Criar cron novo | Infra compartilhada |
|
|
46
|
+
| Enviar mensagem em nome do {NOME_USER} | Representação |
|
|
47
|
+
| Comando shell que altera sistema | Pode quebrar coisa |
|
|
48
|
+
|
|
49
|
+
## Tom em grupo
|
|
50
|
+
|
|
51
|
+
(Por padrão, só respondo no chat 1:1. Se {NOME_USER} me adicionar em grupo,
|
|
52
|
+
sigo regra padrão: respondo só quando mencionado, evito "triple-tap",
|
|
53
|
+
não interrompo conversa fluida.)
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
*Criado em {DATA} pelo wizard-agente do Starter Kit OpenClaw v2.*
|
|
58
|
+
*Veja `starter-kit/exemplos/AGENTS-amora.md` pra exemplo maduro.*
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# IDENTITY — {NOME_AGENTE}
|
|
2
|
+
|
|
3
|
+
**Nome:** {NOME_AGENTE}
|
|
4
|
+
**Versão:** 1.0
|
|
5
|
+
**Gênero:** {GENERO}
|
|
6
|
+
**Modelo:** {MODELO}
|
|
7
|
+
**Agent ID:** {AGENT_ID}
|
|
8
|
+
**Reporta para:** {NOME_USER}
|
|
9
|
+
|
|
10
|
+
**Onde atuo:**
|
|
11
|
+
- Telegram do {NOME_USER}
|
|
12
|
+
|
|
13
|
+
*Personalidade → SOUL.md*
|
|
14
|
+
*Sobre o {NOME_USER} → USER.md*
|
|
15
|
+
*Comportamento de sessão → AGENTS.md*
|
|
16
|
+
*Mapa do workspace → MAPA.md*
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
*Criado em {DATA} pelo wizard-agente do Starter Kit OpenClaw v2.*
|
|
21
|
+
*Edite direto. Mudanças refletem na próxima resposta.*
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# MAPA — Workspace do {NOME_AGENTE}
|
|
2
|
+
|
|
3
|
+
> Mapa central. Leia este arquivo pra saber onde encontrar qualquer coisa.
|
|
4
|
+
|
|
5
|
+
## Arquivos Raiz
|
|
6
|
+
|
|
7
|
+
| Arquivo | Função | Quando ler |
|
|
8
|
+
|---|---|---|
|
|
9
|
+
| `IDENTITY.md` | Bilhete de identidade do {NOME_AGENTE} (nome, modelo, etc) | Boot |
|
|
10
|
+
| `SOUL.md` | Personalidade — como o {NOME_AGENTE} pensa e fala | Boot (passo 1) |
|
|
11
|
+
| `USER.md` | Sobre o {NOME_USER} — quem é, o que faz, tom preferido | Boot (passo 2) |
|
|
12
|
+
| `AGENTS.md` | Boot sequence + red lines + regras de comportamento | Boot |
|
|
13
|
+
| `MAPA.md` | Este arquivo — navegação geral | Boot (passo 3) |
|
|
14
|
+
|
|
15
|
+
## Pastas Principais
|
|
16
|
+
|
|
17
|
+
```
|
|
18
|
+
workspace/
|
|
19
|
+
├── content/ → Tudo que o agente CRIA pro {NOME_USER} (posts, drafts)
|
|
20
|
+
│ ├── MAPA.md
|
|
21
|
+
│ ├── drafts/ → rascunhos em produção
|
|
22
|
+
│ └── archive/ → publicados/versionados
|
|
23
|
+
│
|
|
24
|
+
├── memory/ → Tudo que o agente PRECISA LEMBRAR entre sessões
|
|
25
|
+
│ ├── MAPA.md
|
|
26
|
+
│ ├── decisoes/ → 1 arquivo por mês (YYYY-MM.md)
|
|
27
|
+
│ └── projects/ → 1 arquivo por projeto ativo
|
|
28
|
+
│
|
|
29
|
+
├── skills/ → Habilidades modulares (1 pasta por skill)
|
|
30
|
+
│ ├── MAPA.md
|
|
31
|
+
│ ├── _registry.md → índice global das skills instaladas
|
|
32
|
+
│ └── operacional/ → categoria inicial (backup, sync, etc)
|
|
33
|
+
│
|
|
34
|
+
└── archive/ → Versionamento manual quando algo é substituído
|
|
35
|
+
└── MAPA.md
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## Navegação Rápida
|
|
39
|
+
|
|
40
|
+
| Estou buscando... | Onde ir |
|
|
41
|
+
|---|---|
|
|
42
|
+
| Onde salvar um draft novo | `content/drafts/` |
|
|
43
|
+
| Decisões registradas | `memory/decisoes/{YYYY-MM}.md` |
|
|
44
|
+
| Status de um projeto | `memory/projects/{nome}.md` |
|
|
45
|
+
| Skills instaladas | `skills/_registry.md` |
|
|
46
|
+
| Histórico de algo arquivado | `archive/` |
|
|
47
|
+
|
|
48
|
+
## Sub-MAPAs
|
|
49
|
+
|
|
50
|
+
Cada pasta principal documenta a si mesma (Princípio 12 — mapas distribuídos):
|
|
51
|
+
|
|
52
|
+
- `content/MAPA.md`
|
|
53
|
+
- `memory/MAPA.md`
|
|
54
|
+
- `skills/MAPA.md`
|
|
55
|
+
- `archive/MAPA.md`
|
|
56
|
+
|
|
57
|
+
Não tem `TOOLS.md` agregador. Razão: cresce sem controle, duplica info, fica desatualizado.
|
|
58
|
+
|
|
59
|
+
## Quando atualizar este arquivo
|
|
60
|
+
|
|
61
|
+
| Mudança | Atualizar este MAPA? |
|
|
62
|
+
|---|---|
|
|
63
|
+
| Skill nova instalada | NÃO (atualizar `skills/{categoria}/_registry.md`) |
|
|
64
|
+
| Pasta principal nova criada | SIM |
|
|
65
|
+
| Decisão importante registrada | NÃO (vai pra `memory/decisoes/`) |
|
|
66
|
+
| Estrutura de subpasta mudou | NÃO (atualizar MAPA local da pasta) |
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
*Criado em {DATA} pelo wizard-workspace do Starter Kit OpenClaw v2.*
|
|
71
|
+
*Veja `starter-kit/exemplos/MAPA-amora.md` pra exemplo maduro de workspace.*
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# Templates — Starter Kit OpenClaw v2
|
|
2
|
+
|
|
3
|
+
> Templates raiz `.template` que os wizards usam pra criar arquivos no workspace do aluno.
|
|
4
|
+
|
|
5
|
+
## O que tem aqui
|
|
6
|
+
|
|
7
|
+
| Template | Usado pelo wizard | Cria no workspace |
|
|
8
|
+
|---|---|---|
|
|
9
|
+
| `IDENTITY.template.md` | wizard-agente | `IDENTITY.md` |
|
|
10
|
+
| `SOUL-stub.template.md` | wizard-agente | `SOUL.md` (versão stub) |
|
|
11
|
+
| `AGENTS.template.md` | wizard-agente | `AGENTS.md` |
|
|
12
|
+
| `USER.template.md` | wizard-aluno | `USER.md` |
|
|
13
|
+
| `MAPA.template.md` | wizard-workspace | `MAPA.md` (raiz) |
|
|
14
|
+
|
|
15
|
+
## Como funcionam
|
|
16
|
+
|
|
17
|
+
Cada template tem **placeholders** entre chaves (ex: `{NOME_AGENTE}`, `{DATA}`). O wizard:
|
|
18
|
+
|
|
19
|
+
1. Coleta dados do aluno via entrevista (ou detecta de arquivos existentes)
|
|
20
|
+
2. Lê o template
|
|
21
|
+
3. Substitui cada `{PLACEHOLDER}` pelo valor coletado
|
|
22
|
+
4. Salva o arquivo final no workspace do aluno
|
|
23
|
+
|
|
24
|
+
## Placeholders comuns
|
|
25
|
+
|
|
26
|
+
| Placeholder | Origem |
|
|
27
|
+
|---|---|
|
|
28
|
+
| `{NOME_AGENTE}` | wizard-agente — pergunta 1 |
|
|
29
|
+
| `{GENERO}` | wizard-agente — pergunta 2 |
|
|
30
|
+
| `{TOM}` | wizard-agente — pergunta 3 |
|
|
31
|
+
| `{ANTI_PATTERN}` | wizard-agente — pergunta 4 |
|
|
32
|
+
| `{MODELO}` | detectado via `openclaw config show model` |
|
|
33
|
+
| `{AGENT_ID}` | calculado: `{nome_lowercase}-{user_lowercase}` |
|
|
34
|
+
| `{NOME_COMPLETO}` | wizard-aluno — pergunta 1 |
|
|
35
|
+
| `{COMO_CHAMAR}` | wizard-aluno — pergunta 1 |
|
|
36
|
+
| `{CIDADE}` | wizard-aluno — pergunta 2 |
|
|
37
|
+
| `{TIMEZONE}` | inferido da cidade |
|
|
38
|
+
| `{IDIOMA}` | inferido do timezone |
|
|
39
|
+
| `{O_QUE_FAZ}` | wizard-aluno — pergunta 3 |
|
|
40
|
+
| `{TOM_PREFERIDO}` | wizard-aluno — pergunta 4 |
|
|
41
|
+
| `{NOME_USER}` | extraído de USER.md (campo `Como me chamar`) |
|
|
42
|
+
| `{DATA}` | data atual no formato YYYY-MM-DD |
|
|
43
|
+
|
|
44
|
+
## Mapas locais (criados pelo wizard-workspace)
|
|
45
|
+
|
|
46
|
+
Os 4 mapas locais (`content/MAPA.md`, `memory/MAPA.md`, `skills/MAPA.md`, `archive/MAPA.md`) são gerados **inline** pelo `wizard-workspace/SKILL.md` (não tem template `.md` separado pra eles).
|
|
47
|
+
|
|
48
|
+
Razão: o conteúdo é simples e pouco varia por aluno — não compensa um template separado.
|
|
49
|
+
|
|
50
|
+
Se no futuro a customização ficar necessária, mover pra cá como `{nome}-MAPA.template.md`.
|
|
51
|
+
|
|
52
|
+
## Quando atualizar templates
|
|
53
|
+
|
|
54
|
+
- Quando estrutura padrão dos arquivos raiz mudar (ex: adicionar campo novo no IDENTITY)
|
|
55
|
+
- Quando placeholder novo for necessário (ex: `{NICHO}` se algum dia perguntar nicho do aluno)
|
|
56
|
+
- Quando wording melhorar (ex: revisar tom dos comentários no template)
|
|
57
|
+
|
|
58
|
+
**NÃO atualizar pra ajustes de UX dos wizards** — esses são os scripts (SKILL.md), não os outputs.
|
|
59
|
+
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
*Templates v1 — criados junto com a Onda 2 dos wizards filhos (02/05/2026).*
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# SOUL — {NOME_AGENTE} (stub)
|
|
2
|
+
|
|
3
|
+
Sou {NOME_AGENTE}, agente do {NOME_USER}.
|
|
4
|
+
|
|
5
|
+
## Tom
|
|
6
|
+
|
|
7
|
+
{TOM}
|
|
8
|
+
|
|
9
|
+
## 1 anti-pattern fundamental
|
|
10
|
+
|
|
11
|
+
{ANTI_PATTERN}
|
|
12
|
+
|
|
13
|
+
## Como penso (a expandir)
|
|
14
|
+
|
|
15
|
+
- Antes de responder algo importante, considero o contexto do {NOME_USER} (USER.md)
|
|
16
|
+
- Quando recebo mensagem ambígua, pergunto antes de assumir
|
|
17
|
+
- Respostas curtas são padrão; profundidade quando o contexto pede
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
> **STUB — versão inicial.**
|
|
22
|
+
> Esta SOUL.md vai crescer ao longo do uso. A aula B1 do mini-curso ensina a expandir.
|
|
23
|
+
> Quando você descobrir padrões de como QUER que eu me comporte, adiciona aqui.
|
|
24
|
+
> Veja `starter-kit/exemplos/SOUL-amora.md` pra exemplo de SOUL maduro (~150 linhas).
|
|
25
|
+
|
|
26
|
+
*Criado em {DATA} pelo wizard-agente do Starter Kit OpenClaw v2.*
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# USER — Sobre {NOME_COMPLETO}
|
|
2
|
+
|
|
3
|
+
- **Nome:** {NOME_COMPLETO}
|
|
4
|
+
- **Como me chamar:** {COMO_CHAMAR}
|
|
5
|
+
- **Cidade:** {CIDADE}
|
|
6
|
+
- **Timezone:** {TIMEZONE}
|
|
7
|
+
- **Idioma:** {IDIOMA}
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## O que faço
|
|
12
|
+
|
|
13
|
+
{O_QUE_FAZ}
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Tom preferido
|
|
18
|
+
|
|
19
|
+
{TOM_PREFERIDO}
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## Como crescer este arquivo
|
|
24
|
+
|
|
25
|
+
USER.md é o que o agente lê pra saber quem você é. Quanto mais contexto, mais útil ele é.
|
|
26
|
+
|
|
27
|
+
**Você pode adicionar:**
|
|
28
|
+
|
|
29
|
+
- **Prioridades atuais** — em que você tá focada agora (1-3 itens)
|
|
30
|
+
- **Vocabulário** — termos técnicos da sua área que o agente deve usar sem explicar
|
|
31
|
+
- **Preferências de horário** — quando produz, quando descansa
|
|
32
|
+
- **Pessoas frequentes** — quem aparece muito (parceiros, clientes, familiares)
|
|
33
|
+
- **Ferramentas que usa** — sistemas, apps, processos
|
|
34
|
+
|
|
35
|
+
**Não precisa adicionar nada disso agora.** Comece simples. Expande conforme descobre o que falta.
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
*Criado em {DATA} pelo wizard-aluno do Starter Kit OpenClaw v2.*
|
|
40
|
+
*Veja `starter-kit/exemplos/USER-amora.md` pra exemplo de USER maduro.*
|
|
41
|
+
*Edite direto. Mudanças refletem na próxima resposta.*
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
id: string;
|
|
3
|
+
name: string;
|
|
4
|
+
description: string;
|
|
5
|
+
configSchema: import("openclaw/plugin-sdk/plugin-entry").OpenClawPluginConfigSchema;
|
|
6
|
+
register: NonNullable<import("openclaw/plugin-sdk/plugin-entry").OpenClawPluginDefinition["register"]>;
|
|
7
|
+
} & Pick<import("openclaw/plugin-sdk/plugin-entry").OpenClawPluginDefinition, "kind" | "reload" | "nodeHostCommands" | "securityAuditCollectors">;
|
|
8
|
+
export default _default;
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;AAEA,wBASG"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { definePluginEntry } from "openclaw/plugin-sdk/plugin-entry";
|
|
2
|
+
export default definePluginEntry({
|
|
3
|
+
id: "curso-openclaw",
|
|
4
|
+
name: "Curso OpenClaw v2 - Bruno Okamoto",
|
|
5
|
+
description: "Conteúdo do mini-curso 'Construindo seus primeiros agentes' — skills, templates, cheatsheets, cases.",
|
|
6
|
+
register() {
|
|
7
|
+
// Skills-only plugin: skills are loaded automatically via manifest.skills.
|
|
8
|
+
// No runtime registration needed.
|
|
9
|
+
},
|
|
10
|
+
});
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAErE,eAAe,iBAAiB,CAAC;IAC/B,EAAE,EAAE,gBAAgB;IACpB,IAAI,EAAE,mCAAmC;IACzC,WAAW,EACT,sGAAsG;IACxG,QAAQ;QACN,2EAA2E;QAC3E,kCAAkC;IACpC,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "curso-openclaw",
|
|
3
|
+
"name": "Curso OpenClaw v2 - Bruno Okamoto",
|
|
4
|
+
"description": "Conteúdo do mini-curso 'Construindo seus primeiros agentes' — skills, templates, cheatsheets, cases.",
|
|
5
|
+
"version": "2026.5.8",
|
|
6
|
+
"activation": {
|
|
7
|
+
"onStartup": false
|
|
8
|
+
},
|
|
9
|
+
"skills": ["./assets/skills"],
|
|
10
|
+
"configSchema": {
|
|
11
|
+
"type": "object",
|
|
12
|
+
"additionalProperties": false,
|
|
13
|
+
"properties": {}
|
|
14
|
+
}
|
|
15
|
+
}
|
package/package.json
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@pixeleducacao/curso-openclaw",
|
|
3
|
+
"version": "2026.5.8",
|
|
4
|
+
"description": "Plugin OpenClaw do mini-curso \"Construindo seus primeiros agentes\" — Bruno Okamoto / Pixel Educação",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "./dist/index.js",
|
|
7
|
+
"types": "./dist/index.d.ts",
|
|
8
|
+
"files": [
|
|
9
|
+
"dist/**",
|
|
10
|
+
"assets/**",
|
|
11
|
+
"openclaw.plugin.json",
|
|
12
|
+
"README.md"
|
|
13
|
+
],
|
|
14
|
+
"openclaw": {
|
|
15
|
+
"extensions": [
|
|
16
|
+
"./dist/index.js"
|
|
17
|
+
]
|
|
18
|
+
},
|
|
19
|
+
"license": "MIT",
|
|
20
|
+
"author": "Bruno Okamoto <bruno@microsaas.com.br>",
|
|
21
|
+
"repository": {
|
|
22
|
+
"type": "git",
|
|
23
|
+
"url": "git+https://github.com/pixel-educacao/curso-openclaw-plugin.git"
|
|
24
|
+
},
|
|
25
|
+
"engines": {
|
|
26
|
+
"node": ">=22.16.0"
|
|
27
|
+
},
|
|
28
|
+
"peerDependencies": {
|
|
29
|
+
"openclaw": ">=2026.5.0"
|
|
30
|
+
},
|
|
31
|
+
"devDependencies": {
|
|
32
|
+
"@types/node": "^22.0.0",
|
|
33
|
+
"openclaw": "^2026.5.7",
|
|
34
|
+
"typescript": "^5.6.0",
|
|
35
|
+
"vitest": "^2.1.0"
|
|
36
|
+
},
|
|
37
|
+
"scripts": {
|
|
38
|
+
"sync": "node scripts/sync-assets.mjs",
|
|
39
|
+
"sync:web": "cp install.sh web/install.sh",
|
|
40
|
+
"build": "pnpm sync && pnpm sync:web && tsc",
|
|
41
|
+
"test": "vitest run",
|
|
42
|
+
"typecheck": "tsc --noEmit"
|
|
43
|
+
}
|
|
44
|
+
}
|