CloudClawer/CloudClawerBlog
DocsSign In
All PostsTutorialsDeep Dives
Blog
Tutorial 8 min read2026-05-10

Getting Started with CloudClawer: Your AI Agent's Private Server

A complete walkthrough from account creation to your first structured agent session — with process gates, session recording, and cost tracking fully enabled.

What is CloudClawer?

Claude Code is powerful out of the box. But by default, every session starts from scratch — no persistent memory, no usage tracking, no guardrails on what the agent can do. CloudClawer solves all three problems at once.

Think of it as a private server room for your AI agent. It provides:

  • Persistent memory — key-value and semantic search across sessions
  • Process gates — state machines that enforce checklists before the agent can proceed
  • Session recordings — full rrweb replay of every agent run
  • Routines — scheduled or webhook-triggered agent jobs
  • Cost tracking — per-session USD spend and cache hit rate

Everything is connected via the Model Context Protocol (MCP), so Claude Code gets access to all CloudClawer tools automatically once you register the server.

Step 1: Sign Up and Generate an API Key

Head to cloudclawer.com/sign-up and create an account. The free tier is enough to follow this tutorial end-to-end.

Step 2: Install the CLI and authenticate

The fastest way to drive CloudClawer is the cloudclawer npm package. It ships the CLI, a local stdio MCP server, and the Playwright recording helper.

npm install -g cloudclawer
cloudclawer init

cloudclawer init opens your browser, authenticates against your CloudClawer account, and writes a fresh API key to ~/.cloudclawer with mode 0600.

Treat the contents of ~/.cloudclawer like a password. Anyone with the key can launch containers, run bash, and read your secrets. Rotate with cloudclawer apikey create whenever a machine is decommissioned.

Want to drive CloudClawer from Claude.ai instead? Open Settings → Connect, then paste the three copy-buttons (Server name, MCP URL, Client ID) into claude.ai → Settings → Connectors → Add custom connector and approve the OAuth prompt. Same tools, no terminal required.

Verify the CLI is talking to your container:

cloudclawer launch
cloudclawer wait
cloudclawer bash "uname -a && whoami"

Step 3: Create Your First Process Gate

A process gate is a state machine that Claude must walk through before it can take a specific action. Let's create a simple pre-commit checklist.

In CloudClawer, navigate to Routines → Processes and click New Process. Paste this definition:

{
  "name": "pre-commit",
  "initial": "tests-pass",
  "initial_prompt": "Before committing, walk through the pre-commit checklist.",
  "states": {
    "tests-pass": {
      "question": "Do all tests pass?",
      "answers": {
        "yes": { "next": "no-secrets" },
        "no":  { "next": null, "action": "block" }
      }
    },
    "no-secrets": {
      "question": "Does the diff contain any secrets or credentials?",
      "answers": {
        "no":  { "next": null, "action": "complete" },
        "yes": { "next": null, "action": "block" }
      }
    }
  }
}

Click Save. CloudClawer validates the state machine (checking that all next references point to valid states) and stores it.

Step 4: Attach the gate to a guided task

A process definition only fires when an agent task names it. Open Routines → Agent Tasksand add a task — for example "Fix the failing test in src/api.ts and commit" — with process_definition_name: pre-commit.

You can also set pre-commit as your default process: every task without an explicit process will fall back to it. Then fire the routine (manually with Test fire or wait for the next slot) — Claude walks through the gate, and any block answer aborts the action.

The gate question is prepended to the routine prompt, so Claude sees and answers it inline. CloudClawer evaluates the answer against the state machine before letting the session continue.

Step 5: Record a browser session (optional)

If your task involved a Playwright-driven browser, wrap the page with the recorder and upload the result for replay:

import { startRecording } from 'cloudclawer-hooks/record.mjs';

const rec = await startRecording(page, { title: 'Login flow' });
// … exercise the UI …
const { filePath } = await rec.stop();
// then: cloudclawer-hooks record-upload <filePath>

Open Recordings to scrub the rrweb timeline. The replay is the real DOM — full frame, every mutation.

What's Next?

You now have a CloudClawer container, a process gate, and a guided task pinned to it. From here:

  • Set up a daily Guided Routine so Claude works through the task queue on a schedule
  • Add policy rules to gate which tools Claude can call and at what rate or budget
  • Pick a connection path — Claude.ai connector for everyday use, CLI for scripting
  • After a few sessions, check the Costs dashboard for per-session spend and cache hit rate
◢ Signal subscribe

New posts & releases, in your inbox

Get notified when we ship a new blog post or product release. At most one email per week. Unsubscribe anytime.

© NeuralAccel 2026