Today is where it stops being theory. Node.js, one install command, onboarding wizard, Gateway running, dashboard open, first message sent, Telegram live. All of it.
Node 24 on macOS, Linux, and Windows. The right method per platform.
One install command, then the onboarding wizard. What each step actually does.
Anthropic, OpenAI, Gemini, and free Ollama. How to get one and which to pick.
Gateway up, dashboard open, first message. Confirming everything works end to end.
What lives in your workspace, what each file does, and what does not exist.
How openclaw.json works. Where your keys and channels actually live.
BotFather token, JSON config, pairing your account, first reply from your phone.
Port conflicts, key errors, command not found. Every fix in one place.
We build the foundation. Everything in Days 3 through 16 runs on top of what you do today.
Install Node - run install script - run onboarding - start Gateway - open dashboard - send first message
Run node -v. If it prints v24 or v22.14 or higher, you're ready. If Node isn't installed, the next three slides cover every platform.
If you use a version manager like nvm or fnm, make sure it is initialized in your ~/.zshrc or ~/.bashrc. If it isn't, openclaw won't be found in new terminal sessions.
If you see openclaw: command not found later, run npm prefix -g and add that path's bin/ to your PATH.
Both work. Native Windows covers core CLI and Gateway use. WSL2 gives you the full Linux experience and is recommended if you want the complete feature set. The install script detects which path you're on.
Downloads and runs the install script. Installs the openclaw CLI globally via npm.
Native Windows installer. Handles the same steps as the curl version via PowerShell.
The script runs npm install -g openclaw and gives you the openclaw command everywhere in your terminal. Other install paths exist (Docker, Nix, direct npm) but the script is the fastest.
Choose your AI provider, paste your API key. Covers Anthropic, OpenAI, Google, Ollama, and 35+ others.
Sets the workspace path (default ~/.openclaw/workspace) and seeds all bootstrap files.
Connect WhatsApp, Telegram, Discord right now - or skip and add them later.
--install-daemon registers the Gateway as a system service so it starts automatically on login. Ends with a live health check.
Anthropic. Best reasoning, writing, and coding. A few cents a day for normal use.
OpenAI. Strong at vision and multimodal. Good if you're already on the OpenAI platform.
Google. Very cheap at $0.075 per million tokens. Great for high-frequency automated tasks.
Runs on your hardware. Zero cost, zero external API calls. Full deep dive on Day 3.
You can switch any time by re-running openclaw configure or editing your config file.
You pay the AI provider directly. No middleman. For light daily use on Claude Sonnet that's a few cents a day.
The onboarding wizard stores your key in ~/.openclaw/credentials/. It never leaves your machine.
Anthropic and Google give free credits to new accounts. Ollama is always free. You can start without a credit card.
Treat your API key exactly like a password. Never paste it into a chat message, screenshot, or public file. If you accidentally expose one, rotate it immediately from the provider's dashboard.
Create an account if you don't have one. New accounts receive free credits - no payment method required to start.
Then click 'Create Key'. Name it 'openclaw' so you know what it's for later.
It starts with sk-ant-. It's only shown once. Save it somewhere before closing the page.
Go to Billing. Set a monthly cap. Five dollars is a reasonable start - protects you from a runaway automated task.
When the wizard asks for your API key, paste it in. That's the only place it needs to go.
sk-AIza - copy immediatelyAll keys go into the onboarding wizard when prompted. You only need the one matching your chosen provider.
Port 18789 and Runtime: running. The Gateway is up, the dashboard is accessible at localhost:18789.
Runtime: unknown or 'Missing config' means onboarding wasn't completed. Run openclaw doctor.
Run openclaw dashboard and the Control UI opens in your browser automatically.
The sidebar on the left is your main navigation. Here is what each tab does.
Converse with your agent. Full message history, streaming responses, tool call logs inline.
Session history, usage per session, and session management. Search past conversations.
Scheduled tasks. See the last run output and countdown to the next tick. Pause or resume.
Browse your agent's memory files. View and search what it has stored about you.
See which tools are active and recent tool call logs. Browser, exec, web search, and more.
Browse and manage installed skill packs and workspace-specific skills.
Connection status for all configured channels - Telegram, WhatsApp, Discord, and others.
Edit openclaw.json via a form UI or raw JSON editor. Changes hot-reload automatically.
Hello, what's your name and what can you do?
Basic response. Confirms the model is connected.
Search the web for today's top AI news.
Triggers the web search tool. Watch for the tool call log inline.
My name is [name] and I live in [city]. Remember this.
Tests the memory tool. Check the Memory tab in the dashboard after.
SOUL.md
Persona, tone, and boundaries. Loaded every session.
AGENTS.md
Operating instructions: rules, priorities, how to behave. Loaded every session.
USER.md
Who you are and how the agent should address you.
IDENTITY.md
Agent name, vibe, and emoji. Created during the bootstrap ritual.
TOOLS.md
Notes about your tools and conventions. Does not control tool availability.
HEARTBEAT.md
Optional checklist for scheduled heartbeat runs. Keep it short.
memory/YYYY-MM-DD.md
Daily memory log. One file per day, append-only.
MEMORY.md
Optional curated long-term memory. Only load in private sessions.
BOOT.md
Optional startup checklist for gateway restarts. Keep it very short.
Config lives at ~/.openclaw/openclaw.json, not in the workspace. API keys in ~/.openclaw/credentials/. More on the next slide.
JSON5: supports comments and trailing commas. Edit directly, via openclaw configure, or through the Config tab in the dashboard.
The Gateway watches this file and applies changes automatically. No restart needed for most config edits.
This file holds credentials and secrets. Never commit it to Git. API keys live in ~/.openclaw/credentials/, separate from the workspace.
Plain Markdown. Loaded at the start of every session. Your agent reads this to know how to present itself and what it won't do.
Open ~/.openclaw/workspace/SOUL.md in any text editor. Changes take effect on the next conversation.
We rewrite SOUL.md from scratch on Day 7 to match exactly how you want your agent to communicate. For now, just read it.
An optional tiny checklist your agent reads during scheduled heartbeat runs. It is guidance text, not a scheduling config.
Heartbeat interval is set in openclaw.json via agents.defaults.heartbeat.every. Example: "30m", "2h". Not inside HEARTBEAT.md itself.
The docs say: keep HEARTBEAT.md short to avoid token burn. Every heartbeat run loads this file. A long file means cost on every tick.
Search for exactly @BotFather. It has a blue verified checkmark. This is the official Telegram bot creation service.
BotFather asks for a display name (what shows in the chat header) and then a username. Username must be unique globally and end in 'bot'.
BotFather replies with a long string of numbers and letters separated by a colon. That is your bot token. Copy it.
Your bot token is your bot's identity on Telegram. Treat it like a password. Don't share it or post it publicly.
A) Edit openclaw.json directly (shown left)
B) Run openclaw configure for interactive setup
C) Use the Config tab in the dashboard
There is no openclaw channels login telegram command. Telegram does not use that flow. Config in JSON is the correct method.
The Gateway watches your config file. Save the file and the change takes effect automatically. No manual restart needed.
OpenClaw uses a pairing system by default. Anyone can message your bot username, but only approved accounts get responses. Codes expire after 1 hour.
pairing - approve each user (default)allowlist - explicit list of allowed IDsopen - anyone can messagedisabled - no DMs
Send a message from Telegram and get a reply. That's your own AI agent running on your own machine, responding through an app you already use.
Something else is on port 18789. Run lsof -i :18789, kill the PID, or change gateway.port in your config to 18790.
npm global bin is not on your PATH. Run npm prefix -g and add <prefix>/bin to your PATH in ~/.zshrc or ~/.bashrc.
Wrong or malformed API key. Re-run openclaw configure and paste the key fresh. Check for extra whitespace.
You need v22.14 or higher. Run node -v. Upgrade with fnm install 24 then npm install -g openclaw@latest.
Global npm has a permissions issue. Switch to a user-writable prefix: npm config set prefix ~/.npm-global and add it to PATH.
Run openclaw doctor. It checks every dependency, config key, and running service and tells you exactly what is wrong.
.gitignore immediately. The workspace itself is safe to commit.
dmPolicy: 'pairing' means you approve each user before they get responses. Leave it on.
Run openclaw gateway status. It should show Runtime: running on port 18789. If not, run openclaw doctor.
A basic hello. A web search. Tell your agent something about yourself and ask if it remembered. Check the Memory tab after.
BotFather token, add to openclaw.json, pair your account with openclaw pairing approve. Get a reply from your phone.
Open them in a text editor. Just read them. Note what you want to change. Day 7 is SOUL day - knowing what's there gives you a head start.
Make sure every check passes. If something fails, post the exact output in the community at skool.com/sprint.
All 35+ providers OpenClaw supports. How to run Llama 3 and Qwen completely offline for $0/month. Benchmarks, cost breakdown, and a live model switching demo.