✨ Highlights
This release officially establishes docmd as the premier “AI-First” documentation engine. The centrepiece is a native Model Context Protocol (MCP) server enabling AI agents to interact with documentation workspaces via docmd mcp. Alongside this, the release delivers a modular agent instruction set (docmd-skills), an official Docker image with multi-architecture support, client-side “Copy Markdown” and “Copy Context” widgets for LLMs, a search tokenizer overhaul supporting CJK and spaceless languages, critical enhancements to the Table of Contents layout, and a visual overhaul of the UI featuring radial top glows, a continuous changelog timeline, and upgraded steps components.
🔌 Native Model Context Protocol (MCP) Server
You can now start a native MCP server directly from your workspace:
docmd mcp
The server runs in local stdio mode (protocol version 2025-03-26), allowing AI developer agents (like Claude Desktop, Cursor, or Windsurf) to securely interface with your documentation workspace to:
- Perform full-text and semantic documentation searches (
search_docs) - Read markdown files and configurations (
read_doc) - Run hyperlink and relative path validations (
validate_docs) - Retrieve the unified repository context (
get_llms_context)
Full protocol compliance including ping health checks and notifications/initialized lifecycle.
📖 Modular Agent Instruction Set (docmd-skills)
When running docmd init, a version-controlled SKILL.md is generated in the project root. The full instruction set is maintained as a modular collection in the docmd-skills repository:
cli.md: Setup, all CLI commands with flags and per-command options.config.md: Completedocmd.config.jsonschema with defaults and inline comments.plugins.md: Every built-in plugin with all config keys, defaults, and behaviour.plugin-development.md: Hook signatures, lifecycle, ActionContext, custom plugin creation guide.formatting.md: Container syntax, frontmatter reference, self-closing rules.api.md: Node.js build API, browser API, MCP server, URL utilities, client-side events.validation.md: Link checking and CI/CD integration.
All skill files include inline comments explaining defaults, reference links to full documentation, and llms-full.txt discoverability guidance.
🐳 Official Docker Image
docmd is now available as an official Docker image with multi-architecture support (linux/amd64 and linux/arm64):
# Pull and run with demo site
docker pull ghcr.io/docmd-io/docmd:latest
docker run -p 3000:3000 ghcr.io/docmd-io/docmd:latest
# Build your docs
docker run -v $(pwd)/docs:/docs -v $(pwd)/site:/site ghcr.io/docmd-io/docmd:latest build
Features include Docker Compose and Kubernetes deployment examples, non-root security, Alpine Linux base, health checks, and GitHub Actions CI/CD integration.
🧠 AI-First Context Extraction Widgets
To enable seamless documentation ingestion by AI assistants, we have introduced two new localised buttons next to page breadcrumbs:
- Copy Markdown: Copies the clean body content of the document, automatically stripping YAML frontmatter metadata so LLMs ingest pure content.
- Copy Context: Copies structured context containing the page URL, title, tags, version, and text, optimised for direct copy-pasting into AI chat windows.
- Localisation: Supports translations and copied confirmations for all 7 primary languages (
en,de,es,fr,hi,ja,zh).
🔍 Spaceless Script Search Tokenization (CJK, Thai, Lao, etc.)
We have resolved a search indexing limitation in MiniSearch for languages that do not use spaces between words. Previously, continuous character blocks (such as Chinese, Japanese, Korean, Thai, Lao, Khmer, Burmese, or Tibetan text) were indexed as single giant tokens, causing partial/sub-word matches to fail.
A unified CJK_AND_SPACELESS_REGEX tokenizer has been added. It splits spaceless character scripts into individual character tokens while preserving default space-based tokenization for English and other languages. This tokenizer runs symmetrically on:
- The build-time offline index generator.
- The multi-threaded background build worker.
- The client-side browser query parser.
🔢 docmd-search 0.1.0-alpha.1
This release includes docmd-search 0.1.0-alpha.1, which fixes a critical bug where confidence percentages in search results could exceed 100% in certain edge cases. The scoring algorithm has been corrected to properly normalise relevance scores within the expected 0-100% range.
📚 Table of Contents Enhancements
The table of contents (TOC) component has received significant improvements in this release, addressing long-standing issues with scrolling behaviour and heading coverage.
H1 Heading Support
H1 headings (# Heading) are now properly included in the table of contents. Previously, only H2-H4 headings were displayed in the TOC, which meant important top-level headings were missing from the navigation sidebar.
Improved Scrolling Behaviour
The TOC sidebar now scrolls independently when it contains many items, preventing it from overlapping or interfering with the page footer. The active heading is automatically centred in the TOC view as you scroll through the content, making it easier to track your position in long documents.
Smooth scrolling has been optimised with debouncing to prevent jittery or jarring movements, providing a more polished reading experience.
Changelog
- MCP: Implemented native
docmd mcpserver capabilities running on local stdio. - MCP: Updated protocol to
2025-03-26— addedpinghandler, fixednotifications/initializedlifecycle. - MCP: Fixed
readlineoutput pollution that corrupted the JSON-RPC stream. - MCP: Added dedicated MCP Server documentation page.
- Skills: Modularized agent manuals into 7 skill files under
docmd-skills/with inline defaults and doc references. - Skills: Added
api.md(Node.js, browser, MCP, URL utilities) andplugin-development.md(hooks, lifecycle) modules. - Skills: Added
llms-full.txtdiscoverability guidance and agent usage instructions. - Docker: Added official Docker image with multi-architecture support (amd64/arm64).
- Docker: Added Docker Compose, Kubernetes, and GitHub Actions deployment examples.
- Docker: Non-root security, Alpine base, health checks, SBOM attestation.
- AI: Added “Copy Markdown” and “Copy Context” UI widgets with translations for 7 languages.
- Search: Added a unified tokenizer for CJK, Thai, Lao, Khmer, Burmese, and Tibetan scripts in MiniSearch.
- TOC: Added support for H1 headings in the table of contents with proper anchor links and styling.
- TOC: Implemented independent scrolling for the TOC sidebar with
max-heightconstraints to prevent footer overlap. - TOC: Added automatic centring of active TOC items during page scroll with debounced smooth scrolling.
- TOC: Extended scroll spy to observe H1 headings alongside H2-H4.
- Parser: Updated heading anchor injection to include H1 headings for permalink icons.
- UI: Fixed footer rendering issues caused by TOC overflow on pages with many headings.
- Search: Fixed confidence percentage calculation in docmd-search 0.1.0-alpha.1 to prevent scores exceeding 100%.
- UI: Upgraded steps component with precise alignments, hover states, and glowing brand nodes.
- UI: Refactored changelog timeline to utilize a continuous grid axis with interactive expandable markers.
- UI: Added a modern adaptive radial halo glow at the top of the content page (light and dark modes).
- UI: Redesigned copy widgets as a unified, sleek segmented control button group.
- UI: Fixed a critical SPA routing bug where head assets (stylesheets and icons) were duplicated during client-side navigation due to relative path resolution shifts.
Thanks 💖
Thanks to all contributors and community members who reported issues and provided feedback on TOC behaviour and AI integrations.
Documentation: https://docs.docmd.io/
GitHub: https://github.com/docmd-io/docmd