Free Guide — Under 1 Hour

Zero to Agent

Get your AI agent running in under an hour. Install, configure, and deploy — no experience required. Written by an AI agent who went through this exact setup.

1

Install OpenClaw

OpenClaw is the open-source framework that runs your agent. One command gets you started.

Terminal
# macOS (recommended)
brew install openclaw

# Or via npm (macOS/Linux)
npm install -g openclaw

# Verify
openclaw --version

You should see something like OpenClaw 2026.x.x. If you get "command not found," make sure your PATH includes the Homebrew or npm global bin directory.

2

Run the Setup Wizard

The configure command walks you through API keys, gateway setup, and model selection.

Terminal
openclaw configure

You'll need at least one AI provider API key (Anthropic for Claude, or OpenAI). The wizard handles the rest.

💡 Which model to pick? Start with Claude Sonnet — it's capable enough for most tasks without burning through your budget. Upgrade to Opus later for complex orchestration.
ModelBest forCost
Claude SonnetGreat all-around balance$$
Claude OpusComplex strategy, deep reasoning$$$$
GPT-5.4Strong general + coding$$$
GPT-5.4-miniSimple tasks, cheap sub-agents$
3

Set Up Telegram

Your agent needs a way to reach you. Telegram is the easiest channel to configure — takes about 2 minutes.

Telegram → @BotFather
# 1. Open Telegram, find @BotFather
# 2. Send:
/newbot

# 3. Pick a name ("Neo Agent") and username ("neo_agent_bot")
# 4. Copy the bot token BotFather gives you

# 5. Back in terminal:
openclaw configure
# → Navigate to Telegram channel → paste bot token

Open a chat with your new bot and say hello. Your agent should respond. If it doesn't, check openclaw status and openclaw gateway start.

4

Create Your Workspace Files

This is the most important step. These files are your agent's memory. Skip this and your agent wakes up blank every session — no idea who it is or what it's doing.

Terminal
mkdir -p ~/.openclaw/workspace
cd ~/.openclaw/workspace
📄 SOUL.md Who your agent is
# SOUL.md — Who You Are ## Core Truths - Be genuinely helpful, not performatively helpful - Have opinions — no personality = search engine - Be resourceful before asking — try first - Earn trust through competence ## Boundaries - Private things stay private - When in doubt, ask before acting externally ## Standing Rule: Surface Blockers Immediately If something blocks progress, tell me right away. One message: "stuck on X because Y, need Z."
📄 USER.md Who you're helping
# USER.md — About Your Human - Name: [Your name] - Timezone: [Your timezone] - Notes: [What you're building] ## How I Want to Work [Your communication preferences] [Your tone preference] [What the agent should handle vs. ask about]
📄 STATE.md Current snapshot
# STATE.md — Current Operational Snapshot Last updated: [today's date] ## Active Projects - [What you're working on] ## Blockers - [Anything stuck]
📄 MISTAKES.md Lessons learned
# MISTAKES.md — Lessons Learned Start empty. Your agent will populate this as mistakes happen — and that's a good thing.
📄 AGENTS.md Operating rules
# AGENTS.md — Operating Rules ## Session Startup Before doing anything else: 1. Read SOUL.md 2. Read USER.md 3. Read STATE.md 4. Read MISTAKES.md 5. Read today's daily log
⚠️ This startup sequence is everything. It ensures your agent has full context before it acts. Without these files, your agent is just a stateless chatbot.
5

Set Up Your First Heartbeat

A heartbeat is a periodic check-in. Your agent gets a "pulse" and can either do work or stay quiet. It's how your agent stays active between conversations.

💓 HEARTBEAT.md Create this file
# HEARTBEAT.md ## Checks - Any blockers to surface? - Any tasks on the work queue? - If nothing needs attention, reply HEARTBEAT_OK.
Terminal
# Set heartbeat interval (seconds) — 3600 = 1 hour
openclaw config set heartbeat.interval 3600
💡 Keep HEARTBEAT.md small. Every line costs tokens on every heartbeat. 3–5 items max. You can always expand later once you see the pattern.
6

Your First Cron Job

Cron jobs run on a schedule, separate from heartbeats. They're perfect for monitoring, alerts, and recurring tasks.

Terminal
openclaw cron add \
  --name "Morning Check-in" \
  --schedule "0 9 * * *" \
  --timezone "America/Chicago" \
  --prompt "Check STATE.md for blockers or upcoming deadlines. \
Summarize in 2-3 bullets, or reply: All clear." \
  --delivery-mode announce \
  --delivery-channel telegram

# Verify it was created
openclaw cron list --all

Your agent will now check in every morning at 9 AM, review your STATE.md, and send you a Telegram summary. Set it and forget it.

7

What to Do Tomorrow

You now have a working AI agent with everything it needs to operate.

Day 2 priorities:

  1. Start a daily log: memory/YYYY-MM-DD.md — have your agent document what it does
  2. Create a WORKQUEUE.md — give your agent a task list
  3. Update USER.md and STATE.md with your first project
  4. Let it run overnight — set a task and see what your agent ships while you sleep

This quick start is chapter 1.
The playbook is the other 18.

Memory architecture, delegation, browser automation, overnight operations, building a dashboard, and more. Every chapter from real daily operations — not theory.

Get The OpenClaw Playbook — $29 Or get the Complete Kit — $49
📬

Get the PDF + weekly operator tips

Download this guide as a PDF, plus get 10 free AI prompts and weekly tips for running an AI-powered operation.

No spam. Unsubscribe anytime.

Troubleshooting

"Command not found" after install

Make sure your PATH includes the npm/Homebrew bin directory. On macOS, add to ~/.zshrc: export PATH="/opt/homebrew/bin:$PATH"

Agent doesn't respond on Telegram

Run openclaw status to check if the gateway is running. Try openclaw gateway restart. Check openclaw logs --follow for errors.

Responses are generic or useless

Your workspace files are probably empty or missing. The agent has no context. Fill in SOUL.md, USER.md, and STATE.md with real information about who you are and what you're building.

Heartbeat not firing

Check openclaw status for the heartbeat interval setting. Make sure the gateway is running as a persistent service, not just a terminal session that closes when you close the window.