贡献指南
本仓库对每个非平凡需求遵循一套可追溯的协作工作流(RFC → SPEC → Story → TDD → 实现)。完整定义见仓库根目录的 AGENTS.md,这里给出速览。
目录结构
packages/gateway/ # 网关服务(CLI 代理、Setup、选区存储、可选 Agent 进程)
packages/chrome-extension/ # Chrome 扩展(Side Panel / Background / Content Script)
docs/ # 本文档站点(VitePress)
rfcs/ specs/ stories/ # 设计过程产物工作流(9 步)
- 方案推荐——给出简要方案与至少一个备选,等待同意(卡点)。
- 编写 RFC——落到
rfcs/<slug>.md,含目标 / 非目标 / 方案 / 迁移回滚 / 灰度 / 验收,等待审阅(卡点)。 - SPEC——
specs/<slug>.md,模块接口契约、数据流、状态机、配置、异常分支。 - 用户故事——
stories/<slug>.md,As a / I want / So that+ Given/When/Then。 - 测试用例——先按 TDD 写测试(此时应为 RED)。
- 用户审查——一次性审查 SPEC / Story / 测试(卡点)。
- 实现——使测试转 GREEN,改动控制在 SPEC 范围内。
- 回归与静态检查——
pnpm typecheck/pnpm lint/pnpm test,自检 diff。 - E2E 验证(可选)——影响首屏 / 跨模块时补充。
第 3–5 步连续执行、不在中间确认,一并提交第 6 步审查。
本地开发命令
bash
pnpm install
pnpm build # 全量构建
pnpm test # 全部测试
pnpm typecheck # 各包 tsc --noEmit
pnpm docs:dev # 预览文档发布
- 扩展:给提交打
vX.Y.Z标签 →.github/workflows/build-extension.yml自动构建、打包并创建 Release。 - 文档:改动
docs/**推到main→.github/workflows/deploy-docs.yml部署到 GitHub Pages。
欢迎通过 Issue / PR 参与。