Sixteen days. From zero to a production-ready autonomous AI agent. Today we tie everything together — every file, every config, every system — into one complete map.
Personality, voice, core truths, boundaries, vibe. Who your agent is.
Information about you — the human. Preferences, context, background.
Long-term memory. Durable facts, preferences, decisions. Injected every turn.
Operating rules, workflows, escalation procedures, tool policies.
Addresses, references, API endpoints, external resources the agent needs.
Proactive checklist. Tasks the agent runs on its own schedule.
Agent identity and extra context. Plus: skills/ directory and memory/ directory for daily notes.
Every workspace file is plain markdown. No database, no proprietary format. Version control it with git, edit it in any text editor.
bootstrapMaxCharsbootstrapTotalMaxCharsBlank files are skipped entirely — no token cost. Oversized files are trimmed to the per-file cap. Content beyond the limit is silently truncated.
Sub-agents only receive AGENTS.md + TOOLS.md. They don’t get SOUL.md, MEMORY.md, or any other bootstrap file. This keeps them focused and isolated.
Agent defaults and the agent list. Model, temperature, system prompt overrides.
Per-provider config: Discord, Slack, Telegram, Matrix, CLI, and more.
dmScope, reset mode, threadBindings for thread-level isolation.
Port, auth, bind address, reload mode (hybrid, hot, restart, off).
Profile, allow/deny lists, exec, elevated permissions, filesystem access.
Skill entries and load config for custom skill directories.
Scheduled tasks, lifecycle hooks for pre/post actions.
Proactive schedule config: interval, enabled, quiet hours.
Environment variables and log level/format configuration.
| main | Single shared session |
| per-peer | One session per user |
| per-channel-peer | Per user per channel |
| per-account-channel-peer | Full isolation |
mode: daily — Sessions reset each day. threadBindings enable thread-level isolation within channels.
/status — Current session info/new — Start a new session/reset — Reset current session/compact — Trigger compaction/think <level> — Set reasoning depth/verbose — Toggle verbose mode/trace — Toggle trace logging/usage — Token usage trackingFrom Discord, Slack, Telegram, Matrix, CLI, or any connected channel.
Channel bindings and routing rules determine which agent handles the message.
AGENTS.md → SOUL.md → TOOLS.md → IDENTITY.md → USER.md → HEARTBEAT.md → BOOTSTRAP.md → MEMORY.md
The model processes context, invokes tools as needed, and results are fed back into the conversation loop.
Final response delivered back through the originating channel.
Heartbeat & Cron trigger proactive actions independently. Sub-agents spawn isolated sessions with scoped bootstrap. Memory persists across sessions via files on disk.
gateway.reload.mode controls how config changes take effect:
| hybrid | Default. Smart reload. |
| hot | Live reload, no restart |
| restart | Full restart on change |
| off | Manual restart only |
Your workspace is just markdown files. Back it up with git. Version control your SOUL.md, AGENTS.md, TOOLS.md, and openclaw.json. Treat it like code, because it is.
You started with nothing. Now you have an autonomous AI agent with a personality, memory, operating rules, tools, integrations, containerized deployment, and multi-agent orchestration. That’s the full stack.
Sixteen days. From “what is OpenClaw?” to a production-ready autonomous AI agent. You did the work. Now keep building.