mcpField
T
typo3-docs

typo3-docs

github.com/netresearchDevelopment675 installsUpdated 4d ago
Repository

About typo3-docs

A Skill for TYPO3 extension maintainers creating and updating documentation to docs.typo3.org standards. It guides extraction, TYPO3-specific writing conventions, validation, and HTML rendering, with references for documentation structure and directives.

Key features

  1. 01Extract and assess existing documentation coverage
  2. 02Organize RST content to TYPO3 conventions
  3. 03Write documentation with TYPO3 directives
  4. 04Validate documents and render HTML
  5. 05Check code examples against extension source

Use cases

  1. 01Set up documentation for a TYPO3 extension
  2. 02Find and fill gaps in existing documentation
  3. 03Validate docs and code examples before submission

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/netresearch/typo3-docs-skill --skill typo3-docs

After installing, type/typo3-docsin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

checkpoints.yaml
assets/
AGENTS.md
guides.xml.dist
evals/
evals.json
references/
architecture-decision-records.md
asset-templates-guide.md
canonical-sources.md
code-structure-elements.md
coding-guidelines.md
content-directives.md
documentation-coverage-analysis.md
documentation-quality-checks.md
extraction-patterns.md
file-structure.md
guides-xml.md
intercept-deployment.md
render-guides-development.md
rendering.md
rst-syntax.md
screenshots.md
scripts-guide.md
text-roles-inline-code.md
typo3-directives.md
typo3-extension-architecture.md
upstream-docs-contribution.md
scripts/
add-agents-md.sh
analyze-docs.sh
check-adr-coverage.sh
check-changelog-version-coverage.sh
check-confval-completeness.sh

Details

From the project README

TYPO3 Documentation Skill

Create and maintain TYPO3 extension documentation per docs.typo3.org standards.

Core Workflow

  1. No Documentation/ yet? Run this, do not type the file out. The namespace is the part that comes out wrong when it is written from memory -- guides.phpdoc.org and guides.typo3.org are both addresses nobody serves -- and a file in the wrong namespace is well-formed XML that renders nothing:

    mkdir -p Documentation && cat > Documentation/guides.xml <<'XML'
    <?xml version="1.0" encoding="UTF-8"?>
    <guides xmlns="https://www.phpdoc.org/guides" links-are-relative="true">
        <project title="TITLE" version="MAJOR.MINOR" release="MAJOR.MINOR.PATCH"/>
    </guides>
    XML
    grep -Fc 'xmlns="https://www.phpdoc.org/guides"' Documentation/guides.xml
    

    Settings.cfg is the file guides.xml replaced. Nothing reads it any more, so writing one leaves the extension with no rendered documentation and no error to show for it.

    The grep prints 1 when the namespace is right and 0 when it is not. Then replace TITLE and both versions. <project> carries them as attributes; an element whose text is the extension key has no title and no release. assets/guides.xml.dist holds the full file -- extension element, interlinks, build configuration -- and is the better starting point wherever the skill directory is reachable.

  2. Run extraction first to find gaps:

    scripts/extract-all.sh /path/to/extension
    scripts/analyze-docs.sh /path/to/extension
    
  3. Consult the matching reference

  4. Use TYPO3 directives, not plain text

  5. Validate: scripts/validate_docs.sh /path/to/extension

  6. Render: scripts/render_docs.sh /path/to/extension

Critical: For "show docs", render HTML, not raw RST.

Element Selection Guide

Content TypeDirective
Complete codeliteralinclude (preferred)
Short snippetscode-block with :caption:
Config optionsconfval with :type:, :default:
PHP APIphp:method:: -- :returntype: for nullable/union
Noticesnote, tip, warning, important
Feature gridscard-grid with footer stretched-link
Alternativestabs (synchronized)
Screenshotsfigure with :zoom: lightbox + border/shadow classes

Critical Rules

Official docs are canonical; on conflict the live manual wins -- report drift (references/canonical-sources.md).

Upstream:

  • UTF-8, 4-space indent (no tabs), LF; wrap at 80 chars where possible
  • CamelCase files, sentence case headings
  • Permalink anchors (.. _label:) before every heading
  • Index.rst in every subdirectory
  • PNG/AVIF images with :alt:
  • PHP domain: no ?Type/Type|null in php:method::; use :returntype:

NR policy: no mailto: (upstream allows it; spam/PII -- use Issues/Discussions); .editorconfig in Documentation/.

Heuristic: ~250 lines per RST, split with toctree; screenshots where they help (backend modules, config, workflows).

Code Example Validation

Cross-reference examples against source: grep method names in Classes/, compare CLI arguments with configure(). See references/extraction-patterns.md.

Pre-Commit Checklist

  1. Code blocks have :caption:, inline code uses proper roles
  2. Screenshots exist with :alt: and :zoom: lightbox
  3. scripts/validate_docs.sh passes, render has no warnings
  4. README and Documentation/ synchronized

References

  • references/canonical-sources.md -- topic-to-upstream map, provenance labels
  • references/file-structure.md -- layout, naming
  • references/guides-xml.md -- the guides.xml skeleton, build config, interlinks
  • references/coding-guidelines.md -- CGL deltas, .editorconfig
  • references/rst-syntax.md -- headings, punctuation pitfalls
  • references/text-roles-inline-code.md -- :php:, :guilabel:, :ref:
  • references/code-structure-elements.md -- code blocks, confval, PHP domain
  • references/typo3-directives.md -- confval, versionadded, deprecated
  • references/content-directives.md -- accordion, tabs, card-grid
  • references/screenshots.md -- figures, image rules, SVG diagrams
  • references/rendering.md -- Docker commands, live preview
  • references/intercept-deployment.md -- webhook, build triggers
  • references/asset-templates-guide.md -- templates, screenshot workflow
  • references/architecture-decision-records.md -- ADR patterns
  • references/documentation-coverage-analysis.md -- coverage scoring
  • references/scripts-guide.md -- script options
  • references/typo3-extension-architecture.md -- extension layout
  • references/upstream-docs-contribution.md -- upstream docs PRs
  • references/render-guides-development.md -- changing the renderer itself: directive options, interlink parsing, integration-fixture semantics

Comments

Markdown supported