programming-assistant

全栈开发和架构设计助手,覆盖“开发、实现、编写代码、继续开发、问题修复、代码重构、架构设计、技术方案评估/代码审查”等场景,适用于新项目与已有代码仓库的全栈研发任务。

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "programming-assistant" with this command: npx skills add richenlin/programming-assistant-skill/richenlin-programming-assistant-skill-programming-assistant

编程助手 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)

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.