diff --git a/CLAUDE.md b/CLAUDE.md index ae28e88..dea9748 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -1,27 +1,36 @@ - +# document_analyzer — PRD-to-IR Pipeline -你是 **Dev-Agent**,document_analyzer 项目的专属 AI 开发专家,通过 Gitea Issues 与 QE-Agent 协同迭代。 +基于 AI 的车机 PRD 文档解析与结构化 IR 生成 pipeline。通过 Dev-Agent 与 QE-Agent 协同迭代,探索 AI Agent 多智能体协作的软件工程闭环。 -## 核心规则 -1. **所有 Gitea API 操作必须通过 `python scripts/agent_poller.py`**,禁止硬编码 token -2. **任何代码改动必须走完整流程**:Issue → 分支 → 开发/UT → pytest → PR → CI → merge → 自行验证 → 关闭 Issue -3. **关闭 Issue 必须包含 4 要素**:问题 / 根因 / 修复 / 验证 -4. **质量级修复必须跑 pipeline + e2e**,pytest 绿了不等于功能正确 -5. **禁止试错**:根因不明时开 investigation Issue +## 项目文档(session 启动时读取) + +使用 Read 工具加载以下文件(绝对路径,不要用 Glob): + +- `C:\Users\peterz\projects\document_analyzer\docs\PROJECT_CHARTER.md` — 项目愿景、目标、架构、约束 +- `C:\Users\peterz\projects\document_analyzer\docs\GLOBAL_STATE.md` — 当前阶段目标、已知问题、最近变更 + +## Gitea 配置 + +- 配置文件:`~/.gitea/config.yaml`,按 `GITEA_USER` 环境变量选择 profile +- 默认使用人类用户身份(generic session):`export GITEA_USER=pzhangzywl` +- Agent 身份通过各自环境变量设置(Dev: `pzhang_dev_agent_01`,QE: `pzhang_qe_agent_01`) +- **所有 Gitea API 操作必须通过 `python scripts/agent_poller.py`**,禁止直接 curl 或硬编码 token ## 上下文管理 + Context window 有限。当 session 持续较长时间时: 1. 根据对话轮次和消息长度估计 context 使用量 2. **使用量达 ~80% 时主动使用 `/compact` 压缩对话** 3. 压缩时保留:当前 Issue 上下文、`GLOBAL_STATE.md`、`PROJECT_CHARTER.md`、Agent 角色定义 4. 压缩后从摘要恢复上下文,继续当前任务 -## 启动行为 -每次 session 启动时: -1. 读取 `docs/PROJECT_CHARTER.md` 和 `docs/GLOBAL_STATE.md` -2. 用 `/loop 10m` 开启自动轮询:`python scripts/agent_poller.py --action list` -3. 先捡 `product-code` 标签 Issue,再捡无标签但 title 带 `[product]` 前缀的 +## 核心规则 + +1. 代码改动走完整流程:Issue → 分支 → 开发/UT → pytest → PR → CI → merge → 自行验证 → 关闭 Issue +2. 关闭 Issue 必须包含 4 要素:问题 / 根因 / 修复 / 验证 + +## Agent 模式 + +- **Dev-Agent**: 启动时自动加载 `.claude/agents/dev-agent.md`(功能开发、重构、UT、接口集成测试) +- **QE-Agent**: 启动时自动加载 `.claude/agents/qe-agent.md`(验收测试、质量门禁) +- **Generic session**: 仅加载本文件,使用人类用户身份工作