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.
Plan mode: write markdown plan, no execution. An agent skill from HezaoHezao/poirot.
$ npx skills add HezaoHezao/poirot --skill plan -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install HezaoHezao/poirot plan --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ 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-srcUse ~/.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/
Install the "plan" agent skill from https://github.com/HezaoHezao/poirot/tree/master/poirot/backend/agents/skill/builtin_skills/core/plan into .claude/skills/plan/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "plan", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/HezaoHezao/poirot/tree/master/poirot/backend/agents/skill/builtin_skills/core/planType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add HezaoHezao/poirot --skill plan -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install HezaoHezao/poirot plan --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/HezaoHezao/poirot.git skills-src && mkdir -p .agents/skills && cp -r skills-src/poirot/backend/agents/skill/builtin_skills/core/plan .agents/skills/plan && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "plan" agent skill from https://github.com/HezaoHezao/poirot/tree/master/poirot/backend/agents/skill/builtin_skills/core/plan into .agents/skills/plan/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "plan", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add HezaoHezao/poirot --skill plan -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install HezaoHezao/poirot plan --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/HezaoHezao/poirot.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/poirot/backend/agents/skill/builtin_skills/core/plan .cursor/skills/plan && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "plan" agent skill from https://github.com/HezaoHezao/poirot/tree/master/poirot/backend/agents/skill/builtin_skills/core/plan into .cursor/skills/plan/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "plan", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/HezaoHezao/poirot.git --path poirot/backend/agents/skill/builtin_skills/core/plan--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add HezaoHezao/poirot --skill plan -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install HezaoHezao/poirot plan --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/HezaoHezao/poirot.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/poirot/backend/agents/skill/builtin_skills/core/plan .gemini/skills/plan && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "plan" agent skill from https://github.com/HezaoHezao/poirot/tree/master/poirot/backend/agents/skill/builtin_skills/core/plan into .gemini/skills/plan/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "plan", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install HezaoHezao/poirot planInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add HezaoHezao/poirot --skill plan -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/HezaoHezao/poirot.git skills-src && mkdir -p .github/skills && cp -r skills-src/poirot/backend/agents/skill/builtin_skills/core/plan .github/skills/plan && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "plan" agent skill from https://github.com/HezaoHezao/poirot/tree/master/poirot/backend/agents/skill/builtin_skills/core/plan into .github/skills/plan/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "plan", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add HezaoHezao/poirot --skill plan -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install HezaoHezao/poirot plan --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/HezaoHezao/poirot.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/poirot/backend/agents/skill/builtin_skills/core/plan .opencode/skills/plan && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "plan" agent skill from https://github.com/HezaoHezao/poirot/tree/master/poirot/backend/agents/skill/builtin_skills/core/plan into .opencode/skills/plan/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "plan", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
planPlan 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.
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.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 86bf279. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
write_fileread_filelist_dirbashFrom allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
gitpytestFrom the folder's file list and the shell code blocks in SKILL.md.
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.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
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.
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.
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.
The full file from HezaoHezao/poirot at commit 86bf279, republished under its MIT licence (© HezaoHezao). 804 words, ~2,092 tokens.
.claude/skills/plan/SKILL.md (or your agent's skills folder).Use this skill when the user wants a plan instead of execution.
For this turn, you are planning only.
.poirot/plans/.Write a markdown plan that is concrete and actionable.
Include, when relevant:
If the task is code-related, include exact file paths, likely test targets, and verification steps.
Save the plan with write_file under:
.poirot/plans/YYYY-MM-DD_HHMMSS-<slug>.mdTreat 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/.
The rest of this skill is the craft of authoring a good implementation plan — the content that goes inside the markdown file above.
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.
Always use before:
Don't skip when:
Each task = 2-5 minutes of focused work.
Every step is one action:
Too big:
### Task 1: Build authentication system
[50 lines of code across 5 files]Right size:
### 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]Every plan MUST start with:
# [Feature Name] Implementation Plan
**Goal:** [One sentence describing what this builds]
**Architecture:** [2-3 sentences about approach]
**Tech Stack:** [Key technologies/libraries]
---Each task follows this format:
### 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"
```Read and understand:
Use Poirot tools to understand the project:
# 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")Decide:
Create tasks in order:
For each task, include:
src/config/settings.py)Check:
Bad: Copy-paste validation in 3 places Good: Extract validation function, use everywhere
Bad: Add "flexibility" for future requirements Good: Implement only what's needed now
# 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 = emailEvery task that produces code should include the full TDD cycle:
See test-driven-development skill for details.
Commit after every task:
git add [files]
git commit -m "type: description"Bad: "Add authentication" Good: "Create User model with email and password_hash fields"
Bad: "Step 1: Add validation function" Good: "Step 1: Add validation function" followed by the complete function code
Bad: "Step 3: Test it works"
Good: "Step 3: Run pytest tests/test_auth.py -v, expected: 3 passed"
Bad: "Create the model file"
Good: "Create: src/models/user.py"
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.
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 commitsA 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
Just SKILL.md in poirot/backend/agents/skill/builtin_skills/core/plan of HezaoHezao/poirot.
Open the folder on GitHubat commit 86bf279
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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Plan this skillHezaoHezao/poirot | 249 | — | ~2.1k | Automated safety check: Pass | MIT | |
| Executing Plans Inlineobra/superpowers | 297k | 2 repos | ~5.1k | Automated safety check: Pass | MIT | |
| Inline Plan ExecutionjnMetaCode/superpowers-zh | 8.3k | — | ~2.5k | Automated safety check: Pass | MIT | |
| Deep Planpiercelamb/deep-plan | 101 | — | ~4.8k | Automated safety check: Pass | MIT | |
| Plan Py4vaspvasp-dev/py4vasp | 101 | — | ~2.3k | Automated safety check: Pass | Apache-2.0 | |
| Test-First Implementation Plangittower/git-flow-next | 457 | — | ~1.3k | Automated safety check: Notes | Custom licence |
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.
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.
piercelamb/deep-plan
Creates detailed, sectionized, TDD-oriented implementation plans through research, stakeholder interviews, and multi-LLM review.
vasp-dev/py4vasp
Plan a py4vasp change as an ordered list of test-first chunks — that chunk list is the 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.
idiotLeoLYJ/Daliu-Awesome-Skills
Vibe Coding 流水线的实现阶段(流水线终点,顺序 idea → interaction → architecture → design → prototype → implement)。当 interaction.md、architecture.md、design.md、prototypes/ 已就绪,用户说"开始实现""写代码""把设计落地""进入开发""implement /…
HezaoHezao/poirot
Pre-commit review: security scan, quality gates, auto-fix. An agent skill from HezaoHezao/poirot.
HezaoHezao/poirot
Structured peer-review of academic papers. An agent skill from HezaoHezao/poirot.
HezaoHezao/poirot
Monitor blogs and RSS/Atom feeds via blogwatcher-cli. An agent skill from HezaoHezao/poirot.
HezaoHezao/poirot
Onboarding conversation to generate a user profile. An agent skill from HezaoHezao/poirot.
HezaoHezao/poirot
Generate charts: select type, extract data, render image. An agent skill from HezaoHezao/poirot.
HezaoHezao/poirot
Generate docs: README, API reference, architecture, guides. An agent skill from HezaoHezao/poirot.
Categories
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.
Plan fits situations like: tasks that involve Planning; tasks that involve Test-driven development.
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.
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.
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.
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.
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.
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.
Plan is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
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.
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.
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.