18/Documentation
Comandos
Todos os verbos do collie, inclusão do collie no seu PATH e as ações do Herdr que espelham os verbos em uma instalação gerenciada por ele
Todo verbo usa o formato collie <verb>. Esta é a sintaxe canônica em todas as instalações, implementada diretamente no binário (cli/). Antes de adicionar collie ao seu PATH (abaixo), execute bin/collie <verb> a partir da raiz do repositório. Em uma instalação gerenciada pelo Herdr, esses mesmos verbos são registrados como ações do Herdr (abaixo) com comportamento idêntico.
Se o host executar várias instâncias, adicione COLLIE_INSTANCE=<name> antes de cada verbo. Consulte Várias instâncias do Collie em um único host.
| Verbo | Comando | O que faz |
|---|---|---|
| Iniciar | collie start | Compilar se necessário, servir, exibir a URL |
| Parar | collie stop | Pausar a bridge; não remove nada |
| Reiniciar | collie restart | Parar e depois iniciar |
| Status | collie status | O banner O Collie está em execução + URLs |
| URL | collie url | Exiba a URL da tailnet |
| QR | collie qr | A mesma URL como um código escaneável |
| Versão | collie version | A versão em execução (0.x.y+sha) |
| Skill | collie skill | O resumo voltado a agentes sobre o Collie, para agentes de codificação por IA que operam no seu terminal (também collie --skill). collie skill install, uninstall, sync, status e print gerenciam a skill walky talky nos arquivos de instruções dos seus agentes; collie update executa sync após cada atualização (Instale a skill) |
| Docs | collie docs · collie docs <name> · collie docs --all | Estas páginas, impressas a partir do próprio binário |
| Update | collie update | Prepare a versão mais recente da sua major, mude para ela, reinicie e verifique (--check pré-checagens, --status relatórios, --major atravessa uma) |
| Rollback | collie update --rollback | Restaure a versão anterior (não em um checkout gerenciado pelo Herdr, que não tem nenhuma preparada) |
| Uninstall | collie uninstall | Remova o serviço; mantenha .env e a instalação |
| Pair | collie pair · collie pair --expires <duration> | Exiba um código de 8 caracteres e um código QR, válidos por 10 minutos; escaneie o código QR para abrir Settings → System → Paired devices com o código preenchido, ou digite o código manualmente para torná-lo emparelhado. Sem --expires o token nunca expira e o comando informa isso; com ele (12h, 30d, 2w) o comando exibe a data em que o token para de funcionar depois de resgatado. Um script resgata o código com um rótulo próprio, por exemplo script, e pareia uma vez (Definir uma expiração para um dispositivo) |
| Dispositivos | collie devices list · collie devices revoke <label> · collie devices set-expiry <label> <duration> · collie devices clear-expiry <label> | Liste / revogue dispositivos pareados, ou altere quando um expira. list exibe a expiração de cada dispositivo como no expiry, expires <date> ou EXPIRED <date>. set-expiry conta uma nova duração a partir de agora; clear-expiry o remove. Um rótulo corresponde exatamente, ou sem distinção de maiúsculas/minúsculas quando apenas um dispositivo coincide |
| Link | collie link · collie unlink | Coloque collie no seu PATH (abaixo) |
| Logs | collie logs | Acompanhe o log do serviço |
| Config | collie config show · collie config check · collie config init | Exiba todas as configurações com sua origem, valide o arquivo ou grave um config.toml comentado (o arquivo de configuração) |
| Durable agents | collie durable attach <name> --socket <path> · collie durable attach <name> --url <url> --token-env <VAR> · collie durable detach <name> · collie durable list | Adicione um durable agent ao sources.json, remova-o ou liste cada durable agent com o estado fornecido pela bridge em execução. attach e detach entram em vigor na próxima reinicialização, ou imediatamente com --restart. Flags, saída e códigos de saída: Durable agents |
| Walky talky | collie walky who · collie walky send <address> <text> · collie walky reply <id> <text> · collie walky inbox · collie walky status <id> | Envie mensagens para uma sessão de agente a partir de um terminal, ou de um agente para outro (Walky talky) |
| Voice | collie stt setup · stt test · stt status · stt off | Configurar / verificar / desativar entrada de voz |
| Chaves de push | collie push-keys | Gere o par de chaves VAPID no seu .env |
| Teste de push | collie push-test | Envie uma notificação para comprovar o funcionamento |
A CLI também inclui build, serve, unserve, doctor e crew … para tarefas menos frequentes.
Tanto start quanto status exibem o banner do O Collie está em execução: uma marca de integridade e a versão, seguidas por uma linha service, uma local e uma tailnet. O comando Primeira execução mostra o banner completo, incluindo o que é exibido em caso de falha na verificação de integridade. A versão informada é lida a partir do carimbo do pacote servido, refletindo a compilação ativa.
Ink ou texto sem formatação. Os comandos start, status, doctor, crew add e crew status renderizam uma interface interativa de terminal quando o stdout for um TTY. Passar --plain, ou redirecionar a saída para um pipe, arquivo, journal do systemd ou executor de CI, faz com que a saída retorne ao modo linha por linha.
collie doctor informa qual estado foi lido. Sua primeira linha informa a instância (default, ou o nome em COLLIE_INSTANCE) e o diretório de estado lido. Se você roda duas lanes em uma máquina, verifique essa linha antes de confiar no restante, pois uma shell com o COLLIE_INSTANCE errado lê a lane errada. --json exibe os mesmos dois valores como instance e stateDir na entrada collie.
collie doctor lista os programas dos seus agentes. Cada programa para o qual o Collie possui um perfil de entrada recebe uma linha harness-<name>: o arquivo que o Collie executaria no PATH da sua shell de login, a versão impressa e o veredito do perfil para essa versão. Uma versão acima do intervalo verificado gera apenas uma observação, pois envios durante o turno continuam confiáveis. A linha alerta quando o arquivo é resolvido mas sua versão não pode ser lida, por exemplo um wrapper inicial no PATH que precisa de $HOME, ou uma instalação corrompida: até a versão ser lida, o Collie trata cada envio para esse programa como provisório. Um programa não instalado exibe not installed. Em --json cada linha traz também harness, binary, version e profileStatus.
A linha informa a cópia no seu PATH, pois collie doctor não tem painel para analisar. Um envio no Herdr consulta o programa em execução no painel; portanto, um painel que roda outra cópia, iniciada pelo caminho completo ou instalada em um projeto, mostra a versão dessa cópia em seus recibos.
Coloque collie no seu PATH
Execute collie link para publicar ~/.local/bin/collie:
bin/collie link # ~/.local/bin/collie → <checkout>/bin/collie
collie status # from anywhere
bin/collie unlink # take the name back downCria um symlink para o binário do checkout, de modo que atualizações futuras do collie build tenham efeito imediato sem etapas adicionais (ADR 0021). O comando substitui links existentes de outros checkouts do Collie e imprime qual deles foi sobrescrito. Ele se recusa a sobrescrever arquivos que não sejam do Collie nesse caminho. O comando unlink remove o symlink apenas se ele apontar para o seu checkout atual.
Se ~/.local/bin estiver ausente do seu PATH, link avisa você e é encerrado. Ele nunca edita o perfil do seu shell. Execute collie doctor para verificar a linha path-link e ver para qual checkout o comando collie simples é resolvido.
Ações do Herdr
Aplica-se apenas a uma instalação gerenciada pelo Herdr criado com herdr plugin install AltanS/collie ou herdr plugin link. O Herdr é um dos cinco multiplexadores suportados pelo Collie. Essas ações mapeiam diretamente para o adaptador: cada ação encaminha o verbo para o mesmo binário collie documentado na tabela acima. Em instalações de binários criadas via scripts/install.sh, as ações do plugin não existem, e collie <verb> é a única sintaxe.
O Collie registra essas ações em herdr-plugin.toml. Execute-as com herdr plugin action invoke <id> --plugin herdr.collie, ou visualize-as com herdr plugin action list --plugin herdr.collie:
<id> | Verbo equivalente | O que faz |
|---|---|---|
start | collie start | Compile se necessário, inicie o serviço, tailscale serve, exiba URL + banner |
stop | collie stop | Pausar a bridge; não remove nada |
restart | collie restart | stop + start |
status | collie status | O banner do O Collie está em execução — prontidão ✓/⚠, versão, URLs |
url | collie url | Exiba a URL da tailnet |
version | collie version | Exibe a versão em execução (0.x.y+sha) |
update | collie update | Avance o checkout (pull, ou fetch + re-detach) + recompile + reinicie |
uninstall | collie uninstall | Desative o serviço (mantém .env + checkout) |
push-keys | collie push-keys | Grave um par de chaves VAPID no .env que o serviço lê |
push-test | collie push-test | Envie uma notificação push para todos os dispositivos inscritos |
qr, pair, devices, link, logs, stt e config não têm nenhuma ação de plugin correspondente porque exigem um terminal, argumentos posicionais ou ambos. Execute-os como collie <verb>.
As ações do Herdr retornam o envelope JSON do Herdr em vez do banner do terminal. Veja o stdout capturado da ação com herdr plugin log list --plugin herdr.collie, ou execute collie <verb> diretamente para exibir a saída inline. A saída de herdr plugin list --json reflete a versão em cache durante plugin link, e não a versão ativa. Para clones vinculados, update revincula automaticamente para corrigir o cache. Você pode forçar isso com herdr plugin link "$(pwd)". O Herdr ≥0.8.0 relê o manifesto do disco a cada invocação.
Nota.scripts/collie-ctl.sh <verb>continua suportado. Ele opera como um shim de inicialização: localiza o Bun, compilabin/colliese o checkout não o tiver e repassa argv. Um clone recém-vinculado usa esse caminho para compilar seu binário inicial. As ações do Herdr continuam apontando para esse script porque o Herdr <0.8.0 congela as definições de ação em cache no momento da instalação (ADR 0006). Cada verbo é implementado uma vez dentro do binário compilado emcli/.