avoid-feature-creep
# avoid-feature-creep This Claude Code skill provides a structured decision framework and management rules for preventing unnecessary feature expansion during software development. Use it when evaluating new feature requests, planning MVP scope, managing product backlogs, or when stakeholders propose additional functionality that might delay shipping.
git clone --depth 1 https://github.com/waynesutton/convexskills /tmp/avoid-feature-creep && cp -r /tmp/avoid-feature-creep/skills/avoid-feature-creep ~/.claude/skills/avoid-feature-creepSKILL.md
# Avoid Feature Creep for Agents Stop building features nobody needs. This skill helps you ship products that solve real problems without drowning in unnecessary complexity. Feature creep kills products. It delays launches, burns budgets, exhausts teams, and creates software nobody wants to use. The most successful products do fewer things well. ## The Core Problem Feature creep is the gradual accumulation of features beyond what your product needs to deliver value. It happens slowly, then all at once. **Warning signs you're in trouble:** - Release scope keeps growing without clear user value - You're copying competitor features without validating need - Stakeholders keep adding "just one more thing" - The codebase is getting harder to maintain - Users complain the product is confusing or bloated - You haven't shipped in months **What it costs:** - Development time on features 80% of users never touch - Increased bug surface area - Team burnout and context switching - Delayed time-to-market - Technical debt that compounds - User confusion and abandonment ## Decision Framework Before adding ANY feature, run through this checklist: ``` 1. VALIDATE THE PROBLEM □ Does this solve a real, validated user pain point? □ Have we talked to actual users about this need? □ What evidence supports building this? 2. CHECK ALIGNMENT □ Does this support the core product vision? □ Would this delay our current release? □ What are we NOT building if we build this? 3. MEASURE IMPACT □ How will we know if this feature succeeds? □ What KPIs will change? □ Can we quantify the value (time saved, revenue, retention)? 4. ASSESS COMPLEXITY □ What's the true cost (build + test + maintain + document)? □ Does this add dependencies or technical debt? □ Can we ship a simpler version first? 5. FINAL GUT CHECK □ Would we delay launch by a month for this feature? □ Is this a differentiator or just table stakes? □ Would removing this harm the core experience? ``` If you can't answer YES to questions 1-3 with evidence, do not build the feature. ## Scope Management Rules **Rule 1: Define and Defend Your MVP** Write down exactly what "done" means before you start. Document what you're NOT building. Reference this constantly. ```markdown ## MVP Scope Document Template ### Core Problem [One sentence describing the user problem] ### Success Criteria [How we know we've solved it] ### In Scope (v1) - Feature A: [brief description] - Feature B: [brief description] ### Explicitly Out of Scope - Feature X: Deferred to v2 - Feature Y: Will not build unless [condition] - Feature Z: Not our problem to solve ### Non-Negotiables - Ship by [date] - Budget: [hours/dollars] - Core user: [specific persona] ``` **Rule 2: Use Version Control for Scope** Treat scope like code. Track changes. Require approval for additions. ```bash # Create a scope document and track it git add SCOPE.md git commit -m "Initial MVP scope definition" # Any scope changes require explicit commits git commit -m "SCOPE CHANGE: Added feature X - approved by [stakeholder] - impact: +2 weeks" ``` **Rule 3: The 48-Hour Rule** When someone requests a new feature, wait 48 hours before adding it to the backlog. Most "urgent" requests feel less urgent after reflection. **Rule 4: Budget-Based Scoping** Every feature has a cost. When something new comes in, something else must go out. "Yes, we can add that. Which of these three features should we cut to make room?" ## Saying No Saying no to features is a skill. Here are templates: **To stakeholders:** > "That's an interesting idea. Based on our user research, it doesn't solve our core user's top three problems. Let's add it to the v2 consideration list and revisit after we validate the MVP." **To executives:** > "I understand the value this could bring. If we add this, we'll delay launch by [X weeks] and deprioritize [Y feature]. Here are the trade-offs - which path should we take?" **To users:** > "Thanks for the feedback. We're focused on [core problem] right now. I've logged this for future consideration. Can you tell me more about why this would be valuable?" **To yourself:** > "Is this scratching my own itch or solving a real user problem? Would I bet the release date on this?" **To AI agents (Claude, Opus, Codex, Ralph, Cursor):** > "Stop. Before we add this feature, answer: Does this solve the core user problem we defined at the start of this session? If not, add it to a DEFERRED.md file and stay focused on the current scope." When working with AI coding agents: - State your scope constraints at the start of every session - Agents will suggest improvements. Most are out of scope. - Treat agent suggestions like stakeholder requests: apply the 48-hour rule - If an agent keeps pushing a feature, ask "Why?" three times to find the real need ## AI-Specific Guidelines When building AI-powered products, feature creep has extra risks: **AI Feature Creep Red Flags:** - Adding AI because "everyone else is" - Building AI summaries without validating users want them - Multiple AI features without clear differentiation - AI capabilities that don't connect to core user workflows **AI Feature Discipline:** 1. One AI feature at a time 2. Validate the use case with users first 3. Measure actual usage, not just availability 4. Question: "Does the AI make the core task faster or better?" **Before adding any AI feature, answer:** - What specific task does this automate? - How is this better than the non-AI alternative? - What happens when the AI is wrong? - Can we ship without this AI feature? ## Backlog Hygiene A messy backlog enables feature creep. Clean it ruthlessly. **Monthly Backlog Audit:** ``` For each item older than 30 days: 1. Has anyone asked about this since it was added? 2. Does it still align with current product vision? 3. If we never built this, would anyone notice? If the answer to all three is "no" → Delete it. ``` **Priority Frame
Building AI agents with the Convex Agent component including thread management, tool integration, streaming responses, RAG patterns, and workflow orchestration
Guidelines for building production-ready Convex apps covering function organization, query patterns, validation, TypeScript usage, error handling, and the Zen of Convex design philosophy
How to create, structure, and publish self-contained Convex components with proper isolation, exports, and dependency management
Scheduled function patterns for background tasks including interval scheduling, cron expressions, job monitoring, retry strategies, and best practices for long-running tasks
Complete file handling including upload flows, serving files via URL, storing generated files from actions, deletion, and accessing file metadata from system tables
Writing queries, mutations, actions, and HTTP actions with proper argument validation, error handling, internal functions, and runtime considerations
External API integration and webhook handling including HTTP endpoint routing, request/response handling, authentication, CORS configuration, and webhook signature validation
Schema migration strategies for evolving applications including adding new fields, backfilling data, removing deprecated fields, index migrations, and zero-downtime migration patterns