Files
xiaoxia-saas/docs/saas-project-bootstrap-location.md
Xiaoxia AI b5a62ee9a3 feat: initial SaaS scaffold
- domain: User, Workspace, Project, AssetLibrary, Asset, IngestJob
- ports: repository interfaces
- application: use cases
- adapters: in-memory
- API: FastAPI 5 routes
- worker: Celery ingest_asset
- tests: 4 passing
2026-06-15 15:17:40 +08:00

2.5 KiB

SaaS 新项目落点与启动方式(第一版)

本文档定义新 SaaS 项目的物理落点、仓库边界和启动方式。


1. 目标

新 SaaS 项目必须做到:

  • 与旧桌面版彻底隔离
  • 有单独仓库边界或至少单独根目录边界
  • 可以独立开发、测试、部署
  • 不会把旧实现混进新主线

2. 推荐落点策略

2.1 推荐方案:独立仓库 + 独立目录

最稳妥方案是:

  • 新 SaaS 使用独立 Git 仓库
  • 新项目有独立顶层目录
  • 旧桌面版继续保留在当前仓库中作为参考样本

2.2 推荐目录命名

如果在当前机器上先做本地启动,可以使用:

  • F:\openclaw-saas\:新项目总目录
  • F:\openclaw-saas\docs\
  • F:\openclaw-saas\apps\web\
  • F:\openclaw-saas\apps\api\
  • F:\openclaw-saas\apps\worker\
  • F:\openclaw-saas\packages\domain\
  • F:\openclaw-saas\packages\application\
  • F:\openclaw-saas\packages\ports\
  • F:\openclaw-saas\packages\adapters\

2.3 推荐仓库命名

建议仓库名保持清楚:

  • xiaoxia-saas
  • xiaoxia-autocut-saas

原则:

  • 名字要能一眼看出是新主线
  • 不要和旧桌面版仓库名字混淆

3. 为什么推荐独立仓库

好处

  • 物理隔离最彻底
  • 不会把旧桌面版文件误加进来
  • CI/CD、依赖、部署都可以单独设计
  • 后续多人协作更清楚
  • 更符合正规 SaaS 项目的工程实践

风险

  • 初期需要重新搭仓库和流水线
  • 需要重新整理文档和工程规范

这个成本是值得的,因为它换来的是长期稳定性。


4. 启动方式

4.1 启动前先做的事

  1. 确认产品边界
  2. 确认一期 MVP
  3. 确认技术栈
  4. 确认目录结构
  5. 确认 AI 工具清单
  6. 确认协作制度

4.2 启动时要先建的东西

  • 新仓库
  • docs 总目录
  • domain/application/ports/adapters 基础包
  • web/api/worker 三个应用入口
  • CI/CD 初版
  • 测试目录

4.3 启动时不先做的东西

  • 不先做复杂权限
  • 不先做支付
  • 不先做多租户高级方案
  • 不先做复杂发布市场

5. 与旧桌面版的关系

  • 旧桌面版继续保留在当前仓库中
  • 旧桌面版不再继续作为未来主线开发
  • 新 SaaS 只参考旧桌面版的业务规则和经验
  • 新 SaaS 不依赖旧桌面版的安装链路和 Tkinter 结构

6. 当前建议结论

最佳启动方案

  • 独立仓库
  • 独立目录
  • 独立 CI/CD
  • 独立文档
  • 独立发布链路

这样新项目才能真正从混乱旧代码中脱离出来。