Instalar o Pacote de Skills Principal
Agora que seus agentes estão em funcionamento, vamos dar a eles sua primeira tarefa real. O BALIA OS vem com três skills integradas prontas para implantar.
| Skill | Propósito |
|---|---|
| lightpanda | Pesquisa web rápida e scraping |
| summarize | Resumo automático de textos longos ou páginas web |
| clawsec | Monitoramento de segurança e quarentena de novas skills |
In Section 4, you used the same script to install the Security Guardian. This is the second run — it installs the core skill pack (lightpanda / summarize / clawsec). (If you haven't downloaded it yet, go back to Section 4 and download install_core_pack.py first.)
Fazer seu agente executar
Cole isso no terminal do VS Code e pressione Enter para executar.
O que é um Token?
É a string após ?token= na URL de acesso enviada a você após a compra.
Exemplo: https://guide.baliaos.com/?token=BALIA-XXXX-XXXX-0001 Neste caso, o token é BALIA-XXXX-XXXX-0001.
Se não encontrar o e-mail, entre em contato com o suporte.
openclaw agent --agent security-guardian "Por favor execute o seguinte:
python install_core_pack.py --lang pt-BR
(The token will be read automatically from your .env file)
Reporte ao Discord quando terminar."Seu agente realizará automaticamente:
- Autenticar seu token
- Baixar o pacote de skills principal (lightpanda / summarize / clawsec)
- Implantar em ~/.opengoat/skills/
- Atualizar _SKILL_INDEX.md
- Reportar "Pacote de skills principal instalado" no Discord
Ao receber a confirmação do Discord, continue abaixo.
O Que São Skills e Cassettes
Seus agentes estão ativos. Eles têm identidades, procedimentos de reporte e canais no Discord. Mas, por enquanto, eles não sabem em qual domínio estão atuando. Não sabem se estão gerenciando um restaurante, operando uma mesa de trading ou apoiando um escritório de advocacia.
Skills são os arquivos de conhecimento que você escreve e entrega aos seus agentes. Cada skill ensina um agente a executar uma tarefa específica — como gerenciar reservas, como gerar um relatório de P&L, como redigir uma postagem para redes sociais. Quanto mais skills você der a um agente, mais ele poderá fazer.
Um cassette é uma pasta de skills, agrupadas em torno de um tema. Um operador de restaurante pode ter um cassette restaurant-ops. Um criador de conteúdo pode ter um cassette youtube e um cassette social-media. O mesmo agente pode usar cassettes diferentes dependendo do que precisa trabalhar naquele dia.
Todo cassette está ON por padrão. Um único arquivo — memory/_SKILL_STATUS.md — lista todos os cassettes com seu status ON/OFF. Não existe um "modo atual" para trocar — todos os seus cassettes ficam disponíveis ao mesmo tempo, e um agente aplica o cassette que corresponder à tarefa que você der a ele (o SKILL.md de cada cassette descreve para que ele serve). Você só coloca um cassette em OFF no caso raro de querer pausá-lo — por exemplo, se dois cassettes entrarem em conflito entre si (veja "Se Dois Cassettes Entrarem em Conflito" abaixo).
Isso significa que:
marketing-outreacheai-meeting-dailypodem estar ambosONe rodar ao mesmo tempo- Desativar um cassette não afeta os demais
- A configuração do agente nunca muda — apenas o STATUS do cassette muda
Estrutura de Pastas do Cassette
$env:USERPROFILE\.opengoat\
├── memory\
│ └── _SKILL_STATUS.md ← Lista ON/OFF de todos os cassettes
└── skills\
├── youtube\
│ ├── SKILL.md ← O que este cassette faz, ferramentas, regras
│ └── WORKFLOW.md ← Procedimentos passo a passo
├── restaurant-ops\
│ ├── SKILL.md
│ └── WORKFLOW.md
└── trade\
├── SKILL.md
└── WORKFLOW.md_SKILL_STATUS.md lista todos os cassettes com seu indicador de STATUS. Por exemplo:
| Cassette Name | STATUS | Description |
|------------------|--------|--------------------------------|
| youtube | ON | Pipeline de conteúdo do YouTube |
| trade | ON | Análise de mercado e relatórios |Quando você dá uma instrução a um agente, ele compara o que você está pedindo com o SKILL.md de cada cassette que está ON e aplica o que mais combinar — você também pode nomear o cassette explicitamente ("Work in trade mode: ...") para ser mais específico. Se um cassette estiver OFF, o agente o ignora completamente, mesmo que a tarefa combinasse com ele.
Tarefas agendadas (como uma verificação diária de saúde ou um relatório noturno) rodam independentemente de quais cassettes estão ativos — elas são definidas no AGENTS.md do agente, não em nenhum cassette.
Escolhendo Seu Motor de IA
Diferentes cassettes funcionam melhor com diferentes modelos de IA. Defina isso uma vez ao construir o cassette.
| Tipo de Cassette | Motor Recomendado | Por Quê |
|---|---|---|
| Trading de criptomoedas / Análise de mercado | Claude | Raciocínio lógico, análise de padrões, julgamento refinado |
| Programação / Automação técnica | Claude | Qualidade de código, depuração, lógica de múltiplas etapas |
| Pesquisa jurídica / Revisão de contratos | Claude | Raciocínio cuidadoso, linguagem precisa |
| Finanças / Contabilidade / Relatórios | Claude | Análise estruturada, cálculo preciso |
| Google Sheets / Docs / NotebookLM / Drive | Gemini | Integração nativa com serviços Google |
| YouTube / Conteúdo em vídeo | Gemini | Analisa vídeos diretamente; integra com o YouTube Studio |
| Automação de Gmail / Agenda | Gemini | Integração profunda com o Google Workspace |
| Vendas / Prospecção / Copywriting | GPT-4o | Conversação natural, geração de e-mails |
| Comunicação multilíngue | GPT-4o ou Gemini | Alto desempenho em múltiplos idiomas |
| E-commerce / Pesquisa de produtos | Claude ou GPT-4o | Profundidade de pesquisa, saída estruturada |
Se Claude funciona para o seu caso de uso, você já está configurado — ele foi definido na Seção 3.
Para Gemini ou GPT-4o, você adicionará uma chave de API ao seu arquivo .env. As instruções estão no Passo 7 do AI concierge abaixo.
Ideias de Skills por Setor
Não sabe quais skills criar? Aqui estão pontos de partida por caso de uso.
Restaurante / Alimentos e Bebidas
- Gerenciamento de reservas e programação diária
- Rastreamento de pedidos a fornecedores e alertas de estoque
- Postagens nas redes sociais (pratos do dia, eventos)
- Monitoramento de avaliações e redação de respostas
- Resumo semanal de receita
E-Commerce / Produtos Físicos
- Geração de listagens de produtos
- Monitoramento de preços de concorrentes
- Resumo do status de pedidos
- Redação de respostas a consultas de clientes
- Relatório mensal de vendas
Criador de Conteúdo / YouTuber
- Geração de ideias para títulos e miniaturas
- Rascunho de roteiros
- Gerenciamento de agenda de publicações
- Resumo de métricas de desempenho
- Redação de respostas a comentários da comunidade
Freelancer / Consultor
- Redação de comunicações com clientes
- Relatório de status de projetos
- Rastreamento de faturas e acompanhamento
- Revisão de cláusulas contratuais (sinalizar termos incomuns)
- Resumo de registros de horas trabalhadas
Pequenas Empresas / Geral
- Resumo das operações diárias
- Redação de comunicados para a equipe
- Triagem de questões jurídicas (sinalizar itens que requerem advogado)
- Resumo financeiro a partir de recibos e registros
- Gerenciamento de comunicação com fornecedores
Seu setor não está nesta lista? Sem problema — o AI concierge desta seção ajudará você a definir suas próprias skills do zero, com base no que você quer que sua equipe realmente faça.
Como Esta Seção Funciona
Recomendado: Use o prompt do concierge de IA abaixo — ele gera todos os seus arquivos de cassette E produz um script Python de configuração que cria tudo automaticamente. Após a conversa com a IA, vá para Passo 2 — Executar o Script de Configuração e execute-o. Não é necessário criar arquivos manualmente.
Se o script de configuração falhar: O concierge de IA também exibe o conteúdo completo de cada arquivo. Você pode criar os arquivos manualmente no VS Code como alternativa.
Use o prompt do AI concierge abaixo para:
- Definir o que seus agentes devem fazer todos os dias
- Decidir com qual nome de cassette e modo começar
- Escolher o motor de IA adequado
- Gerar seus arquivos SKILL e WORKFLOW
- Configurar o sinalizador
_SKILL_STATUS.md - Testar se seu agente carrega o modo correto
Cole o prompt no seu chat de IA. Anexe seu Documento de Design de Equipe da Seção 2.
▶ Cole isto em sua IA para começar
Anexe seu Documento de Design de Equipe antes de enviar.
Você está me ajudando a construir Skills e um Cassette para o BALIA OS —
um sistema operacional de IA multi-agente.
Anexei meu Documento de Design de Equipe. Leia-o antes de começarmos
para conhecer os nomes dos meus agentes, seus papéis e a estrutura do workspace.
CONCEITO PARA ENTENDER ANTES DE COMEÇARMOS:
Skills são arquivos de conhecimento que eu escrevo e entrego aos meus agentes.
Cada skill ensina um agente a fazer uma tarefa específica.
Um Cassette é uma pasta de skills, agrupadas em torno de um tema (um modo).
Todos os cassettes ficam ON por padrão e podem rodar ao mesmo tempo —
meus agentes aplicam o cassette que combinar com a tarefa que eu der a eles.
Um único arquivo — memory/_SKILL_STATUS.md — lista todos os cassettes com
um status ON/OFF. É a única fonte de verdade sobre quais cassettes
estão disponíveis. Não é o "modo atual" — várias linhas podem estar ON
ao mesmo tempo.
Estrutura de pastas:
$env:USERPROFILE/.opengoat/
memory/
_SKILL_STATUS.md ← lista ON/OFF, uma linha por cassette
skills/
[cassette-name]/
SKILL.md ← o que este cassette faz, ferramentas, regras
WORKFLOW.md ← procedimentos passo a passo deste cassette
Quando eu der uma instrução a um agente:
1. O agente verifica quais cassettes estão ON em memory/_SKILL_STATUS.md
2. Ele compara minha instrução com o SKILL.md de cada cassette que está ON
(ou eu posso nomear o cassette explicitamente, ex.: "Work in trade mode: ...")
3. Ele aplica o SKILL.md e o WORKFLOW.md do cassette que corresponder
Tarefas agendadas rodam independentemente de quais cassettes estão ON — elas estão no AGENTS.md.
Me guie passo a passo. Faça uma pergunta de cada vez.
Aguarde minha resposta antes de continuar.
STEP 1 — O que eu quero que minha equipe faça
Pergunte-me: "Descreva o que você quer que sua equipe de IA faça por você todos os dias.
Não pense em como — apenas descreva o resultado que você quer
e o trabalho que você quer que seja feito."
Ajude-me a transformar minha resposta em uma lista de pelo menos 5 tarefas
específicas e recorrentes. Faça perguntas de acompanhamento até termos
tarefas concretas com uma frequência clara (diária, semanal, sob demanda).
STEP 2 — Mapear tarefas para agentes
Leia meu Documento de Design de Equipe.
Combine cada tarefa com o agente mais adequado com base em seu papel.
Mostre-me o mapeamento: "Tarefa → Agente"
Pergunte: "Isso parece certo? Há algo que você mudaria?"
STEP 3 — Nomear o cassette (modo)
Com base nas tarefas, sugira um nome de cassette — o nome do modo
(curto, minúsculo, com hífens: ex.: restaurant-ops, youtube, trade).
Isso se torna o nome da pasta e uma nova linha em memory/_SKILL_STATUS.md.
Peça para eu confirmar ou sugerir um nome diferente.
STEP 4 — Escolher o motor de IA
Para cada agente com tarefas mapeadas, recomende o melhor motor:
- Claude: lógica, análise, programação, jurídico, finanças, cripto
- Gemini: serviços Google (Sheets, Docs, Drive, Gmail, Agenda,
YouTube Studio, NotebookLM) — qualquer coisa no ecossistema Google
- GPT-4o: e-mails de vendas, prospecção, copywriting, conversação natural
Explique seu raciocínio em uma frase por agente.
Se todas as tarefas funcionarem bem com Claude, confirme que nenhuma chave de API extra é necessária.
Se Gemini ou GPT-4o forem necessários, anote — trataremos da chave no Step 7.
Peça para eu confirmar antes de continuar.
STEP 5 — Gerar o SKILL.md
Gere o arquivo de skill usando esta estrutura:
---
# SKILL.md — [cassette-name]
Versão: 1.0
Última atualização: [data de hoje]
Agente principal: [nome do agente]
Motor de IA: [motor]
## O Que Este Cassette Faz
[2-3 frases: qual domínio isso cobre, o que ele produz]
## Quando Usar Este Cassette
[1-2 frases descrevendo os tipos de instrução que devem acionar
este cassette — é isso que o agente compara com seus pedidos]
## Skills Neste Cassette
[Lista de skills específicas — o que o agente sabe fazer]
## Ferramentas Disponíveis
[Liste as ferramentas utilizáveis neste cassette: pesquisa web, leitura/escrita de arquivos,
relatórios no Discord, chamadas de API, serviços Google, etc.]
## Regras de Operação
1. Antes de executar, confirme que a linha deste cassette em memory/_SKILL_STATUS.md
está definida como ON. Se estiver OFF, ignore completamente — nenhum relatório no Discord é necessário.
2. [Regra-chave específica deste domínio]
3. [Regra-chave específica deste domínio]
4. Reporte todas as tarefas concluídas no Discord antes de encerrar a sessão.
5. Nunca aja fora do escopo deste cassette sem aprovação do Comandante.
6. Salve todas as saídas em skills/[cassette-name]/outputs/
## O Que Este Cassette NÃO Cobre
[Limites específicos — o que está fora do escopo deste cassette]
## Formato de Saída
[O que o agente produz: relatórios, arquivos, mensagens no Discord, etc.]
---
Mostre-o por completo. Pergunte se algo precisa de ajuste.
STEP 6 — Gerar o WORKFLOW.md
Gere o arquivo de workflow usando esta estrutura:
---
# WORKFLOW.md — [cassette-name]
Versão: 1.0
Última atualização: [data de hoje]
## Antes de Começar
1. Confirme que a linha deste cassette em memory/_SKILL_STATUS.md está ON
2. Carregue o SKILL.md desta mesma pasta
## Procedimentos de Tarefas
### [Nome da Tarefa 1] — [Frequência]
Gatilho: [O que inicia esta tarefa]
Passos:
1. [Ação específica]
2. [Ação específica]
3. [Ação específica]
Saída: [O que é produzido]
Salvar em: skills/[cassette-name]/outputs/
Em caso de erro: [O que fazer se algo falhar]
### [Nome da Tarefa 2] — [Frequência]
[Mesma estrutura]
[Continue para todas as tarefas]
## Encerramento da Sessão (Toda Sessão — Obrigatório)
Envie um relatório de fim de sessão para o Discord:
"✅ Sessão de [cassette-name] concluída.
Tarefas concluídas: [lista]
Saída: skills/[cassette-name]/outputs/
Problemas: [erros, se houver]"
## Tratamento de Erros
Se qualquer passo falhar:
1. Anote o erro exato
2. Continue com as tarefas restantes, se possível
3. Inclua todos os erros no relatório de fim de sessão no Discord
4. Não repita operações destrutivas sem aprovação do Comandante
## Tarefas Agendadas
Estas rodam em sua própria programação, independentemente de outros cassettes —
elas são independentes de outros cassettes estarem ON ou OFF.
---
Mostre-o por completo. Pergunte se algo precisa de ajuste.
STEP 7 — Configuração de chave de API (se necessário)
Apenas se Gemini ou GPT-4o foram recomendados no Step 4:
PARA O GEMINI:
"O Gemini funciona melhor para integração com serviços do Google.
Para obter sua chave de API:"
1. Acesse https://console.cloud.google.com/
2. Faça login com sua conta Google
3. Se solicitado, você pode ter direito a $300 em créditos gratuitos —
clique em "Testar gratuitamente" se oferecido
4. Na barra de pesquisa superior, digite "Gemini API" e selecione
5. Clique em "Ativar" se ainda não estiver ativado
6. Vá em "Credenciais" no menu à esquerda → "Criar Credenciais"
→ "Chave de API"
7. Copie a chave
8. Adicione ao arquivo .env:
GOOGLE_API_KEY=sua-chave-aqui
Confirme: "Chave de API do Gemini adicionada."
PARA O GPT-4o (OpenAI):
1. Acesse platform.openai.com
2. Faça login ou crie uma conta
3. Clique no seu perfil → "API keys" → "Create new secret key"
4. Nomeie como "balia-os"
5. Copie a chave (começa com sk-)
6. Adicione ao arquivo .env:
OPENAI_API_KEY=sua-chave-aqui
Confirme: "Chave de API da OpenAI adicionada."
Se for somente Claude: pule esta etapa por completo.
STEP 8 — Criar a estrutura de pastas do cassette
Guie-me para criar as pastas no terminal do VS Code:
Windows:
cd $env:USERPROFILE\.opengoat\skills
mkdir [mode-name]
mkdir [mode-name]\outputs
Mac:
mkdir -p ~/.opengoat/skills/[mode-name]/outputs
Depois, guie-me para salvar estes arquivos na pasta do cassette:
- SKILL.md
- WORKFLOW.md
Depois, guie-me para adicionar este cassette a memory/_SKILL_STATUS.md:
"Abra memory/_SKILL_STATUS.md no VS Code. Se o arquivo ainda não existir,
crie-o com este cabeçalho:
# SKILL CASSETTE STATUS
# O ON/OFF é gerenciado apenas neste arquivo.
| Cassette Name | STATUS | Description |
|---|---|---|
Adicione uma nova linha: | [mode-name] | ON | [descrição em uma linha] |
Salve."
Depois que todos os arquivos estiverem definidos, gere um script Python de configuração
completo que crie tudo automaticamente. O script deve:
- Funcionar no Windows e no Mac (use os.path.expanduser para o ~)
- Criar todas as pastas com os.makedirs(exist_ok=True)
- Escrever SKILL.md e WORKFLOW.md com codificação UTF-8
- Adicionar (ou atualizar) a linha deste cassette em memory/_SKILL_STATUS.md,
criando o arquivo com o cabeçalho acima caso ele ainda não exista
- Exibir ✅ [filename] para cada arquivo criado
- Exibir "Configuração concluída." ao final
O script já contém todos os caminhos de arquivo e conteúdo preenchidos —
o usuário só precisa executá-lo no terminal do VS Code com:
python setup_cassette.py
Diga-me: "Copie este script, salve-o como setup_cassette.py
na sua pasta .opengoat e depois execute-o no terminal do VS Code.
Você verá ✅ para cada arquivo criado."
STEP 9 — Testar o cassette
Guie-me para enviar um comando de teste, nomeando o cassette explicitamente:
openclaw agent --agent ceo "Trabalhe no modo [mode-name]: por favor, faça o seguinte:
1. Confirme que memory/_SKILL_STATUS.md mostra [mode-name] como ON.
2. Carregue o SKILL.md e o WORKFLOW.md deste cassette.
3. Confirme que você entende suas tarefas neste cassette.
4. Publique um relatório de prontidão no seu canal do Discord."
Pergunte-me: "O que o agente respondeu?
Você viu um relatório de prontidão no Discord?"
Se sim: instalação do cassette confirmada.
Se não: me ajude a resolver o problema.
SAÍDA FINAL
Quando confirmado, mostre este resumo:
---
CASSETTE INSTALADO
Nome do cassette: [mode-name]
Agente principal: [nome do agente]
Arquivos criados:
memory/_SKILL_STATUS.md ✅ (linha adicionada: [mode-name] — ON)
skills/[mode-name]/SKILL.md ✅
skills/[mode-name]/WORKFLOW.md ✅
skills/[mode-name]/outputs/ ✅
Motor de IA: [motor]
Chaves de API adicionais: [adicionadas / não necessárias]
Status: ON — agente confirmou prontidão
---
Pronto para a Seção 7.
Comece agora. Faça-me a primeira pergunta.Passo 2 — Executar o Script de Configuração
Quando o concierge de IA terminar de gerar seus arquivos de cassette, ele também vai gerar um script Python de configuração com todos os caminhos de arquivo e conteúdo já preenchidos.
O que fazer:
- Copie o script Python que a IA gerar
- Abra o terminal do VS Code (
Ctrl+``no Windows /Cmd+``no Mac) - Crie um novo arquivo chamado
setup_cassette.pyna sua pasta .opengoat - Cole o script e salve
- Execute-o:
python setup_cassette.py
Você verá um ✅ para cada arquivo criado. Só isso — sem criação manual de arquivos, sem confusão de caminhos.
O que o script faz automaticamente:
- Cria toda a estrutura de pastas
- Escreve SKILL.md e WORKFLOW.md com o conteúdo correto
- Cria a pasta outputs/
- Adiciona a linha deste cassette em memory/_SKILL_STATUS.md (STATUS: ON)
Se você vir algum ❌ na saída, copie o erro e peça ao seu concierge de IA para corrigi-lo.
Usando um Cassette
Todos os cassettes ficam ON por padrão — não há etapa de "troca". Basta dizer a qualquer agente qual cassette usar no início da sua instrução:
openclaw agent --agent ceo "Work in trade mode: give me today's summary."O agente compara "trade mode" com os cassettes ON em memory/_SKILL_STATUS.md, carrega o SKILL.md e o WORKFLOW.md desse cassette, e os aplica ao seu pedido. Você também pode descrever a tarefa sem nomear o cassette — o agente a compara automaticamente com o SKILL.md de cada cassette que está ON.
Pausando um cassette: Abra memory/_SKILL_STATUS.md e defina o STATUS desse cassette como OFF. O agente vai ignorá-lo até você colocá-lo de volta em ON.
Adicionar Mais Cassettes Depois
À medida que seu negócio cresce, adicione mais pastas de cassette:
skills/
├── youtube/
├── trade/
├── restaurant-ops/
└── legal-research/ ← adicione a qualquer momentoConstrua cada novo cassette da mesma forma: gere o SKILL.md e o WORKFLOW.md pelo concierge de IA, execute o script de configuração. Ele é adicionado a memory/_SKILL_STATUS.md como ON automaticamente — sem necessidade de trocar de modo, basta dizer a um agente para usá-lo.
O Mercado de Skills BALIA — Chegando no Q4 2026
Assim que o mercado abrir, duas coisas ficam disponíveis:
Comprar cassettes — Cassettes desenvolvidos pela BALIA (Crypto Trade, YouTube, E-Commerce, Polymarket BOT) e cassettes criados pela comunidade, revisados e aprovados. Instale-os na sua pasta de cassettes como qualquer outro modo.
Vender cassettes — Se você construir um cassette que funciona, envie-o. Toda submissão passa por uma auditoria de segurança e uma revisão de eficácia. Uma vez aprovado, ele é listado no mercado e gera receita toda vez que alguém o instala.
Detalhes em @BALIA_OS no X quando o mercado abrir.
Sistema de Cassetes de Habilidades — Controle ON/OFF
Seus cassettes são gerenciados por um único arquivo: memory/_SKILL_STATUS.md. Novos cassettes são adicionados como ON por padrão.
| Cassette Name | STATUS | Description |
|---------------------|--------|------------------------------------|
| marketing-outreach | ON | Prospecção via SNS / e-mail / YouTube |
| ai-meeting-sales | ON | Reunião de IA da equipe de vendas (Leo) |
| ai-meeting-daily | ON | Reunião de operações diárias |
| research-market | ON | Automação de pesquisa de mercado |Para pausar um cassette: Mude ON para OFF neste arquivo. Só isso.
Quando um cassette está ON:
- Qualquer agente cuja tarefa combine com ele carrega o cassette
- Executa a tarefa
- Reporta no Discord:
"✅ [cassette-name] executado com sucesso."
Quando um cassette está OFF:
- O agente o ignora, mesmo que a tarefa combinasse com ele
- Ainda assim reporta no Discord:
"⏭️ [cassette-name] ignorado — STATUS: OFF"
Toda execução é reportada, tenha ela rodado ou não. Você sempre sabe o que aconteceu.
Se Dois Cassettes Entrarem em Conflito
Como todo cassette fica ON por padrão, é possível que dois se sobreponham — por exemplo, dois cassettes que publicam no mesmo canal do Discord, ou que tentam usar o mesmo agente para tarefas conflitantes ao mesmo tempo.
Atualmente não há detecção automática de conflitos. Se você notar dois cassettes atrapalhando um ao outro, abra memory/_SKILL_STATUS.md e defina um deles como OFF você mesmo. Isso resolve o conflito imediatamente — o agente ignora qualquer cassette marcado como OFF.
A detecção automática de conflitos pelo Security Guardian, com uma resolução sugerida, está planejada para uma atualização futura.
Agendamento de Cassettes — Execução Programada
Alguns cassettes são projetados para rodar em um horário fixo — reuniões diárias, relatórios matinais, resumos semanais. Registre-os no agendador do seu sistema operacional.
O agendador aciona o cassette. O agente verifica _SKILL_STATUS.md. Se ON → executa + reporta no Discord. Se OFF → ignora + reporta no Discord.
⚠️ Duas Regras para Cassettes Agendados
- Sempre nomeie o cassette/modo no próprio comando de registro — o agendador não tem outra forma de saber qual cassette rodar, então a ação de gatilho precisa especificá-lo (veja o
[cassette-name]nos exemplos abaixo). - Não registre dois cassettes agendados para o mesmo horário. Rodar dois ao mesmo tempo pode fazer com que disputem o mesmo agente ou o mesmo canal do Discord. Espace-os por pelo menos alguns minutos.
Windows — Agendador de Tarefas
- Abra o Agendador de Tarefas → Criar Tarefa Básica
- Nome:
BALIA_[CassetteName] - Gatilho: Diariamente → defina seu horário (ex.: 21:00)
- Ação: Iniciar um programa
- Programa:
openclaw - Argumentos:
agent --agent [agentid] "Work in [cassette-name] mode: run today's scheduled task." - Iniciar em:
C:\Users\%USERNAME%\.opengoat
- Programa:
- Concluir
Para pausar um cassette agendado sem mexer no agendador: → Defina o STATUS como OFF em _SKILL_STATUS.md. O agendador continua disparando, o agente verifica o STATUS, ignora e reporta. Nenhuma alteração no agendador é necessária.
Mac — launchd
Crie ~/Library/LaunchAgents/com.balia.[cassette-name].plist:
xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.balia.[cassette-name]</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/openclaw</string>
<string>agent</string>
<string>--agent</string>
<string>[agentid]</string>
<string>Work in [cassette-name] mode: run today's scheduled task.</string>
</array>
<key>StartCalendarInterval</key>
<dict>
<key>Hour</key>
<integer>21</integer>
<key>Minute</key>
<integer>0</integer>
</dict>
</dict>
</plist>Carregue:
launchctl load ~/Library/LaunchAgents/com.balia.[cassette-name].plistPara pausar: defina o STATUS como OFF em _SKILL_STATUS.md. Mesmo comportamento do Windows.