ワンクリックで
martinizing
Roger Martin strategic alignment audit for code investment decisions.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Roger Martin strategic alignment audit for code investment decisions.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Batch-verify and delete dead code: rg-confirm zero callers for N symbols, delete files, run the build once, stage results.
Run benchmarks and check regressions, add benchmark gating to CI, or audit GitHub Actions workflows. Determines mode from user intent.
Batch-apply findings from the most recent --local review. One confirmation, one test run.
Orchestrated code review of git diff using parallel agents. Standard mode (diff-scoped) or full mode (adds Roslyn semantic analysis). Produces severity-grouped plan.
Unified code review: --local (diff review), --pr (adversarial PR review), --apply (batch fixes from last review).
Audit .NET solution health across 13 dimensions: dependency graph, solution sync, CPM compliance, package health, framework consistency, IVT & encapsulation, build config, analyzer config, NuGet config, suppression hygiene, output type & AOT, public API surface, and lock files & pruning. Works with any .NET solution (.slnx or .sln). Parses all config files once, spawns 3 parallel agents, and produces a severity-grouped report with a Mermaid dependency graph. Triggers on: solution audit, audit solution, project graph, dependency audit, solution health, audit projects, check solution.
| name | martinizing |
| description | Roger Martin strategic alignment audit for code investment decisions. |
| when_to_use | martinize, martinizing, strategic audit, roger martin, code as strategy, strategy review, investment mismatch, capability analysis, strategic alignment, where should I invest, feature gap analysis, what's table stakes. |
| argument-hint | <repo-path> |
| allowed-tools | Read, Glob, Grep, Bash, Agent |
Reads the code as strategy — interprets investment levels, architecture, and capability chains as a set of revealed strategic bets, surfacing choices, investment mismatches, and capability gaps through Roger Martin's lens. Unlike a technical-recommendations audit, it never checks code against per-skill rules.
For the full finding category definitions, Phase 3 agent prompt template, and Phase 4 report format, see references/scoring-rubric.md.
/martinizing # Audit current working directory
/martinizing ./src # Audit specific path
/martinizing /path/to/repo # Audit any repo
/martinizing --resume # Resume from last checkpoint in .claude/tmp/martinizing/state.md
One optional argument: the code path to audit. Defaults to current working directory.
This skill audits code only — it does not read or modify documentation files.
{YYYY-MM-DD}-{repo-slug}.md. These are permanent project memory — not deleted with .claude/tmp/martinizing/.Before doing anything else, check for an in-progress run:
[ -f .claude/tmp/martinizing/state.md ] && cat .claude/tmp/martinizing/state.md
If state.md exists, read it to determine which phases are DONE, skip them, and load
referenced intermediate files:
DONE, load strategic profile from .claude/tmp/martinizing/strategic-profile.mdDONE, load merged findings from .claude/tmp/martinizing/findings.mdIf state.md does not exist, start fresh: mkdir -p .claude/tmp/martinizing
Set the report output path:
REPORT_PATH="plans/martinizing-$(scripts/ts.sh | cut -dT -f1).md"
Append after each phase completes:
- Phase 1 (Discover): DONE — {N files, key language/framework}- Phase 2 (Strategy): DONE — {N differentiators → strategic-profile.md}; write strategic profile to .claude/tmp/martinizing/strategic-profile.md- Phase 2a (Classify): DONE — {N strategic, M imperative}- Phase 3 (Audit): DONE — {N findings across N agents → findings.md}; write merged agent findings to .claude/tmp/martinizing/findings.md- Phase 4 (Synthesize): DONE — report written to $REPORT_PATH- Phase 4.5 (Lode): DONE — strategic profile written to lode/strategy/{date}-{repo-slug}.mdCleanup: Delete .claude/tmp/martinizing/ when Phase 5 completes. Lode output at lode/strategy/ is not deleted — it is permanent project memory.
Run bash directly — file counts by language (fd -e cs src/ | wc -l), key modules (ls src/), project structure (fd -e csproj src/ --max-depth 2).
Synthesize under 20 lines: Languages, Frameworks, key src/ dirs, entry points, test projects, namespaces. Don't read documentation files.
Step 2-pre: Dead capability scan (Roslyn MCP)
Before launching the Explore agent, run mcp__cwm-roslyn-navigator__find_dead_code scoped to <repo-path>/src/ to get a list of public types/members with zero call sites. Record as DEAD_CAPABILITY candidates. Pass the symbol list into the Explore agent as Q4 context. If the Roslyn navigator MCP is unavailable, fall back to scripts/find.sh --callers spot-checks on suspect public types.
Scoping: point at the audited
src/path, not the solution root — test helpers produce false positives.
Launch an Explore agent to answer the Strategy Choice Cascade — five questions, each constraining the next. Full framework detail (per-question tests, code-evidence mapping, AI Strategy Cascade): references/cascade.md. Brief the agent on all five; the code-evidence-to-question mapping is in the rubric's § Audit Framework table.
STRATEGIC_CONFUSION if nothing de-prioritized)DEPENDENCY_LEVERAGE) and WWHTBT.BARNACLE)? Is there portfolio governance?Output: Strategic profile structured as the 5 Cascade answers, plus: dead capabilities list, WTP dimensions, dependency leverage risks, WWHTBT conditions for the primary WTP/HTW, keystone capability identification.
Cascade coherence check (after populating all 5): verify each level coheres with the one above. Flag STRATEGIC_CONFUSION when adjacent levels contradict. See references/scoring-rubric.md § Cascading Coherence Test.
Plan vs. Strategy check: Does the cascade describe a coherent bet on customer action, or is it a list of funded initiatives with no unifying competitive logic? If the latter, note in the strategic profile that the codebase reveals a plan, not a strategy, per Martin's "A Plan Is Not a Strategy" distinction.
Apply the "not stupid on its face" test to each revealed differentiator to classify as Strategic differentiator vs Operating imperative. See references/scoring-rubric.md for the classification rubric.
After individual classification, run the "playing both sides" check: do any pair of
differentiators signal conflicting competitive positions (cost leadership signals alongside
premium differentiation signals)? Flag as STRATEGIC_CONFUSION if found — pursuing both
simultaneously produces mediocrity on both dimensions. See rubric for the signal table.
Launch parallel Explore agents (max 6, one per architectural concern):
For the full agent prompt template, see references/scoring-rubric.md.
Combine all agent results into a single prioritized report organized by:
Present the strategic profile first so the user sees how the code was interpreted. Full report format in references/scoring-rubric.md.
Write the full report to $REPORT_PATH.
Write the strategic profile to lode/strategy/ using the template in references/lode-template.md. Runs after Phase 4 report, before Phase 5.
Invoke the dev-planning skill with a feature name derived from the primary finding category
(e.g., martinizing-investment-alignment or martinizing-chain-repair). Provide as the
feature description a concise summary of the strategic profile and ranked findings from Phase 4
so dev-planning can research the codebase with full context.
The plan phases should mirror the Phase 4 report structure:
Present the plan to the user. Begin implementation only with approval.
Skill-specific workflow rules (the Martin strategy theory behind these — angst, WWHTBT, plan-vs-strategy, AI cascade, customer orientation — lives in references/cascade.md):
DEAD_CAPABILITY, not "implemented"