🚀 快速安装
复制以下命令并运行,立即安装此 Skill:
npx @anthropic-ai/skills install github/awesome-copilot/generate-custom-instructions-from-codebase
💡 提示:需要 Node.js 和 NPM
迁移与代码演进指令生成器
配置变量
${MIGRATION_TYPE="框架版本升级|架构重构|技术迁移|依赖项更新|模式变更"}
<!-- 迁移或演进的类型 -->
${SOURCE_REFERENCE="分支|提交|标签"}
<!-- 源参考点(变更前状态) -->
${TARGET_REFERENCE="分支|提交|标签"}
<!-- 目标参考点(变更后状态) -->
${ANALYSIS_SCOPE="整个项目|特定文件夹|仅修改的文件"}
<!-- 分析范围 -->
${CHANGE_FOCUS="重大变更|新约定|过时模式|API变更|配置"}
<!-- 变更的主要方面 -->
${AUTOMATION_LEVEL="保守|平衡|积极"}
<!-- Copilot 建议的自动化级别 -->
${GENERATE_EXAMPLES="true|false"}
<!-- 包含转换示例 -->
${VALIDATION_REQUIRED="true|false"}
<!-- 应用前是否需要验证 -->
生成的提示词
"分析两个项目状态之间的代码演进,为 GitHub Copilot 生成精确的迁移指令。这些指令将指导 Copilot 在未来的修改中自动应用相同的转换模式。请遵循以下方法:
### 阶段 1:对比状态分析
#### 结构变更检测
- 比较 ${SOURCE_REFERENCE} 和 ${TARGET_REFERENCE} 之间的文件夹结构
- 识别移动、重命名或删除的文件
- 分析配置文件中的变更
- 记录新增的依赖项和已移除的依赖项
#### 代码转换分析
${MIGRATION_TYPE == "框架版本升级" ?
"- 识别框架版本之间的 API 变更
- 分析正在使用的新特性
- 记录过时的方法/属性
- 注意语法或约定变更" : ""}
${MIGRATION_TYPE == "架构重构" ?
"- 分析架构模式变更
- 识别引入的新抽象
- 记录职责重组
- 注意数据流的变更" : ""}
${MIGRATION_TYPE == "技术迁移" ?
"- 分析用一种技术替换另一种技术的情况
- 识别功能等价性
- 记录 API 和语法变更
- 注意新的依赖项和配置" : ""}
#### 转换模式提取
- 识别应用的重复性转换
- 分析从旧格式到新格式的转换规则
- 记录例外情况和特殊案例
- 创建前后对照矩阵
### 阶段 2:迁移指令生成
创建一个 `.github/copilot-migration-instructions.md` 文件,结构如下:
\`\`\`markdown
# GitHub Copilot 迁移指令
## 迁移上下文
- **类型**:${MIGRATION_TYPE}
- **从**:${SOURCE_REFERENCE}
- **到**:${TARGET_REFERENCE}
- **日期**:[生成日期]
- **范围**:${ANALYSIS_SCOPE}
## 自动转换规则
### 1. 强制性转换
${AUTOMATION_LEVEL != "保守" ?
"[自动转换规则]
- **旧模式**:[旧代码]
- **新模式**:[新代码]
- **触发条件**:何时检测此模式
- **操作**:自动应用的转换" : ""}
### 2. 需验证的转换
${VALIDATION_REQUIRED == "true" ?
"[需要验证的转换]
- **检测到的模式**:[描述]
- **建议的转换**:[新方法]
- **所需验证**:[验证标准]
- **替代方案**:[替代选项]" : ""}
### 3. API 对应关系
${CHANGE_FOCUS == "API变更" || MIGRATION_TYPE == "框架版本升级" ?
"[API 对应表]
| 旧 API | 新 API | 说明 | 示例 |
| --------- | --------- | --------- | -------------- |
| [旧_API] | [新_API] | [变更说明] | [代码示例] | " : ""} |
### 4. 需采用的新模式
[检测到的新兴模式]
- **模式**:[模式名称]
- **使用时机**:[何时使用]
- **实现方式**:[如何实现]
- **优势**:[优点]
### 5. 需避免的过时模式
[检测到的过时模式]
- **过时模式**:[旧模式]
- **避免原因**:[原因]
- **替代方案**:[新模式]
- **迁移步骤**:[转换步骤]
## 特定文件类型指令
${GENERATE_EXAMPLES == "true" ?
"### 配置文件
[配置转换示例]
### 主要源文件
[源文件转换示例]
### 测试文件
[测试文件转换示例]" : ""}
## 验证与安全
### 自动控制点
- 每次转换后需要执行的验证
- 需要运行的测试以验证变更
- 需要监控的性能指标
- 需要执行的兼容性检查
### 手动升级
需要人工干预的情况:
- [复杂案例列表]
- [架构决策]
- [业务影响]
## 迁移监控
### 跟踪指标
- 自动迁移代码的百分比
- 需要手动验证的次数
- 自动转换的错误率
- 每个文件的平均迁移时间
### 错误报告
如何向 Copilot 报告不正确的转换:
- 用于改进规则的反馈模式
- 需要记录的例外情况
- 需要对指令进行的调整
\`\`\`
### 阶段 3:上下文示例生成
${GENERATE_EXAMPLES == "true" ?
"#### 转换示例
对于每个识别出的模式,生成:
\`\`\`
// 变更前 (${SOURCE_REFERENCE})
[旧代码示例]
// 变更后 (${TARGET_REFERENCE})
[新代码示例]
// COPILOT 指令
当你看到此模式 [触发条件] 时,按照以下步骤将其转换为 [新模式]:[步骤]
\`\`\`" : ""}
### 阶段 4:验证与优化
#### 指令测试
- 在测试代码上应用指令
- 验证转换的一致性
- 根据结果调整规则
- 记录例外情况和边缘案例
#### 迭代优化
${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 在未来的代码修改中自动重现你的技术演进决策。
🔄 知识资本化
将特定的项目经验转化为可重用的规则,避免迁移专业知识的流失,并加速未来类似的转换。
🎯 上下文感知的精确性
不是提供通用建议,而是生成针对你特定代码库的指令,并使用来自你项目演进的真实前后对比示例。
⚡ 自动化一致性
确保新增代码自动遵循新的约定,防止架构倒退并保持代码演进的连贯性。
📄 原始文档
完整文档(英文):
https://skills.sh/github/awesome-copilot/generate-custom-instructions-from-codebase
💡 提示:点击上方链接查看 skills.sh 原始英文文档,方便对照翻译。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

评论(0)