Acp Remote
by @smallnest
Connect to remote ACP server and execute commands via imclaw-cli.
clawhub install acp-remoteπ About This Skill
name: acp-remote description: Connect to remote ACP server and execute commands via imclaw-cli. homepage: https://github.com/smallnest/imclaw metadata: {"clawdbot":{"emoji":"π€","requires":{"bins":["imclaw-cli","acpx"]}}}
ACP Remote
Connect to a remote ACP (Agent Client Protocol) server and execute commands using imclaw-cli.
Prerequisites
Auto-install dependencies
Before using this skill, ensure both imclaw-cli and acpx are installed. Run these commands to install them automatically:
# Install acpx (ACP protocol support)
if ! command -v acpx &> /dev/null; then
npm install -g acpx@latest
fiInstall imclaw-cli
if ! command -v imclaw-cli &> /dev/null; then
curl -fsSL https://raw.githubusercontent.com/smallnest/imclaw/main/scripts/install.sh | bash
fi
Manual installation
#### Install acpx
npm install -g acpx@latest
#### Install imclaw-cli
From GitHub Releases:
# 1. Detect your platform
OS=$(uname -s | tr '[:upper:]' '[:lower:]')
ARCH=$(uname -m)
[ "$ARCH" = "x86_64" ] && ARCH="amd64"
[ "$ARCH" = "aarch64" ] && ARCH="arm64"2. Get latest release version
LATEST=$(curl -s https://api.github.com/repos/smallnest/imclaw/releases/latest | grep '"tag_name"' | sed -E 's/.*"([^"]+)".*/\1/')3. Download and extract
curl -sL "https://github.com/smallnest/imclaw/releases/download/${LATEST}/imclaw_${OS}_${ARCH}.tar.gz" | tar xz -C /tmp4. Install to PATH
mkdir -p ~/bin
mv /tmp/imclaw-cli ~/bin/
chmod +x ~/bin/imclaw-cli5. Ensure ~/bin is in PATH
echo 'export PATH="$HOME/bin:$PATH"' >> ~/.bashrc # or ~/.zshrc
Verify installation
imclaw-cli --help
acpx --version
Configuration
Set the remote server URL and optional auth token:
# Default server (can be omitted if using default)
export IMCLAW_SERVER="ws://your-server:8080/ws"Auth token (if server requires authentication)
export IMCLAW_TOKEN="your-secret-token"
Or pass directly via command line.
Server Configuration
IMClaw server uses command line flags (no config file needed):
# Start server with default settings
imclawCustom port and auth token
imclaw --port 9000 --token my-secret-tokenShow help
imclaw --help
| Flag | Default | Description |
|------|---------|-------------|
| -H, --host | 0.0.0.0 | Server host address |
| -p, --port | 8080 | Server port |
| --timeout | 30 | Default timeout in seconds |
| --token | "" | Authentication token (empty = no auth) |
Usage
One-shot mode (recommended)
# Basic usage
imclaw-cli --server ws://your-server:8080/ws -p "Hello"With auth token
imclaw-cli --server ws://your-server:8080/ws --token your-token -p "Hello"Use specific agent
imclaw-cli --server ws://your-server:8080/ws --agent codex -p "Analyze this code"JSON output
imclaw-cli --server ws://your-server:8080/ws --format json -p "List files"
Continue a session
# First message creates session, returns session ID
imclaw-cli --server ws://your-server:8080/ws -p "Read the README.md"Continue with same session
imclaw-cli --server ws://your-server:8080/ws --session -p "Summarize it"
Parameters
| Parameter | Description |
|-----------|-------------|
| --server | WebSocket URL of ACP server (default: ws://localhost:8080/ws) |
| --token | Authentication token (if required) |
| -p, --prompt | Prompt message (one-shot mode) |
| --session | Session ID to continue |
| --agent | Agent type: claude, codex, etc. (default: claude) |
| --format | Output format: text, json, quiet (default: text) |
| --approve-all | Auto-approve all permission requests |
| --approve-reads | Auto-approve reads, prompt for writes (default) |
| --deny-all | Deny all permission requests |
| --allowed-tools | Comma-separated tool names (default: Bash,Read,Write) |
| --cwd | Working directory |
| --timeout | Max wait time in seconds |
| --model | Agent model ID |
Examples
Execute shell commands on remote
imclaw-cli --server ws://remote-server:8080/ws \
--agent claude \
--approve-all \
-p "Run 'df -h' and show disk usage"
Analyze remote codebase
imclaw-cli --server ws://remote-server:8080/ws \
--cwd /path/to/project \
-p "Review the main.go file and suggest improvements"
Use with SSH tunnel
# Create SSH tunnel first
ssh -L 8080:localhost:8080 user@remote-server -N &Connect via localhost
imclaw-cli --server ws://localhost:8080/ws -p "Hello from remote"
Secure connection with token
# Server configured with auth_token
imclaw-cli \
--server wss://secure-server:8080/ws \
--token "your-secret-token" \
-p "Execute analysis task"
Environment Variables
For convenience, you can set these environment variables:
# In ~/.bashrc or ~/.zshrc
export IMCLAW_SERVER="ws://your-server:8080/ws"
export IMCLAW_TOKEN="your-token"
Then simply run:
imclaw-cli --server $IMCLAW_SERVER --token $IMCLAW_TOKEN -p "Hello"
Tips
1. Session reuse: Save the session ID from first response to continue conversations
2. Permission control: Use --approve-all for non-interactive automation
3. Output parsing: Use --format json for programmatic consumption
4. Tool restrictions: Use --allowed-tools to limit what the agent can do
5. Working directory: Always specify --cwd for file operations
π‘ Examples
Execute shell commands on remote
imclaw-cli --server ws://remote-server:8080/ws \
--agent claude \
--approve-all \
-p "Run 'df -h' and show disk usage"
Analyze remote codebase
imclaw-cli --server ws://remote-server:8080/ws \
--cwd /path/to/project \
-p "Review the main.go file and suggest improvements"
Use with SSH tunnel
# Create SSH tunnel first
ssh -L 8080:localhost:8080 user@remote-server -N &Connect via localhost
imclaw-cli --server ws://localhost:8080/ws -p "Hello from remote"
Secure connection with token
# Server configured with auth_token
imclaw-cli \
--server wss://secure-server:8080/ws \
--token "your-secret-token" \
-p "Execute analysis task"
βοΈ Configuration
Set the remote server URL and optional auth token:
# Default server (can be omitted if using default)
export IMCLAW_SERVER="ws://your-server:8080/ws"Auth token (if server requires authentication)
export IMCLAW_TOKEN="your-secret-token"
Or pass directly via command line.
Server Configuration
IMClaw server uses command line flags (no config file needed):
# Start server with default settings
imclawCustom port and auth token
imclaw --port 9000 --token my-secret-tokenShow help
imclaw --help
| Flag | Default | Description |
|------|---------|-------------|
| -H, --host | 0.0.0.0 | Server host address |
| -p, --port | 8080 | Server port |
| --timeout | 30 | Default timeout in seconds |
| --token | "" | Authentication token (empty = no auth) |
π Tips & Best Practices
1. Session reuse: Save the session ID from first response to continue conversations
2. Permission control: Use --approve-all for non-interactive automation
3. Output parsing: Use --format json for programmatic consumption
4. Tool restrictions: Use --allowed-tools to limit what the agent can do
5. Working directory: Always specify --cwd for file operations