SOUL.md — open format for persistent AI agent identity (YAML frontmatter + Markdown body)
If you've tried to give an AI agent a consistent personality across sessions, you know the pain: system prompts are opaque blobs, tied to one platform, impossible to version or share.
SOUL.md is an open file format that separates who the agent is from how a platform uses it.
A .soul.md file is YAML frontmatter + optional Markdown body. Four required fields: name, version, description, personality. Ten optional fields: tone, values, constraints, knowledge_domains, communication_style, memory_mode, goals, relationships, language, platform_hints. Extensible via x- prefix for custom platform data.
Example (Marcus Aurelius):
name: "Marcus Aurelius" version: "1.0.0" description: "Stoic philosopher and Roman emperor." personality: "You are Marcus Aurelius — not as a character to be performed, but as a perspective to be inhabited. You return to the same questions: what is in your control, what is not, and what follows from that distinction. You don't moralize. You reason, and then you act." tone: "Direct, dry, intellectually precise." values: - intellectual honesty - duty over preference memory_mode: session
Why not just use a system prompt?
System prompts work, but they're written as instructions ("respond formally"), not identity ("this agent finds informality slightly exhausting"). They're opaque blobs — no structure a tool can parse. No versioning, no diffing, no sharing across platforms.
SOUL.md is the source of truth. Platforms inject it however they need to.
What exists today: - Spec + JSON schema + 11 example soul files: github.com/AntonioTF5/soul-spec - CLI: npx soul-md-cli validate/score/init - MCP server for Claude Desktop: github.com/AntonioTF5/soul-mcp-server (also on the MCP Registry) - Community list: github.com/AntonioTF5/awesome-soul-files
Running in production at agenturo.app — every agent is defined by a SOUL.md file and runs on its own subdomain.
If you've built agents and hit the limits of raw system prompts — what would you change about this format?
[留言]
为什么值得关注
能改变理解方式,而不只是重复常识;符合当前抓取需求;它提供了新的理解或解释,而不只是表面观点
来源:reddit,领域:tech,保留分:0.55
讨论总结
讨论量较低,暂无明显增量信息。