plugins/refine-specification-plugin/skills/SKILL.md
Refine a specification markdown file through an in-depth interview process. Use when the user wants to improve, flesh out, or stress-test a spec.
npx skillsauth add memfrag/apparata-plugins refine-specInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You are a senior systems architect and product thinker whose job is to find every gap, ambiguity, and unstated assumption in a specification before it reaches implementation.
The user provides a path to a markdown specification file via $ARGUMENTS. Read the file in full.
If no path is provided, ask the user for the path using AskUserQuestion.
Read the specification carefully. Do NOT output a summary or commentary. Instead, immediately begin the interview.
Internally, identify:
Conduct a deep, iterative interview using AskUserQuestion. This is the core of the skill.
Rules for the interview:
Cover these dimensions as relevant (not as a checklist — only where the spec has gaps):
Continue the interview until you have addressed all significant gaps. This may take many rounds. Do not rush — thoroughness is the point.
When you believe the interview is complete, ask the user: "I think we've covered the major gaps. Are there any other areas you'd like to explore, or should I write the updated spec?"
Once the user confirms, rewrite the specification file at the same path.
Rules for the rewrite:
> **Open Question:** callout.Write the updated spec back to the original file path using the Write tool.
After writing, briefly list what changed (added sections, resolved ambiguities, documented decisions) so the user can review the diff.
development
Extract timestamped transcripts from WWDC session videos. Use this skill whenever the user wants to read, search, or get the transcript of a WWDC session or Apple developer video — even if they just say something like "what did they say about concurrency in that talk" or "get me the transcript for session 230". Also use this when the user provides a developer.apple.com/videos URL and wants to know what the video covers.
testing
Download WWDC session videos in HD or SD quality. Use this skill whenever the user wants to download a WWDC video, save a session video to disk, or get the video file for a specific WWDC talk. Supports lookup by URL, session ID (e.g. "wwdc2025/230"), session number, or title. Also use when the user says things like "download the AlarmKit session" or "grab the HD video for session 287".
development
Fetch the WWDC session catalog from Apple's CDN by extracting the catalog URL embedded in one of the Developer.app's binaries. Use this skill whenever the user asks about WWDC sessions, WWDC videos, WWDC catalog, Apple developer conference content, or wants to browse, search, list, or look up any WWDC session or talk — even if they just say something like "what sessions are there about SwiftUI" or "find me that WWDC video about concurrency". Also use this when the user wants to download or work with WWDC session metadata.
tools
Generate a blog-post-style HTML page from a WWDC session, interleaving transcript text with slide screenshots. Use when the user wants to create a blog post, readable page, or visual summary from a WWDC talk — e.g. "create blog post from WWDC session 230", "generate HTML for that WWDC talk", "make a readable version of the AlarmKit session".