diff --git a/.claude/commands/build.md b/.claude/commands/build.md new file mode 100644 index 0000000..10a80cc --- /dev/null +++ b/.claude/commands/build.md @@ -0,0 +1,35 @@ +--- +description: 本地编译与静态检查(后端 go build/vet + 前端 flutter analyze) +argument-hint: 可选 backend | client,留空则全部 +model: claude-sonnet-4-6 +allowed-tools: Bash +--- + +执行本地编译与静态检查,用于快速验证代码可编译、无警告。**不产出发布制品**(多平台打包由 CI 在发版时完成)。 + +参数 `$ARGUMENTS`: +- 留空:检查后端 + 前端 +- `backend`:仅检查后端 +- `client`:仅检查前端 + +任意步骤失败立即停止并报告错误(贴出关键错误输出)。 + +## 后端检查(参数为空或 backend 时执行) + +```bash +export PATH="/opt/homebrew/bin:$PATH" +cd backend && go build ./... # 1. 编译通过 +cd backend && go vet ./... # 2. 无编译警告 +``` + +## 前端检查(参数为空或 client 时执行) + +```bash +export PATH="/opt/homebrew/bin:$PATH" +cd client && flutter analyze --no-fatal-infos --no-fatal-warnings # error 才算失败,warning/info 允许 +``` + +## 完成报告 + +全部通过后,用一行 `result:` 汇总(如 `result: 后端 build+vet 通过、前端 analyze 无 error`)。 +任一失败则停止,指出失败的命令和原因。 diff --git a/.claude/commands/release.md b/.claude/commands/release.md index 5336b40..8ccc3df 100644 --- a/.claude/commands/release.md +++ b/.claude/commands/release.md @@ -1,3 +1,10 @@ +--- +description: 执行本地发版流程(build → test → CHANGELOG → commit → tag → push) +argument-hint: 如 1.0.22 +model: claude-sonnet-4-6 +allowed-tools: Bash, Read, Edit, Write +--- + 执行本地发版流程,版本号为 $ARGUMENTS。 按以下步骤顺序执行,任意步骤失败立即停止并报告错误。 diff --git a/.claude/commands/test.md b/.claude/commands/test.md new file mode 100644 index 0000000..9ea5bf1 --- /dev/null +++ b/.claude/commands/test.md @@ -0,0 +1,36 @@ +--- +description: 运行本地测试(后端 go test + 前端 flutter test) +argument-hint: 可选 backend | client,留空则全部 +model: claude-sonnet-4-6 +allowed-tools: Bash +--- + +运行本地自动化测试。任意用例失败立即停止并报告(贴出失败用例与关键输出)。 + +参数 `$ARGUMENTS`: +- 留空:后端 + 前端 +- `backend`:仅后端 +- `client`:仅前端 + +## 后端测试(参数为空或 backend 时执行) + +```bash +export PATH="/opt/homebrew/bin:$PATH" +cd backend && go test ./... +``` + +不得有 FAIL。`[no test files]` 属正常(该包无测试)。 + +## 前端测试(参数为空或 client 时执行) + +```bash +export PATH="/opt/homebrew/bin:$PATH" +cd client && flutter test +``` + +须 `All tests passed!`。 + +## 完成报告 + +全部通过后用一行 `result:` 汇总(如 `result: 后端 go test 全过、前端 121 测试全过`)。 +任一失败则停止,列出失败用例名与原因,不要自行修改业务代码(如需修复,告知用户或交给对应 coder)。