How to Run a Node
Nodes are machines running the GSV CLI that provide tools to the agent over WebSocket. When a node connects, the agent gains access to Bash, Read, Write, Edit, Glob, and Grep on that machine.
Install and start a node as a background service
This is the recommended approach. The node runs as a system service (launchd on macOS, systemd on Linux) and reconnects automatically.
gsv node install --id macbook --workspace ~/projects--id sets the node's name (used as a namespace prefix for tools). --workspace sets the root directory for file operations.
Check status and logs:
gsv node status
gsv node logs --followStop and start the service:
gsv node stop
gsv node startRun a node in the foreground
Useful for debugging or one-off sessions. The node stops when you close the terminal.
gsv node --foreground --id macbook --workspace ~/projectsUninstall the node service
gsv node uninstallThis stops the service and removes the service definition. It does not delete the CLI or config.
How tool namespacing works
Each tool from a node is prefixed with {nodeId}__. If a node connects with --id laptop, the agent sees:
laptop__Bash-- run shell commandslaptop__Read-- read fileslaptop__Write-- write fileslaptop__Edit-- edit files (find-and-replace)laptop__Glob-- find files by patternlaptop__Grep-- search file contents
The agent uses the prefix to target the correct machine: "I'll check the logs on the server" leads to a server__Bash call.
Connect multiple nodes
You can connect nodes from different machines, each with a different ID and workspace:
# On your laptop
gsv node install --id laptop --workspace ~/code
# On a server
gsv node install --id server --workspace /var/appThe agent sees tools from all connected nodes simultaneously and can reason about which machine to use for a given task.
Set default node config
To avoid passing --id and --workspace every time, save defaults to local config:
gsv local-config set node.id macbook
gsv local-config set node.workspace /Users/me/projectsThen you can simply run:
gsv node installNode capabilities and skills
Nodes report their OS, available environment variables, and installed binaries to the gateway. Skills (loadable agent capabilities) can declare runtime requirements like specific binaries or OS types. If a skill requires docker and no connected node has it, that skill won't appear in the agent's prompt.
To check which skills are eligible given your current nodes:
gsv skills statusTo re-probe node capabilities and refresh eligibility:
gsv skills update --forceNode logs
Node logs are structured JSON at ~/.gsv/logs/node.log with automatic rotation (default: 10MB, 5 files). Override the limits with environment variables:
export GSV_NODE_LOG_MAX_BYTES=20000000
export GSV_NODE_LOG_MAX_FILES=3Verify connected nodes
From any machine with CLI access to the gateway:
gsv tools listThis shows all tools from all connected nodes and native gateway tools.