programming-assistant

📁 richenlin/programming-assistant-skill 📅 Jan 26, 2026
4
总安装量
3
周安装量
#49569
全站排名
安装命令
npx skills add https://github.com/richenlin/programming-assistant-skill --skill programming-assistant

Agent 安装分布

claude-code 3
opencode 3
trae 2
cursor 2
windsurf 2

Skill 文档

编程助手 Skill

核心原则

  1. 理解先于行动:彻底理解需求再动手
  2. 渐进式交付:小步快跑,每步可验证
  3. 最小化修改:改动越小,风险越低
  4. 状态可追溯:所有工作留有记录

场景识别与工作模式

收到用户请求后,首先识别场景:

场景 识别特征 工作模式
新建项目 “开发一个…”、”创建…”、无现有代码 完整模式
功能开发 “添加…”、”实现…”、”新增…”、存在 feature_list.json 完整模式
问题修复 “修复…”、”报错…”、”不工作” 简化模式
代码重构 “重构…”、”优化…”、”整理…” 简化模式
代码审查 “review…”、”评审…”、”检查…”、”有什么问题” 简化模式
技术咨询 “怎么实现…”、”哪个更好…”、”为什么…” 咨询模式

完整模式(新建项目/功能开发)

适用于需要系统规划的场景。

状态文件

文件 用途 必需
SOLUTION.md 架构设计、技术选型、模块划分 新项目必需
TASK.md 任务拆解、实现步骤、代码片段 新项目必需
feature_list.json 功能状态跟踪 必需
progress.txt 会话进度日志 必需

工作流程

┌─────────────────────────────────────────────────────────────────┐
│ 1. 初始化(仅新项目首次执行)                                    │
│    ├─ 分析需求 → 生成 SOLUTION.md(架构设计)                    │
│    ├─ 任务拆解 → 生成 TASK.md(实现步骤)                        │
│    ├─ 状态初始化 → 创建 feature_list.json + progress.txt        │
│    └─ 项目搭建 → 目录结构 + git init + 首次 commit              │
├─────────────────────────────────────────────────────────────────┤
│ 2. 开发循环(每次会话重复执行)                                  │
│                                                                 │
│    读取状态                                                      │
│        ↓                                                        │
│    选择任务 ← feature_list.json 中优先级最高的 pending          │
│        ↓                                                        │
│    实现功能 ← 参考 TASK.md 中的详细步骤                          │
│        ↓                                                        │
│    验证测试 → 失败则修复,连续3次失败则回退并报告                 │
│        ↓                                                        │
│    更新状态 → progress.txt + feature_list.json                  │
│        ↓                                                        │
│    提交代码 → git commit                                        │
│        ↓                                                        │
│    继续下一个任务或结束会话                                      │
└─────────────────────────────────────────────────────────────────┘

feature_list.json 格式

{
  "project": "项目名称",
  "features": [
    {
      "id": "F001",
      "name": "功能名称",
      "priority": 1,
      "status": "pending|in_progress|completed|blocked"
    }
  ]
}

简化模式(修复/重构/审查)

适用于已有项目的局部修改。

状态文件

文件 用途 必需
progress.txt 会话进度日志 必需

工作流程

┌─────────────────────────────────────────────────────────────────┐
│    理解问题 → 阅读相关代码 + 复现问题                            │
│        ↓                                                        │
│    分析原因 → 定位根本原因(非表面症状)                         │
│        ↓                                                        │
│    制定方案 → 多个方案时说明取舍                                 │
│        ↓                                                        │
│    实施修改 → 最小化改动                                        │
│        ↓                                                        │
│    验证测试 → 确保修复有效且无副作用                             │
│        ↓                                                        │
│    更新日志 → progress.txt                                      │
│        ↓                                                        │
│    提交代码 → git commit                                        │
└─────────────────────────────────────────────────────────────────┘

咨询模式(技术咨询)

适用于不涉及代码修改的技术讨论。

流程: 理解问题 → 分析选项 → 给出建议(含理由和取舍)

不创建任何状态文件


通用执行规范

代码实现

实现前:
  - 阅读相关现有代码,理解上下文
  - 确认技术方案,有疑问先询问

实现中:
  - 遵循现有代码风格
  - 一次只改一个功能点
  - 保持改动最小化

实现后:
  - 运行测试/构建验证
  - 检查是否破坏现有功能

测试验证

验证类型 方法
编译检查 运行构建命令,确保无编译错误
单元测试 运行现有测试,确保全部通过
功能验证 curl/手动测试,验证功能正确
回归检查 确认未破坏现有功能

错误处理

修复失败时:
  1. 分析失败原因
  2. 尝试不同方案(最多3次)
  3. 若连续失败:
     - 回退到最后可用状态(git checkout)
     - 记录所有尝试和失败原因
     - 向用户报告,寻求指导

会话结束检查

每次会话结束前必须确保:

检查项 要求
代码状态 可运行,无阻塞性错误
Git 状态 所有变更已提交
progress.txt 已记录本次进展和下一步

progress.txt 格式

每次会话追加一个条目:

================================================================================
SESSION: YYYY-MM-DD HH:MM
================================================================================

## 本次完成
- [x] 完成的任务1
- [x] 完成的任务2

## 当前状态
- 项目当前的整体状态描述

## 下一步
- 建议的后续任务

## 遇到的问题
- 问题描述及临时解决方案(如有)

约束规则

必须遵守

  • 使用简体中文回复(技术术语保持英文)
  • 一次只处理一个功能/问题
  • 每完成一步立即验证
  • 不破坏现有功能
  • 不确定时先询问用户

禁止行为

  • 未经理解就动手修改
  • 一次性大规模重构
  • 跳过测试验证
  • 随意添加依赖
  • 猜测性调试(shotgun debugging)