Blueprint logo

Blueprint

Community
GadaaLabs
blueprint

Use when you have a spec or requirements for a multi-step task, before touching code

Overview

PublisherGadaaLabs
Repositoryclaude-code-on-steroids
Skill nameblueprint
Stars
67
Forks
10
Bundled files
1
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 1 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by GadaaLabs on GitHub. Read the source before you install it.

Installation

Install the Blueprint AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/GadaaLabs/claude-code-on-steroids.git /tmp/claude-code-on-steroids
mkdir -p .claude/skills
cp -r /tmp/claude-code-on-steroids/skills/blueprint .claude/skills/blueprint
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Blueprint in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Blueprint on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Blueprint is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Writing Plans

Overview

BLUEPRINTA blueprint is the precise, buildable plan that follows the architect's vision. When invoked: translates an approved design spec into step-by-step implementation tasks — which files to touch, what code to write, how to test it, when to commit. Zero ambiguity for the engineer executing the plan.

Write comprehensive implementation plans assuming the engineer has zero context for our codebase and questionable taste. Document everything they need to know: which files to touch for each task, code, testing, docs they might need to check, how to test it. Give them the whole plan as bite-sized tasks. DRY. YAGNI. TDD. Frequent commits.

Assume they are a skilled developer, but know almost nothing about our toolset or problem domain. Assume they don't know good test design very well.

Announce at start: "Running BLUEPRINT to create the implementation plan."

Context: This should be run in a dedicated worktree (created by architect skill).

Save plans to: docs/superpowers/plans/YYYY-MM-DD-<feature-name>.md

  • (User preferences for plan location override this default)

Phase 0: Documentation Discovery (MANDATORY)

Before mapping files or writing a single task, verify that every API, library method, and framework feature referenced in the spec actually exists.

This is the most common source of plan failure: tasks that reference library.method() that doesn't exist, parameters that were deprecated, or internal utilities at wrong paths. A plan built on phantom APIs fails at execution time, not at review time.

Discovery Checklist

For each external dependency in the spec:

  • Confirm the package is in package.json / pyproject.toml / go.mod
  • Confirm the method/class name in docs or source (not assumed from memory)
  • Confirm the import path (barrel re-exports, named vs default, casing)

For each internal utility referenced:

  • Verify the file path exists
  • Verify the function/type is exported (grep the file)
  • Verify the parameter signature matches what the plan will use

Anti-Patterns — Stop Planning If You Encounter These

  • "We'll figure out the exact API when implementing" → find the API now
  • Referencing library.method() without verifying it in docs → look it up
  • Using an internal function without grepping for its actual name → grep first
  • Planning around a feature from memory without confirming it's in this version → check

If a Required API Doesn't Exist

Options in order:

  1. Find the correct API that does what the spec needs
  2. Plan an implementation of the missing utility as a prerequisite task
  3. Flag the spec gap to the user before writing the plan

Never plan around a phantom API and hope the implementer figures it out.


Scope Check

If the spec covers multiple independent subsystems, it should have been broken into sub-project specs during brainstorming. If it wasn't, suggest breaking this into separate plans — one per subsystem. Each plan should produce working, testable software on its own.

File Structure

Before defining tasks, map out which files will be created or modified and what each one is responsible for. This is where decomposition decisions get locked in.

  • Design units with clear boundaries and well-defined interfaces. Each file should have one clear responsibility.
  • You reason best about code you can hold in context at once, and your edits are more reliable when files are focused. Prefer smaller, focused files over large ones that do too much.
  • Files that change together should live together. Split by responsibility, not by technical layer.
  • In existing codebases, follow established patterns. If the codebase uses large files, don't unilaterally restructure - but if a file you're modifying has grown unwieldy, including a split in the plan is reasonable.

This structure informs the task decomposition. Each task should produce self-contained changes that make sense independently.

Bite-Sized Task Granularity

Each step is one action (2-5 minutes):

  • "Write the failing test" - step
  • "Run it to make sure it fails" - step
  • "Implement the minimal code to make the test pass" - step
  • "Run the tests and make sure they pass" - step
  • "Commit" - step

Plan Document Header

Every plan MUST start with this header:

markdown
# [Feature Name] Implementation Plan

> **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:phantom (recommended) or superpowers:exodus to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking.

**Goal:** [One sentence describing what this builds]

**Architecture:** [2-3 sentences about approach]

**Tech Stack:** [Key technologies/libraries]

---

Task Structure

markdown
### Task N: [Component Name]

**Files:**
- Create: `exact/path/to/file.py`
- Modify: `exact/path/to/existing.py:123-145`
- Test: `tests/exact/path/to/test.py`

- [ ] **Step 1: Write the failing test**

```python
def test_specific_behavior():
    result = function(input)
    assert result == expected
```

- [ ] **Step 2: Run test to verify it fails**

Run: `pytest tests/path/test.py::test_name -v`
Expected: FAIL with "function not defined"

- [ ] **Step 3: Write minimal implementation**

```python
def function(input):
    return expected
```

- [ ] **Step 4: Run test to verify it passes**

Run: `pytest tests/path/test.py::test_name -v`
Expected: PASS

- [ ] **Step 5: Commit**

```bash
git add tests/path/test.py src/path/file.py
git commit -m "feat: add specific feature"
```

No Placeholders

Every step must contain the actual content an engineer needs. These are plan failures — never write them:

  • "TBD", "TODO", "implement later", "fill in details"
  • "Add appropriate error handling" / "add validation" / "handle edge cases"
  • "Write tests for the above" (without actual test code)
  • "Similar to Task N" (repeat the code — the engineer may be reading tasks out of order)
  • Steps that describe what to do without showing how (code blocks required for code steps)
  • References to types, functions, or methods not defined in any task

Remember

  • Exact file paths always
  • Complete code in every step — if a step changes code, show the code
  • Exact commands with expected output
  • DRY, YAGNI, TDD, frequent commits

Self-Review

After writing the complete plan, look at the spec with fresh eyes and check the plan against it. This is a checklist you run yourself — not a subagent dispatch.

1. Spec coverage: Skim each section/requirement in the spec. Can you point to a task that implements it? List any gaps.

2. Placeholder scan: Search your plan for red flags — any of the patterns from the "No Placeholders" section above. Fix them.

3. Type consistency: Do the types, method signatures, and property names you used in later tasks match what you defined in earlier tasks? A function called clearLayers() in Task 3 but clearFullLayers() in Task 7 is a bug.

If you find issues, fix them inline. No need to re-review — just fix and move on. If you find a spec requirement with no task, add the task.

SPARC Methodology (Required when complexity ≥ 8 or security/architecture tasks)

For complex implementations, structure the plan using SPARC phases — especially useful when requirements need clarification before coding starts.

SPARC = Specification → Pseudocode → Architecture → Refinement → Coding

SPARC is REQUIRED (not optional) when ANY of:

  • Task complexity score ≥ 8 (from oracle)
  • Security-critical code (auth, crypto, payments)
  • Architecture decisions (system design)
  • Cross-system integrations
  • Task has been attempted before and failed

SPARC is optional (skip to Phase 5) when:

  • Complexity ≤ 7
  • Clear requirements already exist
  • Similar task was done before (patterns found)

SPARC Plan Header:

markdown
# [Feature] Implementation Plan — SPARC Structure

## Phase 1: Specification
- [ ] Document exact inputs, outputs, constraints
- [ ] Define success criteria (measurable)
- [ ] List edge cases and failure modes
- [ ] Confirm with user before proceeding

## Phase 2: Pseudocode
- [ ] Write algorithm in plain language
- [ ] Identify data structures needed
- [ ] Mark decision points and conditionals
- [ ] Review for logical correctness (no code yet)

## Phase 3: Architecture
- [ ] Define file structure and module boundaries
- [ ] Define interfaces/types/contracts
- [ ] Choose libraries/patterns
- [ ] Note what changes existing files

## Phase 4: Refinement
- [ ] Add error handling to pseudocode
- [ ] Add performance considerations
- [ ] Add security review
- [ ] Finalize before coding

## Phase 5: Coding (Tasks)
[Standard task structure from here — TDD steps, exact code, commits]

Gate rule: Each SPARC phase is a checkpoint. Do not advance without completing the current phase. For simple plans (<3 files), skip directly to Phase 5 (standard task structure).


Execution Handoff

After saving the plan, offer execution choice:

"Plan complete and saved to docs/superpowers/plans/<filename>.md. Two execution options:

1. Subagent-Driven (recommended) - I dispatch a fresh subagent per task, review between tasks, fast iteration

2. Inline Execution - Execute tasks in this session using exodus, batch execution with checkpoints

Which approach?"

If Subagent-Driven chosen:

  • REQUIRED SUB-SKILL: Use superpowers:phantom
  • Fresh subagent per task + two-stage review

If Inline Execution chosen:

  • REQUIRED SUB-SKILL: Use superpowers:exodus
  • Batch execution with checkpoints for review

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Blueprint AI skill do?

Use when you have a spec or requirements for a multi-step task, before touching code

Why use Blueprint on TypingMind?

Because you install it once and use it with any model. Blueprint is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Blueprint in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/GadaaLabs/claude-code-on-steroids/tree/main/skills/blueprint. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Blueprint?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Blueprint?

As many as you like. As long as a model supports skills, you can use Blueprint with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Blueprint AI skill free?

It is published on GitHub by GadaaLabs. Check the repository for licensing terms. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇