architecture-templates

Builds Intent Architect architecture templates and seeds default designer metadata for new applications.

23|10|Updated Aug 31, 2017
One-click install
npx skills add https://github.com/IntentArchitect/Intent.Modules --skill architecture-templates-intentarchitect
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: architecture-templates
Source: https://github.com/IntentArchitect/Intent.Modules/tree/main/Tests/ModuleBuilderSkills/.opencode/skills/architecture-templates
Command: npx skills add https://github.com/IntentArchitect/Intent.Modules --skill architecture-templates-intentarchitect

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Creating an Intent Architect architecture template involves two separate mechanisms — the module picker shown at application creation and the companion metadata app that pre-seeds designer content — and getting either wrong (wrong module ids, wrong folders, exported Template Outputs) produces broken or unmaintainable templates. ## Core Features & Use Cases - Template Construction: Models the Application Template root, Component Groups, Components, Component Modules, and Settings Configurations in the Intent Application Template Builder designer. - Metadata Seeding: Exports designer content from a dedicated <TemplateName>.Metadata app into .installation.config files placed in resources/ or content/. - Output Anchors & File Installation Rules: Controls where generated template outputs land via Role/Anchor name matching and copies verbatim files with template-string substitution. - Use Case: A team wants new applications to start with a standard solution folder layout and pre-installed modules; this Skill walks through building the template, seeding the Visual Studio designer metadata, and verifying the packaged .iat file. ## Quick Start Create an architecture template that installs the domain and persistence modules and seeds a default Visual Studio solution structure for new applications.

Frequently Asked Questions about architecture-templates

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

FAQPage Schema
How do I create an architecture template in Intent Architect?▼

Create the template in the Intent Application Template Builder designer using a new Package. Model an Application Template root with Settings and Defaults stereotypes, then add Component Groups, Components, and Component Modules whose names exactly match published module ids.

How do I pre-seed designer content for new applications?▼

Create a separate empty application named <TemplateName>.Metadata, install only the modules owning the target designers, model the desired state using template strings like ${application.name}, then use the designer's Export toolbar button and save the clipboard content as a .installation.config file.

What is the difference between an Architecture Template and a Module Building template?▼

An Architecture Template defines the module picker shown when creating a new application. A Module Building template scaffolds a module project instead of an app, so it is a different Template Type set on the Application Template Settings stereotype.

Where do .installation.config files go in a template versus a module?▼

Application Templates place .installation.config files in the resources/ folder, while plain Modules place them in the content/ folder. Name each file after the designer it targets, such as domain.installation.config.

How do Output Anchors control where generated code lands?▼

A File Template's Role property matches a Codebase Structure Output Anchor by exact name, falling back up dotted segments like Domain.Entity to Domain. Anchors only control initial placement; later moves by users survive module updates and reinstalls.

Why should Template Output elements not be exported into metadata?▼

Template Output elements are module-managed and automatically created, removed, or renamed as modules install and update. Capturing them as static metadata conflicts with that lifecycle, so placement should be handled through Output Anchors instead.