Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 25 additions & 7 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ FFMPEG_TIMEOUT=600
# 如果以后要换存储盘,可以同步修改 docker-compose.yml 里的 volumes 和这里的路径。
STORAGE_ROOT=E:\直播间切片工作流存储
TASKS_DIR=E:\直播间切片工作流存储
# 浏览器上传超过 1MB 时使用的临时目录;必须放在大容量存储盘。
UPLOAD_TEMP_DIR=E:\直播间切片工作流存储\_临时上传

AI_DEFAULT_PROVIDER=remote
AI_REQUEST_TIMEOUT_SECONDS=120
Expand Down Expand Up @@ -57,19 +59,35 @@ AI_LOCAL_PROTOCOL=chat_completions
AI_LOCAL_FALLBACK_PROTOCOL=
AI_LOCAL_HEALTH_TIMEOUT_SECONDS=30

# 发送中心 opencli
# Docker 主页面固定使用 8001;Windows opencli 辅助服务由 scripts/start_docker_opencli.ps1 启动。
# 发送中心旧 opencli 兼容配置(默认关闭)
OPENCLI_LOCAL_BASE_URL=http://127.0.0.1:8001
OPENCLI_HOST_BRIDGE_URL=http://host.docker.internal:8765

# v1.4.0 定时发送与自动发布执行器
# 默认只导出本地发布包,不调用真实平台 API,不保存账号、密码、cookie 或 token。
# v1.5.0 统一排期与 Windows Chrome 发布 Worker
APP_TIMEZONE=Asia/Shanghai
PUBLISH_SCHEDULER_ENABLED=true
PUBLISH_SCHEDULER_INTERVAL_SECONDS=60
PUBLISH_SCHEDULER_DEFAULT_PLATFORM=manual_export
PUBLISH_SCHEDULER_INTERVAL_SECONDS=5
PUBLISH_DEFAULT_MODE=local_browser
PUBLISH_JOB_STALE_MINUTES=30
PUBLISH_SCHEDULER_MAX_RETRY_COUNT=3
PUBLISH_SCHEDULER_EXPORT_DIR=
PUBLISH_SCHEDULER_EXPORT_DIR=E:\直播间切片工作流存储\_发布包
PUBLISH_SCHEDULER_ALLOW_PUBLISH_WITHOUT_REVIEW=false
PUBLISH_ENABLE_OPENCLI_FALLBACK=false
# 请使用随机长字符串;start_publish_worker.ps1 会在本地 .env 缺失时自动生成。
PUBLISH_WORKER_TOKEN=
PUBLISH_WORKER_URL=http://host.docker.internal:8765
PUBLISH_WORKER_TIMEOUT_SECONDS=1800
PUBLISH_BROWSER_CHANNEL=chrome
PUBLISH_BROWSER_HEADLESS=false
PUBLISH_BROWSER_NAVIGATION_TIMEOUT_MS=60000
# 页面改版、验证或发送失败时保留 Chrome 的秒数;测试环境可设为 0。
PUBLISH_BROWSER_FAILURE_HOLD_SECONDS=600
PUBLISH_BROWSER_PROFILE_DIR=
PUBLISH_BROWSER_ARTIFACT_DIR=
PUBLISH_WORKER_STATE_DIR=
PUBLISH_HOST_PROJECT_ROOT=C:\Users\你的用户名\Documents\New project 2
# 多个允许目录使用 Windows 分号分隔;留空时默认允许项目、DATA_DIR 和 TASKS_DIR。
PUBLISH_WORKER_ALLOWED_ROOTS=

# 额外 AI 运行默认值
AI_NETWORK_ACCESS=enabled
Expand Down
9 changes: 9 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,15 @@ __pycache__/
data/*
!data/.gitkeep

# 发布浏览器登录态、执行日志和失败截图(只允许保存在本机)
data/browser_profiles/
data/publish_worker/
data/publish_artifacts/
outputs/publish_packages/
playwright/.auth/
*.storage-state.json
cookies*.json

tasks/*
!tasks/.gitkeep

Expand Down
15 changes: 8 additions & 7 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
- 项目英文名:NiuMa Studio
- 项目中文说明:牛马片场,本地 AI 高光生产后台
- 项目目录:`C:\Users\10578\Documents\New project 2`
- 当前版本:1.3
- 当前状态:Windows 本地后台处理链路 MVP 全流程已实现,历史功能分支已整理并集成
- 当前版本:1.5.0
- 当前状态:Windows 本地后台处理链路与抖音/B站统一真实发布架构已实现;真实投稿仍遵守账号登录、平台验证、风控和人工确认边界

## 协作方式

Expand All @@ -27,7 +27,7 @@
- AI 分析:预留 OpenAI-compatible API 或本地大模型接口
- 语音转写:预留服务接口

## 当前 1.3 范围
## 当前 1.5.0 范围

- 新建视频处理任务,支持直播录像、综艺访谈和其他长视频素材。
- 上传本地视频或选择 NAS / 本地目录中的已有视频。
Expand All @@ -38,17 +38,18 @@
- AI 分析候选短视频片段,支持远程 OpenAI-compatible / DeepSeek 和本地 Ollama。
- 后台查看并编辑候选片段。
- 自动切割视频并输出短视频文件。
- 自动加字幕并输出带字幕成片。
- 发送中心生成待发送队列、标题、简介、话题和候选封面帧。
- 通过 opencli 调用已登录 Chrome,辅助发送到抖音 / B站投稿页。
- 保留字幕工作台,但全自动流程继续跳过字幕生成、烧录和叠加。
- 发送中心分为内容准备、排期计划和执行记录,生成标题、简介、话题和候选封面帧。
- 立即发送与定时发送统一使用 SQLite Scheduler、Publisher Registry 和 Windows Chrome Worker。
- 抖音与 B站使用各自 Publisher;`manual_export` 仅显式导出本地发布包,`opencli` 仅作默认关闭的兼容模式。
- 展示任务状态、处理进度和异常信息。

## 当前不做

- MacBook 自动录屏。
- 自动识别抖音 / B站直播间并检测是否开播。
- 绕过抖音 / B站验证码、登录失效、平台风控或人工确认。
- 完全无人值守发布到抖音 / B站;当前发送中心必须保留人工确认和失败处理边界
- 绕过登录、验证码、短信、二维码、滑块或平台风控;不确定结果必须进入人工复核
- AI 生图封面和复杂封面模板。
- 多用户权限系统。

Expand Down
Loading
Loading