opendatahub-io/docs-skills/mdita-write
Claude Code and agent skill by opendatahub-io/docs-skills
- community
Checking that the SKILL.md file is still in the repository.
Write Markdown DITA topics and maps, then convert to DITA XML using DITA-OT with the org.lwdita plugin. Use when asked to create DITA documentation, write Markdown DITA topics, generate concept/task/reference content, create DITA maps, or convert Markdown to DITA XML.
Install
npx vskill@latest install opendatahub-io/docs-skills/mdita-writeSKILL.md
Markdown DITA writing and conversion skill
Write Markdown DITA topics and maps, then convert them to DITA XML using DITA-OT with the org.lwdita plugin.
Prerequisites
Requires Java 17+, DITA-OT 4.x, and the org.lwdita plugin, version 6.0.0. Install the plugin from the v6.0.0 release:
To verify the download before installing, check its SHA-256 against the expected value:
The conversion script checks for Java, DITA-OT, and the plugin, and reports what to install if anything is missing.
Synopsis
Reference files
Read these before writing Markdown DITA content:
- Markdown DITA syntax reference: front matter, topic types, block elements, maps
- Concept topic example: nested topics, tables, definition lists, code blocks, admonitions
- Task topic example: prerequisites, context, steps with substeps and choices, verification, and next steps section headings
- Reference topic example: lookup tables, definition lists, code blocks, admonitions
- Map example: topic references, topic heads, ordered sequences, relationship tables
Usage workflow
When asked to write Markdown DITA content:
- Determine the topic type: concept (explains what), task (explains how), or reference (lookup info)
- Read the syntax reference and the matching example file for the correct structure
- Write the Markdown DITA file using the
.mdextension and set the topic type with an H1 class:# Title {.concept},{.task}, or{.reference} - Convert to DITA XML using the conversion script
- Fix issues and retry: the conversion script also runs
dita validateagainst each generated file, so a"status": "error"result can mean either a failed transform or DTD-invalid output (for example a task with two<result>elements, which theorg.lwditatransform will serialize without complaint since it doesn't reparse its own output against the DTD). Read the reported error, adjust the Markdown source, and reconvert. Loop until"status": "success"— that status is the only signal that the output is genuinely DTD-valid DITA, so do not report the task done before reaching it.
Conversion to DITA XML
After writing Markdown DITA files, convert them to DITA XML using the conversion script:
Arguments:
input: path to a.mdor.mditamapfile (not a directory; use a map to convert multiple topics at once)output_dir: output directory (default:./dita-output). The script clears prior.ditaand.ditamapfiles here before converting
The script outputs JSON with the conversion results, always including a status field:
On failure (missing prerequisites, invalid input, or a conversion error), the script exits non-zero and emits {"status": "error", "error": "..."} or, once prerequisites are met, {"status": "error", "dita_version": "...", "input": "...", "output_dir": "...", "stderr": "..."}.
The script also validates every generated .dita/.ditamap file against its DTD with dita validate. If that fails — the transform can produce structurally invalid output (for example two <result> elements in a task) without itself failing — the script reports {"status": "error", "dita_version": "...", "input": "...", "output_dir": "...", "error": "Generated DITA is not valid against its DTD...\n<file>:\n<dita validate output>"}. Treat this the same as a conversion failure: fix the Markdown source and reconvert.
Example invocations
- "Write a Markdown DITA concept topic about container orchestration"
- "Create a Markdown DITA task for installing a command-line tool"
- "Write a Markdown DITA reference topic for CLI command options"
- "Create a Markdown DITA map for a product guide"
- "Convert this Markdown file to DITA XML"
- "Write a task topic with prerequisites and verification steps"
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/mdita-write/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/opendatahub-io/docs-skills/mdita-write)