architecture-blueprint
Generate Business and Application blueprint markdown files from ARCHITECTURE.md. Extracts architecture data to fill standardized organizational templates (datos de iniciativa / initiative data). Detects architecture document language and selects the matching template automatically. Invoke when the user asks to generate blueprints, initiative data sheets, datos de iniciativa, or organizational architecture forms.
What this skill does
# Architecture Blueprint Skill
Generates standardized blueprint markdown files by extracting data from the architecture documentation and filling organizational templates. Detects the language of the architecture docs, selects the matching-language template, and produces output files written to the same directory as `ARCHITECTURE.md`.
**Available templates**:
| Language | Business | Application |
|----------|----------|-------------|
| English (`en`) | `BUSINESS_TEMPLATE_EN.md` | `APPLICATION_TEMPLATE_EN.md` *(pending)* |
| Spanish (`es`) | `BUSINESS_TEMPLATE_ES.md` | `APPLICATION_TEMPLATE_ES.md` *(pending)* |
---
## Automatic Workflow Detection
This skill activates automatically when the user's message contains any of:
- "generate blueprint", "create blueprint", "architecture blueprint"
- "datos de iniciativa", "business blueprint", "application blueprint"
- "blueprint files", "fill blueprint", "generate initiative data"
**Action when detected**: proceed directly to Step 0.
---
## Prerequisites
Before running, verify:
- `ARCHITECTURE.md` exists at the project root (or subdirectory — detect its location)
- `docs/` directory exists with at least `docs/01-system-overview.md`
If `ARCHITECTURE.md` is not found:
```
❌ ARCHITECTURE.md not found.
Generate architecture documentation first with /skill architecture-docs.
```
---
## Step 0: Resolve Plugin Directory
Resolve `$plugin_dir` to locate the templates:
**Step A — Development mode** (glob):
```
Glob: **/{sa-skills,solutions-architect-skills}/skills/architecture-blueprint/BUSINESS_TEMPLATE_EN.md
```
The brace expansion matches both marketplace installs (`sa-skills/` in `~/.claude/plugins/cache/...`) and local dev clones (historical repo folder `solutions-architect-skills/`). If found, strip `/skills/architecture-blueprint/BUSINESS_TEMPLATE_EN.md` to get `plugin_dir`.
**Step B — Marketplace fallback**:
```bash
plugin_dir=$(bun ~/.claude/plugins/marketplaces/shadowx4fox-solution-architect-marketplace/skills/architecture-compliance/utils/resolve-plugin-dir.ts)
```
---
## Step 0.5: Detect Architecture Language
Read the first 30 lines of `docs/01-system-overview.md` and scan for language indicator keywords:
**English indicators**: "Executive Summary", "System Overview", "Problem Statement", "Business Value", "Architecture Principles", "Key Metrics", "Solution"
**Spanish indicators**: "Resumen Ejecutivo", "Descripción del Sistema", "Planteamiento del Problema", "Valor de Negocio", "Principios de Arquitectura", "Métricas Clave", "Solución"
**Decision rules**:
- If 3+ English indicators found → `lang = en`
- If 3+ Spanish indicators found → `lang = es`
- If ambiguous (fewer than 3 matches in either language) → ask the user:
```
🌐 Could not confidently detect architecture language.
Use which template language? [en = English / es = Spanish]
```
- If the user explicitly passes a language flag (e.g., "generate blueprint in spanish", "use english template") → override detection with the specified language
---
## Step 1: Detect Mode
Determine which blueprints to generate based on the user's request:
| User says | Mode |
|-----------|------|
| "business" / "negocio" | Business blueprint only |
| "application" / "aplicación" / "app" | Application blueprint only |
| (default — no qualifier) | Both blueprints |
---
## Step 2: Load Templates
Load the template(s) required for the selected mode and detected language from `$plugin_dir`:
**Business template**:
- `lang = en` → `$plugin_dir/skills/architecture-blueprint/BUSINESS_TEMPLATE_EN.md`
- `lang = es` → `$plugin_dir/skills/architecture-blueprint/BUSINESS_TEMPLATE_ES.md`
**Application template**:
- `lang = en` → `$plugin_dir/skills/architecture-blueprint/APPLICATION_TEMPLATE_EN.md`
- `lang = es` → `$plugin_dir/skills/architecture-blueprint/APPLICATION_TEMPLATE_ES.md`
- If the file does NOT exist → skip Application generation and display:
```
ℹ️ Application template ([lang]) not yet configured. Skipping Application blueprint.
To add it: place APPLICATION_TEMPLATE_EN.md or APPLICATION_TEMPLATE_ES.md in skills/architecture-blueprint/
```
---
## Step 3: Load Architecture Context
Read the following files (load all — they are small enough to fit in context):
| File | Content Used |
|------|-------------|
| `docs/01-system-overview.md` | Executive Summary, System Overview, Key Metrics, Business Value, Deployment |
| `docs/02-architecture-principles.md` | Architecture Principles |
| `docs/03-architecture-layers.md` | Architecture layers and component grouping |
| `docs/components/README.md` | Component index (names and types) |
| `ARCHITECTURE.md` | Navigation index, metadata, ADR table |
| `docs/08-scalability-and-performance.md` | Capacity sizing: users, TPS, storage, scaling strategy *(Application template)* |
| `adr/ADR-*.md` | Architecture decisions, alternatives, criteria, assumptions *(Application template)* |
| `compliance-docs/COMPLIANCE_MANIFEST.md` | Compliance status per contract area *(Application template — optional)* |
If additional `docs/` files are needed for specific template fields, load them on demand (e.g., `docs/07-security-architecture.md` for security-related fields, `docs/09-operational-considerations.md` for deployment/location and debt fields).
Also check for a PO Spec file at the project root (glob: `**/PRODUCT_OWNER_SPEC*.md`, `**/PO_SPEC*.md`) — if found, load it as a supplementary source for business context fields.
---
## Step 4: Fill Template Fields
For each `<placeholder>` in the template:
1. **Search** the loaded architecture docs for data matching the field's intent
2. **If found** → replace the entire `<placeholder>` (angle brackets included) with the extracted value — verbatim, no paraphrasing
3. **If NOT found** → replace with:
```
NOT FOUND — suggest: [recommended section or keyword to check, e.g., "add to docs/01-system-overview.md under Deployment"]
```
4. **Preserve all template formatting** — only replace content inside `< >` angle brackets; never alter surrounding text, markdown structure, heading levels, bold/italic markers, or static prose
### Field Mapping: Business Template (EN and ES)
| EN Placeholder | ES Placeholder | Intent | Primary Source | Fallback |
|---|---|---|---|---|
| `<City, other locations>` | `<Quito, otras sedes>` | Physical location / deployment region | `docs/09-operational-considerations.md` → deployment region or cloud region | `docs/01-system-overview.md` → Deployment section |
| `<Business domain – Per capability map>` | `<Dominio de negocio – Según mapa de capacidades>` | Business domain | `docs/01-system-overview.md` → System Overview or Business Value section | PO Spec → Business Context |
| `<Cross-cutting project, Regulatory project, Product increment project, Project>` | `<Proyecto transversal, Proyecto regulatorio, Proyecto incremento producto, Proyecto>` | Project classification type | `docs/01-system-overview.md` → Problem Statement or Business Value | PO Spec → Business Objectives |
| `<Tribe Name>` | `<Nombre de Tribu>` | Tribe name (org structure) | Architecture docs do not typically contain this | `NOT FOUND — suggest: add to docs/01-system-overview.md under Team/Org section` |
| `<Cell Name>` | `<Nombre de Célula>` | Cell name (org structure) | Architecture docs do not typically contain this | `NOT FOUND — suggest: add to docs/01-system-overview.md under Team/Org section` |
| `<Product owner name> <email>` | `<Nombre del dueño de producto> <email>` | Product Owner name and email | PO Spec if available | `NOT FOUND — suggest: add to PRODUCT_OWNER_SPEC.md` |
| `<Tribe lead name> <email>` | `<Nombre de líder de tribu> <email>` | Tribe Lead | Architecture docs do not typically contain this | `NOT FOUND` |
| `<Technical tribe lead name> <email>` | `<Nombre de líder técnico de tribu> <email>` | Technical Tribe Lead | Architecture docs do not typically contain this | `NOT FOUND` |
| `<Assigned enterprise architect> <email>` | Related in Writing & Docs
jax-development
IncludedUse this skill when the user is writing, debugging, profiling, refactoring, reviewing, benchmarking, parallelising, exporting, or explaining JAX code, or when they mention JAX, jax.numpy, jit, grad, value_and_grad, vmap, scan, lax, random keys, pytrees, jax.Array, sharding, Mesh, PartitionSpec, NamedSharding, pmap, shard_map, Pallas, XLA, StableHLO, checkify, profiler, or the JAX repo. It helps turn NumPy or PyTorch-style code into pure functional JAX, fix tracer/control-flow/shape/PRNG bugs, remove recompiles and host-device syncs, choose transforms and sharding strategies, inspect jaxpr/lowering/IR, and benchmark compiled code correctly.
nature-article-writer
IncludedDrafts, rewrites, diagnostically critiques, and style-calibrates primary research manuscripts for Nature and Nature Portfolio journals. Use when the user wants a Nature-style title, summary paragraph or abstract, introduction, results, discussion, methods, figure legends, presubmission enquiry, cover letter, reviewer response, or when a scientific draft sounds generic, jargon-heavy, structurally weak, or AI-ish and needs precise, broad-reader-friendly prose without inventing data, analyses, or references. Best for primary research articles and letters rather than reviews or press releases unless explicitly adapting one.
deckrd
IncludedDocument-driven framework that derives requirements, specifications, implementation plans, and executable tasks from goals through structured AI dialogue. Use when user says "write requirements", "create spec", "plan implementation", "derive tasks", "structure this feature", "break down into tasks", or "document this module". Also use for reverse engineering existing code into docs (/deckrd rev). Do NOT use for direct code writing — use /deckrd-coder after tasks are generated. Do NOT use when the user only wants to run or fix existing code without planning.
clinical-decision-support
IncludedGenerate professional clinical decision support (CDS) documents for pharmaceutical and clinical research settings, including patient cohort analyses (biomarker-stratified with outcomes) and treatment recommendation reports (evidence-based guidelines with decision algorithms). Supports GRADE evidence grading, statistical analysis (hazard ratios, survival curves, waterfall plots), biomarker integration, and regulatory compliance. Outputs publication-ready LaTeX/PDF format optimized for drug development, clinical research, and evidence synthesis.
handling-sf-data
IncludedSalesforce data operations with 130-point scoring. Use this skill to create, update, delete, bulk import/export, generate test data, and clean up org records using sf CLI and anonymous Apex. TRIGGER when: user creates test data, performs bulk import/export, uses sf data CLI commands, needs data factory patterns for Apex tests, or needs to seed/clean records in a Salesforce org. DO NOT TRIGGER when: SOQL query writing only (use querying-soql), Apex test execution (use running-apex-tests), or metadata deployment (use deploying-metadata).
accelint-ac-to-playwright
IncludedConvert and validate acceptance criteria for Playwright test automation. Use when user asks to (1) review/evaluate/check if AC are ready for automation, (2) assess if AC can be converted as-is, (3) validate AC quality for Playwright, (4) turn AC into tests, (5) generate tests from acceptance criteria, (6) convert .md bullets or .feature Gherkin files to Playwright specs, (7) create test automation from requirements. Handles both bullet-style markdown and Gherkin syntax with JSON test plan generation and validation.