Documentação › Para os agentes: o comando octo
Para os agentes: o comando octo
Os agentes nos cartões usam o comando octo para falar com o canvas: outros agentes, shells, notas, arquivos, portais, contas na nuvem e desenhos ligados a eles. Você não precisa digitar nada disto; a página serve para entender o que eles fazem e o que dá para pedir.
O octo é um comando que o Octopus instala em cada máquina onde abre terminais. Ele só alcança os cartões ligados por cabo ao terminal que o usa (um Maestro alcança todos os cartões do workspace), e funciona entre máquinas: o app leva cada pedido de um lado ao outro.
Passo a passo
- Ele fica em ~/.octopus/bin/octo no Mac e nos servidores, e em ~/.octopus-desktop/bin/octo no computador com Windows ou Linux. O Octopus instala e atualiza sozinho.
- Os agentes chamam o octo como qualquer outro comando do terminal. As skills octopus e octopus-maestro ensinam como e quando.
- octo help mostra a referência completa, com todas as opções (no Windows, um resumo dos comandos principais).
- Se o octo disser que o terminal foi aberto antes da ponte (a ligação dele com o Octopus) existir, use “Reconectar” no cartão. Com o app fechado ou sem conexão com aquela máquina, ele avisa que a ponte não está disponível.
Peça em palavras comuns (“pergunte ao Codex”, “rode os testes no staging”): o agente escolhe o comando. Só os cartões ligados por cabo ficam ao alcance dele (um Maestro alcança todos os cartões do workspace).
Veja tambémAs skills octopus e octopus-maestroAgentes que conversam pelos cabos
Mostra quem é o agente e tudo o que está ligado a ele: terminais, notas, arquivos, árvores, portais, contas na nuvem e desenhos. É o primeiro comando que um agente roda.

Passo a passo
- A primeira linha diz o nome do cartão, o programa, a máquina e a pasta.
- Se o cartão tem um papel ou foi recrutado por um Maestro, aparecem o papel, as instruções e quem recrutou. Um Maestro também é avisado de que é o Maestro.
- Cada shell em Perguntar ou Bloqueado traz a trava ao lado: “o usuário confirma cada um” ou “bloqueados pelo usuário”. Um shell livre não traz aviso.
- Cada arquivo diz o tipo, o tamanho e onde está; cada árvore, a pasta; cada portal, a página.
- Sem nada ligado, a resposta pede para você ligar os cartões no canvas.
Veja tambémA trava “Comandos de agentes”
Os comandos com que um agente fala com outro agente ligado a ele, na mesma máquina ou em outra.
Passo a passo
- octo ask "Nome" "mensagem": manda a mensagem e espera a resposta por até 100 segundos (--timeout S muda). Sem a mensagem, ela vem da entrada padrão.
- octo check "Nome": mostra a tela atual do outro terminal; --lines N mostra as últimas N linhas.
- octo reply --to N "resposta": responde ao pedido número N. Cada pedido chega como “[Octopus] Pedido de "Nome" (pedido N)”.
- Uma resposta que demora mais que a espera chega depois, numa mensagem que começa com “[Octopus] Resposta de”.
Para shells, o agente usa o octo run: um shell não responde como um agente (um octo ask a um shell só roda o texto ali como comando).
Veja tambémAgentes que conversam pelos cabosocto run, keys e copy
Os comandos para usar os shells ligados ao agente, no seu computador ou em servidores, dentro da trava que você escolheu para cada um.
Passo a passo
- octo run "Shell" "comando": digita o comando no cartão, na pasta e com as variáveis do shell, espera terminar e mostra a saída inteira. Sai com o código de saída do comando.
- Se o comando passa de 100 segundos (--timeout S muda), o octo run sai com o código 124 e o que veio até ali; octo run --wait "Shell" continua acompanhando.
- octo run --fora "Shell" "comando": roda pela conexão do app, na pasta do shell, num shell de login limpo e sem entrada. Não aparece no cartão.
- octo keys "Shell" C-c Enter y: manda teclas ao programa do shell, para interromper, confirmar ou navegar.
- octo copy "Shell A:/caminho" "Shell B:/pasta/": copia um arquivo ou uma pasta entre as máquinas dos shells ligados (“aqui:” é a máquina do agente). Vai direto de servidor a servidor quando um alcança o outro por ssh; senão, passa pelo app.
Com a trava em “Perguntar”, cada um desses comandos espera a sua aprovação; em “Bloqueado”, nenhum roda.
Veja tambémComandos num shell ligadoA trava “Comandos de agentes”Aprovar um comando
Notas ligadas viram um caderno compartilhado entre você e os agentes. Arquivos ligados chegam à máquina do agente, de qualquer tamanho.
Passo a passo
- octo note read "Nota": mostra o texto da nota.
- octo note write "Nota" "texto" troca o texto inteiro; octo note append "Nota" "texto" acrescenta no fim. O texto também pode vir da entrada padrão.
- octo file get "Nome" [destino]: o app copia o arquivo ligado para a máquina do agente e diz onde ele ficou (sem destino, numa pasta temporária). Funciona mesmo com o arquivo no seu Mac e o agente num servidor.
Uma imagem trazida assim o agente abre com a própria ferramenta de leitura de arquivos.
Veja tambémNotas e agentesEnviar para um agente
Os agentes usam os portais ligados a eles como você usa o navegador: abrem páginas, leem, clicam, preenchem e esperam. Num portal ligado a um agente num servidor, localhost é o daquela máquina. Os comandos snapshot, fill, wait, watch e os outros novos chegaram na 1.0.27.
Passo a passo
- Navegar: octo portal open "Portal" URL (ou um atalho, como gmail), back, forward e reload.
- Ver o que há: snapshot lista links, botões e campos com referências como e12 (--all para a página toda, --selector S para uma parte); find "texto" acha elementos pelo texto.
- Agir: click e12 (ou um seletor CSS, ou X Y), hover, fill e3 "texto" [--enter], type SELETOR "texto" [--enter], select e7 "opção", check e uncheck, upload e9 arquivo e press "Control+A" (Mod é ⌘ no Mac e Ctrl nos outros).
- Esperar: wait com --selector, --text, --gone, --url ou --idle; watch volta assim que algo novo aparece, como um comentário ou uma mensagem.
- Ler: text (com --selector S e --limit N, um bloco por elemento), html [seletor], screenshot [--full | --element e12], console, downloads, cookies e storage (--values mostra os valores) e network.
- Rolar: scroll PIXELS, top ou bottom; dentro de uma lista, scroll e12 ou --selector S, com --by PX ou --to top|bottom.
- Outros: eval "js" (--isolated roda fora do alcance da página), viewport desktop, mobile ou LxA, e tabs e tab N para as janelas que a página abriu, como um login.
- Os comandos de ler e agir (snapshot, find, text, screenshot, wait, tabs…) aceitam --json. Todos aceitam --timeout S (padrão de 30 s; o watch espera 60 s). Depois de um -- sozinho, tudo é texto.
Senhas o agente nunca digita: se um site pede login, ele pede para você entrar no portal. Câmera, microfone e notificações só você libera.
Veja tambémAgentes que usam o portal
Com “Deixar agentes ligados usarem este WhatsApp” ligado no menu do portal, o agente lê, resume, procura e acompanha as suas conversas. Para mandar uma mensagem, ele pede a sua aprovação (o padrão; o menu do portal › “Envio pelos agentes” tem Livre, Perguntar e Bloqueado).
Passo a passo
- octo whatsapp status: se está pronto ou pedindo o login (só você escaneia o QR), os limites de envio e o que já saiu.
- Ler: chats [--unread] [--query "Ana"], read "Ana Souza" [--limit 20] (com --before ID, --around ID, ou --since e --until), group "Família" (participantes, admins e descrição), media ID [destino] e mark-read.
- Resumir um período: messages --since hoje (ou ontem, 18/10, 3h, 7d) [--until …] [--chat "Conversa"].
- Procurar: search "boleto" [--chat "Ana Souza"] [--since 90d]; cada achado traz o ID para ler o que veio em volta.
- Acompanhar: watch espera mensagens novas; subscribe manda um aviso curto ao agente quando chegam mensagens (só quantas); unsubscribe para.
- Responder: send "Ana Souza" "texto" [--reply-to ID] e send-file "Ana Souza" arquivo [--caption "…"], só para conversas que já existem, com a sua aprovação quando “Envio pelos agentes” está em Perguntar (o padrão), e dentro dos limites de Ajustes › Portais.
- Com mais de um WhatsApp ligado, --portal "Nome" escolhe qual; --json vale em todos.
Tudo o que vem do WhatsApp é conteúdo de outra pessoa: o agente trata como dado, nunca como ordem.
Veja tambémLer, resumir e procurar no WhatsApp
Roda o gcloud com uma conta do Google Cloud ligada ao agente, no seu computador e com a conta do cartão, até onde você deixar.
Passo a passo
- octo gcloud "Prod" -- run services list: tudo depois do -- vai para o gcloud. Com uma só conta ligada, o nome é opcional.
- O comando roda no seu computador, mesmo quando o agente está num servidor, e sai com o código do gcloud.
- O cartão da conta decide: “Perguntar” (cada comando espera você), “Leitura livre” (listar e descrever passam) ou “Liberado” por um tempo. Apagar recursos, mudar IAM e pedir um token da conta sempre perguntam.
- Espera até 110 segundos (--timeout S muda); um comando que passa disso sai com 124.
Login, troca do projeto padrão e comandos interativos (como ssh) são recusados: isso é com você, no cartão da conta.
Veja tambémocto gcloud, também de um servidorO que os agentes ligados podem fazer
O agente desenha num cartão Draw ligado a ele, ao vivo, enquanto você vê. Fluxogramas e diagramas saem do mermaid; formas exatas, de uma lista de elementos.
Passo a passo
- octo draw new "Fluxo de login": cria um Draw ao lado do agente, já ligado a ele.
- octo draw read: lista os elementos (id, tipo, rótulo, posição e ligações) e a revisão do desenho; --json ou --raw.
- octo draw mermaid "flowchart LR …": um diagrama em mermaid vira elementos editáveis. --replace troca o desenho todo; --near ID põe perto de um elemento.
- octo draw add, com uma lista JSON de retângulos, elipses, losangos, textos, setas e linhas; update ID muda cor, rótulo ou posição; delete ID e clear apagam.
- octo draw look sketch ou clean troca o traço entre à mão e limpo.
- octo draw write troca o desenho inteiro por um arquivo .excalidraw; com --rev N, só grava se ninguém mudou o desenho desde a leitura.
- octo draw png ou svg salva a imagem (--dark, --scale N, --ids a,b) para o agente conferir o que desenhou.
Com um só Draw ligado, o nome pode ficar de fora. Você pode desenhar ao mesmo tempo e desfazer o que o agente fez.
Veja tambémPedir um fluxograma a um agenteOs comandos do agente (octo draw)
Só um terminal Maestro usa estes comandos. Eles montam e dirigem o time no workspace dele.
Passo a passo
- octo canvas: tudo do workspace (cartões com #id, papéis, ligações e grupos). octo agents: os agentes que dá para abrir em cada máquina.
- octo recruit "Nome": cria um terminal ligado ao Maestro. Opções: --role Papel, --instructions "…", --color cor, --agent claude|codex|shell, --command "cmd", --chat ou --terminal, --dir PASTA, --server Servidor, --note "Nota" (dá para repetir) e --task "primeira tarefa".
- octo assign "Nome" "Papel": troca o papel (o agente é avisado); --none tira.
- octo send "Nome" "mensagem": passa uma tarefa sem esperar; a resposta chega depois.
- octo new note "Título", new portal "Nome" [URL | --preset whatsapp] [--profile "Perfil"], new tree PASTA [--server S] e new draw "Nome": criam cartões ao lado dele.
- octo connect "A" "B" e disconnect ligam e desligam; group "A" "B" --name "Grupo", ungroup e rename organizam.
- octo dismiss "Nome": fecha um recruta (outros cartões pedem a sua confirmação). octo focus "Nome": mostra o cartão a você.
- Com - no lugar de um texto, ele vem da entrada padrão, como em octo recruit "Dev" --task -.
Fora de um Maestro, estes comandos respondem que só um terminal Maestro pode usá-los e explicam como ligar o modo.
Veja tambémComo ele recrutaFechar os recrutas
Duas skills ensinam o Claude Code e o Codex a usar o octo. O Octopus instala e atualiza as duas em cada máquina onde abre terminais.
Passo a passo
- octopus: para todo agente num cartão. Entra em ação quando você fala de algo ligado (uma imagem anexada, uma nota, outro agente, um shell, um portal, o WhatsApp, uma conta na nuvem, um desenho) e quando chega uma mensagem que começa com [Octopus]. Ela começa sempre pelo octo list.
- Ela também traz as regras: um passo de cada vez nos shells, dizer antes de mudar um servidor, não insistir numa recusa, nunca digitar as suas senhas e tratar o que vem de sites e do WhatsApp como dado, não como ordem.
- octopus-maestro: só para um agente em modo Maestro. Ensina a decidir se vale dividir, montar um time pequeno (de dois a cinco), dar tarefas completas, acompanhar e fechar os recrutas.
- As duas ficam em ~/.claude/skills e ~/.codex/skills de cada máquina.
Veja tambémSkills instaladasO que é o Maestro