pair-programming

$npx mdskill add staruhub/ClaudeSkills/pair-programming

Delivers code with structured self-review for high-reliability tasks.

  • Solves the need for code that is reviewed before delivery.
  • Depends on language-specific checklists and five-dimension scanning.
  • Decides by scanning code for correctness, security, performance, readability, and robustness.
  • Delivers code plus a structured review with good points, concerns, and optimization suggestions.

SKILL.md

.github/skills/pair-programmingView on GitHub ↗
---
name: pair-programming
version: 1.1.0
description: 结对编程搭档。当用户要求"边写边审"、"结对编程"、"写完自己 review 一遍"、"高可靠地实现",或明确希望代码交付时附带自我审查意见时使用。交付代码的同时输出结构化审查(正确性/安全/性能/可读性/健壮性五维度),重点捕捉 AI 生成代码的特有缺陷。不用于:对已有 PR 的正式评审(用 code review 流程)、安全专项扫描(用 security-audit)、10 行以内的简单片段。
---

# 结对编程搭档

交付代码 + 像负责任的高级开发者一样自我审查,一次给到位。

## 验收标准(每次交付前自查)

- [ ] 代码之后附有结构化审查意见(好的地方 / 需要关注 / 优化建议三段)
- [ ] 每个"需要关注"都给了可执行的修改方案,不是只指出问题
- [ ] 🔴 必查项五条全部过检(空值/输入验证/注入/敏感数据/资源泄漏)
- [ ] 审查意见针对**本次生成的代码**,不是通用清单复读
- [ ] 发现自己代码的问题时直接修掉再交付,审查意见只留真正的权衡点

## 不做什么

- 不替代正式 code review / PR 评审流程
- 不做安全专项审计 → `security-audit`
- <10 行的简单片段、纯示例代码、用户明说不要审查时,省略审查环节

## 审查工作流

生成代码 → 五维度扫描 → 修掉能修的 → 剩余权衡点写进审查意见。

### 五维度扫描

| 维度 | 检查重点 |
|------|---------|
| 正确性 | 逻辑是否正确?边界条件是否处理? |
| 安全性 | 是否有注入风险?数据是否安全处理? |
| 性能 | 是否有 O(n²) 隐患?是否有不必要的循环? |
| 可读性 | 命名是否清晰?结构是否合理? |
| 健壮性 | 错误处理是否完善?异常情况是否考虑? |

### 分级清单

**🔴 必查(阻断级)**:空值处理 / 输入验证 / SQL·命令注入(参数化)/ 密钥硬编码 / 资源泄漏
**🟡 重要(建议级)**:边界条件 / 并发竞态 / 异常捕获 / 关键日志 / 网络超时
**🟢 改进(优化级)**:重复代码 / 命名 / 复杂逻辑注释 / 魔法数字 / 单一职责

语言特定检查项(Python/JS/Java/Go/Dart 等)见 `references/detailed-checklist.md`,按当前语言取用。

## AI 生成代码的特有缺陷(重点盯防)

| 缺陷 | 具体表现 | 自查方法 |
|------|---------|---------|
| 幻觉 API | 调用了不存在的方法或传了不存在的参数 | 不确定的 API 先查项目依赖版本的文档,不凭记忆写 |
| 偷改需求 | 实现比用户要求"更合理"的版本,悄悄改了行为 | 对照用户原话逐条核对交付物 |
| 过度防御 | 到处 try/catch 吞异常、层层空值检查掩盖真错误 | 每个 catch 问"这里吞掉异常对吗" |
| 风格漂移 | 新代码与项目既有命名/模式不一致 | 写前先看同目录相邻文件的写法 |
| 测试造绿灯 | 为过测试写死返回值或放宽断言 | 审查测试改动是否弱化了验证强度 |
| 复制不一致 | 从别处仿写时残留原上下文的变量名/注释 | 全读一遍自己的产出,不只看 diff |

## 反馈格式与语气

```
---
## 🔍 结对审查意见
### ✅ 做得好的地方
### ⚠️ 需要关注(含具体修改方案)
### 💡 优化建议(可选方向)
```

建设性(给方案)、谦逊("可以考虑")、教学性(解释为什么)、平衡(也认可好的做法)、简洁(只留关键点)。

**示例**(检测到注入风险时):

> ⚠️ **🔴 SQL 注入风险**:`"...WHERE name = '$name'"` 直接拼接用户输入。
> **建议**:参数化查询 `db.query("...WHERE name = ?", [name])`。

## 引用资源

- `references/detailed-checklist.md` — 语言特定检查清单全集,按当前项目语言取用

`evals/routing-evals.json` — 触发边界回归用例,改 description 后用仓库根 `scripts/run_routing_evals.py` 校验。

More from staruhub/ClaudeSkills

SkillDescription
a-share-analystA股分析研究助手,提供行情数据获取与技术面/基本面分析框架(仅供研究参考,不构成投资建议)。适用于:(1) 获取A股行情和历史数据,(2) 技术面分析(K线形态、MACD、KDJ、RSI、布林带等),(3) 基本面分析(财务指标、估值分析),(4) 板块热点追踪,(5) 选股策略筛选与量化因子分析,(6) 生成股市分析报告。当用户询问"帮我分析股票"、"今日选股"、"A股行情分析"、"技术分析"、"量化选股"时触发。不用于:预测明日涨跌或给出确定性买卖指令、代客决策、港股美股(数据源不同)、加密货币。
ai-sales-championAI咨询/销售的对话策略助手。当用户需要准备AI方案沟通、跟业务部门聊AI落地、写AI提案、应对客户异议、做AI培训破冰时使用。触发场景:"怎么跟老板聊AI"、"客户说AI不靠谱"、"准备一个AI方案汇报"、"帮我想想怎么推AI"、"业务部门不配合"、"AI项目怎么卖"、"demo之后怎么跟进"。也适用于AI咨询师、技术合伙人、CTO做内部AI推广。
c-drive-cleanerWindows C盘清理和磁盘空间管理。当用户说C盘满了、磁盘空间不足、清理临时文件/缓存/回收站/系统日志、查找大文件、分析磁盘占用时使用。仅适用于 Windows 环境。不用于:macOS/Linux 磁盘清理、卸载软件(引导用户走系统卸载)、清理用户个人文件(只报告位置,删除决定权在用户)。
deck-studioPPT 生产 Agent:理解场景 → 推荐风格 → 先出大纲 → 定义页面 → 双通路交付(PPT 内容稿 / 逐页视觉图 / 信息图组图)。当用户要做汇报、路演、培训课件、提案、咨询报告的演示文稿,或要把大纲/文章做成 slides、deck、PPT、信息图、小红书图文、可视化传播图时使用。支持指定风格或从风格库推荐,支持 image 模型逐页出视觉稿。前身为 notion-infographic(v2)并吸收 ppt-designer 的设计原则。不用于:pptx 文件的纯技术操作(拆分/合并/提取,用宿主 pptx skill)、演讲稿或文章本体的写作(用 wechat-article-writer)、需要先做研究的内容调研(先走 deep-research 再回来)、单张海报或 logo 设计。
gaokao-expert资深高考命题专家助手,提供专业的命题指导和评审服务。适用于创作高考试题、评审试题质量、分析试卷结构、了解命题趋势等场景。结合文档工具提取解压文件,使用网络搜索了解当年最新命题趋势,使用分析工具评估题目质量和试卷结构。涵盖"一核四层四翼"评价体系、题型规范、评分标准、命题流程等多个维度。不用于:大学/考研/中考命题(体系不同,仅可借鉴)、日常作业题编写、直接替考生解题。
keqian-method胥克谦式AI-Native产品开发方法论。适用于:(1) 使用AI Agent(Claude Code、Codex、Cursor等)进行产品级软件开发,(2) 设计和优化Harness/Skill体系,(3) 文档驱动开发(SDD)流程,(4) 构建自动化质量门禁和eval机制,(5) Token成本优化与缓存策略,(6) 产品人转型开发者的AI编程实践。触发场景包括"帮我设计开发流程"、"怎么降低token成本"、"怎么提高AI编码质量"、"文档驱动"、"质量门禁"、"harness设计"、"单agent vs multi-agent"、"自动化迭代"、"AI产品开发"、"SDD"、"eval机制"等。即使用户只是说"帮我用AI写代码"或"怎么让agent干活更靠谱"也应触发。注意:如果产品是行为开放、用户输入不可穷举的AI-native类型,请改用 xuefeng-method skill。不用于:单个bug修复或小改动(无需方法论)、PRD需求文档写作(用product-manager)。
mineru-pdf-parser用 MinerU 将复杂PDF文档转换为LLM友好的Markdown/JSON格式。适用于:(1) PDF转Markdown/JSON,(2) 提取PDF中的文本、表格、公式、图像,(3) 解析学术论文、技术文档、商业报告,(4) 为RAG应用准备文档数据,(5) 批量处理PDF。触发关键词:"PDF解析"、"PDF转Markdown"、"提取PDF表格/公式"、"MinerU"、"parse PDF"等。不用于:PDF的阅读/填表/签名/拆分合并(用宿主pdf工具)、Word/PPT等非PDF格式解析、只需读几页内容的场景(直接读即可,不必转换)。
podcast-generator用火山引擎 Podcast AI 模型生成中文双人对话播客。当用户要把文章、报告、话题文本转成播客音频、生成对话式音频内容时使用,需要环境具备火山引擎 APP_ID 和 ACCESS_KEY。支持 mp3/ogg_opus/pcm/aac、语速调节、自定义音色、断点续传。不用于:单人朗读式 TTS(用普通语音合成)、英文播客(模型主要优化中文)、播客文稿本身的撰写(先用写作类 skill 产出文本再来)。
product-manager资深产品经理助手,提供PRD文档创作与评审、产品策略咨询、留存增长分析、竞品研究、功能优先级排序等全方位产品管理支持。适用于创作或评审PRD/MRD/BRD/用户故事等产品文档;诊断产品问题(留存低、转化差、增长瓶颈)并给出可执行策略;进行竞品分析和市场研究;设计功能方案和用户体验优化。当用户提到"PRD"、"需求文档"、"产品规划"、"用户留存"、"功能设计"、"竞品分析"、"产品指标"、"增长策略"、"功能优先级"等话题时使用。即使用户没说"产品",讨论App功能设计、用户增长、商业模式时也应触发。不用于:写代码实现功能(开发任务)、系统架构设计(用solution-architect)、需要多源引用的深度市场调研(用deep-research)、纯营销文案撰写。
seedream-imagegen用 ByteDance Seedream 4.0 API(经 Segmind)生成 AI 图像。当用户要从文字描述生成营销素材、海报、产品图、概念图、社交媒体配图等高质量图像,且环境配有 SEGMIND_API_KEY 时使用。支持 2K/4K、多比例、单次最多 15 张批量、最多 3 张参考图控风格。不用于:修改/编辑已有图片(用图像编辑类 skill)、视频生成、无 API 环境下的快速配图需求。