- 新增 pnpm Monorepo + Expo Router 项目模板(含 Metro monorepo 路径解析及 Windows 兼容修复) - 扩展蓝图系统:新增 api-keys、server-registry、ssh-config-sync、vscode-remote 等 15+ 模块定义 - 新增 .blueprint/rules.md 项目私有规则支持,并在 CLAUDE.md 中集成 - 蓝图版本升级至 1.6.0,优化版本比较逻辑(语义化版本元组对比)
82 lines
3.5 KiB
Markdown
82 lines
3.5 KiB
Markdown
# 炼境 (Dev Manager Tauri)
|
||
|
||
Git 多空间开发管理器,Tauri v2 + React + TypeScript + Rust。
|
||
|
||
<!-- 手动维护区:只放技术栈、目录结构、技能规则。蓝图工作流由下方 MANAGED 块统一管理,勿在此重复。 -->
|
||
|
||
## 技术栈
|
||
- 前端:React 19 + TypeScript + TailwindCSS + React Query + Zustand + React Flow
|
||
- 后端:Rust + Tauri v2 + SQLite (rusqlite + r2d2)
|
||
- 包管理:pnpm(禁止 npm/yarn)
|
||
- CI/CD:GitHub Actions + 阿里云 OSS(详见 docs/tauri-cicd-guide.md)
|
||
- 客户端更新:tauri-plugin-updater(详见 docs/tauri-updater-guide.md)
|
||
|
||
## 目录结构
|
||
```
|
||
src/ 前端源码
|
||
src/components/ React 组件(按功能分目录)
|
||
src/lib/commands.ts Tauri command 调用封装
|
||
src-tauri/src/ Rust 后端
|
||
src-tauri/src/commands/ Tauri command 实现
|
||
.blueprint/ 项目蓝图(manifest + 模块详情 + 任务卡)
|
||
docs/ 部署和更新指南
|
||
```
|
||
|
||
## 命令执行规则
|
||
|
||
- 所有命令直接用 Bash tool 执行,禁止输出命令让用户手动运行
|
||
- `pnpm tauri build` / `cargo build --release` 等 Rust 构建用 `run_in_background: true` + `timeout: 600000`(首次编译可能需要 10 分钟)
|
||
- 超过 10 分钟的任务(如完整 release build)改为输出单行完整命令,让用户 `! <命令>` 一键执行
|
||
|
||
## 技能使用规则
|
||
|
||
根据任务卡 complexity 决定执行后的检查:
|
||
|
||
| complexity | 执行后必跑 |
|
||
|-----------|-----------|
|
||
| S(简单增删改) | /code-review → /smart-commit |
|
||
| M(中等逻辑) | /Dev-edge-case → /code-review → /smart-commit |
|
||
| L(复杂,应先拆) | /architect → /splitter → 拆成 S/M |
|
||
|
||
- 新功能设计阶段:/architect
|
||
- 代码重构/简化:/simplify → /code-review
|
||
- 发现深层问题:/Dev-deep-think
|
||
|
||
<!-- BLUEPRINT_MANAGED_START version="1.6.0" -->
|
||
## 项目蓝图
|
||
|
||
本项目使用 `.blueprint/` 目录维护项目全景架构图,驱动需求讨论和任务管理。
|
||
|
||
### 对话开始时必须执行
|
||
|
||
1. 读取 `.blueprint/manifest.yaml` 了解项目全景和当前状态
|
||
2. 读取 `.blueprint/CONVENTIONS.md` 了解完整工作流规则
|
||
3. 若 `.blueprint/rules.md` 存在,读取并与全局规则合并应用(项目私有规则,优先级高于全局)
|
||
|
||
### 需求讨论 → 蓝图同步规则
|
||
|
||
| 用户说的 | Claude 应做的 |
|
||
|----------|--------------|
|
||
| "我想加个 XX 功能" | 确认需求后:manifest 新增模块(status: concept),创建 `.blueprint/modules/<id>.md` |
|
||
| "XX 功能需要 A、B、C" | 在模块文件中拆分为任务卡 |
|
||
| "这个方案确定了" | 模块 status → planned,补充任务卡 files/acceptance |
|
||
| "开始做 XX" | 模块 status → in_progress |
|
||
| 没提蓝图但在讨论功能 | 主动提议更新蓝图 |
|
||
|
||
### 复杂度决策(讨论新功能 / 拆解需求时)
|
||
|
||
| complexity | 执行流程 |
|
||
|-----------|---------|
|
||
| S / M | 直接拆任务卡,确保每张卡有 `files` + `acceptance` + `complexity` → 标记 📋 |
|
||
| L(复杂系统设计) | 先 `/architect` 输出设计文档,用户确认后 `/splitter` 拆成 S/M 任务卡 |
|
||
|
||
> L 级任务禁止直接写代码,必须先经过 `/architect` → `/splitter` 流程。
|
||
|
||
### 任务执行两阶段提交
|
||
|
||
- **开始写代码前**:任务卡前缀改为 🔵,status → in_progress
|
||
- **完成验收后**:任务卡前缀改为 ✅,status → done,更新 manifest `updated` 日期
|
||
|
||
完整规则(迭代管理、阻塞处理、复盘笔记等)详见 `.blueprint/CONVENTIONS.md`。
|
||
<!-- BLUEPRINT_MANAGED_END -->
|