spec-review

A pre-coding review process for design documents and feature proposals in the microsoft/winappcli repository. It uses several independent reviews of the real codebase, Windows tools, APIs, and surrounding ecosystem before recommending whether and how to build something.

In plain words
What is it for?
Use it to review a specification, design, proposal, or feature idea before writing code.
Why use it?
It helps catch unnecessary features, incorrect assumptions, and unsuitable approaches before implementation begins. The result is a single recommendation focused on the decision and its scope.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/microsoft/winappcli/spec-review
Any agent
npx skills add microsoft/winappCli --skill spec-review
Clone the repo
git clone --depth 1 https://github.com/microsoft/winappCli

Made for: Claude Code, Codex.

Per session 194 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,879 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00194 $0.03879
Opus 5 $0.00097 $0.01939
Sonnet 5 $0.00039 $0.00776
Haiku 4.5 $0.00019 $0.00388

Measured yesterday against content hash 9ebd9ff19a2b, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

spec-review scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.github/skills/spec-review/SKILL.md · 303 lines

How it starts

The opening of the file, as written. The whole thing — 303 lines — stays where its author put it; the contents beside it link to each section on GitHub.

You are the Spec Review orchestrator for the microsoft/winappcli repo. Your job is to help a contributor answer, before they write code: should we build this, and is the approach right? You do that by fanning out parallel sub-agents — each conducting its own independent research against reality (the real codebase, the Windows SDK tools, Windows APIs, the ecosystem) rather than trusting the spec's claims — and consolidating their judgments into a single decision-oriented recommendation.

This is the pre-code companion to the pr-review skill. pr-review reviews code that is already written. spec-review owns necessity and scope by default before implementation; pr-review reopens those questions only when the code reveals unexpected cost, overengineering, or review-driven creep. If the work is already implemented, use pr-review.

When to activate

Trigger phrases include:

  • "review this spec" / "review my spec" / "review this design doc"
  • "review my design" / "design review"
  • "validate this approach" / "is this approach right"
  • "should we build this" / "is this worth building"
  • "spec review" / "feature review" (at the proposal stage)
  • "vet this proposal before I start coding"

Do not activate when:

  • The code already exists and the user wants it reviewed → that's pr-review.
  • The question is narrow ("is this API name good?", "which option should I add?") → answer directly, no fan-out.

Two mandatory principles (inherited from pr-review, retargeted)

  1. Independent research against reality is required — prefer a cheap experiment over a code-read for anything mechanical. Every sub-agent must verify the spec's load-bearing claims against the actual code / tools / APIs / build / ecosystem — never accept a claim because the spec asserts it. When a claim is mechanical (how a tool behaves, what an API returns, a command's flag/precedence semantics, a file or artifact format, whether a build step works), the strongest evidence is to run a cheap, scoped experiment — e.g. invoke the real tool and inspect its actual output, or build a throwaway project in a temp directory to confirm the mechanic — rather than reason from a code-read alone. A spec assertion is never its own evidence. Verifying and finding the claim holds is a valid result; so is finding it false.
  2. No quotas — a clean result is a valid result. There is no expectation of finding problems. A well-researched "the approach is sound, proceed" is a complete, valuable outcome. Never manufacture concerns to have something to say. Padded findings bury the real signal and are treated as a failure of the review.

Read the full file on GitHub · 303 lines

Files

What ships with it

7 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday First seen · 303 lines · 194 tokens per session scan A 9ebd9ff19a2b

Subscribe to this mod's changes

spec-review is a skill published in the GitHub repository microsoft/winappCli (1,205 stars, last pushed 3d ago), licensed MIT. It adds 194 tokens to every session and 3,879 once invoked, about $0.0010 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

chat-pet-sprite-creation

Use when creating or changing VS Code chat pet sprite art, sprite sheets, state animations, eye treatments, Stable/Insiders variants, or pet transitions under src/vs/workbench/contrib/chat/browser/widget/media/chatPet.

microsoft/vscode · 53 tokens

heap-snapshot-analysis

Analyze V8 heap snapshots to investigate memory leaks and retention issues. Use when given .heapsnapshot files, asked to compare before/after snapshots, asked to find what retains objects, or investigating why objects survive GC. Provides snapshot parsing, comparison, retainer-path helpers, and scratchpad scripts.

microsoft/vscode · 65 tokens

integrated-browser

Use this when working on the VS Code integrated browser ("browserView") to understand its architecture and mental model. Covers the embedded Chromium browser, its editor tab, navigation, overlay/layout, sessions, and agent browser tools under src/vs/platform/browserView and src/vs/workbench/contrib/browserView.

microsoft/vscode · 68 tokens

tool-rename-deprecation

Ensure renamed built-in tool references preserve backward compatibility. Use when renaming a toolReferenceName, tool set referenceName, or any tool identifier. Run on ANY change to tool registration code. Covers legacyToolReferenceFullNames for tools and legacyFullNames for tool sets.

microsoft/vscode · 60 tokens

memory-leak-audit

Audit code for memory leaks and disposable issues. Use when reviewing event listeners, DOM handlers, lifecycle callbacks, or fixing leak reports. Covers addDisposableListener, Event.once, MutableDisposable, DisposableStore, and onWillDispose patterns.

microsoft/vscode · 52 tokens

electron-node-upgrade

Guide for performing Node.js version upgrades in the Electron project. Use when working on the roller/node/main branch to fix patch conflicts during e sync --3. Covers the patch application workflow, conflict resolution, analyzing upstream Node.js changes, building, running the Node.js test suite, and proper commit…

electron/electron · 69 tokens