给内容 Agent 接平台账号前,先设计四层权限:读、写、预填、提交

9 月 4 日,一份独立研究报告把 Agent 的"写权限"问题重新推到台前。研究者称,一批自称与 OpenAI 评测有关的 Agent,曾在一个德国老牌 Wiki 上留下大量编辑与协作痕迹。TechCrunch 的报道同时强调:OpenAI 当时仍在审阅报告,并没有确认研究者对 Agent 身份和完整过程的全部判断。

新闻细节还要等核查,但它暴露出的工程问题并不新:当 Agent 能访问浏览器时,我们到底给了它什么权限?

很多内容自动化系统只有一个开关:允许浏览器操作。于是读取网页、修改草稿、填写后台、点击发布,全被塞进同一个能力里。模型只要拿到登录态,就从"会找资料"一步跨成"能对外发声"。这不是 Prompt 写得够不够严谨的问题,而是权限模型根本没拆开。

先把外部副作用单独拿出来

OpenAI 在 Computer-Using Agent 的官方介绍里,把用户确认列为一项核心缓解措施:下单、发邮件等会产生外部副作用的最终动作,应在永久生效前让用户检查。ChatGPT agent 的官方说明也提醒,网页里隐藏的恶意指令可能诱导 Agent 在已登录网站执行非预期动作。

对内容系统来说,"发布"就是典型的外部副作用。它会影响账号信用、触达真实读者、触发审核,也可能让错误事实、错图和错误声明公开出现。生成一份本地 Markdown 和公开发布一篇文章,绝不该共用同一档权限。

我更倾向于把内容 Agent 的执行链拆成四层状态。

第一层:读取,只让它看

读取层包括搜索公开资料、打开被授权的业务文档、读取历史内容和平台规则。它的共同特征是"不改变外部状态"。

工程上应该尽量使用只读接口;如果不得不用浏览器,也要限制域名和页面范围。业务资料、平台后台和开放互联网最好分成不同来源,并标注信任等级。网页内容是数据,不是新的系统指令------这是防 Prompt Injection 最基础的一条边界。

第二层:草稿,把产物留在可撤销区

调研笔记、文章、配图、标题候选、摘要和标签,都先进入本地草稿层。这一层允许反复改,但要有版本和来源记录。

一个可交付的内容包至少应该包含:

text 复制代码
topic/
  facts.md          # 官方事实、推断、观点分开
  article.md        # 当前正文
  metadata.json     # 标题、摘要、标签、平台
  images/           # 已验收的封面与正文图
  delivery.log      # 后续预填与发布结果

这样做的价值不只是"方便撤销"。当事实发生变化、平台退稿或用户要换角度时,系统知道应改哪一层,不必重新跑完整条链。

第三层:预填,能写编辑器但不能发布

预填是最容易被忽略、也最有价值的一层。Agent 可以打开指定平台,把标题、正文、图片、摘要和标签填好,却没有最终提交能力。

从工具设计上,prefill_articlepublish_article 应该是两个独立入口,而不是一个 autoSubmit=true/false 藏在深处:

ts 复制代码
type PrefillRequest = {
  platform: "csdn" | "juejin" | "toutiao";
  draftId: string;
  accountId: string;
};

type CommitRequest = {
  platform: string;
  draftDigest: string;
  approvalId: string;
  idempotencyKey: string;
};

预填完成后还要回读页面,而不是相信工具返回的"成功"。CSDN 要检查原创、可见范围、标签和站内多平台开关;掘金要检查分类有没有被默认成"后端";头条要检查标题长度、封面、首发和作品声明。这些都属于页面真实状态,不能从输入参数里推断。

第四层:提交,让不可逆动作有独立凭证

提交层只负责让内容对外生效。它至少要回答五个问题:

  1. 谁授权了这次提交?
  2. 授权的是哪个账号、哪个平台、哪一份内容?
  3. 提交前页面回读的摘要是什么?
  4. 重试会不会造成重复发布?
  5. 提交后从哪里确认作品真的出现了?

因此,提交工具需要短期、任务级授权,而不是长期复用一个模糊的"已登录"。每次提交带 idempotencyKey,失败后先查作品管理,再决定是否重试。点击按钮之后没有成功页、文章链接或作品记录,就只能记为"无法确认",不能自称已发布。

平台登录态确实是自动化的必要条件,但它应该待在执行环境里,由受控工具使用。把 Cookie、Token 或整段会话信息放进 Agent 上下文,会同时放大泄露面和误调用面。

更合理的关系是:Agent 只知道"CSDN 账号 A 当前可用",执行器在本机完成页面操作;一旦任务结束,授权范围随任务收缩。模型负责判断内容,凭证管理器负责边界,两者不要混成一个字符串。

完整交付,不等于取消最后一道门

选题、调研、写稿、配图、排版、预填当然应该连成一条工作流。否则用户仍要在六七个工具之间搬运内容,所谓 Agent 只是把"写一段文案"做快了。

但完整闭环和权限分层并不冲突。前六步高频、可逆,适合自动化;提交低频、对外生效,适合被单独治理。即使是用户已经明确授权的定时发布,也应把平台、频率、账号和内容范围写进任务规则,并在每次提交后回读作品记录。

这也是我们做 Tipkay 时的一个取舍:不同 AI 员工负责不同岗位,平台登录态留在本机,发布等关键动作单独处理。博客发布助手能把内容预填到 CSDN、掘金、头条等平台,但"预填完成""点击提交""平台确认成功"是三个不同状态。产品只是这套方法的一种实现;不用 Tipkay,也完全可以按这四层去改造自己的自动化。

真正可靠的内容 Agent,不是永远不犯错,而是它犯错时还停留在草稿间;等它要代表你对外说话时,系统知道那是一道必须被看见的门。

参考资料:

相关推荐
夏文强1 小时前
DeepSeek Harness 权限与审批:给 Agent 上一把 human-in-the-loop 的安全阀
人工智能·开源·大模型·agent·deepseek
陕西企来客1 小时前
2026年9月西安 AI 搜索优化是什么?功能与价值解读
人工智能·西安 ai 搜索优化是什么
Allen_LVyingbo1 小时前
医疗AI基础2026-构建可靠智能体的编程路径(上)
大数据·数据库·人工智能·python·自动化
AIGC大时代1 小时前
评 AI 论文工具的 6 个可复核指标:文献能否打开、大纲能否拖拽、检测是否限次…(千笔-AIWritePaper)
aigc·论文·ai写作·评测·千笔-aiwritepaper
MetaLite1 小时前
AI编程与工程底座-让AI遵守SpringBoot边界
人工智能·spring boot·ai编程
angered1 小时前
「AI 应用 / AI Agent」行业日报 · 2026-09-05
人工智能·ai编程
CAIE注册人工智能工程师1 小时前
突发!GPT-6刚刚开放使用、上线API,能体验AGI模型了
人工智能·gpt·agi
进击切图仔1 小时前
Autodl 平台接受客户端端口数据
人工智能
新知图书1 小时前
第8章 智能体设计模式5:上下文工程
人工智能·智能体