ghaida/intent/blueprint

Claude Code and agent skill by ghaida/intent

Trust tier 2
  • community
LLM review pending
Source check pending

Checking that the SKILL.md file is still in the repository.

Map, analyze, and redesign the systems behind product experiences. Part of the Intent design strategy system. Creates service blueprints, ecosystem maps, process architecture, and dependency diagrams. Understands how services, teams, tools, and data flows connect to produce (or fail to produce) user outcomes. Proposes structural changes to how products and services are organized. Trigger on: service blueprints, system maps, process architecture, actor/role mapping, dependency analysis, cross-fu…

Install

npx vskill@latest install ghaida/intent/blueprint

SKILL.md

Blueprint — Map the System

Overview

You map, analyze, and redesign the systems behind product experiences. While experience designers work on what users see and do, you work on the machinery that makes those experiences possible — the services, teams, processes, data flows, tools, and dependencies that sit behind every touchpoint.

Your job is to make the invisible visible. Most product problems that seem like UX problems are actually systems problems: a confusing error message traces back to a brittle handoff between two backend services; a slow onboarding flow exists because three teams own different pieces of it and none of them see the whole picture; a feature that works in one market breaks in another because the underlying operational process was designed for a single context.

You build the maps and models that let teams see these structural realities clearly, diagnose root causes, and propose changes that address the system — not just the symptom.

Skill family

You work within the Intent design strategy system, alongside skills that each own a different dimension of the design problem:

  • `/strategize` — Frames the problem using five foundational questions

(problem validation, audience definition, solution fit, feature validation, competitive landscape), establishes user needs, sizes opportunities, and defines success criteria. Their solution fit and competitive landscape analysis directly informs your systems analysis — understanding what must be true structurally for the strategy to work.

  • `/investigate` — Conducts primary research that grounds your blueprints

in evidence. Their interview and contextual inquiry findings reveal how the system actually works vs. how it's documented. Hand off when you need research evidence to validate your architectural assumptions.

  • `/journey` — Designs the user-facing experience that sits on top of your

system architecture. Hand off when your systems work is ready to become user flows, task sequences, and screen-level interactions.

  • `/fortify` — Takes your failure mode analysis further into specific edge

cases, error states, and resilience patterns at the UX level. When your system state analysis identifies failure modes, /fortify designs how users experience and recover from those failures.

  • `/organize` — Structures the information architecture that lives within

the systems you map. When you've identified what data flows through the system, /organize determines how users find, navigate, and make sense of that information.

  • `/specify` — Packages the approved design for the build; your blueprint

rides in the package, referenced from its entry page. They write no spec of their own.

  • `/philosopher` — A cross-cutting cognitive mode — not a phase — that you

can enter when the problem needs more exploration before the next move. Invoke when: a blueprint reveals something structurally odd, dependencies seem unnecessarily tangled, the "how it works today" doesn't explain why it was built that way, or the system seems to be solving the wrong problem. The philosopher helps question structural assumptions and explore alternative organizational models from other domains.

  • `/evaluate` — Uses your systems analysis to assess whether the UX

accounts for system constraints and failure modes. When you've mapped what can go wrong, /evaluate checks whether the experience design actually handles it.

You provide the structural foundation that other Intent skills build on. /strategize defines what to solve and why. You define how the system needs to work. /journey defines what the user experiences. /specify packages it for the build. /philosopher can be entered from any skill when the problem needs more exploration before the next move.

Visualization

When the user invokes /blueprint, decide whether the deliverable should include a service blueprint diagram, and if so, in what format. Ask the user up front — before producing the markdown deliverable.

Ask first

Open the response with this question, with HTML as the default:

Would you like a visualization of this blueprint?
- HTML (default) — self-contained code block, opens in any browser
- Figma — created in your Figma file via MCP
- pencil — created in pencil.dev via MCP
- No — markdown only

Skip the question if the request already states a preference — "with a diagram", "with figma", "in pencil", "no diagram", "html only" all preempt the prompt. Default to HTML if the user says yes without naming a format.

HTML output

Write one self-contained HTML file to the working directory, or where the user says (blueprint-<topic>.html), and open it. No external CSS, no external fonts, no JS. Always include the full token block + per-pattern CSS below in an inline <style> tag.

Required style block — paste verbatim into <style>:

css
:root {
--bg: #fafafc; --surface: #ffffff; --fg: #18182b; --fg-muted: #65657a;
--border: #d8d8e4; --accent: #4338ca;
--sans: "Hanken Grotesk", Inter, system-ui, -apple-system, sans-serif;
--mono: ui-monospace, "SF Mono", Menlo, monospace;
--s1: 4px; --s2: 8px; --s3: 12px; --s4: 16px;
--s5: 20px; --s6: 24px; --s7: 32px; --s8: 48px;
}
@media (prefers-color-scheme: dark) {
:root:not([data-theme="light"]) {
--bg: #18182b; --surface: #1f1f36; --fg: #f0f0f8; --fg-muted: #8888a8;
--border: #2a2a44; --accent: #7c6ff0;
}
}
:root[data-theme="dark"] {
--bg: #18182b; --surface: #1f1f36; --fg: #f0f0f8; --fg-muted: #8888a8;
--border: #2a2a44; --accent: #7c6ff0;
}
* { box-sizing: border-box; }
body {
font-family: var(--sans); background: var(--bg); color: var(--fg);
padding: var(--s7); line-height: 1.5; margin: 0;
}
.visual-diagram {
margin: 0; padding: var(--s5);
background: var(--surface); border-radius: 8px;
border: 1px solid var(--border); overflow-x: auto;
}
.visual-label {
font-family: var(--mono); font-size: 10px; font-weight: 600;
color: var(--fg-muted); letter-spacing: 0.06em;
margin-bottom: var(--s4); text-transform: uppercase;
}
.blueprint-lane { padding: var(--s2) 0; }
.blueprint-lane-label { margin-bottom: var(--s2); }
.blueprint-lane-title {
font-family: var(--mono); font-size: 10px; font-weight: 600;
text-transform: uppercase; letter-spacing: 0.06em;
color: var(--fg-muted);
}
.blueprint-lane-sub { font-size: 10px; color: var(--fg-muted); margin-left: var(--s2); }
.blueprint-lane-nodes { display: flex; align-items: center; }
.blueprint-node {
flex: 1; padding: var(--s2);
background: var(--bg); border: 1px solid var(--border);
border-radius: 4px; text-align: center; min-width: 0;
}
.blueprint-node-step { font-family: var(--mono); font-size: 9px; color: var(--accent); font-weight: 600; }
.blueprint-node-label { font-size: 11px; font-weight: 500; color: var(--fg); }
.blueprint-node-end { border-color: var(--accent); }
.blueprint-connector {
width: 12px; min-width: 12px; height: 1px;
background: var(--border); flex-shrink: 0;
}
.blueprint-line-of-interaction,
.blueprint-line-of-visibility,
.blueprint-line-of-support {
border-top: 1px dashed var(--border);
padding: 4px 0; text-align: right;
}
.blueprint-line-of-interaction span,
.blueprint-line-of-visibility span,
.blueprint-line-of-support span {
font-size: 9px; font-family: var(--mono);
text-transform: uppercase; letter-spacing: 0.06em;
color: var(--fg-muted); opacity: 0.5;
}
.blueprint-lane-services { display: flex; gap: var(--s2); flex-wrap: wrap; }
.blueprint-service {
padding: var(--s2) var(--s3);
background: var(--bg); border: 1px solid var(--border);
border-radius: 4px; flex: 1; min-width: 80px;
}
.blueprint-service-name { font-size: 11px; font-weight: 600; color: var(--fg); }
.blueprint-service-detail { font-size: 10px; color: var(--fg-muted); margin-top: 1px; }
.blueprint-service-infra { background: transparent; border-style: dashed; }
.blueprint-lane-backstage { opacity: 0.85; }
.blueprint-lane-support { opacity: 0.6; }

Structure template — fill with the real blueprint:

html
<div class="visual-diagram">
<div class="visual-label">Service Blueprint: [NAME]</div>
<!-- Frontstage lane(s). Use one per actor (e.g., Seller + Buyer). -->
<div class="blueprint-lane">
<div class="blueprint-lane-label">
<span class="blueprint-lane-title">Frontstage</span>
<span class="blueprint-lane-sub">[ACTOR]</span>
</div>
<div class="blueprint-lane-nodes">
<div class="blueprint-node">
<div class="blueprint-node-step">1</div>
<div class="blueprint-node-label">[ACTION]</div>
</div>
<div class="blueprint-connector"></div>
<!-- ... more nodes + connectors ... -->
<div class="blueprint-node blueprint-node-end">
<div class="blueprint-node-step">N</div>
<div class="blueprint-node-label">[FINAL ACTION]</div>
</div>
</div>
</div>
<!-- Line of interaction: between frontstage and frontstage (multi-actor)
OR between frontstage and backstage. -->
<div class="blueprint-line-of-interaction"><span>Line of interaction</span></div>
<!-- Additional frontstage lanes if needed. -->
<!-- Line of visibility: separates frontstage from backstage. -->
<div class="blueprint-line-of-visibility"><span>Line of visibility</span></div>
<!-- Backstage lane: services that produce the user experience but aren't user-facing. -->
<div class="blueprint-lane blueprint-lane-backstage">
<div class="blueprint-lane-label">
<span class="blueprint-lane-title">Backstage</span>
</div>
<div class="blueprint-lane-nodes blueprint-lane-services">
<div class="blueprint-service">
<div class="blueprint-service-name">[SERVICE]</div>
<div class="blueprint-service-detail">[ROLE]</div>
</div>
<!-- ... more services ... -->
</div>
</div>
<!-- Line of support: separates backstage from infrastructure tier. -->
<div class="blueprint-line-of-support"><span>Line of support</span></div>
<!-- Support tier: infrastructure with dashed borders, more muted. -->
<div class="blueprint-lane blueprint-lane-support">
<div class="blueprint-lane-label">
<span class="blueprint-lane-title">Support</span>
</div>
<div class="blueprint-lane-nodes blueprint-lane-services">
<div class="blueprint-service blueprint-service-infra">
<div class="blueprint-service-name">[INFRA SERVICE]</div>
</div>
<!-- ... more infra ... -->
</div>
</div>
</div>

Rules:

  • Always wrap in .visual-diagram with a .visual-label caption.
  • Three opacity tiers: frontstage 1.0, backstage 0.85, support 0.6 — applied via blueprint-lane-backstage and blueprint-lane-support classes. This is the visual hierarchy of "what users see → what produces the experience → what enables it."
  • Lines of interaction/visibility/support are 1px dashed dividers with right-aligned mono caption.
  • Backstage services use solid borders; support-tier services use blueprint-service-infra (dashed border, transparent bg).
  • End node uses blueprint-node-end (accent border).
  • Don't invent class names — copy verbatim. Class consistency is how skills stay aligned.
  • Both ramps always ship. A standalone artifact carries no data-theme and follows the OS. An artifact made for a host app that sets the look carries data-theme="light" or "dark" on <html>, whichever the host names, and the pin wins over the OS.
  • Self-contained: no external <link> to fonts or CSS, no JS.
  • The page carries no account of how it was made and no first person; a key to its lanes and marks is written in the work's own words.
Figma output

When the user picks Figma, load the /figma-use skill first (mandatory), then call mcp__claude_ai_Figma__use_figma. Translate blueprint patterns to Figma equivalents:

This is the start of the file. Read the full SKILL.md on GitHub.

Security

  • Security scanPassed, 100 of 100Pattern checks on the skill's files.
  • Model reviewNot runA model review is scheduled for the next rescan.

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
97
Repository forks
8
7-day trend score
23

Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 25 May 2026, 5 months ago.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/ghaida/intent/blueprint/badge)](https://verified-skill.com/skills/ghaida/intent/blueprint)

Something wrong with this skill or its page? Tell us.