generate-custom-instructions-from-codebase

generate-custom-instructions-from-codebase

热门

迁移与代码演进指令生成器,适用于 GitHub Copilot。分析两个项目版本(分支、提交或发布版本)之间的差异,生成精确指令,使 Copilot 在技术迁移、重大重构或框架版本升级期间保持一致性。

3.6万Star
4556Fork
更新于 2026/7/13
SKILL.md
readonly只读
name
generate-custom-instructions-from-codebase
description

迁移与代码演进指令生成器,适用于 GitHub Copilot。分析两个项目版本(分支、提交或发布版本)之间的差异,生成精确指令,使 Copilot 在技术迁移、重大重构或框架版本升级期间保持一致性。

迁移与代码演进指令生成器

配置变量

${MIGRATION_TYPE="框架版本|架构重构|技术迁移|依赖更新|模式变更"}
<!-- 迁移或演进的类型 -->

${SOURCE_REFERENCE="branch|commit|tag"}
<!-- 源参考点(变更前状态) -->

${TARGET_REFERENCE="branch|commit|tag"}  
<!-- 目标参考点(变更后状态) -->

${ANALYSIS_SCOPE="整个项目|特定文件夹|仅修改的文件"}
<!-- 分析范围 -->

${CHANGE_FOCUS="破坏性变更|新约定|过时模式|API变更|配置"}
<!-- 变更的主要方面 -->

${AUTOMATION_LEVEL="保守|平衡|激进"}
<!-- Copilot 建议的自动化程度 -->

${GENERATE_EXAMPLES="true|false"}
<!-- 是否包含转换示例 -->

${VALIDATION_REQUIRED="true|false"}
<!-- 是否需要在应用前进行验证 -->

生成的提示词

"分析两个项目状态之间的代码演进,为 GitHub Copilot 生成精确的迁移指令。这些指令将指导 Copilot 在未来的修改中自动应用相同的转换模式。请遵循以下方法:

### 阶段一:对比状态分析

#### 结构变更检测
- 比较 ${SOURCE_REFERENCE} 和 ${TARGET_REFERENCE} 之间的文件夹结构
- 识别移动、重命名或删除的文件
- 分析配置文件中的变更
- 记录新增和移除的依赖

#### 代码转换分析
${MIGRATION_TYPE == "框架版本" ? 
  "- 识别框架版本之间的 API 变更
   - 分析正在使用的新特性
   - 记录废弃的方法/属性
   - 注意语法或约定的变更" : ""}

${MIGRATION_TYPE == "架构重构" ? 
  "- 分析架构模式变更
   - 识别引入的新抽象
   - 记录职责重组
   - 注意数据流的变化" : ""}

${MIGRATION_TYPE == "技术迁移" ? 
  "- 分析一种技术被另一种技术替代的情况
   - 识别功能等价性
   - 记录 API 和语法变更
   - 注意新的依赖和配置" : ""}

#### 转换模式提取
- 识别重复应用的转换
- 分析从旧格式到新格式的转换规则
- 记录异常和特殊情况
- 创建前后对应矩阵

### 阶段二:迁移指令生成

创建一个 `.github/copilot-migration-instructions.md` 文件,结构如下:

\`\`\`markdown
# GitHub Copilot 迁移指令

## 迁移上下文
- **类型**: ${MIGRATION_TYPE}
- **从**: ${SOURCE_REFERENCE} 
- **到**: ${TARGET_REFERENCE}
- **日期**: [GENERATION_DATE]
- **范围**: ${ANALYSIS_SCOPE}

## 自动转换规则

### 1. 强制转换
${AUTOMATION_LEVEL != "保守" ? 
  "[AUTOMATIC_TRANSFORMATION_RULES]
   - **旧模式**: [OLD_CODE]
   - **新模式**: [NEW_CODE]
   - **触发条件**: 何时检测到此模式
   - **操作**: 自动应用的转换" : ""}

### 2. 需验证的转换
${VALIDATION_REQUIRED == "true" ? 
  "[TRANSFORMATIONS_WITH_VALIDATION]
   - **检测到的模式**: [DESCRIPTION]
   - **建议的转换**: [NEW_APPROACH]
   - **所需验证**: [VALIDATION_CRITERIA]
   - **替代方案**: [ALTERNATIVE_OPTIONS]" : ""}

### 3. API 对应关系
${CHANGE_FOCUS == "API变更" || MIGRATION_TYPE == "框架版本" ? 
  "[API_CORRESPONDENCE_TABLE]
   | 旧 API   | 新 API   | 备注     | 示例        |
   | --------- | --------- | --------- | -------------- |
   | [OLD_API] | [NEW_API] | [CHANGES] | [CODE_EXAMPLE] | " : ""} |

### 4. 需采用的新模式
[DETECTED_EMERGING_PATTERNS]
- **模式**: [PATTERN_NAME]
- **用法**: [WHEN_TO_USE] 
- **实现**: [HOW_TO_IMPLEMENT]
- **优势**: [ADVANTAGES]

### 5. 需避免的过时模式
[DETECTED_OBSOLETE_PATTERNS]
- **过时模式**: [OLD_PATTERN]
- **为何避免**: [REASONS]
- **替代方案**: [NEW_PATTERN]
- **迁移步骤**: [CONVERSION_STEPS]

## 文件类型特定指令

${GENERATE_EXAMPLES == "true" ? 
  "### 配置文件
   [CONFIG_TRANSFORMATION_EXAMPLES]
   
   ### 主源文件
   [SOURCE_TRANSFORMATION_EXAMPLES]
   
   ### 测试文件
   [TEST_TRANSFORMATION_EXAMPLES]" : ""}

## 验证与安全

### 自动检查点
- 每次转换后需执行的验证
- 用于验证变更的测试
- 需监控的性能指标
- 需执行的兼容性检查

### 手动升级
需要人工干预的情况:
- [COMPLEX_CASES_LIST]
- [ARCHITECTURAL_DECISIONS]
- [BUSINESS_IMPACTS]

## 迁移监控

### 跟踪指标
- 自动迁移的代码百分比
- 需要手动验证的次数
- 自动转换的错误率
- 每个文件的平均迁移时间

### 错误报告
如何向 Copilot 报告不正确的转换:
- 用于改进规则的反馈模式
- 需记录的异常
- 需对指令进行的调整

\`\`\`

### 阶段三:上下文示例生成

${GENERATE_EXAMPLES == "true" ? 
  "#### 转换示例
   对于每个识别出的模式,生成:
   
   \`\`\`
   // 之前 (${SOURCE_REFERENCE})
   [OLD_CODE_EXAMPLE]
   
   // 之后 (${TARGET_REFERENCE}) 
   [NEW_CODE_EXAMPLE]
   
   // COPILOT 指令
   当你看到此模式 [TRIGGER] 时,按照以下步骤将其转换为 [NEW_PATTERN]:[STEPS]
   \`\`\`" : ""}

### 阶段四:验证与优化

#### 指令测试
- 在测试代码上应用指令
- 验证转换一致性
- 根据结果调整规则
- 记录异常和边界情况

#### 迭代优化  
${AUTOMATION_LEVEL == "激进" ? 
  "- 优化规则以最大化自动化
   - 减少检测中的误报
   - 提高转换准确性
   - 记录经验教训" : ""}

### 最终结果

使 GitHub Copilot 能够执行以下操作的迁移指令:
1. **自动应用** 未来修改中的相同转换
2. **保持一致性** 与新采用的约定一致  
3. **避免过时模式** 通过自动建议替代方案
4. **加速未来迁移** 利用积累的经验
5. **减少错误** 通过自动化重复转换

这些指令将 Copilot 转变为智能迁移助手,能够一致且可靠地重现您的技术演进决策。
"

典型用例

框架版本迁移

适用于记录从 Angular 14 到 Angular 17、React 类组件到 Hooks、或 .NET Framework 到 .NET Core 的过渡。自动识别破坏性变更并生成相应的转换规则。

技术栈演进

在完全替换技术时必不可少:jQuery 到 React、REST 到 GraphQL、SQL 到 NoSQL。创建包含模式映射的全面迁移指南。

架构重构

适用于大型重构,如单体到微服务、MVC 到整洁架构、或组件到可组合架构。为未来类似的转换保留架构知识。

设计模式现代化

用于采用新模式:仓储模式、依赖注入、观察者到响应式编程。记录原理和实现差异。

独特优势

🧠 人工智能增强

与传统的迁移文档不同,这些指令“训练” GitHub Copilot 在未来的代码修改中自动重现您的技术演进决策。

🔄 知识资本化

将特定的项目经验转化为可重用的规则,避免迁移专业知识的流失,加速未来类似的转换。

🎯 上下文感知的精确性

不是泛泛的建议,而是生成针对您特定代码库的指令,包含来自项目演进的实际前后示例。

自动化一致性

确保新添加的代码自动遵循新约定,防止架构退化,保持代码演进的连贯性。