@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
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
# Registry — Skills do Starter Kit (
|
|
1
|
+
# Registry — Skills do Starter Kit (v2.2)
|
|
2
2
|
|
|
3
3
|
> Índice de todas as skills que vão dentro do Starter Kit.
|
|
4
|
-
> Atualizado:
|
|
4
|
+
> Atualizado: 03/05/2026 tarde — Onda 14 unificada (auditoria Princípios 13/14/15 + cron-DM ativo + Princípio 16).
|
|
5
5
|
|
|
6
6
|
## Categorias
|
|
7
7
|
|
|
8
8
|
| Categoria | Total | Descrição |
|
|
9
9
|
|---|---|---|
|
|
10
|
-
| starter |
|
|
10
|
+
| starter | 10 (1 mestre + 7 wizards + 2 skills v2.1) | Jornada obrigatória do aluno novo + post-vitória + log feedback |
|
|
11
11
|
| canais | 1 | Skills opcionais pós-vitória (WhatsApp) |
|
|
12
12
|
| planejamento | 4 | Curadoria do Superpowers (brainstorming, plans, executing, verification) |
|
|
13
|
-
| operacional |
|
|
13
|
+
| operacional | 2 | Utilities (backup-workspace-github + cron-resume-wizards NOVA v2.2) |
|
|
14
14
|
|
|
15
|
-
**Total:
|
|
15
|
+
**Total: 17 skills no v2.2** (era 14 no v1.0; +2 v2.1 + 1 v2.2 = 17).
|
|
16
16
|
|
|
17
17
|
---
|
|
18
18
|
|
|
@@ -20,11 +20,14 @@
|
|
|
20
20
|
|
|
21
21
|
| Skill | Status | Versão | Função |
|
|
22
22
|
|---|---|---|---|
|
|
23
|
-
| [`onboarding-checklist`](starter/onboarding-checklist/SKILL.md) | ✅ ATIVO | 1.
|
|
24
|
-
| [`wizard-
|
|
23
|
+
| [`onboarding-checklist`](starter/onboarding-checklist/SKILL.md) | ✅ ATIVO | 1.6 | Mestre — apresenta jornada, dispatcha wizards, gerencia checklist. v1.6: Boas-vindas universal + Cenário B reformulado com 3 opções (1=PRD/2=Wizard review/3=Referência). v1.5: Caminho A detalhado. v1.4: entry point INSTRUCOES. v1.2: Caminho B executa direto. |
|
|
24
|
+
| [`wizard-conectar`](starter/wizard-conectar/SKILL.md) | ✅ ATIVO | 2.0 | Configura Search API (Tavily default desde v2.5.5 · Brave como alternativa) + GitHub PAT + Chromium opcional. v2.0: troca default Brave → Tavily (sem cartão obrigatório, 1k/mês free, designed pra agente IA). v1.3: não marca `conectado=true` se algo foi pulado — usa `partial` + flags individuais. |
|
|
25
|
+
| [`primeira-vitoria`](starter/primeira-vitoria/SKILL.md) | ✅ ATIVO | 1.5 | v1.5: msg final reescrita com comandos de retomada óbvios (continuar/retomar/config/ajuda) + modo `complete_active` (não tranca). v1.4: NPS Tally + retoma pulos. v1.3: PRE-CHECK + 4 opções FIXAS. |
|
|
26
|
+
| [`continuar-jornada`](starter/continuar-jornada/SKILL.md) | ✅ ATIVO | 1.3 | Orchestrator pós-Bloco A — disparada por "continuar"/"próximo passo"/"aula X feito". Consulta `_curso/INDICE.md` (mapa canônico das 31 aulas Hotmart), oferece próxima aula, rastreia progress flag (`aula_X_concluida`). v1.3: renomeação Bloco/B1/C1/etc → Aulas Hotmart + uso de `_curso/` como fonte de material. |
|
|
27
|
+
| [`wizard-whisper-quick`](starter/wizard-whisper-quick/SKILL.md) | ✅ ATIVO | 1.8 | Pré-passo opcional — configura OpenAI API pra Whisper. v1.8: pulo agora oferece agendar 24h vs definitivo (em vez de flag silenciosa). |
|
|
25
28
|
| [`wizard-agente`](starter/wizard-agente/SKILL.md) | ✅ ATIVO | 1.0 | Passo 1 — entrevista pra criar IDENTITY + SOUL stub + AGENTS |
|
|
26
29
|
| [`wizard-aluno`](starter/wizard-aluno/SKILL.md) | ✅ ATIVO | 1.0 | Passo 2 — entrevista pra criar USER.md |
|
|
27
|
-
| [`wizard-autonomia`](starter/wizard-autonomia/SKILL.md) | ✅ ATIVO | 1.
|
|
30
|
+
| [`wizard-autonomia`](starter/wizard-autonomia/SKILL.md) | ✅ ATIVO | 1.4 | Passo 3 — guiada-manual pra exec-policy + bifurcação Managed (CLI painel + screenshot) vs ROOT (SSH direto + aviso segurança reforçado). v1.4: copy da pergunta de detecção em linguagem do aluno (1 click vs terminal). |
|
|
28
31
|
| [`wizard-workspace`](starter/wizard-workspace/SKILL.md) | ✅ ATIVO | 1.0 | Passo 4 — cria pastas + MAPA raiz + 4 mapas locais (Princípio 12) |
|
|
29
32
|
| [`wizard-conectar`](starter/wizard-conectar/SKILL.md) | ✅ ATIVO | 1.0 | Passo 5 — Brave Search + GitHub Token + Chromium opcional |
|
|
30
33
|
| [`primeira-vitoria`](starter/primeira-vitoria/SKILL.md) | ✅ ATIVO | 1.0 | Passo 6 — primeiro artefato real salvo + NPS |
|
|
@@ -156,8 +159,13 @@ Definidos em [`starter/onboarding-checklist/references/principios-defensivos.md`
|
|
|
156
159
|
8. Logging de decisões em MEMORY.md
|
|
157
160
|
9. Se algo der errado, PARAR
|
|
158
161
|
10. Backup global antes de mudanças massivas
|
|
159
|
-
11. Detectar antes de pedir (+ .env first pra credenciais)
|
|
162
|
+
11. Detectar antes de pedir (+ .env first pra credenciais + ambiente/OS/package_manager em v2.1)
|
|
160
163
|
12. Mapas distribuídos (cada pasta documenta a si mesma)
|
|
164
|
+
13. **Wizards são GUARD RAILS** (passo bloqueante, classifica mensagem em 4 tipos, anti-loop 3 desvios) — v2.1
|
|
165
|
+
14. **Smoke tests visíveis** (mostra comando + output literal antes de interpretar; nunca finge ter rodado) — v2.1
|
|
166
|
+
15. **Mensagens canônicas literais** (trechos `<canonical>` usados literal, não reformula) — v2.1
|
|
167
|
+
16. **Entry point literal** (primeira ação ao receber kit é invocar onboarding-checklist; primeira mensagem ao aluno é boas-vindas canonical sem preâmbulo) — v2.2
|
|
168
|
+
17. **Formatação Telegram-friendly em mensagens canonical** (parágrafos contínuos, sem hard-breaks artificiais a cada ~70 chars; listas explícitas e code blocks pra comandos) — **v2.2 final NOVO** (caso Adrylan)
|
|
161
169
|
|
|
162
170
|
---
|
|
163
171
|
|
|
@@ -172,10 +180,30 @@ Definidos em [`starter/onboarding-checklist/references/principios-defensivos.md`
|
|
|
172
180
|
|
|
173
181
|
---
|
|
174
182
|
|
|
175
|
-
*Registry v1.
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
183
|
+
*Registry v1.7 — Onda 2 + 3 + 9 fixes baseados em testes reais (02/05/2026).*
|
|
184
|
+
|
|
185
|
+
> Histórico completo no [CHANGELOG.md](../CHANGELOG.md) na raiz do kit.
|
|
186
|
+
|
|
187
|
+
## Changelog (resumido)
|
|
188
|
+
|
|
189
|
+
- **v1.7** (02/05/2026 madrugada cont. 4): wizard-whisper-quick v1.2→v1.7 com P11 imperativo no topo + menção de memória semântica + wording assume aluno antigo pode ter chave. INSTRUCOES-PARA-AGENTE.md ganha seção "wizards filhos TAMBÉM não improvisam". Trigger: Lia perguntou "quer Whisper?" sem detectar chave já existente.
|
|
190
|
+
- **v1.6** (02/05/2026 madrugada cont. 3): Boas-vindas universal antes de detecção + Cenário B reformulado com 3 opções 1/2/3 (PRD/Wizard review/Referência). Caminho A "skills agnósticas" removido como opção separada — vira caso especial do PRD.
|
|
191
|
+
- **v1.5** (02/05/2026 madrugada continuação 2):
|
|
192
|
+
- **Caminho A do Cenário B detalhado** com 3 melhorias: (1) disclaimer explícito "⚠️ O que você PERDE escolhendo A: a experiência guiada do kit"; (2) lista EXATA do que copia (só `skills/planejamento/`) e do que NÃO copia (starter/, canais/, operacional/, templates/, exemplos/) — transparência total; (3) instrução de reativação futura: "se um dia quiser a experiência, manda 'roda onboarding' que eu copio starter-kit/skills/starter/ pro workspace ativo".
|
|
193
|
+
- **Descrição do Caminho B sincronizada** com fix v1.2 (era "te passo prompt pra colar no SEU agente" — corrigido pra "eu mesma conduzo, você tá no MESMO agente").
|
|
194
|
+
- **Trigger:** screenshot Bruno mostrando agente da Lia apresentando os 3 caminhos da v1.4. Bruno apontou que A precisa de disclaimer + transparência sobre o que copia + caminho de reativação. Aplicado.
|
|
195
|
+
- **v1.4** (02/05/2026 madrugada continuação):
|
|
196
|
+
- **`INSTRUCOES-PARA-AGENTE.md`** criado na raiz do starter-kit. Entry point explícito pro agente que recebe o kit — diz pra ler `skills/starter/onboarding-checklist/SKILL.md` e seguir à risca, NÃO improvisar fluxo de instalação. Lista o que NÃO fazer (copiar skills sem autorização, criar arquivos raiz, inventar opções pós-vitória).
|
|
197
|
+
- **README.md** atualizado com aviso destacado no topo apontando pra INSTRUCOES-PARA-AGENTE.md.
|
|
198
|
+
- **manifesto.md** atualizado com nota pro agente.
|
|
199
|
+
- **`onboarding-checklist` v1.4** — referência cruzada pra INSTRUCOES-PARA-AGENTE.md no topo.
|
|
200
|
+
- **Causa-raiz NOVA identificada:** os fixes anteriores (v1.1, v1.2, v1.3) tratavam falhas individuais. Sessão Lia/Mira mostrou que TODAS as falhas vinham da mesma raiz: agente NÃO invocava a skill mestre, improvisava fluxo. Solução: entry point explícito ao invés de assumir que agente vai descobrir sozinho.
|
|
201
|
+
- **Trigger:** screenshot Bruno mostrando agente da Lia fazendo "instalei skills + perguntou se quer iniciar jornada" — improvisando todo o fluxo. Em vez de fixar mais um caso isolado, atacar a causa-raiz (entry point ausente).
|
|
202
|
+
- **v1.3** (02/05/2026 madrugada):
|
|
203
|
+
- **`primeira-vitoria` v1.3** — 3 guardas críticas: (1) PRE-CHECK obrigatório de TODAS as flags antes de pós-vitória (se algo crítico ficou pendente como `backup_active: postponed`, volta pra completar — não trata como opcional); (2) 4 opções pós-vitória FIXAS (arquivar/WhatsApp/planejamento/fechar) + instrução imperativa anti-improvisação (NÃO criar opções customizadas baseadas em contexto do aluno); (3) SAI do modo wizard após pós-vitória escolhida — "bora" não reabre, só comando explícito ("reativa jornada"). `onboarding_mode: closed` flag adicionada.
|
|
204
|
+
- **`wizard-conectar` v1.3** — NÃO marca `conectado=true` se algo foi pulado/postponed. Usa `conectado: partial` + flags individuais (brave_search_active, github_token_active, backup_active, chromium_active). Aviso CRÍTICO no fim do passo 5: "não falsifique sucesso". primeira-vitoria checa essas flags antes de pós-vitória.
|
|
205
|
+
- **FAQ item 6** — OAuth Claude/Gemini removido (não existem no OpenClaw Managed — só GPT tem OAuth). Substituído por Claude API direta (`ANTHROPIC_API_KEY`) + Gemini API direta (`GOOGLE_API_KEY`).
|
|
206
|
+
- **Trigger:** sessão real Lia/Mira (02/05 21h59-00h22) onde wizard virou loop infinito + passo 5 marcado ✓ sem completar + pós-vitória improvisada com contexto custom.
|
|
179
207
|
- **v1.2** (02/05/2026 noite tardia):
|
|
180
208
|
- `onboarding-checklist` Cenário B Caminho B reescrito: agente EXECUTA o upgrade diretamente em vez de entregar prompt como texto pro aluno copiar. Falha real observada (sessão da Mira): agente leu o prompt-upgrade, entregou como texto, aluno ficou perdido sem saber o que fazer com ele. Causa-raiz: design assumia 2 agentes (kit + agente do aluno), mas é 1 só — o agente que recebeu o kit É o agente do aluno.
|
|
181
209
|
- `prompt-upgrade-para-aluno-antigo.md` reescrito como instrução interna (não texto pro aluno) com aviso explícito no topo.
|
|
@@ -8,13 +8,19 @@
|
|
|
8
8
|
| Skill | Status | Versão | Owner | Mode | Quando ativar |
|
|
9
9
|
|---|---|---|---|---|---|
|
|
10
10
|
| [`backup-workspace-github`](backup-workspace-github/SKILL.md) | ✅ ATIVO | 1.0 | aluno | guided | Item "Integrações" da checklist (módulo 7) ou comando "ativa backup" |
|
|
11
|
+
| [`cron-resume-wizards`](cron-resume-wizards/SKILL.md) | ✅ ATIVO | 1.1 | agent (autônomo) | cron | Cron interno do agente. **v1.1 (kit v2.4):** 2 ciclos diários (09:00 + 19:00 BRT) — antes só 09:00, fix stress test Pedro. NOVA na v2.2 — Cron-DM ATIVO de retomada de wizards pausados (upgrade do mecanismo passivo da v2.1). Funciona em Managed (cron-worker OpenClaw) e VPS root (systemd timer). |
|
|
12
|
+
| [`seguranca-checklist`](seguranca-checklist/SKILL.md) | 🟡 RASCUNHO | 0.1 | aluno | read-only | Comando "audit segurança" / "scan agente" OU cron mensal (dia 1, 9h). Audit das 5 frentes da A10 (secrets · APIs/scope · canais · injection · recovery). Read-only por design — só reporta, aluno decide. Rascunhada 03/05/2026, release v1.0 ou v1.1 a definir. |
|
|
13
|
+
| [`commit-diario-workspace`](commit-diario-workspace/SKILL.md) | 🟡 RASCUNHO | 0.1 | agent (autônomo via cron) | cron | Cron diário 23h59 BRT — commit + push do workspace pro GitHub se houver mudança real (skip silencioso se git limpo). Notifica resultado no Telegram tópico Operação. Complementa `backup-workspace-github` (A2 = setup inicial) com versionamento granular (A12). Resolve pendência cross-aula A12. Rascunhada 03/05/2026, release v1.0 ou v1.1 a definir. |
|
|
11
14
|
|
|
12
15
|
## Princípios universais
|
|
13
16
|
|
|
14
17
|
Todas as skills aqui herdam os princípios defensivos da `onboarding-checklist`. Ver: [`../starter/onboarding-checklist/references/principios-defensivos.md`](../starter/onboarding-checklist/references/principios-defensivos.md).
|
|
15
18
|
|
|
19
|
+
Em v2.2, P13/P14/P15 ganharam tratamento especial em `cron-resume-wizards` — DM canônica (P15), logs auditáveis (P14), e respeitar wizard ativo (não interromper).
|
|
20
|
+
|
|
16
21
|
## Roadmap (skills futuras)
|
|
17
22
|
|
|
18
23
|
- `health-check` — diagnóstico do estado do agente (skills, crons, integrações)
|
|
19
24
|
- `restore-from-backup` — reverte workspace pra estado anterior do GitHub
|
|
20
25
|
- `clean-orphans` — remove arquivos órfãos detectados em pastas
|
|
26
|
+
- `cron-resume-wizards` v1.1 — múltiplas pendências (FIFO) em vez de 1 só
|
|
@@ -3,15 +3,31 @@ name: backup-workspace-github
|
|
|
3
3
|
status: ATIVO
|
|
4
4
|
category: operacional
|
|
5
5
|
owner: aluno
|
|
6
|
-
version: 1.
|
|
6
|
+
version: 1.2
|
|
7
7
|
mode: guided
|
|
8
8
|
estimated_time: 5min (ativação) + automatic (cron)
|
|
9
9
|
model_compatible: [gpt-5, gpt-5.5, claude-sonnet-4, claude-opus-4]
|
|
10
|
-
description: Use when student wants automatic daily backup of workspace to private GitHub repo. Activates during item "Integrações" of the wizard checklist OR standalone when student types "ativa backup github" / "configura backup". Combines openclaw backup create + git push to student's private repo. Cron daily at 03:00 BRT. Maintains 30-day history. Notifies via Telegram on failure.
|
|
10
|
+
description: Use when student wants automatic daily backup of workspace to private GitHub repo. Activates during item "Integrações" of the wizard checklist OR standalone when student types "ativa backup github" / "configura backup". Combines openclaw backup create + git push to student's private repo. Cron daily at 03:00 BRT. Maintains 30-day history. Notifies via Telegram on failure. **v1.2 (kit v2.5.3 — fix Allan silêncio 10min): regra UX EXPECTATIVA aplicada no primeiro push manual. Antes de invocar `git push backup main` (que pode levar 30s-2min), agente manda canonical avisando expectativa de tempo + reconhecendo que vai ficar bloqueado durante execução. Evita repetir caso Allan 03/05 17:55-18:05 onde aluno achou que travou. v1.1 (kit v2.5.2): mensagens de ativação são SEQUENCIAIS e cada uma tem smoke test visível (P14). Antes (v1.0) bot mandava "Feito. Backup ativo. Cron 03:00." ANTES de mandar "Vou ativar..." — caso real Adrylan 17:32 confirmação chegou antes do 17:33 anúncio. Sem ordem garantida = ABORTAR.**
|
|
11
11
|
---
|
|
12
12
|
|
|
13
13
|
# Backup Workspace GitHub
|
|
14
14
|
|
|
15
|
+
> 🔴 **PRINCÍPIOS NÃO-NEGOCIÁVEIS PRO AGENTE (kit v2.5.2):**
|
|
16
|
+
>
|
|
17
|
+
> **P14 EXTRA-RÍGIDO nesta skill** (caso real Adrylan 03/05 17:32-17:33):
|
|
18
|
+
>
|
|
19
|
+
> Mensagens de ativação são SEQUENCIAIS e cada uma tem smoke test visível:
|
|
20
|
+
>
|
|
21
|
+
> 1. **Anúncio + comando:** "Vou ativar backup agora. Comando: `{cmd}`"
|
|
22
|
+
> 2. **Output literal:** "Output: ```{stdout/stderr}```"
|
|
23
|
+
> 3. **Confirmação SÓ DEPOIS de output OK:** "✓ Backup ativo. Cron 03:00 BRT registrado."
|
|
24
|
+
>
|
|
25
|
+
> **NUNCA mandar a confirmação (passo 3) ANTES dos passos 1+2.** Se output não for OK, ABORTA — não finge sucesso. Se Telegram bridge tiver race condition (mensagens chegando fora de ordem), enviar tudo em UMA mensagem em vez de 3 (perde respiro visual mas garante ordem).
|
|
26
|
+
>
|
|
27
|
+
> Falha real (Adrylan stress test 03/05): 17:32 bot mandou "Feito. Backup GitHub ativo. Cron 03:00 BRT." → 17:33 mandou "Vou ativar o backup agora..." — confirmação chegou ANTES do anúncio. Aluno legitimamente confuso.
|
|
28
|
+
>
|
|
29
|
+
> Detalhes: `../../starter/onboarding-checklist/references/principios-defensivos.md` (P14 — Smoke tests visíveis).
|
|
30
|
+
|
|
15
31
|
## Promessa
|
|
16
32
|
|
|
17
33
|
O workspace inteiro do aluno (skills, memory, configs, arquivos raiz — exceto `.env`) é versionado automaticamente todo dia em um repo privado do GitHub. Se algo der errado (deleção acidental, bug do Managed, hardware fail), aluno restaura pelo histórico de commits.
|
|
@@ -145,7 +161,23 @@ Confirma ao aluno: "✓ Cron configurado: diário às 03:00 BRT"
|
|
|
145
161
|
|
|
146
162
|
### 6. Primeiro push manual (smoke test)
|
|
147
163
|
|
|
148
|
-
|
|
164
|
+
**REGRA UX EXPECTATIVA (kit v2.5.3 — fix Allan):**
|
|
165
|
+
|
|
166
|
+
Antes de invocar a tool de push, mandar mensagem canonical pro aluno avisando da expectativa. Comando `git push backup main` no primeiro push sobe workspace inteiro (50-200 MB tipicamente) e leva 30s-2min, dependendo da rede do Managed.
|
|
167
|
+
|
|
168
|
+
Sem esse aviso, aluno fica olhando 1-2 minutos sem feedback achando que travou (caso real Allan 03/05 17:55-18:05 — 10min de silêncio durante setup levou aluno a perguntar "ainda processando?").
|
|
169
|
+
|
|
170
|
+
**Mensagem canonical antes de invocar git push:**
|
|
171
|
+
|
|
172
|
+
```
|
|
173
|
+
🔄 Vou fazer o primeiro backup agora — `git push backup main`.
|
|
174
|
+
|
|
175
|
+
Esse comando sobe o workspace inteiro pro GitHub privado. Dependendo do tamanho dele e da rede do Managed, pode levar 30s-2min.
|
|
176
|
+
|
|
177
|
+
Vou ficar bloqueado esperando o git terminar (não consigo mandar update no meio). Se demorar mais de 3min, pode ser que travou de verdade — me avisa.
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
Depois roda imediatamente:
|
|
149
181
|
|
|
150
182
|
```bash
|
|
151
183
|
cd $WORKSPACE
|
|
@@ -158,6 +190,10 @@ Se sucesso: "✓ Primeiro backup feito. Você pode ver em https://github.com/{us
|
|
|
158
190
|
|
|
159
191
|
Se erro: investiga (provavelmente .gitignore mal configurado ou token sem scope correto) e reporta.
|
|
160
192
|
|
|
193
|
+
**Por que ANTES e não DURANTE:** durante a execução do tool, agente fica BLOQUEADO esperando retorno. Não tem mecanismo de mandar update intermediário ("ainda subindo, X% feito"). Só dá pra setar expectativa ANTES, e cumprir DEPOIS.
|
|
194
|
+
|
|
195
|
+
Detalhes da regra: `../../starter/onboarding-checklist/references/principios-defensivos.md` (P14 — Regra UX EXPECTATIVA antes de comandos longos).
|
|
196
|
+
|
|
161
197
|
### 7. Atualizar MEMORY.md
|
|
162
198
|
|
|
163
199
|
```markdown
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: commit-diario-workspace
|
|
3
|
+
status: RASCUNHO
|
|
4
|
+
category: operacional
|
|
5
|
+
owner: agent (autônomo via cron)
|
|
6
|
+
version: 0.1
|
|
7
|
+
mode: cron
|
|
8
|
+
estimated_time: 30s-2min (depende de mudanças do dia)
|
|
9
|
+
model_compatible: [gpt-5, gpt-5.5, claude-sonnet-4, claude-opus-4, gemini-pro]
|
|
10
|
+
description: Commit + push diário do workspace pro GitHub (gancho A2 backup-workspace-github + A9 cron + A12 GitHub via PAT). Roda toda noite 23h59 BRT, faz git add . / commit / push se houver mudança real. Skip silencioso se git status limpo. Notifica resultado no Telegram tópico Operação. Cria histórico granular do segundo cérebro além do snapshot semanal manual da A2.
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Commit Diário do Workspace — versionamento granular automático
|
|
14
|
+
|
|
15
|
+
## Promessa
|
|
16
|
+
|
|
17
|
+
Em ~30s-2min por dia (rodando 23h59 enquanto você dorme), agente faz commit + push do workspace inteiro pro GitHub. Cria histórico granular do que mudou no seu segundo cérebro — você consegue ver "o que mudou na quinta passada" em vez de só "qual foi o snapshot semanal".
|
|
18
|
+
|
|
19
|
+
Complementa (não substitui) a skill `backup-workspace-github` da A2:
|
|
20
|
+
- `backup-workspace-github` (A2) = setup inicial + push inicial
|
|
21
|
+
- `commit-diario-workspace` (A12) = commit incremental noturno
|
|
22
|
+
|
|
23
|
+
Resolve pendência cross-aula registrada em A12 do roteiro principal.
|
|
24
|
+
|
|
25
|
+
## Quando disparar
|
|
26
|
+
|
|
27
|
+
**Trigger primário (cron):**
|
|
28
|
+
- Cron diário 23h59 BRT
|
|
29
|
+
- Sessão isolada (`--session isolated`)
|
|
30
|
+
- Comando natural pra criar:
|
|
31
|
+
> *"cria um cron toda noite 23h59 que roda a skill commit-diario-workspace em sessão isolada e me posta resultado no tópico Operação"*
|
|
32
|
+
|
|
33
|
+
**Trigger explícito (sob demanda):**
|
|
34
|
+
- "commita o workspace agora"
|
|
35
|
+
- "commit diário"
|
|
36
|
+
- "salva no GitHub"
|
|
37
|
+
|
|
38
|
+
**NÃO disparar se:**
|
|
39
|
+
- Já rodou nas últimas 6h (resultado em cache em `MEMORY.md` `last_daily_commit`)
|
|
40
|
+
- `backup-workspace-github` ainda não foi configurado (skill irmã obrigatória)
|
|
41
|
+
|
|
42
|
+
## Pré-requisitos
|
|
43
|
+
|
|
44
|
+
1. `backup-workspace-github` ativo (setup feito na A2 ou via item Integrações da CHECKLIST)
|
|
45
|
+
2. `GITHUB_TOKEN` no `.env` com scope `repo` (recap A12 — Padrão 1 de auth)
|
|
46
|
+
3. Repo GitHub privado configurado e remote `origin` apontando pra ele
|
|
47
|
+
4. Branch padrão definida (geralmente `main`)
|
|
48
|
+
|
|
49
|
+
## Princípio fundador
|
|
50
|
+
|
|
51
|
+
**Princípio de versionamento granular**: snapshot semanal manual (A2) é cobertor de proteção contra catástrofe. Commit diário é histórico de evolução. São complementares, não redundantes.
|
|
52
|
+
|
|
53
|
+
Aplica também **Princípio 3 dos defensivos**: skill é autônoma via cron mas opera dentro de scope específico (workspace · git operations · GitHub push). Não escala permissão, não toca arquivo fora do workspace, não modifica config do agente.
|
|
54
|
+
|
|
55
|
+
## Fluxo principal
|
|
56
|
+
|
|
57
|
+
### 1. Detecção de mudança (5s)
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
cd ~/.openclaw/workspace
|
|
61
|
+
git status --porcelain
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
| Resultado | Ação |
|
|
65
|
+
|-----------|------|
|
|
66
|
+
| Output vazio | **Skip silencioso** — git limpo, nada pra commitar. Marca `last_daily_commit_status: skipped` em MEMORY.md, não notifica. Sai. |
|
|
67
|
+
| Output com arquivos | Continua pro passo 2 (existe mudança real) |
|
|
68
|
+
| Erro (`not a git repo`) | Notifica falha + pausa skill (pré-requisito quebrado) |
|
|
69
|
+
|
|
70
|
+
### 2. Análise de mudanças (10s)
|
|
71
|
+
|
|
72
|
+
Captura resumo do que mudou:
|
|
73
|
+
|
|
74
|
+
```bash
|
|
75
|
+
git status --short
|
|
76
|
+
git diff --stat
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
Formata pra notificação:
|
|
80
|
+
- Quantidade de arquivos modificados/criados/deletados
|
|
81
|
+
- Top 5 arquivos com mais mudanças (linha count)
|
|
82
|
+
- Pasta com mais atividade (memory/, content/, skills/, etc)
|
|
83
|
+
|
|
84
|
+
### 3. Commit (5s)
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
git add .
|
|
88
|
+
git commit -m "Auto: snapshot $(date +%Y-%m-%d %H:%M)"
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
**Mensagem de commit padrão:**
|
|
92
|
+
```
|
|
93
|
+
Auto: snapshot 2026-05-03 23:59
|
|
94
|
+
|
|
95
|
+
Modificados: N arquivo(s)
|
|
96
|
+
Criados: N arquivo(s)
|
|
97
|
+
Pasta principal: memory/
|
|
98
|
+
|
|
99
|
+
[skill: commit-diario-workspace v0.1]
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### 4. Push (10s-1min, depende de tamanho)
|
|
103
|
+
|
|
104
|
+
```bash
|
|
105
|
+
git push origin main
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
Tratamento de erro:
|
|
109
|
+
|
|
110
|
+
| Erro | Causa provável | Ação |
|
|
111
|
+
|------|----------------|------|
|
|
112
|
+
| `Authentication failed` | `GITHUB_TOKEN` expirou ou foi revogado | Notifica imediatamente · NÃO retry · marca skill como failed até token rotacionado |
|
|
113
|
+
| `Updates were rejected` | Branch divergiu (alguém commitou direto pelo GitHub web) | Tenta `git pull --rebase` automático · se conflito, notifica e pausa |
|
|
114
|
+
| `Network error` | Falha temporária | Retry 1x após 30s · se falhar de novo, notifica |
|
|
115
|
+
| `Repository not found` | Remote desconfigurado | Notifica + pausa skill (pré-requisito quebrado) |
|
|
116
|
+
|
|
117
|
+
### 5. Notificação (5s)
|
|
118
|
+
|
|
119
|
+
Posta no Telegram tópico **Operação**:
|
|
120
|
+
|
|
121
|
+
**Caso commit OK:**
|
|
122
|
+
```
|
|
123
|
+
✅ Commit diário do workspace OK
|
|
124
|
+
03/05/2026 23:59
|
|
125
|
+
|
|
126
|
+
Modificados: 12 arquivos
|
|
127
|
+
Criados: 3 arquivos
|
|
128
|
+
Atividade: memory/ (8) · content/ (5) · skills/ (2)
|
|
129
|
+
|
|
130
|
+
Top 5 arquivos com mais mudanças:
|
|
131
|
+
- memory/2026-05-03.md (+87/-12)
|
|
132
|
+
- content/linkedin/drafts/post-x.md (+56/-0)
|
|
133
|
+
- memory/context/decisoes/2026-05.md (+34/-8)
|
|
134
|
+
- areas/conteudo/contexto/voz/linkedin.md (+22/-3)
|
|
135
|
+
- memory/curso-openclaw/ROTEIRO-MAIN-V2.md (+18/-2)
|
|
136
|
+
|
|
137
|
+
Push: 1.2MB · 3.8s
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
**Caso skip silencioso:**
|
|
141
|
+
- NÃO posta nada (git limpo, sem novidade)
|
|
142
|
+
- Atualiza apenas MEMORY.md com `status: skipped`
|
|
143
|
+
|
|
144
|
+
**Caso falha:**
|
|
145
|
+
```
|
|
146
|
+
🔴 Commit diário FALHOU — 03/05/2026 23:59
|
|
147
|
+
|
|
148
|
+
Erro: Authentication failed
|
|
149
|
+
Causa provável: GITHUB_TOKEN expirou ou foi revogado
|
|
150
|
+
|
|
151
|
+
Ação sugerida: rotaciona PAT no github.com/settings/tokens
|
|
152
|
+
e atualiza .env. Skill pausada até confirmação.
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
### 6. Atualizar MEMORY.md
|
|
156
|
+
|
|
157
|
+
```markdown
|
|
158
|
+
## Last daily commit
|
|
159
|
+
- Data: 2026-05-03 23:59
|
|
160
|
+
- Status: ok | skipped | failed
|
|
161
|
+
- Modificados: 12 (se ok)
|
|
162
|
+
- Erro: <descrição> (se failed)
|
|
163
|
+
- Próximo agendado: 2026-05-04 23:59
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
## Critérios de sucesso
|
|
167
|
+
|
|
168
|
+
- [ ] Cron rodou no horário previsto (23:59 ± 5min)
|
|
169
|
+
- [ ] Detectou estado correto do git (modificado vs limpo)
|
|
170
|
+
- [ ] Se modificado: commit + push executados sem erro
|
|
171
|
+
- [ ] Se limpo: skip silencioso (sem notificação)
|
|
172
|
+
- [ ] Se erro: notificação completa + skill pausada (não tenta loop)
|
|
173
|
+
- [ ] `MEMORY.md` atualizado com status
|
|
174
|
+
|
|
175
|
+
## Erros comuns
|
|
176
|
+
|
|
177
|
+
- **GITHUB_TOKEN expira em 30/60/90 dias**: cron diário falha silencioso quando token expira. **Solução:** cron mensal (gancho A9 — meta-cron) que lembra de rotacionar PAT 7 dias antes do vencimento
|
|
178
|
+
- **Conflito de branch**: alguém commitou direto pelo GitHub web e localmente também tem mudança. Rebase automático funciona pra mudanças não conflitantes. **Solução:** se conflito, skill pausa e notifica — você resolve manual
|
|
179
|
+
- **Workspace gigante**: push de 100MB+ pode demorar. **Solução:** `.gitignore` agressivo (excluir `node_modules`, `*.log`, `tmp/`, `.cache`, files >10MB) — verificar antes de ativar skill
|
|
180
|
+
- **Repo público acidental**: workspace tem dados pessoais. SE repo virou público sem querer, **NÃO ativa esta skill até voltar pra privado**. Configurar trigger que falha se `gh repo view --json visibility` retornar `PUBLIC`
|
|
181
|
+
- **GitHub Actions consumindo build minutes**: se você tem Action rodando em cada push, vai disparar diariamente. **Solução:** adicionar `[skip ci]` no commit message OR limitar Actions a paths específicos
|
|
182
|
+
|
|
183
|
+
## Aplicação dos princípios defensivos
|
|
184
|
+
|
|
185
|
+
Esta skill herda os princípios universais da `onboarding-checklist`. Ver: [`../../starter/onboarding-checklist/references/principios-defensivos.md`](../../starter/onboarding-checklist/references/principios-defensivos.md).
|
|
186
|
+
|
|
187
|
+
### Aplicação específica
|
|
188
|
+
|
|
189
|
+
- **Princípio 3 (NUNCA elevação via agente)**: skill opera dentro de scope fixo (workspace + git ops + GitHub push). Não toca arquivo fora do workspace. Não modifica config do agente. Não escala permissão
|
|
190
|
+
- **Princípio 5 (atualizar MEMORY ao concluir)**: cada execução atualiza `last_daily_commit` em MEMORY
|
|
191
|
+
- **Princípio 9 (parar se algo der errado)**: erro de auth ou repo não pausa apenas a execução, **pausa a skill inteira** até confirmação humana
|
|
192
|
+
- **Princípio 11 (detectar antes de pedir)**: começa SEMPRE com `git status` — se limpo, skip silencioso. Não cria commit vazio nem notificação desnecessária
|
|
193
|
+
|
|
194
|
+
## Caso público vs privado
|
|
195
|
+
|
|
196
|
+
**Repo PRIVADO** (default e único caminho permitido):
|
|
197
|
+
- Workspace contém info sensível (USER.md, decisões, pessoas, negócios)
|
|
198
|
+
- Skill exige `gh repo view --json visibility` retornar `PRIVATE` antes de cada push
|
|
199
|
+
- Se virar `PUBLIC` por engano, skill pausa imediatamente
|
|
200
|
+
|
|
201
|
+
**Repo PÚBLICO**: skill NUNCA roda. Recap A10/A12 — workspace é território sensível.
|
|
202
|
+
|
|
203
|
+
## Referências
|
|
204
|
+
|
|
205
|
+
### Internas
|
|
206
|
+
- A2 do roteiro principal: skill irmã `backup-workspace-github` (setup inicial)
|
|
207
|
+
- A9 do roteiro principal: como criar/agendar crons via comando natural
|
|
208
|
+
- A12 do roteiro principal: contexto da skill (Bloco 4 — GitHub via PAT) e princípios A10 (scope mínimo, rotação)
|
|
209
|
+
- Princípios defensivos: `../../starter/onboarding-checklist/references/principios-defensivos.md`
|
|
210
|
+
- Cheatsheet `integracoes-de-produtividade.md`: padrão 1 (token simples) + Prompt #2 (GitHub via PAT)
|
|
211
|
+
|
|
212
|
+
### Externas
|
|
213
|
+
- GitHub PAT docs: https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens
|
|
214
|
+
- OpenClaw cron docs: https://docs.openclaw.ai/cli/cron
|
|
215
|
+
- OpenClaw secrets docs: https://docs.openclaw.ai/cli/secrets
|
|
216
|
+
|
|
217
|
+
## Status
|
|
218
|
+
|
|
219
|
+
🟡 RASCUNHO desde 03/05/2026 — esboçada na sessão de fechamento da A12 do roteiro principal, antes de gravação. Pendências:
|
|
220
|
+
|
|
221
|
+
1. Validar que `git push` funciona dentro do ambiente do daemon OpenClaw (lshell vs ambiente do agente — agente roda fora da lshell, deve ter acesso normal a git)
|
|
222
|
+
2. Confirmar que `gh` CLI tá disponível pra check de visibilidade do repo (alternativa: parsing de `git remote -v`)
|
|
223
|
+
3. Decidir se skill detecta automaticamente que `backup-workspace-github` foi configurado (read MEMORY.md flag) ou exige aluno confirmar
|
|
224
|
+
4. Definir release: v1.0 do kit (junto da A12) ou v1.1 (depois)?
|
|
225
|
+
|
|
226
|
+
## Roadmap
|
|
227
|
+
|
|
228
|
+
- v0.2: validação real executada + ajuste fino dos triggers
|
|
229
|
+
- v0.3: integração com cron mensal de rotação de PAT (cross-skill)
|
|
230
|
+
- v1.0: pronta pra entrar no Starter Kit
|
|
231
|
+
- v1.1: detectar arquivo grande (>10MB) e perguntar antes de commit (gitignore sugerido)
|
|
232
|
+
- v1.2: sumário semanal automático ("essa semana você commitou X arquivos em Y dias produtivos") — cross com `revisao-do-dia` (skill da A9)
|
|
233
|
+
- v2: integração com 1Password Service Account quando OpenClaw lançar caminho first-class (rotação de PAT via cofre)
|