radius-architecture-documenter

Generates code-grounded architecture documentation and Mermaid diagrams for Go codebases.

1.7k|135|Updated Feb 20, 2021
One-click install
npx skills add https://github.com/radius-project/radius --skill radius-architecture-documenter
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: radius-architecture-documenter
Source: https://github.com/radius-project/radius/tree/main/.github/skills/radius-architecture-documenter
Command: npx skills add https://github.com/radius-project/radius --skill radius-architecture-documenter

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Understanding and documenting the architecture of a large Go codebase like Radius is slow and error-prone when done manually, and diagrams drawn from memory quickly drift from the actual code. This Skill traces real call chains, packages, and types in the source to produce accurate architecture explanations and Mermaid diagrams.

Core Features & Use Cases

  • Code-grounded diagram generation: Produces Mermaid flowcharts, sequence diagrams, class diagrams, ER diagrams, and state diagrams where every node maps to a real package, type, or function in the code.
  • Architecture explanation and Q&A: Explains how subsystems work in plain language, answers architecture questions, and onboards new contributors to the Radius control plane, resource providers, and recipes engine.
  • Improvement suggestions: Identifies pain points such as coupling and circular dependencies, then presents current-state versus proposed-state diagrams with trade-off analysis.
  • Use Case: Ask how a deployment request flows through the Radius Universal Control Plane, and receive a sequence diagram tracing the actual frontend handler, ARM RPC controller, and async backend, plus a prose walkthrough with file references.

Quick Start

Ask the assistant to document the architecture of a Radius subsystem, for example: show me the request flow when a user deploys an application through the UCP.

Frequently Asked Questions about radius-architecture-documenter

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

FAQPage Schema
How do I generate an architecture diagram from Go source code?

Identify entry points such as main functions and route registration, trace the call chain through frontend and backend layers, then map packages and key types to Mermaid nodes. Every node and arrow should correspond to a real package, type, or function call in the code.

What Mermaid diagram type should I use for architecture documentation?

Use graph TD for system overviews and deployment topology, sequenceDiagram for request and response flows, classDiagram or erDiagram for entity relationships, stateDiagram-v2 for lifecycle transitions, and graph LR for data flows and package dependencies.

How do I trace interface implementations in a Go codebase?

Search for methods matching the interface signatures and grep for receiver types to find concrete implementations. Constructor functions like New...() and setup packages reveal how dependency injection wires components together.

When should I split a Mermaid diagram into multiple diagrams?

Split a diagram when it exceeds roughly 15 nodes, since overcrowded diagrams become unreadable. Use subgraphs to group related components, and create separate diagrams for distinct layers or flows instead of forcing everything into one view.

What is the difference between this skill and the radius-author-doc skill?

This skill diagrams subsystems and writes architecture documentation grounded in source code. The radius-author-doc skill is for creating step-by-step contributor how-to docs, while radius-update-doc fixes existing docs that have drifted from the code.