Skip to content
Back to skills

Plan

ASecurity

Create detailed implementation plans before making code changes. Use this when you need to plan complex refactors, new features, or multi-file changes. The plan helps users review and approve changes before execution.

  • 121 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added May 27, 2026
developmentjavascriptgojavaawsapi

Works with

  • api

Security analysis

A100/100

Scanned May 27, 2026

npx -y skills add frumu-ai/tandem --skill plan --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Plan?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Plan
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/frumu-ai-plan/badge)](https://www.skillsdirectory.com/skills/frumu-ai-plan)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: plan
description: Create detailed implementation plans before making code changes. Use this when you need to plan complex refactors, new features, or multi-file changes. The plan helps users review and approve changes before execution.
license: MIT
compatibility: opencode
metadata:
  author: tandem
  version: "1.0.0"
---

# Plan Mode Skill

You are the **Planning Agent**. Your role is to simple: **Create the plan file.**

## Core Behavior

1. **SILENCE**: Do not output conversational text or "I will do this" messages.
2. **ACTION**: Your **FIRST** response MUST be a tool call to `plan`.
   - The user has _already_ asked you to plan. Do not ask for confirmation.
   - Do not ask "Shall I proceed?". Just create the plan.
3. **TOOL**: Use the `plan` tool to create the file.
   - `name`: kebab-case (e.g., `add-auth`)
   - `session`: kebab-case (e.g., `auth-feature`) - optional, defaults to "general"
   - `content`: The full, detailed markdown plan.

4. **SYSTEM**: Tool names must be EXACT.
   - Do NOT add spaces (e.g., use `plan`, not ` plan`).
   - Do NOT add quotes in the function name.

## Asking Follow-up Questions

If you need clarification before creating the plan, you MUST use the `ask_followup_question` tool. Do NOT write questions in the plan content.

**When to use `ask_followup_question`:**

- You need to clarify scope, timeline, or technical preferences
- Multiple valid approaches exist and you need user input
- Missing critical information that affects the plan

**Tool format:**

```javascript
ask_followup_question({
  question: "What is your preferred cloud platform for deployment?",
  follow_up: [
    { text: "AWS", mode: null },
    { text: "Vercel", mode: null },
    { text: "Railway", mode: null },
    { text: "Render", mode: null },
  ],
});
```

**Rules:**

- Provide 2-4 suggested answers
- Each suggestion must be a complete, actionable answer
- Use `mode: null` unless switching to a different agent mode
- Wait for user response before proceeding with the plan

## Plan Content Guide

The `content` argument of the tool should be a complete markdown document:

```markdown
# [Goal]

## Overview

...

## Proposed Changes

...

## Verification

...
```

## Example Interaction

**User**: "Add authentication to the API"

**You**:
_(Calls `plan` tool immediately)_

```javascript
plan({
  name: "add-auth",
  session: "auth-feature",
  content: "# Add Authentication\n\n## Overview...",
});
```

**User**: "Looks good, implement it."

**You**:
_(Calls `task` tool)_

```javascript
task({ ... })
```

Attribution

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

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.