# 人工发布工作流 发布中心提供 **自动发布 / 人工审核发布** 两条可选路径,默认保留原有自动发布流程。进入“人工审核发布”后采用:**AI 排版 → 人工审核 → 复制或导出 → 官方发布页手动提交**。 人工路径适合希望使用 Easel 管理选题、稿件和素材,但希望自己完成最终提交的创作者。页面切换只选择当前工作流,不更改全局自动发布权限;如需禁止 Web 自动提交,管理员应配置下文的人工专用模式。 ## 使用 1. 从工作台进入“去发布”,选择“人工审核发布”,填写标题、正文、话题,选择目标平台。 2. 点击“AI 排版 / 适配”,或自行编辑各平台版本。“AI 辅助检查”只提供参考。 3. 核对预览、事实依据、素材授权和平台要求,勾选对应平台的人工审核。 4. 复制标题、正文或全文,或下载稿件及素材 ZIP。公众号支持富文本复制,并在包内提供 `article.html` 排版预览;粘贴效果以官方编辑器和手机预览为准。 5. 打开官方发布页,自行登录、粘贴、上传、预览,并按平台要求标注 AI 辅助创作,最后亲自点击发布。 6. 成功后回填作品链接,人工确认并记录到日历。记录会注明未经平台自动验证。 修改标题、平台正文、话题或所选素材后,旧审核失效。审核状态不会在刷新后自动恢复。复制、导出、打开官网和保存排期都不会把内容标记成已发布。 两条路径共享浏览器中保存的标题、正文、话题和平台改写稿。切换路径会退出当前编辑页面、中止流式改写;媒体选择和人工审核状态需重新确认。切换不会撤回已经启动的自动发布任务,也不会将人工稿件自动提交。 官方发布页使用打开它的浏览器自己的登录状态,不会迁移 Easel“账号”页保存的登录态。无需先在 Easel 登录平台才能准备或导出稿件。 ## 配置与兼容 默认无需配置,两条路径均可使用,首次进入选择自动发布。也可在项目 `.env` 中显式配置: ```dotenv EASEL_PUBLISH_MODE=automated ``` 未设置或值为空时保持自动发布默认行为。需要在 Web 后端禁用自动提交、仅提供人工审核路径时,设置: ```dotenv EASEL_PUBLISH_MODE=manual ``` 修改后刷新发布中心。无法识别的非空配置值也会禁用自动提交,避免拼写错误放开权限。自动路径保留原有的账号检查、媒体要求、预检、确认和发布验证码流程。后端每次提交都会重新检查配置,因此旧的自动发布页面不能绕过已经切回的人工专用模式。 人工路径的 AI 排版和审核请求会明确要求不代发;配置为人工专用模式时,Web 发给 Agent 的任务还会统一附带不代发说明。选择人工路径并不禁止其他页面的 Agent 发布任务。这个配置控制 Web 发布流程及其任务指令,不是阻止任意本机命令执行的操作系统沙箱;独立 CLI 发布脚本仍保留,直接运行它们需要自行遵循其确认和平台要求。 人工提交减少了这条工作流中的浏览器自动化操作,不能保证不触发平台审核、限流或账号风控。 ## 导出与数据 导出包保存在 `outputs/_publish/manual/`,只包含当前稿件、标签、明确选中的内容库图片或视频、使用说明和导出清单。清单状态为 `ready_for_manual_submission`,不是发布成功。 后端拒绝目录穿越、指向内容库之外的路径、系统目录、隐藏文件和非媒体文件。单次最多 32 个媒体文件、总计 2GB。导出不会调用社媒平台、读取登录凭证或写入已发布日历记录。 ## 验证 ```bash python -m pytest tests/test_manual_publishing.py cd web/frontend npm run build ``` 浏览器验收可用测试草稿依次验证:默认进入自动路径、可切换到人工路径、切换后文案保留、未审核按钮禁用、审核后复制及导出可用、修改内容后重新审核、导出不代表已发布,以及人工专用配置下不能切回自动路径。无需上传或发布任何社媒内容。