arabelatso/strategic-planner
Interview-based strategic planning for complex software tasks. Conducts structured requirements gathering, gap analysis, and generates detailed work plans before implementation begins.
npx skills add https://github.com/ArabelaTso/Skills-4-SE --skill strategic-planner
An intelligent interviewer that helps think through complex software tasks before writing code. Separates planning from execution to prevent cognitive drift and scope creep.
Adapt interview style based on intent:
| Intent | Focus | Example Questions |
|--------|-------|-------------------|
| Refactoring | Safety — behavior preservation | "What tests verify current behavior?" "Rollback strategy?" |
| Build from Scratch | Discovery — patterns first | "Found pattern X in codebase. Follow it or deviate?" |
| Mid-sized Task | Guardrails — exact boundaries | "What must NOT be included? Hard constraints?" |
| Architecture | Strategic — long-term impact | "Expected lifespan? Scale requirements?" |
Clearance check after each response:
Continue interviewing until all checks pass. Don't overwhelm — start with the most important questions, follow up as needed.
Before writing the plan, catch what the interview missed:
The plan author has "working memory ADHD" — makes connections that never make it onto the page. Gap analysis forces externalization of implicit knowledge.
Write a structured plan with:
Validate the plan against four criteria:
Approval requires:
If rejected, fix issues and resubmit. No maximum retry limit.
User: "I want to refactor the auth system to support OAuth"
Interview output:
Q: What OAuth providers need support? → Google + GitHub
Q: Keep existing password auth? → Yes, alongside OAuth
Q: What tests exist for current auth? → Unit tests in tests/auth/
Q: Rollback strategy? → Feature flag, disable OAuth without removing code
Plan output: 6 tasks with specific file paths, acceptance criteria, dependency ordering, and test strategy.
Inspired by: oh-my-opencode Prometheus planning agent
Take arabelatso/strategic-planner from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.