1. 基本信息
| 项目 | 内容 |
|---|---|
| 名称 | Creating_Oracle_To_Postgres_Migration_Bug_Report_Github_Awesome_Copilot |
| 作者/维护者 | GitHub(github/awesome-copilot 官方合集仓库,社区贡献并经官方审核合并) |
| 来源链接 | https://github.com/github/awesome-copilot/tree/main/skills/creating-oracle-to-postgres-migration-bug-report |
| 许可证 | MIT(仓库根目录明确声明,来自 GitHub API) |
| GitHub Stars | 38,969(合集仓库整体,来自 GitHub API;不代表本技能自身热度,见第 2 章说明) |
| Forks | 4,941(合集仓库整体,来自 GitHub API) |
| 最新版本 | 该子目录最近一次提交于 2026-08-11(来自 GitHub API commits 记录) |
| 安装方式 | 复制该子目录到 agent 的 skills 目录,或通过 Copilot 插件市场安装 |
2. 功能介绍与亮点
本技能是一个把 Oracle→PostgreSQL 数据库迁移过程中发现的行为差异类缺陷,转写成标准化缺陷报告的写作工具。它不做任何代码分析或迁移操作,只负责把“发现了一个问题”这件事,沉淀成一份任何人接手都能看懂、能验证的文档。
核心能力:
- 固定报告结构:状态(已解决/未解决/进行中)、受影响组件、关联测试、严重度、问题描述(预期 Oracle 行为 vs 实际 PostgreSQL 行为)、可复现步骤(含种子数据、操作、预期结果、实际结果)、根因、解决方案(含具体文件路径)、验证步骤,缺一不可。
- 自带模板文件:
references/BUG-REPORT-TEMPLATE.md是一份可直接套用的报告骨架,技能正文只负责讲清楚每个字段该怎么填、举例说明常见的行为差异类型(空字符串与 NULL 的语义差异、类型强制转换严格度、排序规则、序列取值、时区、字段填充、约束行为等)。 - 命名与归档约定明确:报告统一存到
Reports/{ProjectName}/BUG_REPORT_<描述性短语>.md,避免团队各写各的、事后难以检索。 - 零前置依赖:不要求已有
.sln项目、不依赖同族其他技能(迁移计划、脚手架、代码迁移等)产出的中间文件——只要能描述清楚一个 Oracle/PostgreSQL 行为差异导致的缺陷,就能直接用。
主要亮点:官方合集仓库审核收录、纯 Markdown 零执行零外联、内容虽轻量但结构完整可直接套用、不依赖迁移流水线其他阶段的产物即可独立使用。
3. 适用场景
所属分类:工程效率与代码质量(核心产出是围绕代码缺陷给出结构化的记录与排查依据,直接服务于“定位问题、写清楚根因与修复方案”这件工程工作,而非单纯的文档排版或知识整理)。
具体使用场景:
- 团队在把 .NET 应用从 Oracle 迁移到 PostgreSQL 的过程中发现了一个因两数据库行为差异导致的缺陷(如空字符串被判断为 NULL、排序结果不一致),需要写一份严重度分级、根因明确、可验证的缺陷报告;
- Code Review 或迁移收口阶段,把口头描述的“这里好像有问题”整理成有复现步骤、有验证清单的正式记录,方便交接与追踪;
- 团队希望统一缺陷报告格式,避免不同成员各写各的、事后无法检索。
受益人群:负责 Oracle 到 PostgreSQL 数据库迁移的后端开发者、DBA 与技术负责人,尤其是需要把口头/零散的缺陷发现固化为团队可追溯文档的初中级开发者。
4. 跨 Agent 兼容性
| Agent | 结论 | 依据 |
|---|---|---|
| Claude Code | 原生支持 | 标准 SKILL.md(YAML frontmatter + Markdown 正文 + 单个 references 模板文件),无外部依赖、无网络请求、无代码执行,符合 Agent Skills 通用规范 |
| Codex | 原生支持 | 纯文本写作指导技能,不涉及联网或系统调用,不受沙箱断网限制 |
| OpenClaw | 未验证 | 未找到该平台的直接安装记录,但技能本身不含平台专有语法,理论上可直接迁移 |
| Hermes Agent | 未验证 | 同上,未找到具体验证来源 |
5. 推荐理由
Oracle→PostgreSQL 迁移中发现的缺陷,往往源于两个数据库微妙的行为差异,很容易被写成一句模糊的“这里不对”就了事,导致后续人接手时得从头排查一遍。本技能把“写清楚一个缺陷”这件事拆成固定字段,逼着记录者把预期行为、实际行为、复现步骤、根因、修复方案都落到纸面上,而且不依赖同族其他迁移技能已经产出的任何中间文件——发现问题当下就能直接用,是整条迁移工具链里门槛最低、复制即用的一环。
6. 评分
| 维度 | 分数 | 说明 |
|---|---|---|
| 受欢迎程度 | 7 | 由 GitHub 官方审核合并收录进其官方维护的合集仓库;该子技能自身暂无独立于合集整体的第三方热度证据 |
| 可用性 | 8 | 复制即用、零配置、零付费依赖,不依赖同族其他技能已产出的中间文件(.sln 项目、迁移检查清单等)即可独立使用,是同族中前置门槛最低的一个;内容体量小于同族“风险核对”类技能,故未评为 9-10 |
| 安全性 | 9 | 纯 Markdown 写作指导 + 一份模板文件,不含任何可执行代码或脚本,不联网、不写入代码库、不要求任何凭据 |
安全检查清单逐项结果:① 不执行任何 shell 命令,纯文本写作指导 ② 不联网、无数据外发 ③ 不要求任何 API key 或凭据 ④ 正文未发现可疑指令或注入迹象 ⑤ 官方合集仓库审核收录,作者信誉良好 ⑥ License 明确(MIT)⑦ 最近一次维护在 2026-08-11,处于活跃状态。
综合评分(三项均值):8.0
7. 跟同类 Skills 相比的优势
| 技能 | 定位 | 与本技能的差异 |
|---|---|---|
| sentry-debug-issue(Sentry 官方) | 对接 Sentry 平台,自动定位线上报错根因并生成修复提交 | 面向已接入 Sentry 监控的通用应用;本技能不依赖任何监控平台,专注于 Oracle/PostgreSQL 迁移场景下的行为差异类缺陷记录,且不自动修复代码 |
| session-report(Anthropic 官方) | 本地生成 Claude Code 会话的 token/cache 用量分析报告 | 报告对象是“Agent 会话本身的资源消耗”;本技能报告对象是“数据库迁移中的功能缺陷”,二者用途完全不同 |
| Claude-BugHunter | 71 个技能覆盖漏洞赏金全流程,含授权范围验证与证据脱敏 | 面向安全测试场景的完整工作流工具集;本技能只做单一动作(写结构化缺陷报告),不涉及安全测试或漏洞挖掘,更轻量、更聚焦 |
核心差异化:现有同类技能要么绑定特定监控平台(Sentry),要么服务于完全不同的报告对象(会话资源消耗、安全漏洞),本技能是目前索引内唯一专门针对“Oracle→PostgreSQL 行为差异导致的缺陷”给出标准化记录格式的技能,且不需要任何外部平台接入。
8. 用户评价
该技能目前在第三方平台尚无具名用户评价。
9. 其他补充
该技能是 github/awesome-copilot 仓库 Oracle→PostgreSQL 迁移技能族(共 10 个子技能,覆盖发现分类、测试规划、测试脚手架、写集成测试、迁移数据访问代码、迁移存储过程、写缺陷报告、迁移前后风险核对验证等阶段)的一员,各阶段技能可独立使用、彼此不强制依赖。
10. 安装使用方式
- Claude Code / Codex:将
skills/creating-oracle-to-postgres-migration-bug-report整个子目录(含SKILL.md与references/BUG-REPORT-TEMPLATE.md)复制到本地 agent 的 skills 目录下,无需额外配置或依赖安装。 - GitHub Copilot:可通过 Copilot 插件市场从
github/awesome-copilot仓库直接安装。 - 安装后注意事项:无需重启;在描述“发现了一个 Oracle/PostgreSQL 迁移相关缺陷”时会被自动触发,也可直接要求 agent“按这个模板写一份缺陷报告”手动触发。
11. 注意事项
- 本技能只负责“写报告”这一动作,不做代码分析、不做实际的 bug 定位或修复,需要使用者自己已经确认了缺陷的根因与复现步骤。
- 报告模板与写作约定针对 .NET/C# 技术栈的 Oracle→PostgreSQL 迁移场景设计(如项目命名沿用
{ProjectName}程序集/文件夹名的约定),用于其他语言栈的迁移项目时需要自行调整命名规则,但报告结构本身与技术栈无关。 - OpenClaw / Hermes Agent 上暂无直接验证记录,理论上因不涉及平台专有语法可直接迁移,但实际兼容性建议使用前自行验证。