Files
nexus/Project/fonrey/Vibe Coding项目管理技巧.md
2026-06-04 14:34:32 +08:00

4.6 KiB
Raw Blame History

这是一个非常实际的问题。用 OpenCode或类似 AI 编码工具)做长周期项目,核心挑战是每次会话 AI 都是"失忆"的,你需要一套机制让它快速恢复上下文。

以下是一套完整的项目管理方案:


核心思路:用文档作为 AI 的"外部记忆"

AI 没有跨会话记忆,但它每次都能读文件。所以你的目标是:把项目状态写进文件,而不是靠 AI 记住。


一、项目文档结构

在项目根目录维护以下几个关键文件:

project-root/
├── CLAUDE.md          # AI 行为规则 + 项目概览OpenCode 每次自动读取)
├── TASK.md            # 任务总表P0/P1/P2 优先级
├── PROGRESS.md        # 每日进度日志(最重要)
├── ARCHITECTURE.md    # 技术架构
└── .opencode/
    └── context.md     # 会话级补充上下文(可选)

二、最关键的文件:PROGRESS.md

这是你每天结束时必须更新的文件,格式建议如下:

# 项目进度日志

## 2025-01-15今日

### ✅ 已完成
- [x] 实现了 PropertyListing 的 CRUD API
- [x] 修复了权限校验的 bug见 commit abc123

### 🔄 进行中
- [ ] 房源搜索功能(已完成 70%
  - 已做Elasticsearch 索引配置
  - 未做:前端搜索组件、过滤器逻辑
  - 卡点:全文搜索中文分词需要引入 IK 插件

### ⏭️ 明日计划
- 完成搜索前端组件
- 开始客源管理模块的数据模型

### 🐛 已知问题 / 技术债
- PropertyImage 上传后缩略图生成有时失败,原因未查

### 📁 今日改动的关键文件
- `apps/listings/views.py`
- `apps/listings/serializers.py`
- `templates/listings/search.html`

三、CLAUDE.md — AI 的启动说明书

OpenCode 会自动读取项目根目录的 CLAUDE.md。把它写成"给 AI 的操作手册"

# Fonrey 项目 AI 开发规范

## 项目简介
B2B SaaS 房产中介管理系统Django + HTMX + Alpine.js + PostgreSQL

## 每次会话开始前,你必须做的事
1. 阅读 `PROGRESS.md` 了解当前进度
2. 阅读 `TASK.md` 了解当前 Sprint 目标
3. 确认今天要完成哪个具体任务后再写代码

## 技术约束
- 前端HTMX + Alpine.js + Tailwind禁止引入 React/Vue
- 文件上传:统一用 FilePond
- 权限:使用自定义 RBAC不使用 django-guardian

## 代码规范
- 所有新文件必须有注释说明用途
- 每完成一个功能,更新 PROGRESS.md

## 禁止事项
- 不要修改 DATA_MODEL.md 中已定稳的数据表结构
- 不要在没有确认的情况下重构已有模块

四、每日工作流程

早上开始2 分钟)

给 AI 发这条固定的"启动 prompt"

请阅读 PROGRESS.md 和 TASK.md告诉我
1. 昨天完成了什么
2. 今天应该继续做什么
3. 有没有未解决的卡点

然后我们开始今天的工作。

AI 读完文件后会给你一个摘要,你确认后直接开工。

晚上结束5 分钟)

让 AI 帮你更新进度日志:

今天的工作完成了,请帮我更新 PROGRESS.md
- 完成了:[你说]
- 未完成的:[你说]  
- 明天继续:[你说]

五、处理"卡点"和"上下文切换"

当你在一个功能里遇到复杂问题时

创建一个临时文件 SCRATCH.md

# 当前卡点:中文全文搜索

## 问题描述
PostgreSQL tsvector 对中文分词支持差

## 已尝试的方案
1. 方案A用 zhparser - 失败,原因 xxx
2. 方案B用 pg_jieba - 待验证

## 当前倾向
方案B明天继续

下次会话告诉 AI"先读 SCRATCH.md",秒回上下文。

当你需要切换模块时

在 PROGRESS.md 里明确标记"暂停点",记录文件名和函数名,这比描述更精确。


六、可选增强Git commit 作为进度锚点

养成每完成一个小功能就 commit 的习惯commit message 写清楚:

feat(listings): 完成房源搜索 API支持关键词+区域过滤

TODO: 前端搜索组件待完成

这样 AI 可以通过 git log --oneline -20 快速看到最近的工作轨迹,作为 PROGRESS.md 的补充。


总结

文件 作用 更新频率
CLAUDE.md AI 行为规范,一次写好 很少改
TASK.md 任务总表 每周调整
PROGRESS.md 每日进度日志 每天必更新
SCRATCH.md 当前卡点临时笔记 按需

最核心的一句话:每天花 5 分钟更新 PROGRESS.md,比什么方法都有效。 AI 能读文件,但它读不了你的脑子——把脑子里的状态写进文件,问题就解决了。