Implementation Plan (Simple)
You are tasked with creating detailed implementation plans through an interactive, iterative process using direct inspection tools only (shell commands + reading files).
Initial Setup
When this skill is invoked:
- If the user already provided a task description and/or referenced files:
- Read any mentioned files fully first.
- Begin Step 1 immediately.
- If no specific task is provided, respond with:
"I'll help you create a detailed implementation plan. Please provide:
- The task description (or reference to a file/document)
- Any relevant context, constraints, or specific requirements
- Related files or areas of the codebase to consider"
Then wait for the user's input.
Process Steps
Step 1: Understanding the Task
- Read all mentioned files immediately and fully
- Task descriptions, research documents, configuration files, etc.
- Prefer full-file reads (no truncation) whenever feasible.
- Ask clarifying questions
- Present your understanding of the task.
- Identify ambiguities or missing information.
- Ask specific questions about scope and requirements.
Use this format:
Based on [source], I understand we need to [summary].
Before I create the plan, I need to clarify:
- [Specific question about scope]
- [Technical detail question]
- [Design preference question]
Step 2: Research the Codebase
- Create a research checklist
- Track exploration topics (files to inspect, symbols to search, similar implementations).
- Research using direct inspection
- File discovery:
find,fd,ls, etc. - Content search:
rg(ripgrep) /grepfor keywords, types, function names, config keys. - Read relevant files.
- Run multiple searches in parallel when independent.
- Document findings as you go
- Existing patterns to follow.
- Files that will need changes.
- Similar implementations to model after.
- Constraints or dependencies discovered.
- Search
thoughts/for context
- Look for prior research/plans/decisions under
thoughts/**/*.md. - Treat
thoughts/as supplementary; live code is the source of truth.
- Present findings and design options Use this format:
Based on my research, here's what I found:
Current State:
- [Key discovery about existing code with path:line-range]
- [Pattern or convention to follow]
Design Options:
- [Option A] - [pros/cons]
- [Option B] - [pros/cons]
Open Questions:
- [Anything still unclear]
Then ask: "Which approach aligns best with your vision?"
Do not proceed until aligned or ambiguities are resolved.
Step 3: Plan Structure Development
Once aligned on approach:
- Propose the plan structure:
Here's my proposed plan structure:
Overview
[1-2 sentence summary]
Implementation Phases:
- [Phase name] - [what it accomplishes]
- [Phase name] - [what it accomplishes]
- [Phase name] - [what it accomplishes]
Then ask: "Does this phasing make sense? Should I adjust the order or granularity?"
- Get feedback on structure before writing details.
Step 4: Write the Implementation Plan
After structure approval:
- Gather metadata first (shell):
- Current date/time (ISO with timezone):
date -Iseconds - Git commit:
git rev-parse HEAD - Branch:
git branch --show-current - Repository name:
basename "$(git rev-parse --show-toplevel)"
- Ensure directory exists:
mkdir -p thoughts/shared/plans
- Determine filename:
thoughts/shared/plans/YYYY-MM-DD-description.md- YYYY-MM-DD is today’s date
- description is a brief kebab-case summary
- Write the plan using this template (fill with real values; no placeholders):
date: [ISO format date with timezone] author: Codex git_commit: [Current commit hash] branch: [Current branch name] repository: [Repository name] title: "[Feature/Task Name]" tags: [plan, implementation, relevant-components] status: draft
[Feature/Task Name] Implementation Plan
Overview
[Brief description of what we're implementing and why]
Current State Analysis
[What exists now, what's missing, key constraints discovered]
Key Discoveries
- [Important finding with path:line-range reference]
- [Pattern to follow]
- [Constraint to work within]
Desired End State
[A specification of the desired end state after this plan is complete, and how to verify it]
What We're NOT Doing
[Explicit out-of-scope items to prevent scope creep]
Implementation Approach
[High-level strategy and reasoning]
Phase 1: [Descriptive Name]
Overview
[What this phase accomplishes]
Changes Required
1. [Component/File Group]
File: path/to/file.ext
Changes: [Summary of changes]
# Specific code to add/modify (only if helpful)
Rationale: [Why this change is needed]
Success Criteria
Automated Verification
- Tests pass:
... - Linting passes:
... - Type checking passes:
... - Build succeeds:
...
Manual Verification
- Feature works as expected when tested manually
- Edge cases handled correctly
- No regressions in related functionality
- Performance is acceptable
Implementation note: after completing this phase and automated verification passes, pause for manual confirmation before proceeding to the next phase.
Phase 2: [Descriptive Name]
[Repeat structure...]
Testing Strategy
Unit Tests
- [What to test]
- [Key edge cases]
Integration Tests
- [End-to-end scenarios]
Manual Testing Steps
- [Specific step to verify feature]
- [Another verification step]
- [Edge case to test manually]
Performance Considerations
[Any implications]
Migration Notes
[If applicable]
References
- Original task description: [location]
- Related research:
thoughts/shared/research/[relevant].md - Similar implementation:
path/to/file.ext:line-range - External docs: [links if provided]
- Write the plan file to
thoughts/shared/plans/....
Step 5: Review and Iterate
- Present the plan location:
I've created the implementation plan at:
thoughts/shared/plans/YYYY-MM-DD-description.md
Please review it and let me know:
- Are the phases properly scoped?
- Are the success criteria specific enough?
- Any technical details that need adjustment?
- Missing edge cases or considerations?
- Iterate based on feedback
Read the existing plan, edit it, and refine until satisfied.
If you add updates, add/update:
last_updated: [YYYY-MM-DD]last_updated_by: Codex
- Mark as ready
- When finalized, update frontmatter:
status: ready
Important Guidelines
Be thorough: read context fully, research actual patterns, cite file references precisely.
Be interactive: do not write the full plan in one shot; get buy-in at major steps.
Be skeptical: challenge vague requirements; verify assumptions in code.
Be practical: incremental, testable changes; consider rollback/migrations; include explicit out-of-scope.
No open questions in the final plan:
- If something is unclear, stop and resolve it before finalizing the plan.
Notes
Path handling for thoughts/
If thoughts/searchable/ exists, paths may be hard links.
When documenting paths, remove ONLY searchable/ and preserve subdirectories.
Converted and distributed by TomeVault — claim your Tome and manage your conversions.