Add 'Commit 信息规范' section to Development Rules requiring: - Conventional commits format in title - Detailed per-file/per-feature change descriptions in body - Root cause explanation for bug fixes - Architectural decision rationale when applicable Also remove v0.11.0 changelog that was mistakenly added to CLAUDE.md (changelogs belong in commit messages and GitHub Releases, not here).
4.3 KiB
4.3 KiB
CLAUDE.md
Project Overview
CodePilot — Claude Code 的桌面 GUI 客户端,基于 Electron + Next.js。
Release Checklist
发版流程(CI 自动打包 + 发布):
package.json中的"version"字段更新为新版本号package-lock.json中的对应版本(运行npm install会自动同步)- 提交代码并推送到
main分支 - 创建并推送 tag:
git tag v{版本号} && git push origin v{版本号} - 推送 tag 后 CI 会自动触发(
.github/workflows/build.yml):- 自动在 macOS / Windows / Linux 上构建
- 自动收集所有平台产物(DMG、exe、AppImage、deb、rpm)
- 自动创建 GitHub Release 并上传所有产物
- 等待 CI 完成,在 GitHub Release 页面补充 New Features / Bug Fixes 描述
- 可通过
gh run list查看 CI 状态,gh run rerun <id> --failed重试失败的任务
重要:不要手动创建 GitHub Release,否则会与 CI 自动创建的 Release 冲突。如果需要本地打包测试,使用 npm run electron:pack:mac 但不要手动上传到 Release。
发版纪律
禁止自动发版:不要在完成代码修改后自动执行 git push + git tag + git push origin tag 发版流程。必须等待用户明确指示"发版"、"发布"或类似确认后才能执行。代码提交(commit)可以正常进行,但推送和打 tag 必须由用户确认。
Development Rules
提交前必须详尽测试:
- 每次提交代码前,必须在开发环境中充分测试所有改动的功能,确认无回归
- 涉及前端 UI 的改动需要实际启动应用验证(
npm run dev或npm run electron:dev) - 涉及构建/打包的改动需要完整执行一次打包流程验证产物可用
- 涉及多平台的改动需要考虑各平台的差异性
新增功能前必须详尽调研:
- 新增功能前必须充分调研相关技术方案、API 兼容性、社区最佳实践
- 涉及 Electron API 需确认目标版本支持情况
- 涉及第三方库需确认与现有依赖的兼容性
- 涉及 Claude Code SDK 需确认 SDK 实际支持的功能和调用方式
- 对不确定的技术点先做 POC 验证,不要直接在主代码中试错
Commit 信息规范:
- 每次 commit 必须在 message body 中写清楚每个改动的具体内容和原因
- 标题行使用 conventional commits 格式(feat/fix/refactor/chore 等)
- body 中按文件或功能分组,说明:改了什么、为什么改、影响范围
- 如果是修复 bug,说明根因是什么,不只是描述现象
- 如果涉及架构决策(如选择方案 A 而非方案 B),简要说明理由
Release Notes 规范
每次发布 GitHub Release 时,必须包含以下内容:
标题格式: CodePilot v{版本号}
正文结构:
## New Features / Bug Fixes(按实际内容选择标题)
- **功能/修复标题** — 简要描述改动内容和原因
## Downloads
- **CodePilot-{版本}-arm64.dmg** — macOS Apple Silicon (M1/M2/M3/M4)
- **CodePilot-{版本}-x64.dmg** — macOS Intel
## Installation
1. 下载对应芯片架构的 DMG 文件
2. 打开 DMG,将 CodePilot 拖入 Applications 文件夹
3. 首次打开时如遇安全提示,前往 **系统设置 → 隐私与安全性** 点击"仍要打开"
4. 在 Settings 页面配置 Anthropic API Key 或环境变量
## Requirements
- macOS 12.0+
- Anthropic API Key 或已配置 `ANTHROPIC_API_KEY` 环境变量
- 如需使用代码相关功能,建议安装 Claude Code CLI
## Changelog (since v{上一版本})
| Commit | Description |
|--------|-------------|
| `{hash}` | {commit message} |
注意事项:
- 大版本(功能更新)用
## New Features+## Bug Fixes分区 - 小版本(纯修复)用
## Bug Fix即可 - Downloads、Installation、Requirements 每次都要写,方便新用户
- Changelog 表格列出自上一版本以来的所有 commit
Build Notes
- macOS 构建产出 DMG(arm64 + x64),Windows 产出 NSIS 安装包或 zip
scripts/after-pack.js会在打包时显式重编译 better-sqlite3 为 Electron ABI,确保原生模块兼容- 构建前清理
rm -rf release/ .next/可避免旧产物污染 - 构建 Windows 包后需要
npm rebuild better-sqlite3恢复本地开发环境 - macOS 交叉编译 Windows 需要 Wine(Apple Silicon 上可能不可用),可用 zip 替代 NSIS