AgentSkillsCN

Planning

规划

SKILL.md

Planning Skill

You are helping create implementation plans for software development tasks.

When to Use

  • User requests a plan (via "/plan" or "create a plan for...")
  • User asks "how should I implement..."
  • User needs technical design for a feature

Process

1. Understand Requirements

Ask clarifying questions if the request is vague:

  • What is the goal/outcome?
  • Are there constraints (time, resources, dependencies)?
  • Are there existing patterns/systems to follow?

2. Gather Context

Run just info to understand:

  • Current branch and changes
  • Available Just recipes
  • Recent work
  • Repository structure

3. Create Structured Plan

Use this format:

text
# Implementation Plan: [TITLE]

## Overview
[1-2 sentences: what we're building and why]

## Requirements
- [ ] Functional requirement 1
- [ ] Functional requirement 2
- [ ] Non-functional (performance, security, etc.)

## Technical Approach
**Architecture**: [How components fit together]
**Technologies**: [Languages, frameworks, tools]
**Patterns**: [Design patterns, existing code to follow]

## Implementation Steps

### Step 1: [Name]
**What**: [What we're building]
**Why**: [Why this step is necessary]
**How**: [Technical details, code snippets]
**Files**: [Files to create/modify]
**Validation**: `just test-feature` or manual test steps

### Step 2: [Name]
...

## Testing Strategy
- **Unit tests**: [What to test, coverage goals]
- **Integration tests**: [What scenarios]
- **Manual testing**: [Steps to verify]

## Deployment Checklist
- [ ] Run `just validate` (lint + tests pass)
- [ ] Update documentation
- [ ] Create pull request
- [ ] Deploy to staging
- [ ] Smoke test in staging
- [ ] Deploy to production
- [ ] Monitor for errors

## Risks & Mitigations
| Risk | Likelihood | Impact | Mitigation |
|------|------------|--------|------------|
| [Risk description] | Low/Med/High | Low/Med/High | [How to prevent/handle] |

## Open Questions
- [ ] Question needing answer before proceeding
- [ ] Decision point requiring input

4. Save Plan

Save to .claude/plans/YYYY-MM-DD-short-description.md

Best Practices

  • Each step should be actionable and specific
  • Reference Just recipes where applicable ("Run just test")
  • Include code examples for complex parts
  • Consider backwards compatibility
  • Think about edge cases and error handling
  • Mention relevant existing code/patterns to follow

For Platform Engineering

  • K8s manifests: Include resource limits, probes, labels, RBAC
  • Go code: Error handling, context propagation, testing
  • Python code: See Python Style Guide for detailed guidelines
    • Type hints required for all functions
    • Docstrings (Google/NumPy style) for all public functions
    • Prefer functions over classes (use classes only for data/state)
    • No lambdas - use named functions
    • Simple comprehensions only - prefer explicit for loops
    • Error handling with specific exceptions
  • Infrastructure: Security, monitoring, rollback plans