CMF - Conversational Markdown Format
A markdown-based interchange format for LLM conversations. User messages are blockquotes (>), assistant messages are plain markdown.
Installation
Usage
# Detect CMF content and count turns
# Check conformance (silent on success)
# Convert to OpenAI Chat Completions format
# Convert to OpenAI Responses API format
Format
Second, assistant messages can be multi-paragraph.
Rules:
- User lines start with
>in column 1 - Multi-user chats use
> @username:prefix - Assistant content is everything between user blocks
- Indent blockquotes (
> text) to escape them in assistant content
Library
use Document;
let doc = parse;
for turn in &doc.turns
// Convert to OpenAI formats
let chat_messages = doc.to_openai_chat;
let responses_messages = doc.to_openai_responses;
License
BSD-3-Clause