Files
nanoclaw/.claude/skills/claw/SKILL.md
gavrielc d96be5ddfd scope diagnostics to setup and update-nanoclaw only
Remove diagnostics appendage from all other skills. Only /setup and
/update-nanoclaw need telemetry — these are the two points where we
can detect regressions and track improvements across the user base.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-21 16:27:10 +02:00

4.0 KiB

name, description
name description
claw Install the claw CLI tool — run NanoClaw agent containers from the command line without opening a chat app.

claw — NanoClaw CLI

claw is a Python CLI that sends prompts directly to a NanoClaw agent container from the terminal. It reads registered groups from the NanoClaw database, picks up secrets from .env, and pipes a JSON payload into a container run — no chat app required.

What it does

  • Send a prompt to any registered group by name, folder, or JID
  • Default target is the main group (no -g needed for most use)
  • Resume a previous session with -s <session-id>
  • Read prompts from stdin (--pipe) for scripting and piping
  • List all registered groups with --list-groups
  • Auto-detects container or docker runtime (or override with --runtime)
  • Prints the agent's response to stdout; session ID to stderr
  • Verbose mode (-v) shows the command, redacted payload, and exit code

Prerequisites

  • Python 3.8 or later
  • NanoClaw installed with a built and tagged container image (nanoclaw-agent:latest)
  • Either container (Apple Container, macOS 15+) or docker available in PATH

Install

Run this skill from within the NanoClaw directory. The script auto-detects its location, so the symlink always points to the right place.

1. Copy the script

mkdir -p scripts
cp "${CLAUDE_SKILL_DIR}/scripts/claw" scripts/claw
chmod +x scripts/claw
mkdir -p ~/bin
ln -sf "$(pwd)/scripts/claw" ~/bin/claw

Make sure ~/bin is in PATH. Add this to ~/.zshrc or ~/.bashrc if needed:

export PATH="$HOME/bin:$PATH"

Then reload the shell:

source ~/.zshrc   # or ~/.bashrc

3. Verify

claw --list-groups

You should see registered groups. If NanoClaw isn't running or the database doesn't exist yet, the list will be empty — that's fine.

Usage Examples

# Send a prompt to the main group
claw "What's on my calendar today?"

# Send to a specific group by name (fuzzy match)
claw -g "family" "Remind everyone about dinner at 7"

# Send to a group by exact JID
claw -j "120363336345536173@g.us" "Hello"

# Resume a previous session
claw -s abc123 "Continue where we left off"

# Read prompt from stdin
echo "Summarize this" | claw --pipe -g dev

# Pipe a file
cat report.txt | claw --pipe "Summarize this report"

# List all registered groups
claw --list-groups

# Force a specific runtime
claw --runtime docker "Hello"

# Use a custom image tag (e.g. after rebuilding with a new tag)
claw --image nanoclaw-agent:dev "Hello"

# Verbose mode (debug info, secrets redacted)
claw -v "Hello"

# Custom timeout for long-running tasks
claw --timeout 600 "Run the full analysis"

Troubleshooting

"neither 'container' nor 'docker' found"

Install Docker Desktop or Apple Container (macOS 15+), or pass --runtime explicitly.

"no secrets found in .env"

The script auto-detects your NanoClaw directory and reads .env from it. Check that the file exists and contains at least one of: CLAUDE_CODE_OAUTH_TOKEN, ANTHROPIC_API_KEY, ANTHROPIC_AUTH_TOKEN.

Container times out

The default timeout is 300 seconds. For longer tasks, pass --timeout 600 (or higher). If the container consistently hangs, check that your nanoclaw-agent:latest image is up to date by running ./container/build.sh.

"group not found"

Run claw --list-groups to see what's registered. Group lookup does a fuzzy partial match on name and folder — if your query matches multiple groups, you'll get an error listing the ambiguous matches.

Container crashes mid-stream

Containers run with --rm so they are automatically removed. If the agent crashes before emitting the output sentinel, claw falls back to printing raw stdout. Use -v to see what the container produced. Rebuild the image with ./container/build.sh if crashes are consistent.

Override the NanoClaw directory

If claw can't find your database or .env, set the NANOCLAW_DIR environment variable:

export NANOCLAW_DIR=/path/to/your/nanoclaw