From code
Project-level scope analysis for evaluating whether a project has exceeded its useful boundaries, needs splitting, or is experiencing scope creep. Use when evaluating project structure, considering whether to split a project, assessing feature belonging, or when projects feel too large or unfocused during brainstorm, scope, or architecture review. Covers cohesion test at project level, feature belonging assessment, scope creep detection, split-vs-keep decision framework, and safe splitting patterns.
npx claudepluginhub smileynet/line-cook --plugin code-spiceThis skill uses the workspace's default tool permissions.
Run this during architecture review or when scope feels unclear:
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
Run this during architecture review or when scope feels unclear:
utils/, helpers/, or common/ smaller than any domain folder?If 3+ items fail: The project may have outgrown its boundaries. Run the split-vs-keep framework below.
| Question | Belongs | Doesn't Belong |
|---|---|---|
| Who uses it? | Same users as existing features | Different user group entirely |
| When does it change? | Same triggers as the core product | Independent triggers, different release cycle |
| How is it deployed? | Same deployment artifact and cadence | Needs separate scaling, uptime, or infrastructure |
| What data does it use? | Same domain entities | Different data domain with minimal overlap |
| Who maintains it? | Same team with shared context | Different team or skill set required |
If 3+ answers land in "Doesn't Belong": The feature is a candidate for extraction.
Describe your project's purpose in a single sentence. If the sentence contains "and" connecting unrelated capabilities, that conjunction is a potential split point. Related capabilities often belong together — the question is whether they share users, data, and deployment needs.
Scope creep follows a predictable progression:
Each phase transition feels small. Monitor for transitions and make conscious decisions about whether to accept them.
| Metric | Healthy | Warning | Critical |
|---|---|---|---|
| Utils/helpers ratio | <10% of codebase | 10-25% | >25% — domain boundaries unclear |
| Cross-feature dependencies | Rare, well-defined interfaces | Growing, some circular | Pervasive — features can't change independently |
| New developer productivity | Productive in days | Productive in weeks | Months before meaningful contributions |
| Unrelated issue coupling | Issues affect one feature | Issues span 2-3 features | Most issues touch 4+ features |
Are different teams blocked by shared codebase?
├── Yes → Split along team boundaries (Conway's Law)
└── No
Does the project need different scaling for different features?
├── Yes → Extract the differently-scaled component
└── No
Are cascading failures affecting unrelated features?
├── Yes → Split to isolate failure domains
└── No
Is onboarding time growing beyond acceptable?
├── Yes → Consider splitting, but check if better
│ internal organization helps first
└── No → Don't split. Improve internal boundaries instead.
| Your situation | Recommendation |
|---|---|
| One team, features cohesive, shared data | Don't split — improve internal organization |
| One team, features diverging, shared deployment | Internal boundaries — modules or packages, not projects |
| Multiple teams, shared codebase friction | Split along team boundaries — Conway's Law |
| Independent scaling needs | Extract the bottleneck — Strangler Fig pattern |
| Cascading failures across features | Isolate failure domains — split for resilience |
| "It's getting big" but no measured pain | Don't split — size alone is not a reason |
| Indicator | Natural Growth | Scope Creep |
|---|---|---|
| User request | From primary audience | From a different user group |
| Domain fit | Same business domain | Adjacent or unrelated domain |
| Data model | Uses existing entities | Requires new, unrelated entities |
| Team expertise | Existing team can build it | Requires different skill set |
| Deployment | Ships with existing cadence | Needs different infrastructure |