#VPS and mac as node
1 messages Β· Page 1 of 1 (latest)
Great question! This is a common distributed setup for Clawdbot.
Quick overview:
- Brain (VPS): Runs the gateway service with models, memory, and channel connections
- Node (Mac): Connects remotely to the brain, providing local resources (camera, location, speaker/mic)
Basic steps:
-
On the VPS (brain):
- Install Clawdbot
- Run
clawdbot gateway start - Note the gateway URL (e.g.,
http://your-vps-ip:8234)
-
On your Mac (node):
- Install Clawdbot
- Configure in
~/.clawdbot/config.json5:
{
gatewayUrl: "http://your-vps-ip:8234",
node: {
enabled: true,
name: "my-mac"
}
}
```
- Start the node:
clawdbot node start
Key docs:
- Distributed setup: https://docs.clawd.bot/concepts/distributed
- Node configuration: https://docs.clawd.bot/nodes/overview
- Gateway docs: https://docs.clawd.bot/gateway/overview
The node will then remotely access your Mac's camera, location, etc. while the brain handles all the AI processing. Want me to dig deeper into any specific part?
clawdbot node start
π¦ Clawdbot 2026.1.22 (c48751a) β I'm not magicβI'm just extremely persistent with retries and coping strategies.
error: unknown command 'start'
(Did you mean restart?)
Ah, that command doesn't exist (noted in my own lessons learned π ). Let me check the actual node commands.
Quick check β run these and paste the output:
clawdbot --help
and
clawdbot node --help
This will show the actual available commands. Based on my notes, the node setup might work differently than I assumed β could be clawdbot start with node config, or the node might auto-connect when configured.
Let me know what those commands show and I'll guide you from there!
{
"meta": {
"lastTouchedVersion": "2026.1.22",
"lastTouchedAt": "2026-01-25T17:18:47.836Z"
},
"wizard": {
"lastRunAt": "2026-01-25T17:18:47.830Z",
"lastRunVersion": "2026.1.22",
"lastRunCommand": "onboard",
"lastRunMode": "remote"
},
"agents": {
"defaults": {
"maxConcurrent": 4,
"subagents": {
"maxConcurrent": 8
}
}
},
"messages": {
"ackReactionScope": "group-mentions"
},
"commands": {
"native": "auto",
"nativeSkills": "auto"
},
"gateway": {
"mode": "remote",
"remote": {
"url": "ws://5.161.55.98:18789",
"token": "nox-mac-william-2026"
}
}
}
β°β clawdbot node status ββ―
π¦ Clawdbot 2026.1.22 (c48751a)
β One CLI to rule them all, and one more restart because you changed the port.
Service: LaunchAgent (not loaded)
Runtime: unknown (Bad request.
Could not find service "com.clawdbot.node" in domain for user gui: 501)
Start with: clawdbot node install
Start with: clawdbot node start
Start with: launchctl bootstrap gui/$UID ~/Library/LaunchAgents/com.clawdbot.node.plist
β°β clawdbot node --help ββ―
π¦ Clawdbot 2026.1.22 (c48751a)
β I'm the assistant your terminal demanded, not the one your sleep schedule requested.
Usage: clawdbot node [options] [command]
Run a headless node host
(system.run/system.which)
Options:
-h, --help display help for command
Commands:
run Run the headless node host (foreground)
status Show node host status
install Install the node host service (launchd/systemd/schtasks)
uninstall Uninstall the node host service (launchd/systemd/schtasks)
stop Stop the node host service (launchd/systemd/schtasks)
restart Restart the node host service (launchd/systemd/schtasks)
help display help for command
Docs: docs.clawd.bot/cli/node
Perfect! Your Mac is already configured to connect to the VPS β the gateway config shows it's set up as a remote client.
Next steps:
-
Test it first (foreground mode):
clawdbot node runThis runs in foreground so you can see logs and debug any issues.
-
Once working, install as a service:
clawdbot node installThis sets up the launchd service so it runs in background.
-
Check status:
clawdbot node status
On your VPS (brain): Make sure the gateway is running and accepting connections from your node token (nox-mac-william-2026).
Try clawdbot node run first and let me know what happens!
when I run, this goes not to foreground, stay active, β°β clawdbot node run ββ―
π¦ Clawdbot 2026.1.22 (c48751a) β Automation with claws: minimal fuss, maximal pinch.
node host PATH: /opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/Users/williamneves/.local/bin:/Users/williamneves/.bun/bin:/usr/bin:/bin:/Users/williamneves/.amp/bin:/Users/williamneves/.antigravity/antigravity/bin:/opt/homebrew/opt/postgresql@14/bin:/Users/williamneves/.console-ninja/.bin:/opt/homebrew/opt/postgresql@15/bin:/Users/williamneves/.codeium/windsurf/bin:/Users/williamneves/.deno/bin:/Users/williamneves/Library/pnpm:/Users/williamneves/.nvm/versions/node/v22.12.0/bin:/System/Cryptexes/App/usr/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/opt/pmk/env/global/bin:/Library/Apple/usr/bin:/Applications/Ghostty.app/Contents/MacOS:/Users/williamneves/.orbstack/bin
That's actually good β it means the node is running and likely connected! It just doesn't have much to show when idle.
Quick check β on your VPS, run:
clawdbot gateway status
Or check if the gateway is running:
clawdbot gateway list
Also on your Mac, try this to see if it's connected:
clawdbot node status
The node will stay active in that terminal, waiting for tasks from the brain. If the gateway on your VPS is running and accepting connections, they should pair up automatically.
If the gateway isn't running on the VPS, start it with:
clawdbot gateway start
Let me know what the status shows!
π¦ Clawdbot 2026.1.22 (c48751a)
β One CLI to rule them all, and one more restart because you changed the port.
Service: LaunchAgent (loaded)
Command: /opt/homebrew/bin/node /Users/williamneves/.bun/install/global/node_modules/clawdbot/dist/entry.js node run --host 5.161.55.98 --port 18789
Service file: /Users/williamneves/Library/LaunchAgents/com.clawdbot.node.plist
Runtime: running (pid 8773, state active)
this is on my mac, but on my vps
clawdbot nodes status
π¦ Clawdbot 2026.1.22 (c48751a) β WhatsApp Business, but without the business.
β
β
Known: 1 Β· Paired: 1 Β· Connected: 0
ββββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββββββββββββ¬ββββββββββββββββββββββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββββββββββββββ
β Node β ID β IP β Detail β Status β Caps β
ββββββββββββββββββββββββββββββββββββββββββββββββΌβββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββΌββββββββββββββββββΌββββββββββββββββββββββββββββββββββββββββββββββββββΌββββββββββββββββββββββββΌββββββββββββββββββββββββββββββββββββββββββββ€
β Mac-William β 14e20b5d4b2f62835c6336777088c18752312daa0edb6f8c4396f600dc3f8cb1 β 107.202.249.230 β β paired Β· disconnected β β
ββββββββββ
The node is paired but not connected. This usually means either:
-
Gateway isn't running on VPS β Check:
clawdbot gateway status -
VPS firewall blocking the port β Make sure port
18789accepts incoming connections -
Gateway not accepting remote nodes β The gateway might need config to allow node connections
Quick debug steps:
On your VPS, run:
clawdbot gateway status
And check if it's running. If not, start it:
clawdbot gateway start
If it is running, check the logs for connection attempts:
clawdbot gateway logs
Look for any errors or connection attempts from 107.202.249.230 (your Mac's IP).
Also, on the Mac, check if there are any connection errors:
clawdbot node run
(Try stopping the service first: clawdbot node stop)
Let me know what the gateway status and logs show!
question, but when I put clawdbot node run, the terminal stay open, has no way to run at background?, because if I close the terminal is over
You already have it running as a background service! π
Look at your earlier output:
Service: LaunchAgent (loaded)
Runtime: running (pid 8773, state active)
Just use the service commands instead of node run:
clawdbot node status # Check if running
clawdbot node stop # Stop it
clawdbot node start # Start it
clawdbot node restart # Restart it
clawdbot node run is only for foreground debugging. The LaunchAgent service handles background running automatically β even after you close the terminal or reboot your Mac.
So your node is already connected? Run this on the VPS again:
clawdbot nodes status
See if "Connected" changed from 0 to 1. If it's still disconnected, the issue is with the VPS gateway or firewall, not your Mac setup.
parece que eu consegui, mas agora estou recebendo dizendo que o system esta negando o acesso do cerebro para o meu mac.
Que bom que conectou! π
Agora sobre a permissΓ£o negada β vocΓͺ pode colar aqui o erro exato que estΓ‘ aparecendo?
Provavelmente Γ© algo do macOS bloqueando acesso a:
- CΓ’mera
- Microfone
- Location Services (serviΓ§os de localizaΓ§Γ£o)
- Acessibilidade (se estiver usando controle de teclado/mouse)
Quick fix β verificar permissΓ΅es no Mac:
-
VΓ‘ em PreferΓͺncias do Sistema β Privacidade e SeguranΓ§a
-
Confirme que Clawdbot tem permissΓ£o para:
- CΓ’mera
- Microfone
- LocalizaΓ§Γ£o
- Acessibilidade (se aplicΓ‘vel)
- Se nΓ£o estiver lΓ‘, adicione manualmente ou reinicie o app
Cola o erro aqui que te ajudo a resolver! π¦
o problema e ue o clawdbot nao tem app, e so no terminal, como vou fazer ele ter permissao
Ah, esse Γ© um problema comum do macOS com apps CLI!
SoluΓ§Γ΅es:
-
Dar permissΓ΅es ao terminal que vocΓͺ usa (iTerm2, Terminal.app, etc.):
- PreferΓͺncias do Sistema β Privacidade e SeguranΓ§a
- Acessibilidade: Adicione seu terminal (iTerm2/Terminal)
- Entrada de CΓ’mera: Adicione seu terminal
- Microfone: Adicione seu terminal
-
Se nΓ£o aparecer nas listas:
- Clique no + e navegue atΓ©:
/Applications/Utilities/Terminal.app(ou iTerm2)/Applications/iTerm.app
- Clique no + e navegue atΓ©:
-
Depois de adicionar, reinicie o terminal
Alternativa β usar Full Disk Access:
- PreferΓͺncias β Privacidade β Acesso Completo ao Disco
- Adicione seu terminal
O macOS trata apps CLI como "filhos" do terminal, entΓ£o o terminal precisa ter as permissΓ΅es.
Tenta isso e me diz se resolve! π¦
hum, mas qual vai ser o terminal que o "gateway" vai acessar?
Boa pergunta! O problema Γ© que o macOS nΓ£o permite que serviΓ§os rodando em background (como launchd) acessem cΓ’mera/microfone β sΓ³ apps com GUI podem ter essas permissΓ΅es.
SoluΓ§Γ΅es prΓ‘ticas:
-
Mantenha um terminal logado com permissΓ΅es:
clawdbot node run- Deixe um terminal aberto no Mac com permissΓ΅es de cΓ’mera/mic
- O gateway no VPS vai acessar atravΓ©s dele
-
Use Browser Relay (melhor soluΓ§Γ£o):
- Instale a extensΓ£o Clawdbot no Chrome/Safari no seu Mac
- O navegador vira um "node" com permissΓ΅es completas
- Funciona como se fosse um app GUI
-
Executar via SSH logado:
- SSH no Mac de outra mΓ‘quina
- Rode
clawdbot node runna sessΓ£o SSH ativa - O macOS permite acessos via sessΓ£o de usuΓ‘rio ativa
- Rode
Qual recurso vocΓͺ precisa no Mac? (cΓ’mera, mic, localizaΓ§Γ£o?)
Se for cΓ’mera/mic, a opΓ§Γ£o 2 (Browser Relay) Γ© a mais estΓ‘vel. Se for sΓ³ executar comandos (system.run), a opΓ§Γ£o 1 funciona bem.
O que vocΓͺ estΓ‘ tentando fazer especificamente? π¦