Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsBlogPro
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges
  • Chrome Extension
  • Skill Manager

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Mikado

ASecurity

Maps the dependency tree for a refactor before changing code, using the Mikado Method — attempt the goal, revert on breakage, record prerequisites, execute leaves-first. Use when a refactor is likely to cascade into prerequisite changes or touch interdependent modules.

9 stars
0 votes
0 copies
0 views
Added 10/6/2026
developmentgonoderefactoringgitapi

Works with

claude codecliapi

Security Analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned 10/6/2026

$npx -y skills add sunitghub/canon-skills --skill mikado --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Mikado?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Mikado
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/sunitghub-mikado/badge)](https://www.skillsdirectory.com/skills/sunitghub-mikado)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
Files
SKILL.md
---
name: mikado
description: Maps the dependency tree for a refactor before changing code, using the Mikado Method — attempt the goal, revert on breakage, record prerequisites, execute leaves-first. Use when a refactor is likely to cascade into prerequisite changes or touch interdependent modules.
category: dev
tags: [refactoring, planning, dependencies, reversible]
hidden: true
---

# Mikado

Plan a cascading refactor as a dependency graph you discover by *attempting* it, so the tree
stays green at every step and nothing is half-migrated.

## When to Use

- A refactor likely to cascade: renaming or moving a widely-used symbol, extracting a module,
  inverting a dependency, replacing an API many callers touch, splitting a god-object.
- You are not sure what a change will break until you try it.

**Not for:** a self-contained one-file change with no dependents — that is a normal edit, not a
Mikado goal.

## The Method

1. **Set the Mikado Goal.** State the end refactor in one sentence (e.g. "PaymentService no
   longer imports the HTTP layer"). This is the root node.
2. **Attempt it naively.** Make the direct change toward the goal.
3. **Observe breakage.** Build, type-check, and run the tests. Compile errors, failing tests,
   and broken callers are the *prerequisites* the naive change revealed.
4. **If clean** (nothing breaks): the node is a leaf — keep it, mark it done.
5. **If broken:** for each breakage, write a **prerequisite node** — the change that must happen
   *first* — as a child of the current node. Then **revert the naive change immediately**
   (`git checkout -- <files>` / undo). Never leave the tree red between steps.
6. **Recurse.** Each prerequisite becomes a sub-goal; repeat steps 2–5 on it until you reach
   leaves — changes that break nothing on their own.
7. **Execute leaves-first.** Work bottom-up: do the deepest leaves, verify the tree is green
   after each, then move up toward the goal. If a step surprises you with a new breakage, add a
   new prerequisite node and revert — **do not push through**. The graph grows; the tree stays green.

The goal change is done *last*, and by then every prerequisite is already in place, so it applies
cleanly.

## The Mikado Graph (durable artifact)

The graph is the plan. Record it in `plan.md` under `## Approach` (or a `## Mikado` subsection).
Root = goal; children = prerequisites; check off leaves-first.

```
Goal: PaymentService no longer imports the HTTP layer
- [ ] Introduce a PaymentGateway interface in the domain
      - [ ] Move the HTTP client behind an adapter implementing PaymentGateway
            - [ ] Extract the request-building helper (leaf — no dependents)
      - [ ] Inject PaymentGateway into PaymentService via constructor
            - [ ] Add a constructor param with a default (leaf)
```

Execution order is deepest-first: the two leaves, then their parents, then the interface, then
the goal. Each checkbox is flipped only after the tree is verified green.

## Rules

- **Always revert on breakage.** A discovered prerequisite is recorded, not forced through.
- **The tree is green between every executed step** — never commit a half-migrated state.
- **The graph is the source of truth** for the change order; keep it in `plan.md`.
- Prefer many small reversible leaves over one large risky change.

## Boundaries

Mikado is a **planning aid only**. It produces the reversible change path and the graph; it
**touches no close gate**. Risk tiers and the sprint reviewer/evaluator gates are unchanged —
mikado decides *what order to change things in*, never *what verification runs*.

Inside a canon refactor sprint, run mikado during orient/plan and log the graph in `plan.md`.
It is also invokable standalone, outside a sprint, to produce a change plan.

## Triggers

| Agent | How to trigger |
|---|---|
| Claude Code | `/mikado <refactor goal>` |
| Codex / Pi | "Plan this refactor with mikado" / "Map the dependencies for <goal>" |

Attribution

sunitghubsunitghub
View sourceSee grades on GitHubMore from sunitghub →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Clean Code

Pragmatic coding standards - concise, direct, no over-engineering, no unnecessary comments

304955 votes

Browser Extension Developer

Use this skill when developing or maintaining browser extension code in the `browser/` directory, including Chrome/Firefox/Edge compatibility, content scripts, background scripts, or i18n updates.

286712 votes

Seo Optimizer

SEO optimization with keyword analysis, readability assessment, technical validation, content quality. Use for search rankings, blog posts, content audits, or encountering keyword density, readability scores, meta tags, schema markup errors.

2222 votes

Google Official Seo Guide

Official Google SEO guide covering search optimization, best practices, Search Console, crawling, indexing, and improving website search visibility based on official Google documentation

1862 votes

Writing Plans

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

2927051 votes
View all in development →