creating-implementation-plan

作者: microsoft

根据功能规格和设计工件,创建实施计划并拆解任务。生成包含实施步骤和内嵌任务的plan.md文件。

npx skills add https://github.com/microsoft/github-copilot-modernization --skill creating-implementation-plan

User Input

You MUST consider the user input before proceeding (if not empty).

Output

All outputs are written under your task's Artifact path: (from task metadata).

plan.md                          ← main artifact: plan + task breakdown + requirement mapping table
research.md                      ← resolved spec-level unknowns (if any)
checkpoints/spec-to-plan.yaml    ← REQ-XXX → plan item traceability
checkpoints/plan-to-tasks.yaml   ← plan item → task traceability

Workflow

Step 1: Load Context

  1. Read the feature spec. Extract all REQ-XXX requirement IDs.
  2. Read constitution.md for principles and constraints.
  3. Read knowledge-graph.json (if available) for architecture understanding.
  4. Read all dependency artifacts listed in the task's ## Dependency Artifacts metadata. These typically include architecture analysis, data model, API contracts, UX patterns, and feature specs — but filenames follow the <taskId>-<role>.md convention, not fixed names.
  5. Read the project topology (project-topology.md in the artifacts directory) if it exists. Extract the module group table (G1, G2, ...) and their scope (in-scope / context-only). These G-group labels will be used in Step 3 and Step 4 to tag plan items and tasks.
  6. If any required design artifact is missing, escalate — do NOT produce them yourself.

Step 2: Resolve Remaining Unknowns

Ownership boundary: analyzing-architecture produces codebase research and design artifacts. This step only resolves spec-level unknowns (NEEDS CLARIFICATION items, technology choices not yet decided). If codebase research is missing, escalate.

  1. Extract any remaining NEEDS CLARIFICATION from the feature spec.
  2. For each → research and resolve.
  3. Consolidate in research.md (only if there were unknowns to resolve):
    • Decision: [what was chosen]
    • Rationale: [why]
    • Alternatives considered: [what else evaluated]

Step 3: Plan Assembly

  1. Load all dependency artifacts from task metadata (see Step 1.4).
  2. Fill plan template (templates/plan-template.md):
    • Technical Context: derive HOW decisions from design artifacts + constitution + guidelines.
    • Constitution Check from constitution principles.
  3. Integrate guidelines: Load the guidelines lookup skill, then select matching top-level guideline skills. Document them under "Applied Guidelines".
  4. Map every plan item to at least one REQ-XXX.
  5. Tag plan items with G-groups: If a project topology was loaded in Step 1.5, every Implementation Step that maps to a specific module group MUST include the G-group label in its title (e.g., ### Step 3: [G1] Payment gateway integration). Cross-cutting steps that span all groups use [Cross-cutting] instead. This enables downstream DAG generation to extract group membership directly from the plan.
  6. Write plan.md section by section (write each section before moving to the next): a. Header + Summary b. Technical Context (from design artifacts) c. Constitution Check d. Applied Guidelines e. Implementation Steps (phases with plan items, each referencing REQ-XXX) f. Project Structure

Step 4: Task Breakdown

For each implementation phase in the plan, expand every plan item into concrete tasks:

Task format (each task on its own line):

- [ ] T001 [G?] [P?] [Story?] [Plan:X.Y] Description with exact file path [Source: path/to/file.java#method] [BL: BL-XXX]

Format components:

  • Checkbox: Always - [ ]
  • Task ID: Sequential (T001, T002...) in execution order
  • [G] label: [G1], [G2], [Cross-cutting] etc. REQUIRED when project topology exists — inherited from the plan item's G-group tag (Step 3.5). Omit when no project topology.
  • [P] marker: Only if parallelizable (different files, no dependencies)
  • [Story] label: [US1], [US2] etc. Required for user story phases only; omit for Setup/Foundational/Polish phases
  • [Plan:X.Y]: REQUIRED — references source plan item. Multiple: [Plan:2.1,2.3]
  • Description: Clear action with exact file path
  • [Source:]: REQUIRED in rewrite mode for code conversion tasks: [Source: src/.../File.java#method1,method2]
  • [BL: BL-XXX]: optional link to business-logic-inventory.md

Rewrite Mode Source Annotation Rules:

  • Path relative from repo root
  • Methods after #, comma-separated
  • Multiple files: multiple [Source:] annotations
  • Entire file: omit #
  • Non-source tasks (setup, config) don't need [Source:]

Task organization:

  • Phase 1: Setup (project initialization, scaffold)
  • Phase 2: Foundational (blocking prerequisites, data layer)
  • Phase 3+: User stories in priority order (P1, P2, P3...)
    • Within each story: Models → Services → Endpoints → Integration
  • Final phase: Cross-cutting concerns, polish

Write tasks inline in plan.md under each phase — do NOT create a separate tasks/ directory. Tasks are embedded in the plan document for coherence.

After writing all tasks, generate checkpoint files using the templates:

  • checkpoints/spec-to-plan.yaml — using templates/spec-to-plan-checkpoint-template.yaml
  • checkpoints/plan-to-tasks.yaml — using templates/plan-to-tasks-checkpoint-template.yaml

Examples:

- [ ] T001 [Plan:1.1] Create project structure per implementation plan
- [ ] T005 [P] [Plan:2.1] Implement auth middleware in src/middleware/auth.py
- [ ] T012 [P] [US1] [Plan:2.2] Create User model in src/models/user.py
- [ ] T015 [US3] [Plan:3.2] Convert ProductAction to ProductController [Source: src/.../ProductAction.java#list,add]

Step 5: Requirement Mapping

After all phases and tasks are written, append this section to plan.md:

## Requirement Mapping

| REQ ID | Description | Plan Items | Implementation Evidence |
|--------|-------------|------------|------------------------|
| REQ-001 | [short description] | P2.1, P3.2 | AuthController.java, UserService.java |
| REQ-002 | [short description] | P3.1 | ProductRepository.java |

Rules:

  • Every REQ-XXX from the spec MUST appear in this table
  • Plan Items lists which plan item IDs address this requirement
  • Implementation Evidence describes what files/classes will prove completion (fill based on the tasks you just wrote)
  • If any requirement has no plan item → ERROR, do not proceed

Step 6: Report

Report completion with:

  • Output artifact paths (relative to cwd)
  • Coverage summary: N requirements mapped, N tasks generated
  • Any warnings or unresolved items

Guideline Check

Before generating the plan, check for applicable guidelines:

  1. Identify technologies from feature spec and design artifacts.
  2. Use the guidelines lookup contract to find matching top-level guideline skills.
  3. For each match: extract relevant rules, integrate into plan, document in "Applied Guidelines" section.

General Rules

  • Write all outputs to cwd using relative paths.
  • ERROR on gate failures or unresolved clarifications.
  • Apply guideline skills when technology patterns match.
  • NEVER proceed with missing requirement coverage.
  • NEVER produce design artifacts (data-model.md, contracts/) — consume them from upstream analysis tasks.
  • NEVER stop after plan steps alone — task breakdown and Requirement Mapping table are part of this skill's deliverable.
  • Tasks must be immediately executable by an LLM without additional context.
  • Tests are OPTIONAL — only generate if explicitly requested.

Resources

Templates

  • templates/plan-template.md — Implementation plan document template
  • templates/tasks-template.md — Task list structure template
  • templates/spec-to-plan-checkpoint-template.yaml — REQ traceability checkpoint template
  • templates/plan-to-tasks-checkpoint-template.yaml — Plan-to-tasks traceability checkpoint template

References

  • references/task-format.md — Task checklist format rules: [P], [Plan:X.Y], [Source:] annotations, rewrite mode requirements

来自 microsoft 的更多技能

oss-growth
microsoft
OSS增长黑客角色
agent-framework-azure-ai-py
microsoft
使用Microsoft Agent Framework Python SDK(agent-framework-azure-ai)构建Azure AI Foundry代理。在创建使用AzureAIAgentsProvider的持久化代理、使用托管工具(代码解释器、文件搜索、网络搜索)、集成MCP服务器、管理对话线程或实现流式响应时使用。涵盖函数工具、结构化输出和多工具代理。
development
airunway-aks-setup
microsoft
在AKS上设置AI Runway——从裸集群到运行模型。涵盖集群验证、控制器安装、GPU评估、提供商设置和首次部署。适用场景:“设置AI Runway”、“接入AKS集群”、“安装AI Runway”、“airunway设置”、“将模型部署到AKS”、“在AKS上进行GPU推理”、“在AKS上配置KAITO”、“在AKS上运行LLM”、“在AKS上使用vLLM”、“在AKS上设置模型服务”、“AI Runway控制器”。
devops
appinsights-instrumentation
microsoft
使用Azure Application Insights对Web应用进行插桩的指南。提供遥测模式、SDK设置和配置参考。适用场景:如何对应用进行插桩、App Insights SDK、遥测模式、什么是App Insights、Application Insights指南、插桩示例、APM最佳实践。
devops
applicationinsights-web-ts
microsoft
使用Application Insights JavaScript SDK(@microsoft/applicationinsights-web)为浏览器/Web应用添加检测。用于真实用户监控(RUM)——页面视图、点击、AJAX/fetch依赖项、异常、自定义事件,以及与后端OpenTelemetry追踪关联的浏览器端GenAI代理追踪。涵盖SDK加载器脚本和npm设置、框架扩展(React、React Native、Angular)、点击分析、遥测初始化器,以及从浏览器发出的代理/工具/模型跨度所遵循的OTel GenAI语义约定。
devops
azure-ai-anomalydetector-java
microsoft
使用适用于 Java 的 Azure AI 异常检测器 SDK 构建异常检测应用程序。在实现单变量/多变量异常检测、时间序列分析或 AI 驱动的监控时使用。
development
azure-ai-language-conversations-py
microsoft
使用azure-ai-language-conversations Python SDK实现对话语言理解(CLU)。当使用ConversationAnalysisClient分析对话意图和实体、构建NLP功能或将语言理解集成到应用程序中时使用。
development
azure-ai-ml-py
microsoft
Azure Machine Learning SDK v2 for Python。用于机器学习工作区、作业、模型、数据集、计算资源和管道。 触发词:“azure-ai-ml”、“MLClient”、“工作区”、“模型注册表”、“训练作业”、“数据集”。
development