AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Blueprint

skill-duthaho-skillhub-blueprint · by duthaho

>-

No reviews yet
0 installs
34 views
0.0% view→install

Install

$ agentstack add skill-duthaho-skillhub-blueprint

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-duthaho-skillhub-blueprint)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
2mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Blueprint? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

blueprint — architecture the team can read, with receipts

/blueprint — whole-repo architecture doc + top-level mermaid diagram /blueprint — scoped doc + diagram for one area /blueprint refresh — regenerate only what the diff since the stamp touched

Answer one question: what does a person need to see to understand how this code is put together — and can every box and arrow be defended? The documented failure mode of AI-generated architecture docs is confident fiction: diagrams with components that don't exist and arrows nobody can trace. The countermeasure is structural, not stylistic — no edge without a locator, no mermaid the checklist didn't render, no write without a yes.

Step 0 — Scope, and respect what exists

Look before generating:

  • Existing output? Check for docs/blueprint/ and its manifest.md.

The explicit command wins: a scope argument runs SCOPED and /blueprint refresh runs REFRESH regardless. A bare /blueprint with existing output defaults to REFRESH — read the manifest first and jump to the refresh path in Step 5; offer a full regenerate only if the user asks or the manifest looks obsolete. An existing hand-written docs/architecture* file is context to read and link, never to overwrite.

  • Orient cheaply first. Read AGENTS.md/CLAUDE.md/README if present

(the map skill writes the first) — they answer in seconds what fan-out answers in minutes. No AGENTS.md in a large repo? Offer /map first; its output makes this run better and the repo better oriented for every later agent.

  • Size the repo (git ls-files | wc -l, top-level layout) to scale the

fan-out: a small repo graphs in one pass inline; a large or polyglot one gets one Explore agent per area.

  • A scope argument (/blueprint the payment flow) narrows everything to

that module or feature: the graph, the doc, and the diagram cover that area and its direct boundaries — not the whole repo.

State the mode picked (FULL / SCOPED / REFRESH) and why.

Step 1 — Fan out, gather the raw graph

Dispatch read-only Explore sub-agents — grep/glob/read, keyless, no index to go stale — one per area (FULL) or one per boundary (SCOPED). Each agent returns, for its area:

  1. Candidate components — the directories/modules that act as units,

each with its entry file and one line on its job.

  1. Candidate edges — imports, calls, route registrations, queue

producers/consumers, config wiring — each with the file:line where it was seen. An edge the agent "believes" but didn't see is reported as a question, not an edge.

  1. The story — how execution flows through the area, as prose pointing

at files.

Lossless hand-off: each agent writes full findings to out/blueprint/.work/.md and returns a summary; synthesize from the files, not the relay.

Step 2 — The verified graph (before any diagram)

Distill the findings into a node/edge table — the single source of truth everything downstream renders from:

  • Nodes: 5–8 top-level components (≤30 nodes total including

sub-nodes). Each row: stable ID (comp-, survives renames), display name, the real path it lives at, one-line job. A node whose path doesn't exist doesn't enter the table. Utilities/logging don't get boxes — they're noise at this altitude.

  • Edges: each row: from-ID, to-ID, verb ("calls", "imports", "publishes

to"), and the locator — the file:line of the import/call/route that proves it. Before an edge enters the table, grep the claimed locator: the cited line must actually contain the relation. Unverifiable edge → dropped and listed under "unverified candidates" in the work notes — never softened into the diagram.

  • Collapse first. When the table exceeds the caps, roll nodes up to

their parent component rather than shrinking the boxes — a hairball communicates nothing (the decade-long lesson of every dependency-graph tool). Scoped runs may drill one level deeper per component page.

Step 3 — Render the diagram (never freehand)

Read references/mermaid-checklist.md now and follow it exactly. The rules in brief: the mermaid is rendered mechanically from the table — short IDs from the node rows, quoted labels, no raw parentheses/brackets in label text, click links to each node's real path, flowchart TD, size caps honored. The LLM never composes mermaid prose-first; two independent projects (gitdiagram, deepwiki-open) proved prompt rules alone don't stop syntax breakage — structure does.

Validate before it ships: re-parse the output against the checklist's failure list. On a broken render, repair with max 3 attempts, each fixing only the itemized issues — then degrade to a simpler diagram (fewer nodes, no subgraphs) rather than attempt a fourth. A plain diagram that renders beats a rich one that doesn't.

Step 4 — Write the docs (grounded prose)

Read references/output-template.md now for the exact layout. The doc set: docs/blueprint/README.md (overview + top-level diagram), one .md per drill-down (SCOPED runs and large components), and manifest.md (the node table + stamp). Prose rules, non-negotiable:

  • Every section ends with Sources: :-, … — the

files the section was written from. A section that can't cite sources gets rewritten from files it can cite, or cut.

  • Verb-first, no filler. "Routes payments to the gateway

(src/pay/router.ts:40)" — never "This file is responsible for…". No personas, no marketing adjectives, no claims the code doesn't show.

  • Explain the why where the code can't. The prose earns its place by

saying what a diagram can't: why the boundary sits here, what invariant the arrow protects. Anything a read trivially reveals is cut.

Step 5 — Approve, write, stamp — and refresh

The output lands in the user's repo, so nothing is written without a yes:

  1. Show the full draft in chat — diagram and docs — and invite edits; cuts

count as much as additions.

  1. On approval, write docs/blueprint/, stamping manifest.md with

today's date +%F and the current commit (git rev-parse --short HEAD) — never a guessed date.

  1. Offer, don't perform, the commit.

Auto mode (under autopilot): the draft→approve gate becomes write-and-log, per the run's charter — same as map.

On REFRESH: git diff --name-only ..HEAD, map the changed paths to component IDs via the manifest's node table, and regenerate only the pages and diagram sections those IDs own; re-stamp. Component identity is the stable ID, not the display name — a renamed component updates in place instead of forking a new page. Pages whose components saw no diff are left byte-identical. Changed paths that map to no node (new, moved, or deleted territory) mean the graph itself moved: re-derive the affected part of the node table and regenerate the overview and manifest, not just member pages.

Guardrails

  • No edge without a locator. An arrow nobody can trace to a file:line

is fiction wearing a diagram — dropped, not drawn. (The one habit that separates this from every "AI architecture diagram" complaint thread.)

  • Collapse beats shrink. 5–8 boxes that mean something over 50 that

don't; drill-down pages carry the detail.

  • The table is the diagram's source. Mermaid is rendered from the

verified node/edge table per the checklist — composing it freehand is how syntax errors and invented components get in.

  • Never write or commit unprompted. Draft → approve → write; commit

only on an explicit yes. (Auto mode logs instead of asks, per charter.)

  • Refresh regenerates the minimum. Untouched components keep

byte-identical pages — churn-free diffs are what make the docs re-runnable, and re-runnable is what keeps them alive.

  • Out of scope, on purpose: HTML viewers, CI auto-regeneration,

static-analysis engines, multi-repo, and non-mermaid formats (dot, d2, images) — machinery this repo's axis (keyless, zero-dependency, prose-only) exists to avoid.

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.