Protocol Documentation
π The OpenRML Standard.
Open Role Markup Language β an open specification for structured AI roles. Not a prompt format. A protocol.
What is OpenRML
OpenRML (Open Role Markup Language) is an open protocol for defining structured AI roles. A role in OpenRML is not a prompt β it is a complete behavioral specification with identity, architecture layers, session structure, ethics constraints, and versioned identity.
OpenRML roles are designed to be LLM-agnostic, language-portable, and freely redistributable. A valid OpenRML role works in any major language model without modification.
Standard reference URI format:
orml://[author]/[role-name]/[version]
Why Role β Prompt
Prompt
- βSingle instruction or query
- βNo persistent identity
- βNo session arc
- βNo ethics layer
- βNo versioning
- βContext-dependent behavior
OpenRML Role
- βComplete behavioral specification
- βUnique cryptographic identity
- βDefined session structure
- βExplicit ethics constraints
- βSemantic versioning
- βReproducible behavior
Identity System
Every OpenRML role has a unique identity string β a deterministic hash derived from the role's content, category, and version. Identity strings are permanent: if a role's content changes, its identity changes. This ensures role integrity across deployments.
Identity format:
ORML/[CATEGORY]/[VERSION]/[ID]/[HASH-A]/[HASH-B]/[HASH-C]
Architecture Layers
Every OpenRML role is composed of eight mandatory architecture layers. Each layer controls a specific dimension of the role's behavior.
Base
Core behavioral mandate and primary function
Visual
Communication style, tone register, and language patterns
Tone
Emotional calibration β how the role feels in conversation
Expertise
Domain knowledge boundary and capability definition
Journey
Session arc β how the interaction progresses over time
Team
Collaboration model β how the role relates to user agency
Memory
State management β what the role tracks and retains
Ethics
Constraints, refusals, and safety boundaries
Versioning Strategy
OpenRML uses semantic versioning: MAJOR.MINOR.PATCH. Version 1.0.0 is the current public specification.
MAJOR
Breaking protocol changes
Example: 2.0.0
MINOR
New capabilities, backwards compatible
Example: 1.1.0
PATCH
Bug fixes, clarifications
Example: 1.0.1
Licensing Model
Free with Attribution
Most roles. Use freely, commercially or not, with attribution.
Share Alike
Derivative roles must use the same license.
Non-Commercial
Free for personal and research use only.
Custom
Specialized roles with specific terms. See individual role.
