From dita-tools
Extracts inline content from AsciiDoc assemblies into reusable modules. Refactors to Red Hat modular documentation standards, handling preambles, procedures, concepts, and admonitions.
npx claudepluginhub redhat-documentation/redhat-docs-agent-tools --plugin dita-toolsThis skill is limited to using the following tools:
This skill extracts inline content from AsciiDoc assembly files and moves it into separate modules following Red Hat modular documentation standards. It handles introductory preambles, inline procedures, inline concepts, admonitions, additional resources sections, and any other content that should live in a module rather than directly in an assembly.
Reviews AsciiDoc (.adoc) files for Red Hat modular documentation compliance: module types (concept, procedure, reference), assembly structure, anchor IDs with _{context}, context variables, and include directives.
Refactors AsciiDoc files for DITA conversion compatibility by fixing Vale issues and rewriting modules/assemblies per Red Hat modular documentation standards.
Assesses CQA P2-P7 modularization in Red Hat AsciiDoc docs: assembly structure without rendered text between includes, module prefixes, templates, required elements, nesting depth.
Share bugs, ideas, or general feedback.
This skill extracts inline content from AsciiDoc assembly files and moves it into separate modules following Red Hat modular documentation standards. It handles introductory preambles, inline procedures, inline concepts, admonitions, additional resources sections, and any other content that should live in a module rather than directly in an assembly.
Use this skill when:
about-* concept modules from assembly preamblesmaster.adoc or files with :_mod-docs-content-type: ASSEMBLY)Search for assembly files in the repository:
Glob pattern: **/master.adoc
Or search for files with the assembly content type:
Grep pattern: :_mod-docs-content-type: ASSEMBLY
For each assembly file, identify content that should be extracted. This includes:
Introductory content (between the header and the first include:: directive):
:_mod-docs-content-type:, include::_attributes/, title (=), and document attributes (:doctype:, :toc:, :context:)include::modules/ directiveInline content (between include:: directives):
Content that may be extracted includes:
[role="_abstract"] blocks[NOTE], [IMPORTANT], [WARNING], or [TIP] admonition blocks[role="_additional-resources"] sections with linksChoose the module type based on the content being extracted:
| Content type | Module type | Naming convention |
|---|---|---|
| Introductory/explanatory | CONCEPT | about-<topic>.adoc |
| Step-by-step instructions | PROCEDURE | <action>-<topic>.adoc |
| Tables, lists, specs | REFERENCE | ref-<topic>.adoc |
Where <topic> is derived from the assembly's parent directory or the content's subject (e.g., server_arguments becomes server-arguments).
Place new modules in the modules/ directory relative to the repository root.
Use the appropriate template based on the module type:
Concept module:
:_mod-docs-content-type: CONCEPT
[id="about-<topic>_{context}"]
= About <topic title>
[role="_abstract"]
<Extracted content>
Procedure module:
:_mod-docs-content-type: PROCEDURE
[id="<action>-<topic>_{context}"]
= <Action> <topic title>
[role="_abstract"]
<Brief description of what the procedure accomplishes>
.Prerequisites
* <Any prerequisites from the assembly context>
.Procedure
. <Extracted steps>
.Verification
* <Any verification steps>
Reference module:
:_mod-docs-content-type: REFERENCE
[id="ref-<topic>_{context}"]
= <Topic title>
[role="_abstract"]
<Brief description>
<Extracted tables, lists, or reference content>
When creating the module, improve the content where appropriate:
{product-title}, {prodname-short})Replace the extracted inline content in the assembly with an include:: statement:
include::modules/<new-module>.adoc[leveloffset=+1]
For introductory content, place the include as the first module after the header attributes.
Remove:
[role="_abstract"] tags that were movedKeep:
:_mod-docs-content-type: ASSEMBLY, attributes include, title, document attributes)include:: statementsWhen content containing xref: cross-references is moved from an assembly to a new module, you must recalculate the relative ../ climbing paths. The assembly and the new module are typically at different directory depths.
For example, if the assembly is at installing/installing_sno/master.adoc (depth 2) and the new module is at modules/about-installing-sno.adoc (depth 1):
xref:../../storage/persistent_storage/...xref:../storage/persistent_storage/...Formula: count the directory depth of both files from the repo root, then adjust the ../ count by (source depth − destination depth).
new_climb_count = original_climb_count - (source_depth - destination_depth)
Use the bundled helper script to calculate and verify adjustments:
scripts/xref-path-calculator.sh <source-file> <destination-file>
:_mod-docs-content-type: ASSEMBLY
include::_attributes/attributes.adoc[]
= Getting started
:doctype: book
:toc: left
:context: getting-started
{product-title} is a container image that optimizes serving and inferencing with LLMs.
Using {prodname-short}, you can serve and inference models in a way that boosts their performance.
include::modules/overview.adoc[leveloffset=+1]
To configure the server, complete the following steps:
. Download the configuration file.
. Edit the `server.conf` file.
. Restart the service.
include::modules/installation.adoc[leveloffset=+1]
:_mod-docs-content-type: ASSEMBLY
include::_attributes/attributes.adoc[]
= Getting started
:doctype: book
:toc: left
:context: getting-started
include::modules/about-getting-started.adoc[leveloffset=+1]
include::modules/overview.adoc[leveloffset=+1]
include::modules/configuring-the-server.adoc[leveloffset=+1]
include::modules/installation.adoc[leveloffset=+1]
:_mod-docs-content-type: CONCEPT
[id="about-getting-started_{context}"]
= About {product-title}
[role="_abstract"]
{product-title} is a container image that optimizes serving and inferencing with LLMs.
Using {prodname-short}, you can serve and inference models in a way that boosts their performance.
{product-title} supports multiple hardware platforms including NVIDIA CUDA accelerators,
AMD ROCm accelerators, and other supported AI accelerators. You can run {prodname-short}
with Podman on supported hosts, enabling flexible deployment options for development,
testing, and production workloads.
:_mod-docs-content-type: PROCEDURE
[id="configuring-the-server_{context}"]
= Configuring the server
[role="_abstract"]
Configure the {product-title} server to customize its behavior for your environment.
.Procedure
. Download the configuration file.
. Edit the `server.conf` file.
. Restart the service.
Follow these guidelines when creating new modules:
[role="_abstract"] immediately after the title_attributes/attributes.adoc for product namescon-, proc-, ref-[NOTE] or [IMPORTANT] admonitions from the original content[role="_additional-resources"] sections with their linksAfter completing the extraction:
modules/ directoryxref: paths in the new modules have been adjusted for the module's directory depth