airclaw
v1.3.0
Published
Create OpenClaw agents in the cloud in seconds
Readme
airclaw
Create OpenClaw agents in the cloud in seconds. Each agent gets its own VM with shell access, file storage, email, and tool use.
Install
npm install -g airclawRequires Node.js 18+.
Quick start
airclaw auth login # prompts for API key
airclaw create # spin up an agent
airclaw chat # talk to it
airclaw ssh # shell into itGet an API key from the AirClaw dashboard.
Authentication
Three ways to authenticate, checked in this order:
AIRCLAW_API_KEYenv var — best for CI/CD and scripts:export AIRCLAW_API_KEY=sk-ac-...Interactive login — saves to
~/.airclaw/config.json:airclaw auth login--keyflag — avoid this. Arguments are visible inpsoutput.
Check your auth state with airclaw auth status. Log out with airclaw auth logout.
Commands
Machines
airclaw list List your AirClaws
airclaw create Create a new AirClaw
airclaw info <id> Get machine details
airclaw destroy <id> Destroy a machine
airclaw sleep <id> Suspend a machine
airclaw default <id> Set default machineSSH
airclaw ssh <id> Connect to a machine
airclaw ssh <id> ls -la Run a remote command
airclaw ssh otp_abc123 Redeem a one-time access code
airclaw ssh --list Show saved connections
airclaw ssh --reset Clear saved connections and keysMachines accessed via one-time codes are saved locally so you can reconnect later without a new code.
Chat
airclaw chat <id> Interactive conversation
airclaw chat <id> -m "message" Single message (streams to stdout)Gateway
airclaw config <id> View agent configuration
airclaw config <id> --set '{"model": "..."}' Update configuration
airclaw models <id> List available models
airclaw rpc <id> <method> Call a gateway method
airclaw tools invoke <id> <tool> --args '{}' Invoke a toolAirDrive
airclaw drive upload <id> ./file.pdf Upload a file
airclaw drive download <id> file.pdf Download a file
airclaw drive list <id> List files
airclaw drive delete <id> file.pdf Delete a file
airclaw drive share <id> file.pdf Get a public share linkAirMail
airclaw mail status <id> Check email status
airclaw mail claim <id> myname Claim [email protected]
airclaw mail list <id> List emails
airclaw mail read <id> <email-id> Read an email
airclaw mail send <id> --to x --subject y --body z
airclaw mail reply <id> <msg-id> --body z Reply to an emailTodos
airclaw todos list <id> List todos
airclaw todos create <id> Buy milk Create a todo
airclaw todos update <id> <todo-id> --status completed
airclaw todos delete <id> <todo-id> Delete a todo
airclaw todos tags <id> List tagsAPI Keys
airclaw keys list List your API keys
airclaw keys create [name] Create a new key
airclaw keys revoke <id> Revoke a keyWhen <id> is omitted, the CLI uses your default machine. Set one with airclaw default <id>. If you only have one machine, it's selected automatically.
Most commands accept --json for machine-readable output.
One-time access codes
Share access to an agent without sharing your API key. The recipient doesn't need an account:
airclaw ssh otp_abc123xyzThe connection is saved locally so they can reconnect with just airclaw ssh.
CI/CD
export AIRCLAW_API_KEY=sk-ac-...
# Create and capture the ID
ID=$(airclaw create --json | jq -r '.id')
# Run a command
airclaw ssh "$ID" python train.py
# Clean up
airclaw destroy "$ID" -fEnvironment variables
| Variable | Description |
|----------|-------------|
| AIRCLAW_API_KEY | API key (alternative to auth login) |
| AIRCLAW_API_URL | Custom API base URL |
Local config
All state lives in ~/.airclaw/:
~/.airclaw/
├── config.json # API key, default machine
├── connections.json # Saved SSH connections from access codes
└── keys/ # SSH private keysTo fully uninstall:
npm uninstall -g airclaw
rm -rf ~/.airclaw