126 lines
3.9 KiB
Markdown
126 lines
3.9 KiB
Markdown
# StoryForge
|
||
|
||
StoryForge 现在拆成独立项目目录,和 `AI-glasses` 分开维护。
|
||
|
||
## 目录
|
||
|
||
- `android-app/`:StoryForge Android 客户端
|
||
- `collector-service/`:FastAPI 后端,负责用户体系、项目、Agent、任务、内容分析和对外能力接入
|
||
- `n8n/`:工作流导出文件,作为流程编排中枢
|
||
- `docker-compose.yml`:本地 `collector + n8n + cli-proxy-api` 编排
|
||
- `Common/`:项目约束和架构说明
|
||
- `data/collector/`:SQLite、任务文件、下载产物
|
||
- `docs/`:审计、实施计划、联调说明、当前 MVP 状态
|
||
|
||
## Android
|
||
|
||
```bash
|
||
cd /Users/kris/code/StoryForge-gitea/android-app
|
||
./gradlew assembleDebug
|
||
```
|
||
|
||
## Douyin Browser Capture
|
||
|
||
```bash
|
||
cd /Users/kris/code/StoryForge-gitea/scripts/douyin-browser-capture
|
||
npm install
|
||
npx playwright install chromium
|
||
npm run control-panel
|
||
```
|
||
|
||
打开:
|
||
|
||
```text
|
||
http://127.0.0.1:3618
|
||
```
|
||
|
||
这个本地页面现在包含两部分:
|
||
|
||
- 上半部分是浏览器辅助采集控制台
|
||
- 下半部分是 `Douyin Workbench`,可直接查看账号列表、商业化账号分析、快照详情、相似账号和对标关系
|
||
- 作品工作台支持按 `高分作品 / 最新作品 / 全部作品` 切换,并可按综合分、商业价值、发布时间、播放、点赞、分享、评论排序
|
||
- 高分作品支持自动化分析,每条作品卡片下都会展示商业判断、复刻计划、运营动作和风险提醒
|
||
|
||
或者继续用命令行:
|
||
|
||
```bash
|
||
cd /Users/kris/code/StoryForge-gitea/scripts/douyin-browser-capture
|
||
npm run capture -- \
|
||
--profile-url https://www.douyin.com/user/your_account \
|
||
--storyforge-username kris \
|
||
--storyforge-password 'Asd123456.'
|
||
```
|
||
|
||
说明:
|
||
|
||
- 这是“真实浏览器 + 人工登录/过挑战 + 自动提取 + 回写 StoryForge”的辅助采集工具
|
||
- 默认输出到 `output/playwright/douyin/`
|
||
- 本地控制台模式会把每次运行保存到 `output/playwright/douyin/control-panel/`
|
||
- 控制台支持“开始采集 -> 浏览器登录 -> 网页点继续 -> 自动同步”的点击式流程
|
||
- 详细说明见 `scripts/douyin-browser-capture/README.md`
|
||
|
||
## Collector Service
|
||
|
||
```bash
|
||
cd /Users/kris/code/StoryForge-gitea/collector-service
|
||
python3 -m venv .venv
|
||
source .venv/bin/activate
|
||
pip install -r requirements.txt
|
||
uvicorn app.main:app --host 0.0.0.0 --port 8081 --reload
|
||
```
|
||
|
||
## Docker Compose
|
||
|
||
```bash
|
||
cd /Users/kris/code/StoryForge-gitea
|
||
cp .env.example .env
|
||
docker compose up -d --build
|
||
```
|
||
|
||
如果 `collector` 跑在 Docker 里,建议保留:
|
||
|
||
```bash
|
||
COLLECTOR_N8N_BASE_URL=http://n8n:5678
|
||
```
|
||
|
||
如果你单独在宿主机启动 `collector-service`,它读取的仍然是:
|
||
|
||
```bash
|
||
N8N_BASE_URL=http://127.0.0.1:5670
|
||
```
|
||
|
||
默认会启动:
|
||
|
||
- `collector-service`:`http://127.0.0.1:8081`
|
||
- `n8n`:`http://127.0.0.1:5670`
|
||
- `cli-proxy-api`:`http://127.0.0.1:8317`
|
||
|
||
默认会创建最高权限账号:
|
||
|
||
- `kris`
|
||
- `Asd123456.`
|
||
|
||
## 当前架构
|
||
|
||
- `collector-service` 负责:
|
||
- 用户账号、多项目、多 Agent、多任务、多内容源数据边界
|
||
- 调用下载器、本地 ASR、本机 OpenAI 兼容模型
|
||
- 调用 Windows `cutvideo` 和 `huobao-drama`
|
||
- 持久化任务、分镜、分析结果、事件日志
|
||
- `n8n` 负责:
|
||
- 触发 `analysis_pipeline`
|
||
- 触发 `content_source_sync_pipeline`
|
||
- 触发 `real_cut_pipeline`
|
||
- 触发 `ai_video_pipeline`
|
||
- FastGPT 已从主流程设计中移除,不再作为运行时依赖
|
||
|
||
## 说明
|
||
|
||
- 新注册账号默认 `pending`
|
||
- 主管理员审批后才可使用核心业务接口
|
||
- 支持 `user -> project -> knowledge base / assistant(agent) / job / content source` 的多租户边界
|
||
- 素材入口支持文字、视频链接、视频上传;内容源账号通过 `content_sources` 建模持久化,并可派生父子分析任务
|
||
- `cutvideo` 继续运行在 Windows 机器,本系统通过 API 调度
|
||
- `huobao-drama` 继续作为 AI 生成视频主链的核心引擎
|
||
- 详细审计、阶段计划和联调步骤见 `docs/`
|