Article

Agent 空间被接管之后,怎么交还:Pilion 任务总览

· 10 min read · Written in Chinese

上次写 Agent Spaces 时,侧栏上的「接管」等于先停掉这个对话空间,再把它变成你自己的空间。Agent 再连上来,也锁不回那些标签。

11 月 7 日的 v0.2.8 把默认改了:接管默认可交还。想永久变成自己的空间,要再确认一次,入口改叫「转为我的空间」。第二天的 v0.2.11 又加了任务总览,快捷键是 ⌘⇧O。

这篇是续篇。先给你一张「该交还、该转为我的、该停止」的判断清单,再把这几天改动的机制说清楚。v0.2.12 到今天还是 draft,这篇不写。

一句话:接管不再等于把空间变成你的永久空间。默认可交还;任务总览把等待确认、进行中、已接管、已交还放在一张浮层里。

先看现在该怎么选

三列对照:默认可交还的接管、要二次确认的「转为我的空间」,以及直接停止

图 1:三件事不要混用。默认接管是借过来,转为我的空间才是拿走,停止是结束任务。

遇到 Agent 正在浏览器里干活,你可以按这张清单选:

  1. 只是想看看它在干什么,待会还让它继续:用默认可交还的接管,看完再交还。
  2. 这个空间你要自己接着改,不再交给这个 Agent:选「转为我的空间」,二次确认。
  3. 这个任务不要了:直接停止,不必先接管。
  4. 一下子看不清现在有几个任务在跑、哪个还在等你点审批:按 ⌘⇧O,或点右侧面板头部的总览按钮。

pilion space list 也加了托管状态这一列,命令行里能看到某个空间现在是谁在管。

为什么要把接管拆成两步

上一篇里,接管的副作用是清楚的:先 stop,再剥掉 agent 字段,Space 变成普通用户空间。用户空间已经满 20 个时,接管会被拒绝。这样做的好处是干净,坏处是不可逆。你只是想改一个输入框、确认一下页面,结果空间身份没了,想把任务交回去,只能让 Agent 另开一个空间,页面状态还对不齐。

0.2.8 把这条默认路径改成可交还:空间身份和标签来源留下来,侧栏出现「交还」。旧的那条永久路径还在,只是改了名字,并且要你再确认一次。这两个动作看起来都像「我来上手」,对 Agent 和后面的标签权限却完全不是一回事。

同一版里,外部客户端的默认授权改成「始终允许」,你仍可以改回更紧的级别;审批默认按钮是「本任务允许」。浏览器工具也补了 browser.scroll、browser.upload_file,以及对应的 pilion scroll、pilion upload。这些不是这篇的重点,但和接管改动写在同一次发版里,用的时候会一起碰到。

Agent 这边会看到什么

人一点接管,Agent 不能假装自己还握着这些标签。0.2.8 给客户端准备了三个错误码,按稳定的 code 处理,不要去匹配提示文本。

三个错误码:SPACE_TAKEN_OVER、SPACE_NOT_HAND_BACKABLE、SPACE_CLIENT_REVOKED

图 2:三个码要分开处理。可交还的接管、已经转成用户空间、客户端授权被撤回,不是同一类失败。

  • SPACE_TAKEN_OVER:空间已被人接管。默认情况下还可以交还,先停手,等交还后再继续,不要立刻 pilion space new 另起一摊。
  • SPACE_NOT_HAND_BACKABLE:空间已经「转为我的空间」,交还不了。这时才需要新建空间,也不要拿旧的 space id 反复重试。
  • SPACE_CLIENT_REVOKED:这个客户端的授权被撤回了。换一份新的授权,或换一个客户端再连。

上一篇里的 SPACE_REQUIRED、SPACE_NOT_FOUND、SPACE_ENDED 还在。新的三个码专门覆盖「人中途插手」这条路径,避免 Agent 把「被暂时接管」和「空间已经没了」当成同一种结束。

任务总览把四类状态摊开

空间一切到对话级,并行的任务一多,侧栏就会不够用。0.2.11 加的任务总览,用一张即时浮层把这些状态摊开。快捷键是 ⌘⇧O,右侧 Agent 面板头部也有按钮。

任务总览四组:等待确认、进行中、已接管 · 待交还、已交还 · 可恢复

图 3:等待确认排在最前面。你自己的空间仍在侧栏,不会在总览里再列一遍。

卡片按四组排:

  • 等待确认:审批还没点,排在最前面,避免你先翻到正在跑的任务,把待确认的请求漏掉。
  • 进行中:Agent 正在干活,可以查看、接管或停止。
  • 已接管 · 待交还:你暂时接手,可以交还,或改走「转为我的空间」。
  • 已交还 · 可恢复:已经交还回去,必要时可以再接管。

每张卡片带空间颜色、客户端名、代表页、标签数和最近活动。侧栏里,「已接管 · 待交还」改成了通栏提示,避免这条状态缩在一角看不到。打开总览时,原生网页会先隐藏,关掉后再恢复,避免浮层和正在操作的页面抢焦点。

同一版还修了一个容易误判的问题:后台标签大约 30 秒会做一次回落,以前可能把你正在看的活动页也藏起来。0.2.11 之后,当前正在看的活动页不会被这次回落误藏。

用这几步验收

在已经装好 Agent Spaces 的 Pilion 里,可以用下面几步核对这套行为。前提是 0.2.8 或更新的已发布版本,不必等到还在 draft 的 0.2.12。

  1. 让一个外部 Agent 带着 --space 打开页面,确认右侧能看到这个任务。
  2. 按 ⌘⇧O,这个任务出现在「进行中」;若有待审批,它应排在「等待确认」里,而且更靠前。
  3. 点默认的「接管」,侧栏出现「交还」,任务总览进入「已接管 · 待交还」。此时 Agent 应收到 SPACE_TAKEN_OVER,而不是空间结束。
  4. 点「交还」,任务回到可继续的状态,总览进入「已交还 · 可恢复」。
  5. 另开一次,走「转为我的空间」并二次确认。Agent 应收到 SPACE_NOT_HAND_BACKABLE,旧 space id 不能再锁回这些标签。
  6. 再试一次「停止」,不必先接管,任务直接结束。

这六步都能对上,接管、转交和结束就没有混在一起。哪一步对不上,先看当前是不是 0.2.8 之前的版本,再查 pilion space list 的托管列。

材料与时效

本文是 Agent 共用一个浏览器时,怎么隔离标签 ACL:Pilion Agent Spaces 的续篇,机制说明以 2026-11-13 可读的公开材料为准:

  • 发版说明 v0.2.8、v0.2.11
  • 上一篇用过的设计文档和规则引擎约定,仍然适用于 Space 的主体和上限

我没有在本机把交还和总览的每一步都跑成录屏;文中的行为以发版说明为准。0.2.12 仍为 draft,本文没有写入。后续版本以 GitHub 仓库为准。

Keep Reading

Related articles

Discussion

Published after moderation · Markdown supported

Discussion loads when you reach this section.