Markdown-as-Config
One-line summary
OpenClaw uses Markdown files with YAML frontmatter as the primary configuration and data format, instead of JSON/YAML config files or databases.
Where it appears
How it works
Instead of structured config files (JSON, YAML, TOML) or a database, OpenClaw stores configuration and data as Markdown files. Metadata goes in YAML frontmatter (--- delimited block at the top), content goes in the Markdown body.
Why OpenClaw uses it
- Human-readable and human-editable: No special tools needed. Any text editor works.
- AI-readable: LLMs can parse Markdown natively. No serialization/deserialization needed for the agent to understand skill instructions.
- Git-friendly: Markdown diffs are clean and reviewable. The entire workspace can be version-controlled.
- Tool-agnostic: Works with Obsidian, VS Code, Vim, or any Markdown-aware tool.
Implications for contributors
- When adding new features that need configuration, consider whether Markdown-with-frontmatter is appropriate before reaching for JSON.
- Skill instructions are injected directly into the agent's system prompt. What you write in SKILL.md is literally what the LLM sees. Write for the model, not just for humans.
- Memory files are append-friendly. The system assumes it can write new Markdown files without coordinating with existing ones.
Related patterns
- local-first-persistence (planned)