Generate Architecture Artifacts From Codebase
What This Skill Produces
- A primary Architecture and Design Document as the main output.
- Architecture options analysis with pros and cons when no established baseline architecture is found.
- Mermaid and PlantUML diagram source artifacts for architecture views.
- A business workflows document that captures workflow steps and business logic.
- A data models document covering entities, relationships, constraints, and flows.
- An open questions document for unresolved/ambiguous areas.
- Architecture image prompt pack.
- Architect Generic Playbook application document (requirements + codebase assessment).
- Supporting evidence, traceability, timeline, and state snapshots.
Use When
- You need architecture artifacts from an existing codebase with or without formal BRD/API requirement docs.
- You want the same output structure every run for auditability.
- You want incremental updates when the codebase changes.
Required Input
- Exactly one path:
codebaseRootFolder.
The skill must auto-discover requirement signals from codebaseRootFolder, including:
- BRD-style docs, API specs, ADRs, wiki exports, and markdown notes.
- If requirement docs are missing, infer requirements from code and mark inferred items explicitly.
Detail-First Generation Mechanism (Default)
Use detailed-sequential generation by default.
Process rules:
- Generate one major document at a time, complete it, run quality checks, then move to the next document.
- Do not create all documents in a shallow single pass.
- Keep an internal generation queue and process in this order:
architecture/Architecture_and_Design_Document.mdworkflows/Business_Workflows_and_Logic.mddata-models/Data_Models_Document.mdplaybook/Architect_Generic_Playbook_Applied.mdarchitecture/Architecture_Options_Pros_Cons.md(conditional)- diagrams (
.mmd,.puml) image-prompts/architecture-image-prompts.md- After each file, run a file-level quality gate before continuing.
Minimum depth gate per narrative document:
- Every section must include concrete details, not placeholders.
- Each major section must cite at least one source/evidence reference.
- Include explicit assumptions, risks, and unresolved questions where applicable.
- Include examples/tables for key logic (scoring, flows, entity mappings) when available.
- If details are missing, add focused
TBDquestions instead of generic text.
Document-family depth gates:
architecture/Architecture_and_Design_Document.md
- Must contain a complete end-to-end architecture narrative, not just headings.
- Must include explicit component boundaries, interfaces, data flow, deployment, NFRs, and decision rationale.
- Must include source links per major section.
workflows/Business_Workflows_and_Logic.md
- Must describe workflow steps, decision points, branching, and business rules in detail.
- Must include exceptions, alternate paths, and trigger conditions.
data-models/Data_Models_Document.md
- Must include entity definitions, relationships, cardinality, lifecycle, and ownership.
- Must include examples or tables for key entities and attributes.
image-prompts/architecture-image-prompts.md
- Must include one detailed prompt per required view, with scope, style, labels, and relationship constraints.
- Must reference the exact architecture artifact or section it visualizes.
traceability/open-questions.md
- Must group questions by artifact/decision area.
- Each question must include why it matters, source reference, and owner/follow-up hint.
playbook/Architect_Generic_Playbook_Applied.md
- Must map playbook sections to requirements and evidence with gap/remediation notes.
architecture/Architecture_Options_Pros_Cons.md(conditional)
- Must include at least three options with tradeoffs, risks, and recommendation.
Output Contract
Create or update these artifacts under generated-architecture-output/ inside codebaseRootFolder:
architecture/Architecture_and_Design_Document.mddiagrams/mermaid/component-diagram.mmddiagrams/mermaid/data-flow.mmddiagrams/mermaid/deployment-diagram.mmddiagrams/mermaid/er-database-schema.mmddiagrams/plantuml/component-diagram.pumldiagrams/plantuml/data-flow.pumldiagrams/plantuml/deployment-diagram.pumldiagrams/plantuml/er-database-schema.pumlworkflows/Business_Workflows_and_Logic.mddata-models/Data_Models_Document.mdtraceability/open-questions.mdimage-prompts/architecture-image-prompts.mdplaybook/Architect_Generic_Playbook_Applied.mdevidence/evidence-index.mdevidence/source-facts.mdtraceability/requirements-to-evidence-map.mdtimeline/architecture-timeline.mdtimeline/source-change-log.mdtimeline/document-revision-log.md.state/last-run-source-snapshot.json.state/last-run-doc-checksums.json
Conditional output (required when architecture baseline is not established):
architecture/Architecture_Options_Pros_Cons.md
Non-negotiable rule:
- These outputs are mandatory on every run. If evidence is incomplete, still generate each file with explicit
TBDsections and questions.
Structure compatibility rule:
- Keep old output-structure files when they already exist.
- Update equivalent old-structure files alongside canonical outputs when deltas are detected.
- If an old-structure file has no equivalent in the current run, keep it unchanged and mark it
legacy-unmappedin revision log.
Procedure
- Validate and prepare paths.
- Confirm
codebaseRootFolderexists. - Create
generated-architecture-output/and required subfolders if missing.
- Discover requirements and codebase shape.
- Discover requirement documents first (BRD, API spec, ADR, wiki/md docs), then code/config evidence.
- Enumerate source files, build files, runtime configs, infra files, and docs.
- Detect languages, frameworks, package managers, and deployment model.
- Identify module boundaries by directory structure and import/reference patterns.
- Discover architecture signals.
- Extract API surface from OpenAPI specs, route definitions, controllers, handlers, and RPC contracts.
- Extract data model signals from schema files, ORM models, migrations, SQL, and repository code.
- Extract integration signals from HTTP clients, SDK usage, queues, events, and secrets/config references.
- Extract runtime and NFR signals from config (timeouts, retries, security headers, auth, scaling hints, logging, telemetry).
- Build normalized evidence inventory.
- Record each discovered source with path, type, purpose, and confidence.
- Group evidence by architecture domain: context, component, data, integration, deployment, security, reliability.
- Initialize update mode.
- If
.state/last-run-source-snapshot.jsonexists, run incremental mode. - Classify file changes as
added,updated,removed,unchanged. - Record change summary in
timeline/source-change-log.md. - Use
.state/last-run-doc-checksums.jsonto detect changed documents (requirements/docs) and changed generated artifacts. - Trigger targeted regeneration from document changes first, then code/config changes.
- Generate architecture facts.
- Produce explicit fact cards with source references.
- Mark inferred facts clearly as assumptions.
- Flag conflicts or ambiguity when multiple code paths imply different behavior.
- Generate architecture options when baseline is missing.
- If requirements and code evidence do not indicate a stable existing architecture baseline, create
architecture/Architecture_Options_Pros_Cons.md. - Include at least three architecture options.
- For each option include:
- Option summary
- Pros
- Cons
- Risks
- Operational impact
- Migration complexity
- Add recommended option and decision rationale.
- Generate primary architecture and design document.
- Build
architecture/Architecture_and_Design_Document.mdfirst and treat it as the primary output. - Minimum required sections:
- system context
- component architecture
- data architecture and flow
- integration architecture
- deployment and operations
- security and compliance
- risks, assumptions, and decisions
- For unknown sections, add
TBDand track questions intraceability/open-questions.md.
- Generate workflows document.
- Create
workflows/Business_Workflows_and_Logic.md. - Include end-to-end workflow steps, decision points, business rules, exceptions, and dependency calls.
- Generate data models document.
- Create
data-models/Data_Models_Document.md. - Include entities, attributes, keys, relationships, cardinality, lifecycle, and data lineage/flows.
- Generate image prompts.
- Create
image-prompts/architecture-image-prompts.md. - Cover at least: context, component, deployment, data flow, and workflow views.
- Include style constraints, scope, labels, and relationships.
- Generate diagram source artifacts.
- Generate Mermaid and PlantUML files for: component, data flow, deployment, and ER/database schema.
- Ensure diagram labels and node names match architecture docs.
- If a view cannot be fully derived, emit partial diagram plus explicit TODO notes in comments.
- Apply Architect Generic Playbook.
- Create
playbook/Architect_Generic_Playbook_Applied.md. - Document how each playbook section is satisfied by requirements and by code evidence.
- Record gaps, deviations, and recommended remediations.
- Generate traceability.
- Map major architecture claims to concrete code/config evidence in
traceability/requirements-to-evidence-map.md. - Capture unresolved questions and conflict notes in
traceability/open-questions.md.
- Maintain timeline artifacts.
- Append run summary and key architecture changes to
timeline/architecture-timeline.md. - Append per-document change entries to
timeline/document-revision-log.md. - Never delete prior timeline entries.
- Include preserved existing docs count and updated docs count in each run summary.
- Persist state snapshots.
- Save current source snapshot to
.state/last-run-source-snapshot.json. - Save generated document checksums to
.state/last-run-doc-checksums.json.
- Quality checks.
- Completeness: all output artifacts exist.
- Traceability: all major claims include source references.
- Consistency: names and interfaces are consistent across outputs.
- Explainability: assumptions and unknowns are explicit.
- Diagram validity: Mermaid and PlantUML files must be syntactically valid and aligned with generated docs.
- Priority check:
architecture/Architecture_and_Design_Document.mdis generated first and references the other generated artifacts. - Sequencing check: each major file passed file-level quality gate before the next file was generated.
- Depth check: generated narrative docs are detailed enough for design review (not outline-only text).
Decision Points
- If architecture signals are weak: produce minimum baseline docs and raise targeted open questions.
- If no established architecture baseline exists: produce
architecture/Architecture_Options_Pros_Cons.mdbefore final architecture selection. - If conflicting patterns exist: prefer executable runtime path over dead/legacy code and log rationale.
- If monorepo is large: prioritize active apps/services first, then shared libraries.
- If generated outputs already exist: update impacted sections only and preserve unchanged content.
- If requirement documents change but code does not: still update architecture, workflows, data model, and playbook outputs based on document deltas.
Completion Criteria
- All required artifacts are present under
generated-architecture-output/. - If no established architecture exists,
architecture/Architecture_Options_Pros_Cons.mdcontains at least three options and a recommended path. - Primary document
architecture/Architecture_and_Design_Document.mdexists and is complete. - Workflows and data-model docs exist with business logic and model relationships.
- Open questions document exists even if empty (with
No open questionsmarker). - Playbook application document exists and references both requirements and code evidence.
- Every major section has sourced content or explicit
TBDplus question. - Diagram source files exist for each mandatory view (component, data flow, deployment, ER/schema).
- Timeline and state files are updated for the run.
- Old structure files remain available and are synchronized where equivalent outputs exist.
- A reviewer can trace architecture conclusions back to concrete code/config evidence.
Invocation Pattern
When invoked, ask only for:
codebaseRootFolder
Then:
- Analyze the codebase.
- Generate/update artifacts in detailed-sequential mode (one file at a time with file-level gates).
- Report output paths, change summary, open questions, and per-file gate outcomes.