home/dot_agents/skills/askmeplan/SKILL.md
Dialogue-driven planning that replaces one-shot plan generation with a Socratic conversation. Instead of producing a complete plan immediately, surface key decision points one round at a time, incorporate the user's answers, and converge on a co-created implementation plan. Use when the user says "/askmeplan", "let's plan together", "ask me before planning", "help me think through", or any request to plan something interactively rather than receiving a ready-made plan. Also use when the request is ambiguous or involves significant trade-offs that require human judgment before implementation can begin.
npx skillsauth add hayatosc/dotfiles askmeplanInstall 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.
Produce plans through structured Socratic dialogue rather than upfront analysis. The goal is a plan co-created by both parties — not AI dictating, not user specifying every detail.
Inspired by:
The plan emerges through the conversation, not before it.
On receiving the request:
Open with a structured message:
## Key Planning Issues
There are [N] issues to resolve before implementing [request].
**Current assumptions:**
- [assumption 1]
- [assumption 2]
**First question ([1/N]):**
> [Single highest-impact question, phrased as a concrete choice with trade-offs]
>
> Option A: [description] → [consequence A]
> Option B: [description] → [consequence B]
I will ask the remaining issues in sequence.
Rules for Phase 2:
[1/N] where N is total rounds estimatedAfter each user answer:
Decision: [what was decided].[X/N] counterStop asking when:
When dialogue is complete, output:
## Implementation Plan
**Agreed decisions:**
- [decision 1]: [chosen direction]
- [decision 2]: [chosen direction]
**Implementation steps:**
1. [step] — [why this order] → verify: [check]
2. ...
**Assumptions held / out of scope:**
- [assumption]
- [excluded item]
Ready to proceed with this plan?
On confirmation, implement without re-planning. Act on what was agreed.
Implementation-time decision guard: The agreed plan covers high-level decisions. During implementation, you will encounter sub-decisions not explicitly covered. For each one, ask:
When in doubt, surface it. The cost of one extra question is lower than the cost of implementing the wrong contract and having to rework it.
If unexpected obstacles arise, surface them immediately and ask — do not silently diverge from the agreed plan.
Good questions resolve unknowns the user would reasonably want input on:
Bad questions (avoid):
Threshold rule: Before skipping a decision as "derivable from context", ask: would the user reasonably want input on this? If yes, surface it. Reserve "assumption" for decisions that have no user-facing consequence.
Before listing an item under "Current assumptions" in Phase 2, apply this test:
If yes to either, convert it to a question — do not list it as an assumption.
tools
Recommend a modern TypeScript toolchain. Use when choosing or updating a TypeScript stack for Node or CLI projects, libraries or packages, and web apps or APIs; selecting tsgo as the primary typechecker with tsc as compatibility fallback; recommending Hono, tsx, tsdown, Vite, Vitest, oxlint, oxlint-tsgolint, oxfmt, or deciding between bun and pnpm.
development
Implement, review, and refactor TypeScript code with a strong bias toward type safety. Use to fix TypeScript errors, remove `any` or unsafe `as`, review type safety, tighten TypeScript or lint settings, and ship ESM-first code that passes the repository's typecheck without weakening types.
development
Self-review, improve, commit, and push code that Claude has just written. Use this skill when the user asks Claude to "self-ship", "review and ship", "review then commit and push", or wants Claude to autonomously review its own output, apply improvements, and publish the changes to the remote repository. Triggered by: "self-ship", "ship it", "review and push", "review my changes and commit", or similar requests to complete the full write → review → commit → push cycle.
development
Analyze and execute behavior-preserving refactors in small, verified steps. Use when the user asks to refactor, clean up code structure, extract functions or modules, reduce duplication, improve maintainability, or modernize code without changing external behavior.