.claude/skills/arc42-docs-mcp/SKILL.md
Use this skill when the user asks to "create architecture documentation", "document the architecture", "arc42", "initialize arc42", "update architecture docs", discusses architecture documentation, or wants to document system design decisions, quality requirements, deployment views, building blocks, or any of the 12 arc42 sections. Also use when the user mentions ADRs (Architecture Decision Records) in the context of arc42.
npx skillsauth add h2nguyen/Arc42-Node-MCP-Server arc42-docsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Guide for using the arc42-mcp-server MCP server to create and maintain architecture documentation following the proven arc42 template. The server provides 6 tools, supports 11 languages and 2 output formats (AsciiDoc, Markdown).
The arc42-mcp-server MCP server must be configured and running. See setup instructions for installation and configuration.
arc42-workflow-guide — understand the full arc42 structure and what belongs in each sectionarc42-init — creates directory structure with all 12 section files, config.yaml, and READMEarc42-status — see current progress, completeness percentage, and which sections need workgenerate-template — get the detailed structure and guidance for a specific section before writingupdate-section — write or append content to a sectionget-section — read back existing content with metadata (word count, last modified)arc42-status — assess current state and identify gapsget-section — review what's already documentedgenerate-template — understand expected structure for incomplete sectionsupdate-section — fill gaps or improve existing contentLoad the comprehensive arc42 documentation workflow guide. Always call this first when starting a new documentation effort — it explains what information belongs in each section.
| Parameter | Type | Required | Default | Description |
|------------|------|----------|--------------|----------------------------------------------------------------------------------|
| language | enum | No | "EN" | Language code: EN, DE, ES, FR, IT, NL, PT, RU, CZ, UKR, ZH |
| format | enum | No | "asciidoc" | Output format: asciidoc (or adoc), markdown (or md) |
Returns: Complete workflow guide text with section explanations, available languages, supported formats, and workspace root path.
Initialize the arc42 documentation workspace. Creates arc42-docs/ directory with all 12 section files, config.yaml, README, and a main documentation file.
| Parameter | Type | Required | Default | Description |
|----------------|---------|----------|----------------|--------------------------------------------------------------------|
| projectName | string | Yes | — | Name of the project being documented |
| language | enum | No | "EN" | Language code (see above) |
| format | enum | No | "asciidoc" | Output format: asciidoc/adoc or markdown/md |
| force | boolean | No | false | Force re-initialization even if workspace already exists |
| targetFolder | string | No | server default | Absolute path to target folder where arc42-docs/ will be created |
Returns: Workspace root path, sections created count, config (including arc42 template reference version, date, and commit SHA).
Created structure:
<targetFolder>/arc42-docs/
├── README.md
├── arc42-documentation.adoc (or .md)
├── config.yaml
├── sections/
│ ├── 01_introduction_and_goals.adoc (or .md)
│ ├── 02_architecture_constraints.adoc (or .md)
│ └── ... (all 12 sections)
└── images/
Check documentation completion status. Shows per-section progress with word counts, completeness percentages, and overall progress.
| Parameter | Type | Required | Default | Description |
|----------------|--------|----------|----------------|--------------------------------------------------|
| targetFolder | string | No | server default | Absolute path to folder containing arc42-docs/ |
Returns: Project name, initialized state, language and format info, arc42 template reference version, per-section status (exists, word count, completeness 0-100%, last modified), and overall completeness percentage.
Generate a detailed template for a specific section. Always use this before writing content — it provides the expected structure, subsections, and guidance for what information to include.
| Parameter | Type | Required | Default | Description |
|------------|------|----------|--------------|-----------------------------------------------------|
| section | enum | Yes | — | Section ID (see section reference below) |
| language | enum | No | "EN" | Language code |
| format | enum | No | "asciidoc" | Output format: asciidoc/adoc or markdown/md |
Returns: Complete template content with guidance, section metadata (title, description, order), format details.
Write content to a specific section. Format is auto-detected from existing files or config.yaml.
| Parameter | Type | Required | Default | Description |
|----------------|--------|----------|----------------|-------------------------------------------------------------|
| section | enum | Yes | — | Section ID (see section reference below) |
| content | string | Yes | — | The content to write to the section |
| mode | enum | No | "replace" | "replace" overwrites, "append" adds to existing content |
| targetFolder | string | No | server default | Absolute path to folder containing arc42-docs/ |
Returns: Section title, file path, detected format, word count, and write mode used.
Important: Use mode: "append" when adding ADRs (Section 9) or adding incremental content to avoid overwriting existing entries.
Read content from a specific section, including metadata.
| Parameter | Type | Required | Default | Description |
|----------------|--------|----------|----------------|--------------------------------------------------|
| section | enum | Yes | — | Section ID (see section reference below) |
| targetFolder | string | No | server default | Absolute path to folder containing arc42-docs/ |
Returns: Section content, language, format, title, description, and file metadata (path, last modified timestamp, word count, file size in bytes).
| # | Section ID | Name | Key Content |
|----|-------------------------------|--------------------------|-------------------------------------------------------------------|
| 1 | 01_introduction_and_goals | Introduction and Goals | Requirements overview, quality goals, stakeholders |
| 2 | 02_architecture_constraints | Architecture Constraints | Technical, organizational, and political constraints |
| 3 | 03_context_and_scope | Context and Scope | Business context, technical context, external interfaces |
| 4 | 04_solution_strategy | Solution Strategy | Technology decisions, top-level decomposition, quality approaches |
| 5 | 05_building_block_view | Building Block View | Static decomposition (Level 1, 2, 3) of the system |
| 6 | 06_runtime_view | Runtime View | Key scenarios, sequence diagrams, process flows |
| 7 | 07_deployment_view | Deployment View | Infrastructure, deployment diagrams, node mapping |
| 8 | 08_concepts | Cross-cutting Concepts | Security, persistence, logging, error handling patterns |
| 9 | 09_architecture_decisions | Architecture Decisions | ADRs with context, decision, status, and consequences |
| 10 | 10_quality_requirements | Quality Requirements | Quality tree, quality scenarios |
| 11 | 11_technical_risks | Risks and Technical Debt | Known risks, technical debt items |
| 12 | 12_glossary | Glossary | Domain terms and definitions |
Start with the most impactful sections. You do NOT need to document all 12 sections sequentially.
| Priority | Section | Why | |----------|--------------------------------------------------|-----------------------------------------------------------------------| | 1st | Section 1 — Introduction and Goals | Always start here: establishes scope, quality goals, and stakeholders | | 2nd | Section 3 — Context and Scope | Define system boundaries and external interfaces early | | 3rd | Section 4 — Solution Strategy | Capture key technology and design decisions | | 4th | Section 5 — Building Block View | Document the system's static structure | | 5th | Section 9 — Architecture Decisions | Record important ADRs while decisions are fresh | | Then | Section 2 — Constraints | Document technical/organizational constraints | | Then | Sections 6–8 — Runtime, Deployment, Concepts | Fill in dynamic behavior, infrastructure, cross-cutting concerns | | Last | Sections 10–12 — Quality, Risks, Glossary | Complete the documentation |
generate-template for the section to understand the expected structure and subsectionsget-section to see if there's already content to build uponarc42-status to check whether the project uses AsciiDoc or Markdown, then write content in that format= headings, admonitions with NOTE:, TIP:; Markdown uses # headings)mode: "append" when adding new ADRs to avoid overwriting existing onesget-section first to read existing ADRs and determine the next ADR numberEvery tool response includes:
success — boolean indicating whether the operation succeededmessage — human-readable summary of what happeneddata — structured response data (varies by tool)nextSteps — array of suggested follow-up actions; use these to guide the user on what to do next11 languages are supported. Set the language during arc42-init; it persists in config.yaml and applies to all subsequent operations.
| Code | Language | Code | Language |
|------|----------|-------|------------|
| EN | English | PT | Portuguese |
| DE | German | RU | Russian |
| ES | Spanish | CZ | Czech |
| FR | French | UKR | Ukrainian |
| IT | Italian | ZH | Chinese |
| NL | Dutch | | |
| Format | Aliases | Extension | Best For |
|------------------------|--------------------|-----------|--------------------------------------------------------------------------------------|
| AsciiDoc (default) | asciidoc, adoc | .adoc | Professional docs — supports includes, admonitions, cross-references, TOC generation |
| Markdown | markdown, md | .md | Simplicity — widely supported, GitHub/GitLab rendering |
Set the format during arc42-init. The update-section tool auto-detects the format from existing files or config.yaml. Format aliases (md/adoc) are accepted anywhere a format parameter is used.
See references/examples.md for detailed usage examples covering:
development
Maintainer-only workflow for handling GitHub Secret Scanning alerts on OpenClaw. Use when Codex needs to triage, redact, clean up, and resolve secret leakage found in issue comments, issue bodies, PR comments, or other GitHub content.
development
Maintainer workflow for OpenClaw releases, prereleases, changelog release notes, and publish validation. Use when Codex needs to prepare or verify stable or beta release steps, align version naming, assemble release notes, check release auth requirements, or validate publish-time commands and artifacts.
development
Run, watch, debug, and extend OpenClaw QA testing with qa-lab and qa-channel. Use when Codex needs to execute the repo-backed QA suite, inspect live QA artifacts, debug failing scenarios, add new QA scenarios, or explain the OpenClaw QA workflow. Prefer the live OpenAI lane with regular openai/gpt-5.4 in fast mode; do not use gpt-5.4-pro or gpt-5.4-mini unless the user explicitly overrides that policy.
development
End-to-end Parallels smoke, upgrade, and rerun workflow for OpenClaw across macOS, Windows, and Linux guests. Use when Codex needs to run, rerun, debug, or interpret VM-based install, onboarding, gateway smoke tests, latest-release-to-main upgrade checks, fresh snapshot retests, or optional Discord roundtrip verification under Parallels.