Ambitious Problem Framework
Inspired by GSD (Get Shit Done) — a spec-driven development system for AI coding agents.
The Loop
Understand → Spike → Discuss → Plan → Execute → Verify → Ship
| Phase | GSD Skill | What you do | Goal |
|---|---|---|---|
| Understand | /gsd-map-codebase |
Read ticket, Figma, linked issues. Explore closest existing feature. Map what you can reuse. | Can explain the full scope in 2 minutes without notes. |
| Spike | /gsd-discuss-phase |
List assumptions. Prototype or read source to validate each unknown. | Zero unknowns. Every technical approach validated and feasible. |
| Discuss | /gsd-discuss-phase |
Ask Claude to challenge your approach. Debate gray areas. Lock in decisions. | No gray areas. Every decision logged with rationale. |
| Plan | /gsd-plan-phase |
Break into 3-6 small tasks ordered by dependency. One commit each. | Ordered task list anyone could follow. |
| Execute | /gsd-execute-phase |
One task at a time, fresh context each time. Commit after each. | All tasks done with clean commit history. |
| Verify | /gsd-verify-work |
Walk acceptance criteria line by line. Check every state: happy, empty, error, loading. | Every acceptance criterion passes. |
| Ship | /gsd-ship |
PR with Jira link, screenshot/video, callouts for reviewers. | PR merged. |
Core concepts from GSD
Context rot — AI quality degrades as the context window fills. Do heavy work in fresh contexts, not one long session.
Decisions before code — Every gray area decided before a single line is written. The discuss phase captures what the roadmap can’t.
Parallel fresh agents — Each task runs in its own clean context with only what it needs. Your main session stays light.
Structured memory — Artifacts (PROJECT.md, REQUIREMENTS.md, STATE.md) survive across sessions so nothing is lost.
Verify, don’t trust — Code that runs isn’t code that works. Dedicated verification catches what execution misses.
What to focus on
Understand
Read the ticket, Figma, linked issues. Then read the closest existing feature end-to-end. Ask: what can I reuse? Exit when you can explain the scope in 2 minutes without notes.
Spike
List every assumption. For each one: read the source, write a throwaway test, or check if someone already solved it. Only spike real unknowns — skip things you’re 90% sure about.
Discuss
For every gray area, pick one approach and write down why. Output is a decisions table — gray area, decision, rationale. No ambiguity left after this step.
Plan
Split into 3-6 small tasks ordered by dependency. Lowest-dependency piece first. Each task = one commit that compiles and doesn’t break anything.
Execute
One task at a time, fresh context each time. Don’t let the AI carry stale context from earlier tasks. Commit after each.
Verify
Walk acceptance criteria line by line. Check: happy path, empty state, error state, loading state, null values. If something fails, fix before moving on.
Ship
PR with Jira link, screenshot/video, and callouts for reviewers. Done.
“The complexity is in the system, not in your workflow.” — TACHES