Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Plan With Me

ASecurity

Collaborative, human-in-the-loop planning for something new that spans several parts and needs human judgement at each fork. A brainstorming partner that funnels — each fork opens up the real options, then narrows to a decision, surfacing caveats and breaking points, and co-authoring the plan instead of guessing alone. Fits any domain where you plan something new against existing context. Resolves one decision at a time, each with a recommendation, then emits a lightweight plan to hand off fo...

2 stars
0 votes
0 copies
0 views
Added 9/22/2026
ai-agentsgoreactdatabase

Works with

cursorcli

Security Analysis

A100/100

Scanned 9/22/2026

Install to Claude Code

$npx -y skills add dotlas/skills --skill plan-with-me --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Plan With Me?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Plan With Me
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/dotlas-plan-with-me/badge)](https://www.skillsdirectory.com/skills/dotlas-plan-with-me)

More formats (shields.io, HTML) on the badges page.

Download with Pro
Files
SKILL.md
---
name: plan-with-me
description: "Collaborative, human-in-the-loop planning for something new that spans several parts and needs human judgement at each fork. A brainstorming partner that funnels — each fork opens up the real options, then narrows to a decision, surfacing caveats and breaking points, and co-authoring the plan instead of guessing alone. Fits any domain where you plan something new against existing context. Resolves one decision at a time, each with a recommendation, then emits a lightweight plan to hand off for implementation. Use when planning alone would make wrong assumptions, or the user wants to shape something new together."
---
# Plan With Me — Collaborative Planning

A brainstorming partner for building something new.
It **funnels**: each fork opens up to weigh the real options, then narrows to a decision
— surfacing the caveats and breaking points before they cost anything.
You stay in the decision seat the whole way — the plan is co-authored, not handed down.

The reason to keep a human in the loop: an agent executes a plan well, but it can’t know
which tradeoff you prefer when several options are valid, can’t see the context that
isn’t written down (“our clients hate X”, “this platform can’t do Y”), can’t judge scope
(v1 requirement, or defer?), and won’t notice when a design choice quietly contradicts a
constraint you never stated.
So every real fork passes through you, and the result reflects your actual intent rather
than the agent’s best guess at it.

The output is deliberately **lightweight** — a vision, a decision log, and the open
questions.
It’s raw material for implementation or a hardening pass (e.g. `closed-plan`),
not the final build spec.
Scope scales to the work: a ten-stage plan for a new app, or a single page for a tweak
to something that already exists.

* * *

## Posture

- **Collaborative, not adversarial.** Challenge is woven in gently — options offered,
  not objections thrown.
  This isn’t interrogating a finished plan; it’s building one together.
- **Plans, not code.** This produces a plan.
  Running a command to check feasibility is fine; writing the implementation is not.
- **Match the ambition to the work.** Don’t force a one-line tweak through ten stages,
  or compress a new app into a paragraph.
- **A conversation, not a questionnaire.** Forks are talked through in text as much as
  picked in a prompt. `AskUserQuestion` locks a decision — it doesn’t replace the
  discussion that earns it.

* * *

## The process

### Phase 0 — Establish context of what already exists

Before engaging with the idea, inspect the current context so you know what is genuinely
*new* versus what to reuse or extend.
Don’t assume conventions — find them.

*In a codebase:* read the structure and the rules it already follows — root files and
monorepo indicators, instruction and architecture docs (`.cursor/`, `.agents/`,
`CONTRIBUTING.md`, `ARCHITECTURE.md`, root `*.md`), package and build layout,
lint/test/CI config, and any existing feature similar to what’s being planned (staging
tables, proposal flows, queue mechanisms) that the new work should follow or extend.

*In other work:* the equivalent existing material — prior documents and house style, an
existing design system with its components and assets, an established process or
precedent.

Then tell the user briefly what you found (“the repo uses X, has conventions for Y, and
there’s an existing Z we could build on”). That grounds everything after it.
If nothing is documented, say so and proceed on general best practice — don’t invent
conventions that aren’t there.

Also note which plan directory the project uses (`.plan/`, `.plans/`, `plans/`) — fall
back to `.plan/` if none exists.
Plans will be saved there.

### Phase 1 — Understand the vision

Listen to the idea. Ask clarifying questions only if the core intent is genuinely
ambiguous. Then summarise it back in 2-3 sentences, decompose it into its separate
concerns, and pick the one to resolve first — usually the foundation everything else
depends on (in code, often the shape of the data).

### Phase 2 — Funnel, one decision at a time

This is the core. Work through the concerns in dependency order — foundational decisions
before the ones that build on them — resolving each through an adaptive
open→discuss→lock conversation.
The through-line is convergence: the plan gets narrower and firmer with each fork; the
divergence is there to make each convergence well-founded, not to keep options open for
their own sake.

For each fork, follow the pattern:

**1. Size the fork.** Judge how far to open it up.
Go deep when the decision is high stakes or hard to reverse, when several genuinely
viable or non-obvious options exist, or when the user is exploring or uncertain.
Keep it quick when the decision is local, cheaply changed, has an obvious default, or
the user is decisive.

**2. Open it up (when it warrants).** Lay the option space out in plain text — candidate
approaches including the non-obvious and hybrid ones, what each buys and costs, relevant
information, prior art, a concrete example or two to draw inspiration from.
Look under every rock so neither party discovers a better path *after* the decision is
locked.

**3. Talk it through.** Let it be a back-and-forth — the user reacts, adds context you
couldn’t have known, rules things out, points somewhere new; you refine the framing in
response. Free text, not a form.
Most of the real thinking happens here.

**4. Lock it.** Converge when the space feels mapped — use your judgement on timing;
there is no fixed number of exchanges.
If the discussion already produced a clear answer, state it back and confirm in text.
If a crisp pick between comparable options remains, lock it with `AskUserQuestion`.

**When you lock with `AskUserQuestion`** — one call, one question (never batch multiple
decisions into a single call, as each answer shapes the next question):
- `question`: the specific decision to make, stated plainly.
- `header`: a short tag ≤ 12 chars for the decision topic (e.g. `”Data shape”`,
  `”Auth”`).
- `options`: 2-4 concrete choices — not an open-ended prompt.
  Place the recommended option first and append `(Recommended)` to its label; put the
  reasoning in that option’s `description`. Put counter-arguments or trade-offs in the
  other options’ descriptions.
- `multiSelect: false` (decisions are single-choice).
- An “Other” option is provided automatically — the user is never boxed in.

As decisions accumulate, keep a **running decision log** — numbered, each capturing what
was decided, the options considered, why this one won, and any constraint it imposes
downstream. Cite earlier decisions by number (“since #4 locked us into X, we’re limited
to Y or Z here”).

Sharpen the funnel as you go:
- **Test assumptions against reality before baking them in.** When a choice depends on
  whether something is actually possible, check rather than assume — *in code,* run a
  command (does the database support this extension?
  does the endpoint accept this format?); *elsewhere,* verify against the real
  constraint (a statute, a spec, whether the design system has that component).
  Surface blockers early, not after the plan is written.
- **Use real examples to stress-test.** When the user offers concrete input — sample
  data, a screenshot, an actual document — run the emerging design against it: “given
  this real case, what would we produce?
  does the model handle it?”
  Concrete examples expose gaps that abstract discussion glides over.
- **Push back when it helps** — a simpler alternative exists, two requirements are in
  tension, an existing pattern already solves part of it, or scope is outgrowing what’s
  buildable in reasonable stages.
  Frame it as an option: “that works, but X would simplify Y at the cost of Z.”

Adapt to how the user responds:
- Gives a real example → pause and validate against it.
- Says “you decide” → make the call, state your reasoning, move on.
- Wants to defer → note it as an open question and continue with what’s unblocked.
- Goes on a tangent → capture anything useful as a note, then redirect.
- Asks something the context already answers → answer it from Phase 0 or a quick check;
  don’t hand it back to them.

### Phase 3 — Emit the plan

When the critical decisions are settled (minor ones always remain — that’s fine), write
a lightweight plan and save it to the plan directory detected in Phase 0. Filename:
`YYYY-MM-DD-{topic-slug}.md` (kebab-cased from the Phase 1 vision).
Tell the user the path.
It contains:
- **Vision** — the feature from first principles, the why and the what, so anyone
  picking up a piece understands the whole.
- **Decision log** — the numbered decisions from the session.
- **Terminology** — any new domain terms coined along the way.
- **Key constraints** — the rules the build must honour.
- **Open questions** — deferred decisions to resolve during implementation.

Keep it to the material and the intent.
Deterministic sequencing, step-by-step staging, and convention-compliance belong to the
implementation or hardening pass this feeds into — don’t duplicate that work here.
For a large effort you can split the plan into dependency-ordered stages; for a small
one, a single page is the honest size.

* * *

## If the session pauses

On “save progress” or “let’s pause”, write the current state — decisions, open
questions, notes — to the plan file (same path as Phase 3, overwriting any prior
checkpoint). Mark it `status: in-progress` at the top; flip to `status: complete` when
Phase 3 finalises it.
Tell the user the path.
Resuming is then just reading it back.

Attribution

dotlasdotlas
View sourceMore from dotlas →
SSkills DirectorySkills Directory

Your tool, in front of Claude Code builders.

3 founder slots · $299/mo · GSC-verified traffic · sponsors can never buy grades.

See placements

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Your tool, in front of Claude Code builders.

3 founder slots · $299/mo · GSC-verified traffic · sponsors can never buy grades.

See placements

Related Skills

Caveman

Ultra-compressed communication mode that cuts output tokens while keeping technical accuracy. Levels: lite, full, ultra and the wenyan variants. Use for /caveman, "caveman mode", "talk like caveman", "be brief" or "less tokens".

1074701 votes

Hyperplan

Adversarial multi-agent planning skill. Self-orchestrates 5 hostile category members (unspecified-low, unspecified-high, deep, ultrabrain, artistry) via team-mode for ruthless cross-critique debate, distills only the defensible insights, then MANDATORILY hands the distilled insight bundle to the `plan` agent for executable plan formalization. Use when planning needs maximum rigor and surfacing of weak assumptions, blind spots, and over-engineering. Triggers: 'hyperplan', 'hpp', '/hyperplan', ...

693621 votes

Mcp Code Execution

Routes multi-tool workflows through MCP servers for large datasets and pipelines. Use when Bash tool overhead is limiting throughput on data-heavy tasks.

3351 votes

catchup

Recovers the conversation and failed tool calls of a previous Codex, Claude Code, Antigravity, Cline, Copilot CLI, Cursor, DeepSeek Harness, Kimi, OpenCode, Pi Agent, or ZCode session. Use when the user says "catch up", "what did the last session do", "get me up to speed", "I switched agents", asks to recover/summarize a previous session before continuing, or asks to diagnose or report a catchup failure. Do NOT use for the current conversation, git history, or any non-agent log.

691 votes

math-skill

A comprehensive mathematical reasoning skill for AI assistants — handles arithmetic to research-level problems with rigorous step-by-step reasoning, systematic verification, and transparent uncertainty handling

381 votes
View all in ai-agents →