hands
hands is Hawa Code’s remote execution mechanism: it runs tools inside the same sandbox as your code, fully decoupling model inference traffic from tool execution requests. Model traffic never has to enter the sandbox to invoke tools, so the sandbox stays isolated while the full toolset remains available.
Tools are exposed over the MCP protocol. You can either use the MCP that ships with Hawa Code directly, or plug in the standalone MCP tools that Hawa Code provides separately. The rest of this page covers the built-in hands MCP.
Start the hands service
Run the following command inside the sandbox (or on any remote machine) to start the hands service. On success, it prints a URL that clients can connect to:
hcode hands |
Client configuration
Add the following to .mcp.json in Hawa Code or any other MCP-compatible client:
{ |
Use the URL actually printed when
handsstarts; on Codespaces the URL can change after a restart, so remember to update this entry accordingly.
Provided MCP tools
| Tool | Description |
|---|---|
Bash |
Run shell commands on the remote machine, with background execution and timeout control |
Read |
Read remote file contents, with offset / limit for chunked reads |
Edit |
Perform exact string replacements in remote files |
Write |
Write or overwrite files on the remote filesystem |
Glob |
Fast file path matching using glob patterns |
Grep |
Ripgrep-based regex search with file-type and context filters |
LSP |
Talk to remote language servers for go-to-definition, references, hover, symbol lookup, etc. |
NotebookEdit |
Edit a single cell of a remote Jupyter notebook |
TaskOutput |
Stream live output of a background task (shell / agent) |
TaskStop |
Terminate a specified background task |