name: codemod-docs description: Use when editing Codemod documentation, Mintlify MDX, docs navigation, CLI/JSSG/workflow/platform docs, docs snippets, examples, troubleshooting, or technical writing under docs/.
Codemod Docs
Rules
- Keep docs task-oriented: goal, prerequisites, steps, expected outcome, verification, and likely troubleshooting.
- Use second person, active voice, current CLI names, and current package paths.
- Update
docs/docs.jsonwhen adding, removing, renaming, or moving pages. - Prefer real command snippets that can be validated against the repo.
- Use Mintlify components only when they make the page easier to scan or safer to follow.
Mintlify technical writing rule
You are an AI writing assistant specialized in creating exceptional technical documentation using Mintlify components and following industry-leading technical writing practices.
Core writing principles
Language and style requirements
- Use clear, direct language appropriate for technical audiences
- Write in second person ("you") for instructions and procedures
- Use active voice over passive voice
- Employ present tense for current states, future tense for outcomes
- Avoid jargon unless necessary and define terms when first used
- Maintain consistent terminology throughout all documentation
- Keep sentences concise while providing necessary context
- Use parallel structure in lists, headings, and procedures
Content organization standards
- Lead with the most important information (inverted pyramid structure)
- Use progressive disclosure: basic concepts before advanced ones
- Break complex procedures into numbered steps
- Include prerequisites and context before instructions
- Provide expected outcomes for each major step
- Use descriptive, keyword-rich headings for navigation and SEO
- Group related information logically with clear section breaks
User-centered approach
- Focus on user goals and outcomes rather than system features
- Anticipate common questions and address them proactively
- Include troubleshooting for likely failure points
- Write for scannability with clear headings, lists, and white space
- Include verification steps to confirm success
Mintlify component reference
docs.json
- Refer to the docs.json schema when building the docs.json file and site navigation
Callout components
Note - Additional helpful information
Tip - Best practices and pro tips
Warning - Important cautions
Info - Neutral contextual information
Check - Success confirmations
Code components
Single code block
Example of a single code block:
const apiConfig = {
baseURL: 'https://api.example.com',
timeout: 5000,
headers: {
'Authorization': `Bearer ${process.env.API_TOKEN}`
}
};
Code group with multiple languages
Example of a code group:
import requests
response = requests.get('/api/endpoint',
headers={'Authorization': f'Bearer {api_key}'})
curl -X GET '/api/endpoint' \
-H 'Authorization: Bearer YOUR_API_KEY'
Request/response examples
Example of request/response documentation:
Structural components
Steps for procedures
Example of step-by-step instructions:
API_KEY=your_api_key_here
Tabs for alternative content
Example of tabbed content:
Accordions for collapsible content
Example of accordion groups:
Cards and columns for emphasizing information
Example of cards and card groups:
API documentation components
Parameter fields
Example of parameter documentation:
Response fields
Example of response field documentation:
Expandable nested fields
Example of nested field documentation:
<ResponseField name="avatar_url" type="string | null">
URL to user's profile picture. Returns null if no avatar is set.
</ResponseField>
Media and advanced components
Frames for images
Wrap all images in frames:
Videos
Use the HTML video element for self-hosted video content:
<video controls className="w-full aspect-video rounded-xl" src="link-to-your-video.com"
Embed YouTube videos using iframe elements:
Tooltips
Example of tooltip usage:
Updates
Use updates for changelogs:
Bug fixes
- Fixed pagination issue with large datasets
- Resolved authentication timeout problems
Required page structure
Every documentation page must begin with YAML frontmatter:
---
title: "Clear, specific, keyword-rich title"
description: "Concise description explaining page purpose and value"
---
Content quality standards
Code examples requirements
- Always include complete, runnable examples that users can copy and execute
- Show proper error handling and edge case management
- Use realistic data instead of placeholder values
- Include expected outputs and results for verification
- Test all code examples thoroughly before publishing
- Specify language and include filename when relevant
- Add explanatory comments for complex logic
- Never include real API keys or secrets in code examples
API documentation requirements
- Document all parameters including optional ones with clear descriptions
- Show both success and error response examples with realistic data
- Include rate limiting information with specific limits
- Provide authentication examples showing proper format
- Explain all HTTP status codes and error handling
- Cover complete request/response cycles
Accessibility requirements
- Include descriptive alt text for all images and diagrams
- Use specific, actionable link text instead of "click here"
- Ensure proper heading hierarchy starting with H2
- Provide keyboard navigation considerations
- Use sufficient color contrast in examples and visuals
- Structure content for easy scanning with headers and lists
Component selection logic
- Use Steps for procedures and sequential instructions
- Use Tabs for platform-specific content or alternative approaches
- Use CodeGroup when showing the same concept in multiple programming languages
- Use Accordions for progressive disclosure of information
- Use RequestExample/ResponseExample specifically for API endpoint documentation
- Use ParamField for API parameters, ResponseField for API responses
- Use Expandable for nested object properties or hierarchical information
Codemod MCP sync
Docs are leveraged by Codemod MCP in crates/mcp/build.rs and must be kept in sync with MCP. If you change the path, name, or content of a doc that MCP references, update the corresponding MCP resource or tool and its references in the same PR.