From e01f3330a2720a6a3339a550dfe0b1c2cdc2fdd1 Mon Sep 17 00:00:00 2001 From: sion <450702724@qq.com> Date: Mon, 23 Mar 2026 21:45:45 +0800 Subject: [PATCH] =?UTF-8?q?feat(skills):=20=E6=B7=BB=E5=8A=A0=20monisuo=20?= =?UTF-8?q?=E5=BC=80=E5=8F=91=E6=8A=80=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 创建结构化开发流程技能 (monisuo-dev) - 添加 Feature Spec 模板 - 添加 API 测试脚本模板 - 完整的 4 阶段开发流程: 1. 需求结构化定义 2. 模块化生成 3. 测试与重构 4. 构建与部署 文件清单: - .agents/skills/monisuo-dev/SKILL.md (主技能文件) - .agents/skills/monisuo-dev/README.md (使用指南) - docs/features/FEATURE_TEMPLATE.md (Feature Spec 模板) - tests/api/test-template.sh (API 测试模板) --- .agents/skills/monisuo-dev/README.md | 165 +++++++++ .agents/skills/monisuo-dev/SKILL.md | 507 +++++++++++++++++++++++++++ docs/features/FEATURE_TEMPLATE.md | 187 ++++++++++ tests/api/test-template.sh | 136 +++++++ 4 files changed, 995 insertions(+) create mode 100644 .agents/skills/monisuo-dev/README.md create mode 100644 .agents/skills/monisuo-dev/SKILL.md create mode 100644 docs/features/FEATURE_TEMPLATE.md create mode 100644 tests/api/test-template.sh diff --git a/.agents/skills/monisuo-dev/README.md b/.agents/skills/monisuo-dev/README.md new file mode 100644 index 0000000..4601196 --- /dev/null +++ b/.agents/skills/monisuo-dev/README.md @@ -0,0 +1,165 @@ +# Monisuo 开发技能使用指南 + +## 快速开始 + +### 1. 使用技能 + +在 OpenClaw 中提及 "monisuo 开发" 即可触发此技能。 + +### 2. 开发流程 + +``` +需求分析 → 模块化开发 → 测试验证 → 构建部署 +``` + +## 详细说明 + +### Phase 1: 需求结构化定义 + +**目标**: 将需求转化为结构化的 Feature Spec + +**步骤**: +1. 收集需求信息 +2. 创建 `docs/features/[功能名].md` +3. 填写 Feature Spec 模板 +4. 评审并确认 + +**模板位置**: `docs/features/FEATURE_TEMPLATE.md` + +### Phase 2: 模块化开发 + +**目标**: 按模块实现功能 + +**步骤**: +1. 根据设计文档实现代码 +2. 遵循代码规范 +3. 使用设计系统(AppSpacing, AppRadius, AppColorScheme) +4. 提交代码 + +**Flutter 开发**: +```bash +cd flutter_monisuo +flutter pub get +flutter run -d chrome +``` + +**Admin 开发**: +```bash +cd monisuo-admin +pnpm install +pnpm dev +``` + +### Phase 3: 测试与重构 + +**目标**: 确保代码质量和功能正确性 + +**步骤**: +1. 应用 clean-code 技能优化代码 +2. 编写/更新 API 测试脚本 +3. 运行测试脚本 +4. 修复 Bug 直到全部通过 + +**运行 API 测试**: +```bash +cd tests/api +chmod +x test-template.sh +./test-template.sh +``` + +**Flutter 单元测试**: +```bash +cd flutter_monisuo +flutter test +``` + +### Phase 4: 构建与部署 + +**目标**: 构建生产版本并提交 + +**Flutter Web 构建**: +```bash +cd flutter_monisuo +flutter build web --release --dart-define=ENV=prod +``` + +**Admin 构建**: +```bash +cd monisuo-admin +pnpm build +``` + +**Git 提交**: +```bash +git add . +git commit -m "feat(模块): 功能描述 + +- 详细说明 1 +- 详细说明 2" +git push origin main +``` + +## 目录结构 + +``` +monisuo/ +├── .agents/skills/monisuo-dev/ # 本技能 +├── docs/ +│ └── features/ # Feature Spec 文档 +│ └── FEATURE_TEMPLATE.md # 模板 +├── flutter_monisuo/ # Flutter 前端 +├── monisuo-admin/ # Admin 后台 +└── tests/ + ├── api/ # API 测试脚本 + │ └── test-template.sh # 测试模板 + └── e2e/ # 端到端测试 +``` + +## 常用命令 + +### Flutter +```bash +flutter pub get # 安装依赖 +flutter run -d chrome # 开发模式 +flutter analyze # 代码检查 +flutter test # 运行测试 +flutter build web --release --dart-define=ENV=prod # 生产构建 +``` + +### Admin +```bash +pnpm install # 安装依赖 +pnpm dev # 开发模式 +pnpm build # 生产构建 +``` + +### 测试 +```bash +./tests/api/test-template.sh # 运行 API 测试 +``` + +## 环境配置 + +| 环境 | ENV | API 地址 | +|------|-----|----------| +| 开发 | dev | http://localhost:5010 | +| 生产 | prod | http://8.155.172.147:5010 | + +## 最佳实践 + +1. **需求阶段**: 充分理解业务,明确验收标准 +2. **开发阶段**: 小步迭代,频繁提交,遵循规范 +3. **测试阶段**: 自动化测试优先,覆盖完整 +4. **部署阶段**: 使用生产配置,灰度发布 + +## 参考资源 + +- [Flutter 文档](https://flutter.dev/docs) +- [Spring Boot 文档](https://spring.io/projects/spring-boot) +- [Conventional Commits](https://www.conventionalcommits.org/) +- [Clean Code 技能](~/.agents/skills/clean-code/SKILL.md) + +--- + +**版本**: v1.0.0 +**创建日期**: 2026-03-23 diff --git a/.agents/skills/monisuo-dev/SKILL.md b/.agents/skills/monisuo-dev/SKILL.md new file mode 100644 index 0000000..949e2d2 --- /dev/null +++ b/.agents/skills/monisuo-dev/SKILL.md @@ -0,0 +1,507 @@ +--- +name: monisuo-dev +description: Monisuo 项目结构化开发流程技能。用于需求分析、模块化开发、测试验证、构建部署的完整工作流。 +version: 1.0.0 +--- + +# Monisuo 开发技能 + +用于 Monisuo 项目的结构化开发流程,确保代码质量和开发效率。 + +## 工作流程 + +``` +需求分析 → 模块化开发 → 测试验证 → 构建部署 +``` + +## Phase 1: 需求结构化定义 (Prompt Engineering) + +### 目标 +将模糊的需求转化为结构化的 Feature Spec 文档。 + +### 输入 +- 用户的需求描述(自然语言) +- 业务场景说明 +- 技术约束条件 + +### 输出 +- `docs/features/feature-name.md` - 结构化的功能规格文档 + +### Feature Spec 模板 + +```markdown +# [功能名称] 功能规格 + +## 1. 功能概述 +- **功能名称**: +- **优先级**: P0/P1/P2 +- **负责人**: +- **预计工期**: + +## 2. 业务背景 +- 当前痛点 +- 解决方案 +- 预期收益 + +## 3. 功能详情 + +### 3.1 用户故事 +作为 [角色],我希望 [行为],以便 [目的] + +### 3.2 功能列表 +- [ ] 功能点 1 +- [ ] 功能点 2 +- [ ] 功能点 3 + +### 3.3 UI/UX 设计 +- 页面布局 +- 交互流程 +- 原型链接 + +## 4. 技术方案 + +### 4.1 架构设计 +- 前端方案 (Flutter) +- 后端方案 (Spring Boot) +- 数据库设计 + +### 4.2 API 设计 +``` +GET /api/endpoint +POST /api/endpoint +``` + +### 4.3 数据模型 +```dart +class Model { + final String id; + // ... +} +``` + +## 5. 测试用例 +- [ ] 正常流程测试 +- [ ] 异常流程测试 +- [ ] 边界条件测试 + +## 6. 验收标准 +- [ ] 功能完整 +- [ ] 测试通过 +- [ ] 代码审查 +- [ ] 性能达标 + +## 7. 依赖与风险 +- 依赖项 +- 潜在风险 +- 缓解措施 +``` + +### 执行步骤 + +1. **需求收集** + ```bash + # 与用户确认需求 + # 识别关键业务场景 + # 明确技术约束 + ``` + +2. **创建文档** + ```bash + mkdir -p docs/features + touch docs/features/[feature-name].md + ``` + +3. **填充模板** + - 完善用户故事 + - 设计 API 接口 + - 定义数据模型 + - 编写测试用例 + +4. **评审确认** + - 与用户确认需求理解正确 + - 调整优先级和范围 + +--- + +## Phase 2: 模块化生成 (Iterative Coding) + +### 目标 +根据 Feature Spec 分模块实现功能。 + +### 开发策略 + +#### 2.1 按模块拆分 +``` +Feature +├── Frontend (Flutter) +│ ├── UI 组件 +│ ├── 状态管理 (Provider) +│ └── API 调用 (Dio) +├── Backend (Spring Boot) +│ ├── Controller +│ ├── Service +│ └── Repository +└── Database + └── Migration Scripts +``` + +#### 2.2 迭代开发顺序 + +1. **数据层优先** + - 数据库表结构 + - Entity 定义 + - Repository 实现 + +2. **后端 API** + - Controller 接口 + - Service 业务逻辑 + - 单元测试 + +3. **前端实现** + - Model 定义 + - API Service + - UI 组件 + - 状态管理 + +### 开发命令 + +```bash +# Flutter 开发 +cd flutter_monisuo +flutter pub get +flutter run -d chrome + +# 后端开发 +cd ../ +mvn spring-boot:run +``` + +### 代码规范 + +#### Flutter +- 使用 `flutter analyze` 检查代码 +- 遵循 Effective Dart 规范 +- 使用 Provider 进行状态管理 +- 统一使用 AppSpacing, AppRadius, AppColorScheme + +#### Spring Boot +- 遵循阿里巴巴 Java 开发手册 +- 使用 Lombok 简化代码 +- 统一异常处理 +- RESTful API 设计 + +--- + +## Phase 3: 测试与重构 (Validation & Refactoring) + +### 目标 +确保代码质量和功能正确性。 + +### 3.1 使用 Clean Code 技能 + +```bash +# 应用 clean-code 技能进行代码优化 +# 参考: ~/.agents/skills/clean-code/SKILL.md +``` + +**优化重点**: +- 代码可读性 +- 函数复杂度 +- 重复代码 +- 命名规范 + +### 3.2 自动化测试 + +#### API 接口测试 + +**测试脚本位置**: `tests/api/` + +**测试脚本模板**: +```bash +#!/bin/bash +# API 测试脚本 + +BASE_URL="http://localhost:5010" +TOKEN="" + +echo "=== API 测试开始 ===" + +# 1. 登录测试 +echo "1. 测试登录接口..." +RESPONSE=$(curl -s -X POST "$BASE_URL/api/auth/login" \ + -H "Content-Type: application/json" \ + -d '{"phone":"13800138000","password":"123456"}') + +TOKEN=$(echo $RESPONSE | jq -r '.data.token') +echo "✓ 登录成功,Token: ${TOKEN:0:20}..." + +# 2. 获取用户信息 +echo "2. 测试获取用户信息..." +curl -s -X GET "$BASE_URL/api/user/info" \ + -H "Authorization: Bearer $TOKEN" | jq '.' +echo "✓ 获取用户信息成功" + +# 3. 更多测试用例... +# TODO: 根据具体功能添加 + +echo "=== API 测试完成 ===" +``` + +**运行测试**: +```bash +chmod +x tests/api/test-*.sh +./tests/api/test-feature.sh +``` + +#### Flutter 单元测试 + +```bash +cd flutter_monisuo +flutter test +``` + +### 3.3 Bug 修复循环 + +``` +测试 → 发现 Bug → 修复 → 重新测试 → 通过 +``` + +**修复流程**: +1. 运行测试脚本 +2. 记录失败的用例 +3. 修复代码 +4. 重新运行测试 +5. 直到全部通过 + +### 3.4 代码审查清单 + +- [ ] 代码符合规范 +- [ ] 无硬编码值 +- [ ] 错误处理完善 +- [ ] 日志记录清晰 +- [ ] 测试覆盖完整 +- [ ] 性能达标 + +--- + +## Phase 4: 构建与部署 (Build & Deploy) + +### 目标 +构建生产版本并提交代码。 + +### 4.1 构建命令 + +#### Flutter Web +```bash +cd flutter_monisuo +flutter build web --release --dart-define=ENV=prod +``` + +**输出**: `flutter_monisuo/build/web/` + +#### Admin 后台 +```bash +cd monisuo-admin +pnpm install +pnpm build +``` + +**输出**: `monisuo-admin/dist/` + +### 4.2 Git 提交流程 + +```bash +# 1. 检查变更 +git status +git diff + +# 2. 添加文件 +git add . + +# 3. 提交(遵循 Conventional Commits) +git commit -m "feat(module): 简短描述 + +- 详细说明 1 +- 详细说明 2 +- 详细说明 3 + +Closes #issue-number" + +# 4. 推送到远程 +git push origin main +``` + +### 4.3 提交消息规范 + +**格式**: +``` +(): + + + +