Generic framework for viewpoint-based architecture analysis. Provides output templates, assumption rules, and context gathering scripts.
From standardsnpx claudepluginhub qmu/workaholic --plugin standardsThis skill is limited to using the following tools:
sh/gather.shsh/read-overrides.shGeneric framework for analyzing a repository from a specific architectural viewpoint. Viewpoint definitions (prompts, diagram types, sections) are provided by the caller.
Run the bundled script to collect viewpoint-specific information:
bash ${CLAUDE_PLUGIN_ROOT}/skills/analyze-viewpoint/sh/gather.sh <viewpoint-slug> [base-branch]
Default base branch is main.
Run the override reader to check for user-defined viewpoint customizations:
bash ${CLAUDE_PLUGIN_ROOT}/skills/analyze-viewpoint/sh/read-overrides.sh
If overrides exist, merge them with the viewpoint definition received from the caller.
Each viewpoint produces a spec document following this structure:
---
title: <Viewpoint Name> Viewpoint
description: <viewpoint description>
category: developer
modified_at: <ISO 8601 datetime>
commit_hash: <from context>
---
[Primary language](<slug>.md) | [Translation](<slug>_<lang>.md) <!-- language pair based on consumer CLAUDE.md -->
# <Viewpoint Name> Viewpoint
<introductory paragraph explaining the viewpoint's scope>
## <Section 1 from viewpoint definition>
<content with analysis>
## <Section 2 from viewpoint definition>
<content with analysis>
...
<!-- Diagrams go inline within content sections above, not in a separate section -->
## Assumptions
<clearly mark inferred vs explicit knowledge>
Diagrams are inline within content sections, not in a separate "Diagram" section:
When generating Mermaid diagrams, MUST quote labels containing special characters (/, {, }, [, ]):
A[/command] -- WRONG, causes GitHub lexical errorA["/command"] -- CORRECTB{Decision?} -- acceptable (no special chars inside braces)C["path/to/file"] -- CORRECT for paths with slashesThis is especially common for slash-command labels like /ticket, /drive, /scan, /report.
Every viewpoint spec must include an Assumptions section at the end:
[Explicit] or [Inferred]When the codebase provides no explicit information:
Viewpoint specs should reference each other when topics overlap:
See [Component Viewpoint](component.md) for module boundaries