Agent skill

Plan

by HezaoHezao in HezaoHezao/poirot

Plan mode: write markdown plan, no execution. An agent skill from HezaoHezao/poirot.

MITAuto-check passedAgent Workflows

Install Plan

skills CLI
$ npx skills add HezaoHezao/poirot --skill plan -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install HezaoHezao/poirot plan --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/HezaoHezao/poirot.git skills-src && mkdir -p .claude/skills && cp -r skills-src/poirot/backend/agents/skill/builtin_skills/core/plan .claude/skills/plan && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
plan
GitHub stars
249
Token cost
~2.1k tokens
SKILL.md length
804 words
Files
1
Skills in repo
23
Repo updated
First seen
Licence
MIT

At a glance

Plan mode: write markdown plan, no execution. An agent skill from HezaoHezao/poirot.

  • Works in 6 steps: Understand Requirements → Explore the Codebase → Design Approach → …
  • Tasks that involve Planning
  • SKILL.md covers Core behavior, Output requirements, Save location and Interaction style, plus 8 more sections
  • Calls git and pytest

What it does

Plan is an agent skill from HezaoHezao/poirot. Plan mode: write markdown plan, no execution.

Its SKILL.md is about 2.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Agent Workflows, covering Planning and Test-driven development. The repository describes itself as: Poirot is a deep research agent kernel built for those who care about how agents are architected. The licence is MIT.

When your agent uses it

  • Tasks that involve Planning
  • Tasks that involve Test-driven development

Example prompts

  • “/plan”

Requirements

  • Python 3
  • Pre-approved tools (allowed-tools): write_file, read_file, list_dir, bash

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Understand Requirements
  2. Explore the Codebase
  3. Design Approach
  4. Write Tasks
  5. Add Complete Details
  6. Review the Plan

What it can do on your machine

Read from SKILL.md and the folder at commit 86bf279. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • write_file
    • read_file
    • list_dir
    • bash

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git
    • pytest

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Plan loads about 2.1k tokens when it runs. Until then it costs about 13 tokens; SKILL.md has 804 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~13
When it runs · the whole SKILL.md, loaded when a task matches
~2.1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from HezaoHezao/poirot at commit 86bf279, republished under its MIT licence (© HezaoHezao). 804 words, ~2,092 tokens.

Download SKILL.mdSave it as .claude/skills/plan/SKILL.md (or your agent's skills folder).
name
plan
description
Plan mode: write markdown plan, no execution.
allowed-tools
write_file, read_file, list_dir, bash
enabled
true
related-skills
test-driven-development, requesting-code-review
license
MIT
author
Adapted from hermes-agent (Nous Research, MIT); writing-craft from obra/superpowers

Plan Mode

Use this skill when the user wants a plan instead of execution.

Core behavior

For this turn, you are planning only.

  • Do not implement code.
  • Do not edit project files except the plan markdown file.
  • Do not run mutating terminal commands, commit, push, or perform external actions.
  • You may inspect the repo or other context with read-only commands/tools when needed.
  • Your deliverable is a markdown plan saved under .poirot/plans/.

Output requirements

Write a markdown plan that is concrete and actionable.

Include, when relevant:

  • Goal
  • Current context / assumptions
  • Proposed approach
  • Step-by-step plan
  • Files likely to change
  • Tests / validation
  • Risks, tradeoffs, and open questions

If the task is code-related, include exact file paths, likely test targets, and verification steps.

Save location

Save the plan with write_file under:

  • .poirot/plans/YYYY-MM-DD_HHMMSS-<slug>.md

Treat that as relative to the active working directory / sandbox workspace. Poirot sandbox file tools are path-aware, so using this relative path keeps the plan with the workspace.

If no specific target path is provided by the runtime, create a sensible timestamped filename yourself under .poirot/plans/.

Interaction style

  • If the request is clear enough, write the plan directly.
  • If no explicit instruction accompanies the plan request, infer the task from the current conversation context.
  • If it is genuinely underspecified, ask a brief clarifying question instead of guessing.
  • After saving the plan, reply briefly with what you planned and the saved path.

Writing the Plan Well

The rest of this skill is the craft of authoring a good implementation plan — the content that goes inside the markdown file above.

Overview

Write comprehensive implementation plans assuming the implementer has zero context for the codebase and questionable taste. Document everything they need: which files to touch, complete code, testing commands, docs to check, how to verify. Give them bite-sized tasks. DRY. YAGNI. TDD. Frequent commits.

Assume the implementer is a skilled developer but knows almost nothing about the toolset or problem domain.

Core principle: A good plan makes implementation obvious. If someone has to guess, the plan is incomplete.

When a Full Implementation Plan Helps

Always use before:

  • Implementing multi-step features
  • Breaking down complex requirements
  • Delegating work to a subagent (when available)

Don't skip when:

  • Feature seems simple (assumptions cause bugs)
  • You plan to implement it yourself (future you needs guidance)
  • Working alone (documentation matters)

Bite-Sized Task Granularity

Each task = 2-5 minutes of focused work.

Every step is one action:

  • "Write the failing test" — step
  • "Run it to make sure it fails" — step
  • "Implement the minimal code to make the test pass" — step
  • "Run the tests and make sure they pass" — step
  • "Commit" — step

Too big:

markdown
### Task 1: Build authentication system
[50 lines of code across 5 files]

Right size:

markdown
### Task 1: Create User model with email field
[10 lines, 1 file]

### Task 2: Add password hash field to User
[8 lines, 1 file]

### Task 3: Create password hashing utility
[15 lines, 1 file]

Plan Document Structure

Header (Required)

Every plan MUST start with:

markdown
# [Feature Name] Implementation Plan

**Goal:** [One sentence describing what this builds]

**Architecture:** [2-3 sentences about approach]

**Tech Stack:** [Key technologies/libraries]

---
Task Structure

Each task follows this format:

markdown
### Task N: [Descriptive Name]

**Objective:** What this task accomplishes (one sentence)

**Files:**
- Create: `exact/path/to/new_file.py`
- Modify: `exact/path/to/existing.py:45-67` (line numbers if known)
- Test: `tests/path/to/test_file.py`

**Step 1: Write failing test**

```python
def test_specific_behavior():
    result = function(input)
    assert result == expected
```

**Step 2: Run test to verify failure**

Run: `pytest tests/path/test.py::test_specific_behavior -v`
Expected: FAIL — "function not defined"

**Step 3: Write minimal implementation**

```python
def function(input):
    return expected
```

**Step 4: Run test to verify pass**

Run: `pytest tests/path/test.py::test_specific_behavior -v`
Expected: PASS

**Step 5: Commit**

```bash
git add tests/path/test.py src/path/file.py
git commit -m "feat: add specific feature"
```

Writing Process

Step 1: Understand Requirements

Read and understand:

  • Feature requirements
  • Design documents or user description
  • Acceptance criteria
  • Constraints
Step 2: Explore the Codebase

Use Poirot tools to understand the project:

python
# Understand project structure
list_dir("src/")

# Look at similar features
bash("grep -rl 'similar_pattern' src/ --include='*.py'")

# Check existing tests
list_dir("tests/")

# Read key files
read_file("src/app.py")
Show full SKILL.md (323 more words)Show less
Step 3: Design Approach

Decide:

  • Architecture pattern
  • File organization
  • Dependencies needed
  • Testing strategy
Step 4: Write Tasks

Create tasks in order:

  1. Setup/infrastructure
  2. Core functionality (TDD for each)
  3. Edge cases
  4. Integration
  5. Cleanup/documentation
Step 5: Add Complete Details

For each task, include:

  • Exact file paths (not "the config file" but src/config/settings.py)
  • Complete code examples (not "add validation" but the actual code)
  • Exact commands with expected output
  • Verification steps that prove the task works
Step 6: Review the Plan

Check:

  • Tasks are sequential and logical
  • Each task is bite-sized (2-5 min)
  • File paths are exact
  • Code examples are complete (copy-pasteable)
  • Commands are exact with expected output
  • No missing context
  • DRY, YAGNI, TDD principles applied

Principles

DRY (Don't Repeat Yourself)

Bad: Copy-paste validation in 3 places Good: Extract validation function, use everywhere

YAGNI (You Aren't Gonna Need It)

Bad: Add "flexibility" for future requirements Good: Implement only what's needed now

python
# Bad — YAGNI violation
class User:
    def __init__(self, name, email):
        self.name = name
        self.email = email
        self.preferences = {}  # Not needed yet!
        self.metadata = {}     # Not needed yet!

# Good — YAGNI
class User:
    def __init__(self, name, email):
        self.name = name
        self.email = email
TDD (Test-Driven Development)

Every task that produces code should include the full TDD cycle:

  1. Write failing test
  2. Run to verify failure
  3. Write minimal code
  4. Run to verify pass

See test-driven-development skill for details.

Frequent Commits

Commit after every task:

bash
git add [files]
git commit -m "type: description"

Common Mistakes

Vague Tasks

Bad: "Add authentication" Good: "Create User model with email and password_hash fields"

Incomplete Code

Bad: "Step 1: Add validation function" Good: "Step 1: Add validation function" followed by the complete function code

Missing Verification

Bad: "Step 3: Test it works" Good: "Step 3: Run pytest tests/test_auth.py -v, expected: 3 passed"

Missing File Paths

Bad: "Create the model file" Good: "Create: src/models/user.py"

Execution Handoff

After saving the plan, offer the execution approach:

"Plan complete and saved. Ready to execute — I'll work through tasks sequentially with TDD. Shall I proceed?"

Note: Poirot currently has no subagent delegation. Execute tasks manually in order, committing after each. If subagent support is added later, this skill will reference it for parallel task execution.

Remember

Bite-sized tasks (2-5 min each)
Exact file paths
Complete code (copy-pasteable)
Exact commands with expected output
Verification steps
DRY, YAGNI, TDD
Frequent commits

A good plan makes implementation obvious.

© HezaoHezao, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in poirot/backend/agents/skill/builtin_skills/core/plan of HezaoHezao/poirot.

Open the folder on GitHubat commit 86bf279

Compare with similar skills

Plan next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Plan compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Plan this skillHezaoHezao/poirot249—~2.1kAutomated safety check: PassMIT
Executing Plans Inlineobra/superpowers297k2 repos~5.1kAutomated safety check: PassMIT
Inline Plan ExecutionjnMetaCode/superpowers-zh8.3k—~2.5kAutomated safety check: PassMIT
Deep Planpiercelamb/deep-plan101—~4.8kAutomated safety check: PassMIT
Plan Py4vaspvasp-dev/py4vasp101—~2.3kAutomated safety check: PassApache-2.0
Test-First Implementation Plangittower/git-flow-next457—~1.3kAutomated safety check: NotesCustom licence

Similar skills

  • Executing Plans Inline

    obra/superpowers

    Has the agent carry out an implementation plan itself, task by task in the current session, keeping a ledger, proving each step with a test and ending with one whole-branch review.

    297k GitHub starsUsed in 2 repos~5.1k tokens
    Agent WorkflowsAuto-check passed
  • Inline Plan Execution

    jnMetaCode/superpowers-zh

    Executes a written implementation plan task by task in the current session, with a progress ledger, test-first gates and one fresh-context review at the end.

    8.3k GitHub stars~2.5k tokensUpdated yesterday
    Agent WorkflowsAuto-check passed
  • Deep Plan

    piercelamb/deep-plan

    Creates detailed, sectionized, TDD-oriented implementation plans through research, stakeholder interviews, and multi-LLM review.

    101 GitHub stars~4.8k tokensUpdated 3 mo ago
    Agent WorkflowsAuto-check passed
  • Plan Py4vasp

    vasp-dev/py4vasp

    Plan a py4vasp change as an ordered list of test-first chunks — that chunk list is the plan.

    101 GitHub stars~2.3k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • Test-First Implementation Plan

    gittower/git-flow-next

    Builds a two-phase implementation plan from a spec issue, analysis or concept, writing a detailed test plan first and the implementation outline second.

    457 GitHub stars~1.3k tokensUpdated 1 mo ago
    Agent WorkflowsAuto-check: notes
  • Vibe Implement

    idiotLeoLYJ/Daliu-Awesome-Skills

    Vibe Coding 流水线的实现阶段(流水线终点,顺序 idea → interaction → architecture → design → prototype → implement)。当 interaction.md、architecture.md、design.md、prototypes/ 已就绪,用户说"开始实现""写代码""把设计落地""进入开发""implement /…

    140 GitHub stars~2.7k tokensUpdated 1 mo ago
    Agent WorkflowsAuto-check passed

More from HezaoHezao/poirot

All 23 skills in this repo
  • Requesting Code Review

    HezaoHezao/poirot

    Pre-commit review: security scan, quality gates, auto-fix. An agent skill from HezaoHezao/poirot.

    249 GitHub starsUsed in 5 repos~1.6k tokens
    Auto-check passed
  • Academic Paper Review

    HezaoHezao/poirot

    Structured peer-review of academic papers. An agent skill from HezaoHezao/poirot.

    249 GitHub stars~1.8k tokensUpdated 2 mo ago
    Auto-check passed
  • Blogwatcher

    HezaoHezao/poirot

    Monitor blogs and RSS/Atom feeds via blogwatcher-cli. An agent skill from HezaoHezao/poirot.

    249 GitHub stars~854 tokensUpdated 2 mo ago
    Auto-check passed
  • Bootstrap

    HezaoHezao/poirot

    Onboarding conversation to generate a user profile. An agent skill from HezaoHezao/poirot.

    249 GitHub stars~1.2k tokensUpdated 2 mo ago
    Auto-check passed
  • Chart Visualization

    HezaoHezao/poirot

    Generate charts: select type, extract data, render image. An agent skill from HezaoHezao/poirot.

    249 GitHub stars~1k tokensUpdated 2 mo ago
    Auto-check passed
  • Code Documentation

    HezaoHezao/poirot

    Generate docs: README, API reference, architecture, guides. An agent skill from HezaoHezao/poirot.

    249 GitHub stars~1.2k tokensUpdated 2 mo ago
    Auto-check passed

Categories

Questions about Plan

What does Plan do?

Plan mode: write markdown plan, no execution. An agent skill from HezaoHezao/poirot. Plan is an agent skill from HezaoHezao/poirot. Plan mode: write markdown plan, no execution.

When should I use Plan?

Plan fits situations like: tasks that involve Planning; tasks that involve Test-driven development.

How do I install Plan in Claude Code?

Run `npx skills add HezaoHezao/poirot --skill plan -a claude-code`. Or copy the skill folder (poirot/backend/agents/skill/builtin_skills/core/plan in HezaoHezao/poirot) into .claude/skills/plan in your project. Claude Code loads it when a task matches its description.

How do I install Plan in Codex?

Run `npx skills add HezaoHezao/poirot --skill plan -a codex`. Or copy the skill folder (poirot/backend/agents/skill/builtin_skills/core/plan in HezaoHezao/poirot) into .agents/skills/plan in your project. Codex loads it when a task matches its description.

Can I use Plan in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add HezaoHezao/poirot --skill plan -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/plan, .gemini/skills/plan, .github/skills/plan and .opencode/skills/plan in your project.

What does Plan need to run?

Going by SKILL.md and its folder, Plan needs the command-line tools its instructions call (git and pytest). Our summary lists: Python 3. Its frontmatter pre-approves these tools: write_file, read_file, list_dir, bash.

Does Plan access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Plan safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Plan use?

Plan is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Plan use?

About 2.1k tokens (SKILL.md is roughly 8.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Plan?

Skills that share tags, products or a category with Plan: Executing Plans Inline (obra/superpowers, 297k stars), Inline Plan Execution (jnMetaCode/superpowers-zh, 8.3k stars), Deep Plan (piercelamb/deep-plan, 101 stars) and Plan Py4vasp (vasp-dev/py4vasp, 101 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Plan?

HezaoHezao (a GitHub user) maintains it in HezaoHezao/poirot, which has 249 GitHub stars. The repository holds 23 skills in this directory. The repository was last updated on July 28, 2026.

Source: HezaoHezao/poirot on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.