把一句模糊的产品想法,整理成一份可评审、可追溯、可继续修改的 PRD。
PRD Bot 是一个面向产品经理、创业者和独立开发者的开源 AI PRD 工作台。你不必先填完一整套模板:输入产品大意,PRD Bot 会识别信息缺口、生成结构化 PRD、执行独立质量审查,并把后续人工编辑与 AI 定向修订保存为不同版本。
当前状态: Private Beta Release Candidate · 本地可运行 · 体验者自带 DeepSeek API Key(BYOK)· 在线 Demo 暂未开放。
一句模糊需求
→ 自动生成,或先回答少量关键问题
→ DeepSeek 输出结构化 PRD
→ 独立审查完整性、矛盾与可验证性
→ 低分时进行一次受控修订与复审
→ 人工编辑 / AI 定向修订 / 版本追溯
与“套模板写长文”不同,PRD Bot 把用户事实、AI 假设、待确认项和范围外内容分开表达;质量分数是评审线索,不会替代产品决策。
- 模糊输入也能开始: 自动模式直接生成,引导模式先补齐关键缺口。
- 结构化 PRD: 覆盖目标、用户、范围、功能、流程、指标、风险和验收标准。
- 独立质量审查: 输出得分、缺失项、矛盾、不可验证声明和改进建议。
- 可控的修订循环: 默认最多自动修订一次,避免无限消耗模型额度。
- 真正的工作台: 支持 Markdown 编辑、下载、历史版本和定向 AI 修订。
- 隔离的体验空间: 每个 Private Beta 邀请码绑定独立工作空间。
- DeepSeek BYOK: 体验者在页面中连接自己的 Key;服务端验证、加密保存,只展示掩码。
- 任务可恢复: 项目与任务 ID 写入 URL,刷新后可继续查看状态和结果。
![]() |
![]() |
| 邀请码隔离体验空间 | PRD、版本与质量审查同屏 |
- macOS 或 Linux
- Python 3.11+
- Node.js 22.22.2+
- npm
- 一个可用的 DeepSeek API Key
git clone https://github.com/junz11055-hue/prd-bot.git
cd prd-bot
./scripts/quickstart.sh脚本会创建 Python 虚拟环境、安装前后端依赖、复制安全的本地示例配置、执行数据库迁移,并同时启动两个开发服务。打开 http://127.0.0.1:3010,使用本地邀请码:
PRD-BOT-LOCAL
进入工作台后点击右上角 模型连接,粘贴个人 DeepSeek API Key,验证成功即可生成真实 PRD。Key 不会进入浏览器存储、项目内容或模型调用轨迹。
.env.example默认没有平台 Key。未连接个人 Key 时,页面和自动化测试仍可运行,但真实生成会返回model_not_configured。
./scripts/bootstrap.sh
./scripts/dev.sh- Web:http://127.0.0.1:3010
- API 文档:http://127.0.0.1:8011/docs
- 停止服务:在运行终端按
Ctrl+C
- 输入
PRD-BOT-LOCAL进入本地体验空间。 - 点击右上角 模型连接,连接个人 DeepSeek Key。
- 输入一句需求,例如:“做一个把用户访谈自动整理成洞察和行动项的 Web 产品”。
- 选择自动模式或引导模式,提交生成。
- 查看 PRD 与质量审查;根据需要编辑 Markdown、保存新版本,或让 AI 定向修订。
flowchart LR
U[Browser] -->|Next.js same-origin proxy| A[FastAPI API]
A --> I[Invite & session access]
A --> W[PRD workflow]
W --> D[(SQLite / PostgreSQL)]
W --> P[Versioned prompts]
W -->|Workspace BYOK| DS[DeepSeek API]
A --> C[Encrypted credential store]
C --> D
| 层 | 技术 | 职责 |
|---|---|---|
| Web | Next.js 16、React 19、TypeScript、Tailwind CSS 4 | 邀请准入、生成流程、编辑与版本工作台 |
| API | FastAPI、Pydantic | API 契约、错误语义、任务编排 |
| Workflow | Python 服务层、版本化 prompts | 分析、生成、审查、有限修订 |
| Data | SQLAlchemy、Alembic、SQLite / PostgreSQL | 工作空间、项目、任务、版本、模型轨迹 |
| Model | DeepSeek OpenAI-compatible API | 工作空间级 BYOK 模型调用 |
详细设计、数据边界和失败恢复见 架构说明。
- 邀请码是体验空间的访问凭证,不是正式账号体系。
- 个人 DeepSeek Key 仅提交给后端验证和调用,使用服务端密钥派生的 Fernet 密钥加密保存;响应只返回尾号提示。
- 生成时,需求、补充信息和当前 PRD 会按功能需要发送至 DeepSeek。请勿输入无权处理的个人信息、密钥或机密材料。
- 本地默认使用 SQLite;自托管者负责数据库、日志、备份、网络边界和 DeepSeek 账户的安全配置。
- 生产模式会拒绝默认邀请码、弱会话密钥、弱凭据加密密钥、非 Secure Cookie、自动建表和 SQLite。
复制 .env.example 后可调整以下选项:
| 变量 | 默认值 | 说明 |
|---|---|---|
DATABASE_URL |
sqlite:///./data/prd_bot.db |
本地数据库;生产环境必须改用 PostgreSQL |
DEEPSEEK_API_KEY |
空 | 可选的平台回退 Key;默认使用页面内 BYOK |
MODEL_NAME |
deepseek-chat |
当前统一模型 |
QUALITY_PASS_SCORE |
75 |
质量审查通过分数 |
QUALITY_MAX_REVISIONS |
1 |
自动修订次数上限 |
INVITE_CODES |
PRD-BOT-LOCAL |
仅用于本地启动的逗号分隔邀请码 |
INVITE_SESSION_TTL_HOURS |
168 |
邀请会话有效期 |
INVITE_SESSION_SECRET |
示例值 | 会话签名密钥;生产必须替换 |
MODEL_CREDENTIAL_ENCRYPTION_KEY |
示例值 | BYOK 加密根密钥;生产必须替换 |
INVITE_COOKIE_SECURE |
false |
生产必须为 true |
不要提交 .env、数据库文件或任何真实 Key。
.venv/bin/python -m backend.app.cli.invites create \
--workspace "设计团队" \
--label "首轮产品体验" \
--expires-days 14 \
--max-uses 5
.venv/bin/python -m backend.app.cli.invites list
.venv/bin/python -m backend.app.cli.invites revoke <invite_id>原始邀请码只在创建时显示一次。对外体验时请为每个团队创建独立工作空间,不要共享本地默认邀请码。
make check # 后端测试、迁移检查、Lint、类型检查、前端单测与生产构建
make e2e # 4 种视口的浏览器端到端测试自动化测试使用 mock 模型和拦截后的 API,不会调用 DeepSeek 或消耗额度。CI 会执行与本地相同的确定性检查和 E2E。
当前版本暂不包含:
- 正式注册登录、找回账号和同空间多人协作
- 文件导入、RAG、知识库和外部数据源
- 富文本编辑器及 Word / PDF 导出
- 计费、单用户额度和平台级 API 限流
- 托管在线 Demo 与生产 SLA
这些能力不会在缺少真实使用证据时被默认加入。路线图优先顺序见 架构说明。
暂未开放。当前 Release Candidate 先提供可复现的本地 Demo、真实截图和完整测试;待生产数据库、限流、额度、隐私确认和部署检查全部完成后再开放公开地址。
如果 PRD Bot 对你有帮助,欢迎 Star、试跑一个真实需求,并通过 Issue 告诉我们:哪一段生成结果真正节省了时间,哪一段仍然需要你重写。
提交代码前请阅读 贡献指南。安全问题请不要提交公开 Issue,按 安全策略 报告。
MIT © PRD Bot contributors




