Documentation Creation Process
Read the SDK source before writing anything — documentation must reflect SDK ground truth, not assumptions.1
Read SDK source
Open and read the actual SDK implementation file in
praisonaiagents/ before writing a single word of documentation.2
Extract all parameters
Pull every parameter, type, default value, and description from the SDK source or config class.
3
Check existing docs
Search
docs/ for related pages before creating a new one — avoid duplication, ensure consistency.4
Write the page
Follow the Page Structure Template and every rule in this guide.
SDK-First Cycle
Never batch-update multiple pages without reading source for each.File Locations
Multi-SDK Reference
The Rust crate is at
praisonai-rust/praisonai/src/, not praisonai-rust/src/. The src/praisonai-rust/src/** path does not exist and was previously wired into the parity workflows — see upstream PR #4689.Two parity trackers, two questions.PraisonAI uses two distinct parity systems — do not conflate them.
DOCS_PARITY.md(this repo, one per SDK) answers: “Does documentation exist for each SDK feature category?” Labels:✅ Documented,⚠️ Stub,❌ Undocumented.PARITY.md(main PraisonAI repo, one per non-Python SDK) answers: “Does a matching exported symbol name exist in this SDK for each Python export?” Labels:✅ exported,⏳ missing.
PARITY.md counts exported symbol names, not behaviour. An ✅ exported cell means the name is present in the SDK’s public surface — it does not verify the capability is reachable, wired up, or behaves like its Python counterpart. Counts include barrel re-exports, so raw totals are not directly comparable across SDKs. For capabilities with a testable contract, rely on their conformance suite rather than the PARITY.md table.- TypeScript SDK Structure
- Rust SDK Structure
Folder Placement Rules
Where a file lives determines who can change it — AI agents have write access to most folders but neverdocs/concepts/.
AI Agent Behavioural Rules
Page Structure Template
Every documentation page follows this exact skeleton.Mermaid Diagram Standards
Every page starts with a hero Mermaid diagram using the standard colour scheme.Colour Scheme
Diagram Types by Use Case
- Hero Diagram (rendered)
- Hero Diagram (source)
- Sequence Diagram (rendered)
- Sequence Diagram (source)
Mintlify Components Usage
Every page must use<Steps>, <AccordionGroup>, and <CardGroup cols={2}> — these are not optional.
Required Components
Component Syntax
Steps:Code Example Standards
Every example must run without modification — copy-paste success is the bar.Code Quality Rules
Code Quality Rules
- Run without modification (copy-paste success)
- Include ALL necessary imports
- Use realistic but simple data
- Be the shortest way to accomplish the task
- Show the feature being documented, not unrelated features
Import Patterns
Import Patterns
Use these exact imports — no complex sub-module paths:
Simple Quick Start Example
Simple Quick Start Example
Config Class Example
Config Class Example
Configuration Table Format
Document every SDK option in this format:Writing Style
Concise, active voice, direct — after reading a page, users should think “is it really this easy?”Do / Don’t
Section Introductions
Each section starts with exactly one sentence — no multi-sentence preamble.Configuration Documentation Pattern
Features support multiple configuration levels — document each level the feature actually supports. Precedence ladder:Instance > Config > Array > Dict > String > Bool > Default
SDK Config Extraction
When readingfeature_configs.py, extract every field:
Mintlify Frontmatter
All four fields are required on every page.Icon Selection
Quality Checklist
Run through this before submitting any documentation page.Structure
Structure
- Frontmatter complete (title, sidebarTitle, description, icon)
- Hero Mermaid diagram present
- Quick Start uses
<Steps>component - Configuration Options table complete
- Best Practices uses
<AccordionGroup> - Related section uses
<CardGroup cols={2}>
SDK Accuracy
SDK Accuracy
- All config options documented
- Types match SDK exactly
- Defaults match SDK exactly
- Import paths are correct
- No undocumented features
Code Quality
Code Quality
- All examples run without modification
- All imports included
- Examples are minimal (shortest way to accomplish the task)
- No placeholder values like
"your-key-here"
Diagrams
Diagrams
- Colour scheme matches standard (
#8B0000,#189AB4,#10B981,#F59E0B,#6366F1) - White text on coloured backgrounds (
color:#fff) -
classDefdeclarations present - Diagram explains the concept visually
Writing
Writing
- One-sentence section intros
- No forbidden phrases
- Active voice throughout
- Concise explanations
Complete Page Example
A full Caching page demonstrating every rule in this guide.Related
Contributing Guide
How to fork, clone, and submit pull requests to PraisonAI.
AGENTS.md on GitHub
The source-of-truth instructions file this guide mirrors.

