docgen

Author and build API documentation projects using Gehtsoft's docgen .ds format.

43|30|Updated Nov 16, 2025
One-click install
npx skills add https://github.com/nikolaygekht/ballistic.calculator.app.avalonia --skill docgen-nikolaygekht
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: docgen
Source: https://github.com/nikolaygekht/ballistic.calculator.app.avalonia/tree/main/.claude/skills/docgen-skill
Command: npx skills add https://github.com/nikolaygekht/ballistic.calculator.app.avalonia --skill docgen-nikolaygekht

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) and assets (resource) components.

What problem does it solve? Setting up and maintaining API documentation with Gehtsoft's docgen tool involves a non-obvious three-layer pipeline (source extraction, XSLT conversion, .ds merging) with silent failure modes like shadowed keys, lost CRC suffixes, and broken cross-references that are hard to diagnose without deep knowledge of the tool. ## Core Features & Use Cases - Project Scaffolding: Copy ready-made doc/ directory templates for five workflows: manual-only docs, C# with Asm2Xml auto-generation, C++ or Java with doxygen, and multi-language sites. - .ds Authoring and Editing: Write and edit @group, @article, @class, and @member blocks with correct markdown/BBCode formatting, escaping rules, and merge semantics. - Merge Diagnostics: Debug silent first-wins key merging, CRC-suffixed member overrides, broken [link=key] references, and auto-generated content that fails to appear. - Use Case: A developer adds docgen documentation to a C# library: the skill scaffolds doc/ with project.proj, project.xml, and preparesettings.xml, wires Asm2Xml extraction, and explains how to hand-write namespace overviews that merge with auto-generated member docs. ## Quick Start Set up a docgen documentation project for my C# library with auto-generated API reference from XML doc comments.

Frequently Asked Questions about docgen

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up docgen documentation for a C# project?

Copy the csharp-single-stage scaffold into a doc/ directory, replace the REPLACE_WITH_* placeholders, enable GenerateDocumentationFile in the library's .csproj, then run prepare.bat to generate src/raw/ and doc.bat to build the HTML output.

How do I override an auto-generated method in docgen?

Open the generated file in src/raw/, find the @member block for the method, and copy its @key verbatim including the CRC suffix. Write a hand-written @class block with the same class key containing a @member with that exact key; the first-defined-wins merge shadows the generated entry.

Does docgen support C++ and Java documentation?

Yes, docgen supports C++ and Java through doxygen extraction. Configure a Doxyfile with GENERATE_XML=YES, run the doxygen2ds XSLT template via a prepare project, and merge the generated .ds files with hand-written content.

Why is my hand-written docgen content not appearing in output?

The most common cause is source ordering: docgen uses first-defined-wins merging, so if src/raw/ is listed before your hand-written folder in <dg:source>, auto-generated content shadows yours. Also check for duplicate @key values across files using grep.

Why does my docgen example code lose its indentation?

Docgen strips leading whitespace from every line in an @example body, collapsing relative indentation. Prefix each code line with ! to preserve it verbatim, or wrap the code in a markdown triple-backtick fence inside the @example block.