Generate Claude-executable implementation plans using Gemini's reasoning
Generates Claude-executable implementation plans using Gemini's reasoning for complex multi-file tasks.
/plugin marketplace add melodic-software/claude-code-plugins/plugin install claude-ecosystem@melodic-software<task-description> [--context <files>] [--output <path>]Generate structured implementation plans using Gemini CLI. Plans are formatted for Claude to execute, with clear task breakdowns, file modifications, and sequence ordering.
/google-ecosystem:gemini-plan <task-description> [options]
$ARGUMENTS (required): Description of what you want to implement--context <glob> (optional): File patterns to include as context (e.g., src/**/*.ts)--output <path> (optional): Output path for plan (default: docs/ai-artifacts/plans/)--pro (optional): Use Gemini Pro for complex planning (default: Flash)/google-ecosystem:gemini-plan "Add user authentication with JWT"/google-ecosystem:gemini-plan "Refactor database layer to use repository pattern" --context "src/db/**"/google-ecosystem:gemini-plan "Implement dark mode toggle" --output ./plans//google-ecosystem:gemini-plan "Migrate from REST to GraphQL" --proUse this command when:
Gemini's different reasoning approach often provides:
task_description="$ARGUMENTS"
context_pattern=""
output_dir="docs/ai-artifacts/plans"
model="gemini-2.5-flash"
# Parse optional flags
while [[ $# -gt 0 ]]; do
case $1 in
--context)
context_pattern="$2"
shift 2
;;
--output)
output_dir="$2"
shift 2
;;
--pro)
model="gemini-2.5-pro"
shift
;;
*)
shift
;;
esac
done
# Read CLAUDE.md for project conventions
claude_context=""
if [ -f "CLAUDE.md" ]; then
claude_context=$(cat CLAUDE.md)
fi
# Gather specified context files
file_context=""
if [ -n "$context_pattern" ]; then
file_context=$(find . -path "$context_pattern" -type f | xargs cat 2>/dev/null | head -c 500000)
fi
prompt="PLANNING MODE: Generate an implementation plan for Claude Code to execute.
## Task
$task_description
## Project Context (from CLAUDE.md)
$claude_context
## Relevant Code Context
$file_context
## Instructions
Generate a detailed implementation plan with the following structure:
### 1. Summary
Brief description of the approach (2-3 sentences)
### 2. Prerequisites
- Dependencies to install
- Configuration changes needed
- Files to read/understand first
### 3. Implementation Tasks
Numbered list of specific, actionable tasks:
1. [FILE: path/to/file.ts] Description of change
2. [FILE: path/to/another.ts] Description of change
...
### 4. File Modifications
Table format:
| File | Action | Description |
| --- | --- | --- |
| path/to/file.ts | CREATE/MODIFY/DELETE | What changes |
### 5. Sequence Order
Which tasks depend on others, what order to execute
### 6. Testing Strategy
How to verify the implementation works
### 7. Potential Risks
- Risk 1: Mitigation
- Risk 2: Mitigation
### 8. Recommendations for Claude
Specific guidance for Claude when executing this plan
Format the output as structured markdown that another AI agent can parse and execute."
result=$(echo "$prompt" | gemini "$(cat)" --output-format json -m "$model")
response=$(echo "$result" | jq -r '.response // "Planning failed"')
total_tokens=$(echo "$result" | jq '.stats.models | to_entries | map(.value.tokens.total) | add // 0')
model_used=$(echo "$result" | jq -r '.stats.models | keys[0] // "unknown"')
Create structured markdown plan:
---
generated-by: gemini-cli
model: {model_used}
timestamp: {ISO8601}
tokens: {total_tokens}
task: "{task_description}"
---
# Implementation Plan
## Machine-Readable Summary
```json
{
"type": "plan",
"task": "{task_description}",
"tokens_used": {total_tokens},
"model": "{model_used}",
"files_to_modify": [
"path/to/file1.ts",
"path/to/file2.ts"
],
"estimated_complexity": "low|medium|high"
}
```
{response}
---
*Generated by Gemini CLI via `/gemini-plan` command*
*Review and validate before execution*
mkdir -p "$output_dir"
timestamp=$(date -u +"%Y-%m-%dT%H-%M-%SZ")
# Create slug from task description
slug=$(echo "$task_description" | tr '[:upper:]' '[:lower:]' | sed 's/[^a-z0-9]/-/g' | head -c 50)
output_file="$output_dir/plan-${slug}-${timestamp}.md"
echo "$plan" > "$output_file"
echo "Plan saved to: $output_file"
Plans include YAML frontmatter for machine parsing:
After generating a plan:
docs/ai-artifacts/plans/Good plans should have:
--pro flag)docs/ai-artifacts/plans/ (git-tracked)