global/skills/ferran-plan/SKILL.md
Ferran's project planning protocol. Structured interview to sharpen project direction, define scope, set priorities, and produce documentation + task backlog. Use when starting a new project, redefining direction, or when the user says 'let's plan'. Part of the Ferran series: /ferran-e2e (testing), /ferran-task (task protocol).
npx skillsauth add FerranGuardia/claude-autonomous-setup ferran-planInstall 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.
This is how projects get their shape. Not through brainstorming decks or feature lists, but through structured conversation — the agent asks, the user answers, and clarity emerges. The output is documentation and a task backlog that makes every future session start with "pick the next one and go."
This protocol was born from the realization that the best planning sessions are interviews, not monologues. The user knows what they want but may not have articulated it. The agent's job is to ask the right questions in the right order, listen carefully, and synthesize what emerges into actionable structure.
/ferran-plan — full planning session (interview + documentation + backlog)/ferran-plan review — revisit existing documentation, update priorities, add new tasks/ferran-plan scope [topic] — focused mini-session on a specific area (e.g., "scope avatar system")$ARGUMENTS
NEVER write a plan based on assumptions. Every decision in the documentation must trace back to something the user actually said. If you're not sure, ask. If the answer was vague, probe deeper. The user is the creative director — you are the architect extracting requirements through conversation.
This means:
The interview IS the planning. The documentation is just what you write down afterward.
One question at a time. Do NOT dump 14 questions in a wall of text. Ask one question, wait for the answer, let the user think. Stream of consciousness answers are gold — don't rush them.
Use AskUserQuestion with options when possible. Give the user concrete choices to react to — it's easier to pick or modify than to generate from scratch. Always allow free-text via the "Other" option. But when a question is truly open-ended (feelings, pain points, excitement), use broad options that invite elaboration.
Be opinionated, not neutral. When you have enough context to form a recommendation, STATE IT and ask the user to react. "I think X because Y — does that match your thinking?" is better than "what do you think about X vs Y vs Z?" The user hired you to think, not to present menus.
Follow the question flow. The interview has a deliberate order. Vision before features. Pain before solutions. Excitement before priorities. Don't jump to "what should we build" before understanding "what is this for."
Read the codebase first. Before asking technical questions, explore what exists. Understanding the current state makes your questions sharper and your synthesis more accurate.
Synthesize as you go. After every 2-3 answers, reflect back what you heard. "So what I'm hearing is..." — this catches misunderstandings early and shows the user their thoughts are landing.
The output is documentation, not a chat summary. The deliverables are real files that persist across sessions: vision doc, architecture reference, task backlog, work packages. Not a conversation recap.
The foundation. Everything else builds on this. Do NOT skip to features.
Questions to cover (one at a time):
What does "done" look like? — If this project felt right in 6 months, what would you see? Daily driver, creative outlet, showcase, platform for ideas? Multi-select allowed.
Who/what is this for? — What's the core motivation? Emotional connection, technical exploration, research curiosity, practical utility? Let the user ramble here.
What's the relationship to external systems? — Backend-agnostic or opinionated? Local or cloud? How does this connect to the user's existing tools and workflows?
Only after vision is clear.
What's the current pain? — What breaks, what's slow, what annoys? This reveals real priorities better than any roadmap.
What's the first milestone that would make you say "yes, this is the direction"? — The proof-of-concept moment. What would validate the vision?
Tech stack feelings — Any friction? Anything to swap? Where should new capabilities live architecturally?
How deep should [key system] go? — For each major subsystem, probe whether it should be simple or rich. Adapt this question to the project.
Now that we know the vision and the pain.
What are you MOST EXCITED to build? — Not what's smart — what creates energy. This drives engagement and momentum.
What's missing that would make it feel alive? — The gap between current state and the vision. What capability would transform the experience?
Do you care about extensibility? — Plugins, config, theming, sharing? Is this for the user alone, or should it be easy to extend?
How the user wants to work, not just what they want to build.
How do you want to work on this? — Big sprints vs incremental? Structured work packages vs free-form? How much planning vs building?
What documentation would actually help you? — Vision doc, architecture reference, task backlog, decision records? What do you need to pick up after a break?
Anything to rethink or tear down? — Technical debt, features that missed, architectural regrets. Important to surface before building more on top.
What does the start of a session look like? — Pick from backlog, come with intent, review then decide, depends on the day?
Not every project needs all 14 questions. Adapt based on:
Sometimes the answer is "I don't know yet." That's valid. Mark it as an open question in the documentation and move on. Don't force decisions that aren't ready to be made.
But probe once: "Is this something you want to figure out now, or shelve for later?" Sometimes they just need permission to think out loud.
This is the planning session itself. Use plan mode. Ask one question at a time. Synthesize as you go.
Before starting the interview: explore the codebase to understand current state. Read existing docs, task files, architecture. This context makes your questions sharper.
During the interview: take notes mentally. Watch for:
After the interview (or in parallel if using plan mode agents):
The deliverables. Create ALL of these (adapt paths to the project):
docs/VISION.md)What the project IS, not what it does. Contains:
docs/ARCHITECTURE.md)Where things live. Contains:
{task-dir}/INDEX.md)What to do next. Contains:
{task-dir}/WP-NNN-*.md)One per planned task. Use the format from /ferran-task:
Priority ordering: Work packages are numbered in the order they should be tackled. Dependencies are explicit. The user should be able to open INDEX.md and grab the next pending WP without thinking about ordering.
If the project uses MEMORY.md or CLAUDE.md for persistent context, update it to reflect:
After planning produces work packages, the execution follows /ferran-task protocol:
The planning skill produces the WHAT. The task skill governs the HOW.
/ferran-plan review)For existing projects that need a direction check:
/ferran-plan scope [topic])For drilling into one specific area:
development
# API Test Suite Builder **Tier:** POWERFUL **Category:** Engineering **Domain:** Testing / API Quality --- ## Overview Scans API route definitions across frameworks (Next.js App Router, Express, FastAPI, Django REST) and auto-generates comprehensive test suites covering auth, input validation, error codes, pagination, file uploads, and rate limiting. Outputs ready-to-run test files for Vitest+Supertest (Node) or Pytest+httpx (Python). --- ## Core Capabilities - **Route detection** — scan
development
Use when implementing any feature or bugfix, before writing implementation code
tools
Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.
testing
Application security covering input validation, auth, headers, secrets management, and dependency auditing