plan

A command for creating a detailed implementation plan from research findings or a description of work. It is part of a workflow that separates research from planning.

In plain words
What is it for?
Use it after research, or when starting from a GitHub issue or implementation request, to identify the relevant code and define the work before coding.
Why use it?
It turns scattered findings or a reported issue into an ordered plan with affected files, requirements, constraints, and open questions.

Command for Claude Code

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add commands/dgunning/edgartools/plan
Clone the repo
git clone --depth 1 https://github.com/dgunning/edgartools

Made for: Claude Code.

Per session 0 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 1,729 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00000 $0.01729
Opus 5 $0.00000 $0.00864
Sonnet 5 $0.00000 $0.00346
Haiku 4.5 $0.00000 $0.00173

Measured 2d ago against content hash 273e60f12975, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

plan scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

Copies of this mod

1 near-identical copy found in the catalogue:

  • plan — 100% identical, 0 lines differ
.claude/commands/plan.md · 272 lines

How it starts

The opening of the file, as written. The whole thing — 272 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Create Plan

You are tasked with creating a detailed implementation plan based on research findings. This is Phase 2 of the Frequent Intentional Compaction (FIC) workflow.

Initial Setup:

When this command is invoked, respond with:

📋 Starting implementation planning (Phase 2 of FIC workflow)

I'll create a detailed implementation plan based on the research findings.

Please provide either:
1. The path to your research document from Phase 1, or
2. A summary of what needs to be implemented

Planning Process:

1. Context Gathering

If research document exists:

  • Read the research document from Phase 1
  • Extract key findings and open questions
  • Identify components that need modification
  • For GitHub issues: Extract reproduction steps and root cause

If starting fresh:

  • Detect if input is a GitHub issue (#NNN)
  • If issue: Read the issue research or fetch with gh issue view
  • Otherwise: Conduct quick research using the codebase-locator agent
  • Identify key files and patterns
  • Understand current implementation

2. Analyze Requirements

  • Clarify the desired outcome
  • Identify constraints and dependencies
  • Consider EdgarTools principles:
    • Simple yet powerful
    • Beginner-friendly
    • Accurate financials
    • Joyful UX with rich output

3. Design Solution

Break down the implementation into logical phases:

  • Each phase should be independently testable
  • Phases should build on each other
  • Include verification steps for each phase
  • Consider rollback strategies if needed

4. Create Detailed Plan Document

Save to: docs-internal/planning/active-tasks/YYYY-MM-DD-{topic}-plan.md

Structure:

# Implementation Plan: [Feature/Fix Name]

**Date Created**: [Current date]
**Planning Phase**: 2 of 3 (FIC Workflow)
**Based on Research**: [Link to research document if exists]
**Next Phase**: Implementation (`/implement`)

## Overview
[Brief description of what will be implemented and why]

## Current State Analysis
[Summary from research phase]
- What exists today
- Key files involved
- Current limitations

## Desired End State
[Clear description of success]
- Functional requirements
- Performance requirements
- User experience goals

## Out of Scope
[What will NOT be addressed]
- Future enhancements
- Unrelated improvements
- Items for separate tasks

## Implementation Approach

### Phase 1: [Descriptive Name] ⬜
**Goal**: [What this phase accomplishes]

**Changes**:
1. `edgar/module.py`:
   - [ ] Add method `new_functionality()`
   - [ ] Update class initialization
   ```python
   # Example of key change
   def new_functionality(self):
       # Implementation approach
       pass
  1. tests/test_module.py:
    • Add test for new functionality
    • Update existing tests

Verification:

  • Run: python -m pytest tests/test_module.py
  • Check: New functionality works with sample data
  • Verify: No regression in existing features

Phase 2: [Descriptive Name] ⬜

Goal: [What this phase accomplishes]

Changes: [Similar structure to Phase 1]

Verification: [Specific tests and checks]

Phase 3: [Integration and Polish] ⬜

Goal: Complete integration and user experience

Changes:

  1. Documentation updates
  2. Example scripts
  3. Performance optimization
  4. Rich output formatting

Verification:

  • All tests pass: python -m pytest
  • Documentation builds: mkdocs build
  • Examples run successfully
  • Performance meets requirements

Testing Strategy

Unit Tests

  • New test files needed
  • Existing tests to update
  • Coverage requirements

Integration Tests

  • End-to-end scenarios
  • Edge cases to handle
  • Performance benchmarks

Manual Verification

  • User workflows to test
  • Visual output checks (rich formatting)
  • Error handling scenarios

Risk Mitigation

Potential Issues

  1. Issue: [Potential problem] Mitigation: [How to handle]

  2. Issue: [Another potential problem] Mitigation: [How to handle]

Rollback Plan

  • How to revert changes if needed
  • Backup strategies for critical data

Dependencies

  • External libraries required
  • Internal modules affected
  • Documentation updates needed

Success Criteria

  • All functional requirements met
  • Tests pass with >90% coverage for new code
  • Documentation complete
  • No performance regression
  • Clean code following EdgarTools patterns

Estimated Effort

  • Phase 1: [Time estimate]
  • Phase 2: [Time estimate]
  • Phase 3: [Time estimate]
  • Total: [Total estimate]

Notes for Implementation

  • Key EdgarTools patterns to follow
  • Specific gotchas to watch for
  • Performance considerations
  • Security considerations (API keys, rate limits)

Read the full file on GitHub · 272 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 272 lines · 0 tokens per session scan A 273e60f12975

Subscribe to this mod's changes

plan is a command published in the GitHub repository dgunning/edgartools (2,635 stars, last pushed yesterday), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 1,729 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.