AI 助手与设备诊断
设备所有者可从 用量统计 打开模型调用指标,查看调用错误、工具参数校验和 Token 用量。统计在一些极端场景下可能并不完整,数据仅供参考;页面不保存对话内容,也不补算启用前的数据。
开始使用
- 登录并打开本人拥有的在线设备,开启设备的 AI Assistant enabled 总开关。
- 进入 AI 助手,创建或恢复会话。
- 选择本轮可读取的上下文,输入需求。
- 助手申请操作权限时,核对目标和范围后确认,再查看实际结果。
个性化、长期记忆和历史查找见长期记忆。本页说明聊天、设备操作和诊断;只读 MCP 的能力另见 MCP。
发送与换行
Web 和桌面端 AI 助手默认按 Enter 发送消息、按 Shift+Enter 换行。点击输入框下方的“发送快捷键”,可改为 Shift+Enter 或 Ctrl/⌘+Enter 发送;此时直接按 Enter 换行。偏好保存在当前浏览器中,主会话、子助手任务调整和终端 AI 助手共用,不作为账号设置跨设备同步。中文等输入法的选词确认不会发送消息,快捷键遵守与发送按钮相同的可用条件。
macOS 的提示和菜单显示 ↩、⇧↩、⌘↩;Windows 和 Linux 显示 Enter、Shift+Enter、Ctrl+Enter。显示以当前浏览器或桌面客户端所在系统为准,与被控设备系统无关。
子助手
已完成的只读调用不再作为后台执行依赖;只读失败也会结束该次调用,任务答复须如实说明结果。子助手首次读取使用自身窄化后的原始上下文,不需要额外申请权限来初始化;仍需审批的能力继续按原规则审批。历史等待记录通过正常恢复和有限续跑收尾,不重派发原调用。
模型控制子任务或取消计划时只提供目标短 ID 和业务参数,服务端绑定该次实际观察的版本;状态被调整后需重新查询。权限项 ID 和通用范围、预览底层适配器,以及产物内容证明由服务端维护。审批模型只返回决定、原因和证据引用,不回显内部候选身份;人工或有效委托的审批 AI 均可提供文件操作所需的精确批准,交互式终端等仅 owner 可决策的要求保持。
主、子标签在仍需审批时持续闪烁,查看或标记已读不会清除提示,审批处理后停止;减少动态效果时使用静态强调。子会话的附件、上下文、工作目录、权限历史、后台任务和任务详情采用主会话的菜单/面板方式,记录区保留对话、图片及待审批操作。切换标签关闭原会话面板,不改变审批对象。上下文余量面板单独展示系统提示词、工具定义和其他预留的字节数及占总预算比例,再按对话与事件、工具调用与结果、协议回传(含思考)、摘要与投影拆分对话占用。预留空间已经从对话预算扣除,思考展示副本不重复计量。累计 token 是多次模型调用之和,不等同当前上下文。
主、子会话分别保留自己的输入草稿,切换标签不会丢失。子任务调整失败时保留输入,服务端确认接受调整后清空;打开新的主会话会清空原子任务草稿。
子助手等待审批时,Web、iOS 和 Android 均在输入框上方显示任务图标、待审批数量与对应任务的审批入口,切换主、子会话时也可直接查看。没有待审批子任务后提示消失。每个主会话默认最多有两个未结束子助手;等待审批或后台工作的任务也占用名额,服务端设置可调整该上限。
“子 agent 数量限制”分别控制每个主会话未结束的任务数(默认 2,范围 1~32)。任务组对应一次输入、一个目标或一次定时运行。设备 owner 在“设置 → 子 agent 数量限制”修改服务端统一配置。保存后,已有任务组的下一次创建也采用新值。调低上限不会停止已有任务,查看、审批和停止仍正常。Web、iOS、Android 共用服务端策略;增加数量不增加模型并发配额、token/调用预算或权限。
离开当前会话后,子助手的终结结果仍保留在“待处理”列表;子审批入口回到所属主会话。查看子会话只清除 UI 关注,不消费主模型的结果。
主助手可委派具有明确交付标准的有限子任务,独立保存其上下文、权限申请和结果。子助手复用普通助手的业务执行、内容审核、权限与压缩流程,但不继承父会话的 grant 或目录同意;它不能再创建子助手、设置目标、定时续跑或独立定时任务。
主助手和子助手共用对话界面,通过底部标签切换;标签显示任务名称、状态和未读,审批入口切换到对应子会话。切换不停止任务,主会话草稿保留。子会话直接展示消息、思考、工具调用与截图,底部输入区用于明确调整任务或单独停止。主会话的新消息不停止已有子任务。存在未结束子任务时,停止按钮要求确认并默认同时停止子助手;关闭弹框不提交,只停主助手时已有有限子任务继续,完成结果不自动恢复被停止的主规划。源目标暂停联动其所属子任务,保存已有审批决定与动作回执;恢复仍检查权限、额度及原期限。
子任务详情中的截图、工具输出附件和已选择上下文均属于原子会话。Web 对话中的截图默认显示缩略图,点击可查看大图;尚未关联到已加载消息的较早截图仍按需打开。存储附件可分页读取、搜索和删除;切换子任务会关闭上一任务的材料查看器。主会话收到新消息时,原子任务的记录、审批和命令执行代次保持独立。
子助手的后台命令完成后,系统保留原回执,并在原授权与有效期内自动唤醒结果解释与最终汇报;完成回执本身不等于子任务已结束。等待、恢复和重复通知均沿用原命令身份,不会重新执行命令。
同一轮需求的子助手完成后,状态更新保留在子任务列表中,并随主助手下一次模型调用提供。主助手可以继续手头工作,再自行选择读取子任务报告;主动等待子任务时,结果就绪后继续原需求,沿用原权限、额度和任务身份。等待审批、主任务已结束或已停止时,普通完成通知不另行启动主助手。
把普通请求转为目标或开启新目标,不会把已创建的普通来源子任务纳入新目标,也不会赋予它新目标的权限或额度。目标的新输入保留原目标子任务;显式暂停只冻结同一目标所属的子任务,恢复沿用原预算与截止时间。
定时运行使用已发布的任务说明,并保留原任务与本次运行的身份。自动触发不算新的用户批准;每项操作仍按当前已发布契约和权限检查处理。
定时任务的主助手、子助手、上下文压缩、报告修正和内容安全检查共享本次运行的有限额度,不会为子助手另开定时任务或增加运行次数。等待子助手时,本次定时任务显示“等待子助手”,主助手释放运行租约;子助手继续原任务,原授权、开始时间和截止时间保留。恢复领取不会重置预算。尚未发出的模型调用释放预留;已发出但用量未知的调用保留额度,真实用量迟到后只结算一次。取消本次定时任务会关闭其子任务的执行来源,并请求停止匹配的原后台命令;历史结果和真实设备回执仍保留。
定时主助手先回答、子任务仍在运行时,原发生次数保持等待。子任务完成后,结果通知由同一次定时运行领取,只能查询、读取报告或等待已有子任务,不能发起新的设备操作或创建、调整子任务;再次等待也保留这项限制。模型临时不可用时保留同一通知并有界重试,已消耗额度与原截止时间不重置。只有真实模型响应才标记通知已送达;这与读取完整报告、完成结果汇总分别记录。
仅停止主助手时,子助手继续原任务,直到完成或原期限到达,不会因为子结果到达而恢复已停止的主助手。取消或到期后,如果原后台命令确实仍在运行,原定时运行会保留调度位置等待真实结果;结果明确未知时记录为“结果未知”并暂停后续自动运行。迟到回执仅更新原执行事实,不会重试命令或改写原终态。
子助手的独立 AI 审批调用也计入原任务预算。排队期间暂停来源目标、停止或调整任务,或关闭原会话的 AI 代审批,会阻止尚未发送的审批调用;已发送调用的真实回执仍保留,不能因此恢复任务。明确没有发送的调用释放预留,已发送而用量未知的调用继续保留额度。 真实用量迟到后,系统只校正这次审批此前占用的上界,不重复增加审批次数,不改变审批结论,也不恢复任务。在对账完成前,最小账本关联会独立于会话正文保留期继续保留。
主会话压缩后仍能读取持久任务列表与未消费结果通知;子上下文过长也可压缩。子任务的最终状态由交付报告和真实依赖/回执决定,不从输出流关闭或 Idle 推断完成。取消请求只表达停止意图,不能把未知动作结果显示为已撤销;原 worker 已替换或旧执行记录缺失时不会把停止请求转给新 worker,也不会重新执行命令。
便携模式下,内置桌面会话就绪后即可使用“添加目录”,无需额外选择桌面会话;服务模式下,目录浏览仍绑定已选择的桌面会话。
扩展提供“允许当前站点”和“允许所有 HTTP/HTTPS 网站”两种选择。后者仅在你点击并经 Chrome 授权后生效,不包括本地文件或浏览器内部页面,也不替代 AI 操作授权。可在 Chrome 扩展设置中管理或撤销网站访问权限。
浏览器未连接或需要配对时,对话区顶部仅显示简短提示条。点击“查看步骤”打开独立设置指南,依次完成扩展安装、本机配对、网站授权和返回确认;指南提供远程桌面入口及断连排查。配对码仅在被控设备本地界面显示,不应发送到 AI 对话。 桌面上下文既可通过“添加上下文”手动选择,也可由 AI 按当前需求申请“桌面会话”“语义 UI 观察”或“当前屏幕截图”。未选择上下文的新会话也能提出申请;用户在权限卡中批准后,助手自动继续原问题,拒绝则不会读取。授权受目标设备、当前输入、有效期限和调用次数约束,失效后需要重新申请。屏幕截图只对支持图片输入的模型开放,读取授权不包含鼠标键盘控制权限;设备离线、系统权限不足或能力被本地设置关闭时,确认也不能绕过限制。
会话目录没有固定过期时间。可拒绝待审批请求或移除已批准条目;每次使用仍检查目录身份及具体操作权限。
会话目录的文件元数据列表被截断时,助手可用已知文件的准确名称定位直接子文件,也可用设备签发的游标继续查找未知名称。翻页只针对一个已批准目录,须保持相同筛选条件与返回上限;每页重新核对目录和文件身份。分页采用 best effort:目录在翻页期间变化时,名称可能重复或遗漏。游标短期失效,不能作为路径,也不会扩大授权范围。设备达到扫描上限时会报错,不能据此断定文件不存在。
在已有会话中,点击“设置会话定时续跑”进入定时任务页面,再填写任务说明和单次执行时间。确认提交后直接创建并启用,不需要保存草稿或再次启用。设备和会话沿用原会话,时间按页面所选时区输入、转换为 UTC 保存。如果原会话的需求版本已改变,创建或启用会被拒绝,请返回会话重新设置。可在“会话续跑”页签管理任务,并从运行历史查看结果。已完成任务可改名、删除和查看历史,不再提供改期;若要再次续跑,请从原会话创建新的定时任务。
已启用的定时续跑不会被后续普通聊天取消。到期后等待会话空闲,在最新上下文中执行批准的任务内容,并受原启动时间窗口限制。只有显式暂停或取消才停止调度;开始执行后新输入仍会阻止旧轮次继续操作。
网页消息自动发送处于试用阶段。启用前,请在目标账号和实际页面完成录制,并核对运行结果;Slack 的工作区和成员身份必须能被扩展唯一识别。
发布独立任务时:
- 打开“任务契约”,查看已保存的版本、运行限额、账号、收件人和权限范围。
- 尚无契约时,点击“从成功录制生成待审核契约”。录制证据须完整;附件需有同次录制的文件创建回执。生成的契约等待审核,已有契约保留原状。
- 契约与当前任务版本一致时,点击“核对录制并准备发布”,确认权限范围、固定目的地和预算,再点击“确认权限并发布”。服务端核对成功后启用调度。
- 从运行历史确认每次执行结果。发布表示启用计划;已验证的草稿只说明草稿准备完成,发送成功需有实际发送结果。
Gmail 使用录制时可验证的登录账号;Slack 使用可验证的工作区与成员身份。身份缺失或不唯一时,先修正页面与账号状态再录制。授权默认不自动到期,可通过“撤销任务授权”撤销。
在被控设备本机登录 owner 后,打开“本地 AI 策略”中的“本机网页消息权限”,先读取当前策略,再分别设置 Computer Use 总开关、浏览器扩展、草稿准备和消息发送开关并保存。开启发送不自动开启其他开关,也不批准任何消息或自动任务。保存需要设备 worker 确认同一版本,能力列表随后按设备心跳刷新;冲突或未能确认生效时须重新读取,页面不会自动重试。Manager 和远程页面不能修改这些本地开关。关闭开关会阻止后续未派发操作,不会撤回已经发送的消息。
Gmail 的扩展发送适配器会对比页面快照时与点击发送前的可见 Google 账号。账号无法唯一识别、缺失或已变化时,返回“确认未发送”且不点击;点击后账号变化则保持“结果未知”,不会用另一账号的提示证明送达。账号标识也随页面引用进入草稿快照和待审核契约;独立任务仍须在新运行中核对同一账号;每次运行后请核对实际发送结果。
工具执行结果、用户消息和 AI 回答是会话历史,不会因为时间经过或授权到期而从模型上下文中清除。只有达到上下文容量阈值时才进行窗口裁剪或摘要压缩;原始聊天记录仍保留。历史结果记录当时发生的事实,不代表设备当前状态,也不授予再次执行权限。新操作仍校验授权期限、目标身份和必要的最新状态。模型目的地或来源授权变化仍会限制对应内容的发送。
Windows PowerPoint 和 Word 文件批处理的输出必须使用单个 .pptx 或 .docx 文件名,最长 255 个 UTF-8 字节(中文通常占多个字节),不能包含路径、设备保留名称或数据流名称。副本保存到已选择并授权的输出目录,同名文件不会覆盖;普通文件产物仍采用各自的名称限制。这是文件批处理试用功能,请先用副本核对输出内容和格式;可用操作以当前设备返回的能力为准。
Word 批处理读取单个所选 DOCX 的已存储正文,并可用批准的纯文本替换正文、生成副本。副本原正文的格式、表格和图片会被替换,节设置与其他包部件保留,原文件不变。域不会重新计算,修订或导入正文会被拒绝。此功能直接处理文件,不打开 Word 或 Live 会话。创建副本前需开启本地观察与 Office 权限、选择输出目录;副本操作仍需审批。
已验证的 Windows PPTX 与 macOS iWork 批处理副本使用同一种文件结果卡,显示文件名、大小和 SHA-256;刷新会话后仍可查看该结果。结果未知或未经验证的回执不会显示为已验证的新文件。结果卡展示执行记录,不代表再次读取或修改已获授权。
在新消息中明确提及此前已验证的 PPTX 或 iWork 批处理副本文件名时,助手可以在文件引用仍有效的情况下再次使用该引用。引用过期后需要重新选择文件;这不会重新生成文件,也不代表下一项操作已经获准。
再次点名使用历史产物时,助手只恢复仍在有效期内、且足以覆盖本次模型请求准备时间的文件引用。引用失效不会删除历史结果或自动重新生成文件;请重新选择目标设备上的文件,再按当前权限继续操作。
当前 Windows 批处理文件入口要求本地 NTFS 路径,拒绝 UNC 网络路径和重解析点。盘符根目录可作为目录进行身份校验,不能作为输入文件;实际读写仍受已批准范围和 Windows 访问权限约束,助手不会自动提升权限。
手动选择 Windows 本地目录时,如果设备返回的路径仅增加 \\?\ 前缀且目录内容路径完全相同,不再要求额外确认;其他解析变化仍需核对。该处理只确认本次目录选择,不授予读取、外发或修改权限。生成文本文件的定时契约同样接受设备返回的这种本地盘符路径;保存的目录仍绑定目标设备,每次运行都需要有效的目录选择。设备重新解析的目录与定时契约中已批准目录匹配时,仅增加上述前缀不会要求再次批准目录;文件操作权限仍单独校验。
AI 助手会话界面
Web、iOS 和 Android 的底部会话切换栏仅在存在子会话时显示;没有子会话时,主会话审批前、审批中和审批后都不显示单独的“主会话”标签。
对话页顶栏的“会话”可打开历史会话和新会话入口,输入框左下角的“+”收纳添加上下文、目标任务、会话资源、管理和详情。主会话与子助手会话都使用这一入口。添加上下文和任务详情带有图标;“持续工作”用关闭和开启两种开关图标表示状态,点击可切换。“自动审批已开启”显示在“+”右侧,与已选上下文位于同一状态区域;点击可打开审批设置。此区域的已选上下文、持续工作和自动审批均带图标;窄屏或窄面板只显示图标,悬停提示保留完整名称及上下文数量。工具活动与截图显示在相关对话附近。输入框固定在底部;其下方一行放置“+”、已选上下文、上下文用量和发送/停止。待审批权限和 AI 申请的目录会直接出现在对话中,关闭菜单不会代替通过或拒绝。窄屏上不需要常驻侧栏也能找到这些入口。
主会话运行时,输入栏显示“停止”。当前会话状态尚未取得时,按钮保持可见但暂时禁用;停止处理中显示等待状态,停止完成或本轮结束后恢复“发送”。主会话空闲时,仍可通过“停止”处理尚未结束的子任务。
发送需求时在输入框下方点击“+”并选择“持续工作”,可开启有预算和期限的持久目标。顶栏的目标状态可打开详情,查看用量和期限;暂停、恢复和取消是独立的用户操作。目标预算由平台统一配置,用户不能为单个目标追加预算;平台修改开关或数值后,运行中的目标在下一次额度检查时采用新配置。AI 也可以在普通对话中申请开启目标,完整目标文本须先通过你或已开启的 AI 自动审批后才会运行。完成状态由 AI 报告;如果仍有剩余工作,可在已完成目标的详情中点击“目标尚未完成”,编辑新需求后发送,或让 AI 提出新申请。新目标会关联旧目标的完成摘要和证据引用,旧目标仍保持完成状态及原有用量;服务端会核对旧目标属于同一会话和设备。活动目标收到新消息后会停止旧规划,不会悄悄改写已批准的目标。需要调整范围时,AI 先询问你,再提交完整的新目标文本供你或已开启的审批 AI 确认;批准修改后沿用原目标 ID 和已用预算。设备操作仍需各自授权。
持续工作时,模型片段与后台任务分别运行。审批完成后,即使其他后台任务仍正常执行,目标也可继续处理独立工作;暂时依赖后台结果时,助手通过 control_goal 的 wait 决策进入等待,系统根据本目标的原始任务记录保存等待集合,任一成员完成后自动续跑,不需要保持页面在线。子助手依赖仍通过 wait_subagents 等待。任务失败或取消会按实际结果回传,不代表目标成功。
正常达到单个规划片段的步骤上限会交还调度器;目标总预算、重复调用保护以及用户暂停或停止仍然生效。模型临时不可用时进入模型等待并退避;真正中断或结果未知的操作才要求核对恢复。暂停、停止、取消或收到新需求后,晚到回执只保存事实,不会自行恢复旧规划。
AI 自动审批也处理目标创建、修订及关联已完成目标的新申请。Web/Tauri 在审核期间显示等待状态,关闭自动审批后恢复人工入口。批准只允许按当前服务端预算运行该目标,后续设备操作仍各自审批。决定与故障会写回会话;符合权限的管理员可查看自己会话的审核详情,统计中可筛选“目标申请”来源。新输入、关闭自动审批或人工已决定后,旧审核返回不能覆盖当前状态。 目标申请可能仍有效,但原任务的执行期限或调用额度已耗尽。此时自动审批会明确结束并说明原因;可发送新消息重新提出目标,不会无限等待,也无需重建数据库。 已批准目标使用服务端保存的完整版本,不要求与最初用户输入逐字相同;目录和后续操作仍分别审批。
桌面、Web、iOS 和 Android 的对话上方常驻目标面板,默认折叠为一行摘要和状态;点击可展开全文、最近进展和操作,展开区可滚动且高度受限;切换子助手时仍可查看主目标,控制操作只在主会话提供。详情保留预算用量和截止时间。等待用户时请回复卡片中的具体问题;暂停时可恢复或重试。断连后显示上次已知状态,返回会话会重新读取服务端快照。
长期目标的模型 token 总额默认 10,000,000(1,000 万)。主助手与所属子助手、压缩和报告修正共同计入原目标用量;暂停和恢复不清零用量。owner 可在“设置 → 长期目标预算”配置服务端统一总额。
侧边栏“AI助手”打开概览页,可通过“AI 助手待办”和“定时任务”卡片进入对应功能;原有任务链接仍可打开。“待办”页集中显示需要处理的目标、权限和会话事项。Tauri 应用运行时会用系统通知提醒,窗口隐藏后也能收到;通知只含状态和待办入口,不含目标正文。纯浏览器使用时没有后台推送订阅,页面关闭后不会收到提醒;开启目标前会提示你主动返回待办页查看。
“AI 自动审批”是当前会话独立的开关,默认关闭;开启前须配置并启用独立的审批模型。开启后,审批 AI 以设备 owner 原本可人工审批的同一权限范围逐项判断,没有额外权限,开关也没有独立到期时间。风险高、意图不明或需要人判断的申请会被拒绝并说明理由,执行 AI 可询问你或改用其他方案。审批模型故障会返回明确的“审核故障、操作未执行”拒绝回执。Manager 中审批模型调用由当前用户付费,内容安全模型仍由平台承担。关闭开关后,尚未使用的 AI 批准授权失效;开启长期目标不会自动开启此开关。
Web/Tauri 的 AI 自动审批使用开关显示服务端当前状态;保存期间显示进度并禁用重复切换,失败后重新读取快照。子任务在被观测后改变或结束时,追加操作会给出刷新状态或读取结果的提示,不会把该竞态误报为存储故障。
主会话与现有、后续子助手共用一个自动审批开关和审批用量记录,无需逐个开启子会话。每个子助手仍提出自己的权限请求,并获得仅属于该子会话的执行授权;审批依据创建时保存的原始用户要求及子会话证据,子任务描述不作为用户授权。关闭主开关后,子会话未发送的审批也会停止。定时任务来源的子助手不继承此开关,暂停、取消或结束的子任务不会因此继续执行。
自动审批开启时,Web 和桌面会话的普通权限申请显示简洁的“审批 AI 正在审核”状态,不弹出人工确认卡片。交互终端命令和需要重新确认的申请仍显示人工入口;关闭自动审批后恢复人工审批。最新的审核故障会在会话中保留提示,可打开审批记录查看详情。审批调用使用审批模型配置中的运行时输出 token 上限,没有额外的固定 2048 token 上限;截断、空回复或格式异常均不会批准操作。
设备重连后,若待审批命令绑定的执行环境或策略已变化,平台会以系统原因拒绝该次申请,并将结果交回助手重新处理。审批详情保留模型原先的判断和实际调用用量。
OSS 的配置在信令服务器上完成。OSS 仅记录审批次数和 Token 用量,不配置价格,也不进行金额核算:
- 打开 设置 → AI 审批模型(
/system/approval-model)。Default 和 Signaling 模式提供此入口;仅运行 DeskServer 的被控端使用所连接的中心信令服务器配置。 - 填写协议、模型、基础 URL 和独立 API 密钥;如果已完整配置 AI 网关,也可点击 保存 右侧的 一键复用 AI 网关配置。复用会将主网关已保存的连接、密钥和请求参数复制到审批配置并立即保存;已有审批配置时先确认覆盖,取消会保留已保存配置及当前未保存输入。审批模型保留已保存的启用状态。两套配置独立保存,后续修改主网关不会改变审批模型。密钥留空表示保留审批模型自己的已存密钥;清除密钥开关会在保存时移除它。
- 启用审批模型并点击 保存。测试审批模型为可选诊断,停用状态也可测试。测试会调用供应商审核固定案例并产生模型用量,不会执行设备操作或自动开启会话审批。未测试、测试失败或测试结果过期,均不影响已配置且启用的模型使用。连接或请求参数变更会使旧测试记录过期;仅切换启用开关会保留记录。
- 返回 AI 助手会话,打开 + → AI 自动审批,打开“AI 自动审批”开关。新会话尚未输入内容时也可开启;打开审批面板会先初始化空会话,等待完成后即可操作,不会发送聊天消息或调用模型。保存服务器配置不会自动开启会话审批。若模型已停用或配置不完整,会话面板会显示不可开启的原因。实际模型调用失败或审批回答异常时会返回明确错误回执,不会批准待执行操作。
审批配置的保存和测试结果通过通知弹框展示。模型测试与实际审批共用 运行时输出 token。测试输出达到上限时,通知会显示已保存的值,并提示提高该值、保存后重新测试;修改上限会使旧测试结果失效。被截断的回答不能通过审批测试,页面不会自动提高上限或重试模型请求。
审批面板会查询服务器上的会话记录,浏览器里已有会话 ID 也会进行查询。只有确认记录尚不存在时才初始化空会话;读取失败不会清空已有上下文。加载或初始化失败会在面板内显示错误,可点击 重试。
通过“+ → 会话目录 → 添加目录”浏览并选择被控设备上的目录,无需手填路径。AI 申请的目录则在对话中显示审核卡,列出完整路径和用途,并分别提供“通过”和“拒绝”。Windows 的盘符根目录和 Linux/macOS 的 / 均可选择;展示盘符的虚拟根节点不可选。选择器沿用助手当前选中的远端用户会话,只通过信令浏览,不建立 WebRTC 文件传输通道。列表由被控端筛选目录后分页,文件不会占据目录页。收到服务端确认后,目录才加入当前会话;解析后的路径不同则需再次确认。
文件管理不再提供 AI 按钮或文件、目录上下文附加入口。会话目录仍不代表批准所有文件操作;文档批处理通过该目录中的文件发现和已授权读取结果绑定源文件。终端、窗口上下文及图片、工具结果附件保持各自用途。
新设备配置中的 AI 助手总开关默认开启;配置中缺少该项时也按开启初始化。已经明确保存的关闭设置会保留。默认开启不等于批准具体操作,采集策略、Computer Use 能力上限和每项操作授权仍各自生效。
恢复聊天记录、生成会话标题和统计消息数量时,不展示服务端用于续跑的内部控制消息。这些消息仍保留在持久化执行上下文中,不算新的用户输入,也不增加操作权限。
macOS 原生文本文件操作不要求开启语义观察或把应用保持在前台;仍受 Computer Use 总开关、会话目录和逐操作授权限制。
文件操作保留设备的 Computer Use 总开关,不再单独配置文件创建开关或设备级目录白名单。在 AI 助手当前会话的“目录”面板中填写被控设备上的目录并点击添加,也可以让 AI 申请目录后由你确认。目录必须存在,使用规范绝对路径;如果解析后的路径与输入不同,需要核对后再次确认。目录仅属于当前会话,刷新后仍可查看和移除,不会自动带入新会话。目录引用没有固定过期时间,每次使用仍校验目录身份;目录被替换或不可用时需重新选择。添加目录不代表批准其中所有文件操作:读取外发、创建、修改和删除仍各自受实际操作授权约束。普通会话中,AI 的目录申请会等待你的明确批准或拒绝,决定后自动继续原需求,无需再发送“继续”。等待期间不会调用模型,也不会读取目录内容;点击停止可中断等待。关闭目录面板本身不会提交决定。目录获批后,AI 仍需申请所需的具体操作权限。创建不覆盖现有文件,支持空 UTF-8 文本,写入上限为 64 KiB。
文档转换与排版预览
AI 助手可以把 PDF 转换为 Markdown 或纯文本,也可以把 Markdown、UTF-8 文本或 .typ 文件转换为 PDF。转换使用固定的 Rust 依赖和内置 CJK 字体完成;Typst 编译与渲染在被控端当前用户下单独启动的受限子进程中运行,受 CPU 时间、内存和输出大小限制,超出限制会作为转换失败返回,不影响 worker 本身。转换不会启动 Office、浏览器或命令解释器,也不会下载模板、字体或其他网络资源。.typ 源码直接编译,不能导入其他文件或包;Markdown 和文本仍使用内置模板。源文件必须来自当前会话中经过验证的文件结果;输出需要已批准的会话目录和独立的一次性转换授权,只创建新文件,不覆盖已有文件。
Markdown 和文本文件也可以独立使用同一套 Typst 模板预览。预览不会创建 PDF,也不代表授权创建 PDF。第一页显示在对话预览卡中,其他页面只在用户翻页时加载;预览图片只提供给界面,不发送给模型。每份预览绑定 owner、设备、会话和当前 worker,30 分钟后失效,每个会话最多保留两份。实时预览状态消失后刷新页面,或 worker 重启后,需要重新生成预览。
PDF 输入和生成结果上限为 32 MiB,Markdown/文本/Typst 输入上限为 4 MiB。PDF 最多 500 页,单次最多选择 200 页;生成文档最多 500 页;每张预览图片最多 400,000 bytes。加密 PDF 和需要 OCR 的纯图片 PDF 会被拒绝。预览与转换只在 owner 正在交互的 AI 助手会话中提供,不能录制或发布为定时任务。worker 会把当前交互用户的 Home 目录作为路径建议提供给 AI,便于提出合适的目录申请;这个值不是目录选择,也不授予任何权限。 Web、iOS 和 Android 的修改/删除确认卡展示设备回执中的文件名、完整 SHA-256 与来源调用 ID。修改同时展示原文匹配片段和替换内容,或完整替换文本;删除明确提示可恢复删除。每次只批准一次精确操作,缺少可核验的确认摘要时不能批准,不以 AI 自述的申请理由代替具体内容。
macOS 文本工具包括 update_text_file 与 delete_text_file,能力列表保留原始 key 并提供本地化介绍。修改可完整替换或替换唯一匹配片段,必须绑定当前会话中完整读取或已验证创建/修改回执的文件版本及 SHA-256;每次修改/删除均须精确确认,一次授权只执行一次。目录元数据只列举直接子项,选择其文件引用后仍需另行批准内容读取和模型外发。截断读不能用来覆盖整份文件,符号链接、硬链接、越界或版本冲突会被拒绝。
如果会话里已有已验证的创建/更新回执,且已知本次编辑所需内容,AI 可直接用该回执的 file_version_id 申请修改,完整摘要由服务端恢复,无需先重新列目录或读取文件;执行端仍会检查文件是否被其他程序更改。文档/表格来源选择使用 artifact_result 加 file_result_call_id,或使用 directory_entry 加该 ID 和精确 entry_name。目录元数据读取与文件内容读取使用各自授权。
文档和表格读取使用带类型的 source(多文件时用 sources):directory_entry 指向已记录的 inspect_files 直接子项,artifact_result 指向已验证的创建/读取/更新结果。旧会话中的调用仍可读取。服务端仅在本会话记录内解析来源,并重新核对已批准目录与文件身份;模型不能提供路径或设备令牌。
浏览器工具使用已观察到的 page_id,需要控件时再使用 element_id。服务端在授权前从已验证记录中恢复完整页面/控件引用,并核对 profile、origin、页面世代和修订。短 ID 本身不授予权限;观察过期或有歧义时须重新截图快照。浏览器导航根据精确 URL 推导审批卡显示的 origin;browser_wait_for 固定 state=present,公式工作簿固定 locale=en-US-a1。审批卡仍展示补齐后的完整目标。
模型可见的 JSON 结果可能附有简短 result_summary,列出出参类型、工具调用状态和原始结果状态;它不替代强类型业务内容,也不证明用户目标已达成。草稿交接结果提供 handoff_result_id,服务端在精确发送请求中恢复原准备输入和完整回执;发送仍以独立的 business_effect 判断。
修改和删除在原目录下保留私有恢复目录:approved-before.txt 是批准前独立副本;删除还把原文件移到该目录的 original。删除没有永久删除降级。Web 文件回执默认折叠,展开可看文件名、字节数、摘要与恢复位置;异常格式保留原文。若提交后发现并发冲突,会显示“结果未知”,保留恢复信息,不自动回滚或重试。请先核对目标和恢复材料,不要直接覆盖同时产生的新文件;未知结果的恢复回执在重新打开会话后仍可查看。
Web 中的“命令执行结果(来自设备)”默认折叠,点击标题可展开。标准回执按退出码、执行耗时、标准输出/标准错误展示,终端模式保留合并输出;无输出、截断及脱敏记录会明确标注。可另行展开原始回执;非 JSON 或无法识别的格式直接原样展示,不影响已保存的原始结果或 AI 解读。
继续旧会话时,历史不会按时间过期。模型或来源授权变化时仍检查内容是否允许发送给当前模型。新产生的回合错误随会话保存,刷新或重新打开页面显示同一个具体原因;新回合开始后清除旧错误。升级前未保存的具体错误无法追溯恢复。
系统设置 → 上下文管理(/system/context-management)可切换摘要压缩与窗口裁剪,默认开启摘要压缩。设置在下一轮生效并在重启后保留。压缩会额外调用当前模型,可能产生费用;失败会明确报错,不静默改为裁剪。
后台命令结果的单独解读不会重置正常会话的圆环基线;新增结果和回复仍计入占用。真正发生摘要压缩或历史窗口裁剪时,对话区会分别显示简短系统提示,恢复会话后仍可查看。提示不代表删除原始聊天记录。旧版本已经被临时解读覆盖的统计会在下一次正常编排后刷新。
AI 的自然语言回答沿用界面发送消息时的语言;审批恢复和后台续聊使用会话中保存的语言偏好。语言偏好不改变工具、命令、JSON 字段或权限。尚未保存语言的已有会话需正常发送一次消息后记录偏好。
续聊时,AI 可按需读取历史;历史内容不会因时间经过而不可用,但仍须获准发送给当前模型。历史命令不会自动重跑。
发送行左侧的圆环显示对话可用预算的使用比例。点击圆环,或聚焦后按 Enter/空格,可查看详细信息。面板首先列出总上下文预算,以及系统提示词、工具定义、其他预留各自的字节数和占总预算比例;随后显示扣除预留后的对话预算、对话已用与分类明细、剩余空间和草稿预计增量。工具定义是 AI 了解工具用途与参数所需的说明,与对话中的工具调用和结果分开计数。
预留使用最近一次请求编排的统计,不会重复加入对话已用量。回复和工具结果会增加对话占用,压缩/裁剪后按保留内容更新;下一次调用使用的工具或附加内容变化时,预留也可能变化。这里按内容大小估算,不等同于模型的 Token 上限或实际请求大小,剩余字节也不能换算成精确可输入字数。未取得的统计显示“—”,不会当成零;已有会话在下一次正常 AI 调用后更新请求明细。
权限申请仅在待确认或需重新评估时显示在主区域;已结束申请默认隐藏,点击「权限申请记录」图标可在可滚动面板中查看状态和详情。审批结果不代表工具执行成功。
输入区底部与「发送」按钮同一行,左侧依次为上下文圆环、「任务详情」图标和「权限申请记录」图标。悬停可查看名称,点击分别打开详情侧栏与权限历史;右上角不再放置任务详情文字按钮。
裁剪/压缩提示固定在实际发生的消息边界,并显示服务端记录的时间;后续消息不会移动提示。无法定位的旧记录放在折叠的历史调整区,缺失时间显示未记录,不使用刷新时间替代。
子助手的后台命令结果解读没有工具权限;若模型输出伪工具调用,系统会在展示前拦截并最多纠正一次,仍失败则明确报错。原始命令结果保留,正文里的新命令不会执行。
独立助手页面铺满可用区域,不再显示外层标题与副标题;返回按钮位于「AI助手对话」左侧,点击返回设备页面。
对话区上方提供「历史会话」与「新建会话」;不再单独显示连接状态行。「AI助手对话」前的图标以绿色表示信令已连接、琥珀色表示正在连接、灰色表示助手已关闭;悬停可查看状态说明,屏幕阅读器也可读取。悬停对话标题可查看已选目标名称。历史列表显示当前设备最近 100 个会话,选择后恢复记录并可继续对话;当前任务或请求处理中可查看列表,结束后再切换。空会话只保留输入框提示,不另显示重复说明。
除了手动控制,LCXL Remote Desk 还让 AI 模型读取并分析设备状态,并在经过认证的设备所有者明确批准命令后对诊断采取行动。
通过访问码连接时
通过访问码连接时,会话会受到权限限制。只有设备所有者直接登录自己的设备时,才能逐条确认自由命令;其他用户和共享访问会话仍然只能使用命令模板,或保持禁止执行。
工作原理
AI 由中心信令服务器(“中心大脑”)编排。设备是瘦被控端,按需提供只读证据;所有者确认后的命令通过另一条密封执行路径返回设备。当用户在会话中提问(如*“这个系统为什么这么慢?”*),中心服务器驱动一条严格流水线:
- 中心大脑向被控端请求只读证据(系统信息、进程、端口、日志、截图)。
- 被控端在本地采集并脱敏证据;脱敏失败会立即中止,原始截图数据也会在离开设备前移除。
- 中心大脑调用模型(仅在被控端脱敏成功后)。
- 中心大脑运行多轮工具循环,并把回答流式回传浏览器。
- 如果模型请求执行命令,诊断流程会暂停等待确认;浏览器会完整展示命令解释器、命令内容、工作目录、超时时间和服务端判定的风险等级,用户明确批准后才会下发。
诊断面板提供明确的尺寸调整区域:拖动左边缘可调整宽度,拖动底边可调整高度,拖动左下角可同时调整宽高;拖动标题栏可在远程桌面视图范围内移动整个面板。视图位于底部时,流式回答会自动跟随最新文字;用户向上滚动查看历史内容后,自动跟随会暂停,并显示一个向下箭头按钮,可随时快速返回最新内容。
启动应用与运行命令
需要打开应用或启动长时间运行的程序时,AI 使用 launch_application。它与 exec_command 分别申请权限:命令执行会收集输出并在结束时回收受管进程树;应用启动不收集标准输出,也不会因任务完成或取消而关闭已启动应用。
list_applications 提供已安装应用的参考信息。搜索支持 queries 中的多个模糊关键词;有中英文名称时可一起搜索。默认必须提供搜索条件,只有显式设置 allow_unfiltered=true 才允许不筛选地分页列出。列表中的路径、参数和工作目录只是参考,启动时以 AI 独立填写、用户最终批准的请求为准。
批准前请核对目标应用、完整参数、工作目录和管理员选项。每份启动授权只能使用一次;修改参数或权限需要重新批准。只传 URL 或文件路径不能选择默认关联应用:应指定可执行程序,再把 URL 或文件路径作为参数。启动后读取窗口、操作浏览器或发送内容仍需各自的权限。
Windows 支持明确的可执行文件路径和打包应用 ID。默认使用当前登录用户的普通权限;启动器遇到必须提权的程序会失败,不调用 UAC。显式管理员启动仅适用于可执行文件,并要求已经可用的同一用户提升令牌;用户属于管理员组并不保证当前宿主能取得该令牌。第三方程序运行后自行弹出的提权提示不由启动器控制。macOS 使用应用 bundle,Linux 使用可执行文件及可用的 systemd 用户会话;macOS/Linux 不支持管理员启动。工作目录为可选项,macOS bundle 和 Windows 打包应用不接受该参数。
“已接受启动”只表示系统接受请求,不表示窗口或页面已就绪。如果结果未知,应先观察目标应用或进程,避免重复启动。浏览器启动后如仍需设置扩展,请点击会话中的设置提示,按独立设置页面完成处理。
AI助手的逐命令授权
AI助手使用逐项权限卡承接 owner 命令确认,不再额外弹出旧诊断审批框。在确认执行模式中,owner 可申请不在黑名单中的模板外命令,包括 du、df -h、管道和多行脚本;只读/仅建议模式、非 owner 或共享访问并不因此获得执行权限。
确认卡展示完整原始命令、shell、工作目录、目标设备/桌面会话、有效时限和 stdout/stderr 上限。空工作目录表示被控执行进程的默认目录,不保证为主目录。模板外命令按 Critical、可能产生修改处理:黑名单不是 shell 沙箱,shell 会解释获批脚本,系统不会自动提权。一次授权只执行同一份冻结计划一次;输入、计划、目标会话或当前策略变化后须重新确认。结果未知时保留原任务且不自动重发。缺少完整有效确认信息的请求不能批准。
需要终端交互的命令以交互模式申请:审批卡标明“交互终端命令”及是否需要提权,批准时在当前页面打开与该待审批请求绑定的终端,并携带该终端提交批准。owner 可在终端中输入(包括提权密码)、调整尺寸或停止,关闭终端即停止命令;PTY 合并输出交回模型。交互命令只能由 owner 在支持终端的页面人工批准,AI 自动审批、定时任务与后台长期目标不会批准或运行交互命令;设备关闭 PTY 或交互提权时申请会被拒绝。
普通非交互命令不要求 PTY 或应用处于前台;目标离线、系统权限拒绝、超时和取消仍按实际结果报告。
后台命令结束后,Web AI助手会单独展示设备保存的原始命令结果,包括超时失败;这不是 AI 生成的回答。子助手的命令在派发时固定结果解读期限:该次批准的最长执行时间,再加 5 分钟投递与解读余量,并受会话授权范围的期限限制。因此,运行超过 5 分钟但仍在允许时限内的命令,不需要再次批准才能解读结果。这不改变等待审批的期限,也不延长命令本身的执行时间。
主助手的后台命令结束后,助手会带着对话历史和工具,自动继续原需求。后续工作使用仍然有效的授权;没有授权覆盖下一步时,走正常的权限申请。没有后续工作时只简短报告结果。命令输出按数据处理,但续跑可能发生在你离开时,不想再被使用的授权请及时撤销。同一需求最多自动续跑三次;超过后结果仍保留,你的下一条消息会继续这项工作。有新需求、目标正在运行或设备离线时,续跑会停止或推迟,原结果保留。子助手的解读仍只针对其任务和本次结果,也不启动新命令。升级不为已完成的旧任务补发授权,不自动重跑命令。
被控端「系统设置 → AI 策略 → 单条命令执行时间上限」可配置为 10–7200 秒,默认 600 秒。实际执行还受该次确认卡上的申请时长限制;进入后台不重置计时,调大设备上限也不会延长已经批准的命令。
关键特性
瘦被控端——设备从不运行模型推理、也不持有供应商凭据;只在中心大脑请求时采集并脱敏证据。
只读数据采集——系统信息、进程、端口、日志与可选截图,由被控端采集策略本地把关。只有声明支持图片输入的模型才会收到截图;原图只在当前活动轮需要时短暂保留,回合结束后改为有限的文字元数据,不进入会话历史。
模型无关——兼容 OpenAI 兼容端点与 Anthropic 端点,在中心统一配置。
默认只给建议——模型可以提出修复建议;真正执行必须由用户明确确认,并受每台设备的本地执行上限约束。
所有者确认后执行——在「逐项确认」/「会话已批准」模式下,经认证的所有者可批准非模板 PowerShell、pwsh、bash 或 sh 命令。此类命令一律显示为严重风险,界面只声明检查了有效黑名单。
按目标设备检测命令解释器——Desk 服务建立连接时,会以有界且无副作用的方式检测可用的命令解释器。模型只能从检测结果与执行器白名单的交集中选择,并优先使用推荐项。如果模型请求了其他解释器,服务端会返回当前可用列表,模型可以改用其中一个选项重试。
不能自行批准——模型可以请求命令,但不能批准自己的请求。批量运维、自动化、MCP、共享访问和非所有者操作仍然只能使用模板,或保持禁止执行。
回合有界且可继续——中心循环在同一类工具调用过多时停止;已经生成的输出和工具结果仍会展示并持久化,用户可在同一会话中发送“继续”等后续问题。
后台命令可持续跟踪——批准后的命令运行超过 8 秒时会转为后台任务,不再占用当前诊断回合。诊断面板会显示任务编号,方便用户、模型和后续完成事件相互对应。命令会持续运行,直到正常完成、用户取消,或达到设备设置的单条命令执行时间上限。
便携模式和开源信令服务会把任务及其完成结果保存在 SQLite 中。信令服务重启后仍能补发尚未送达的结果;实时结果丢失时,也可从被控端的执行记录恢复。任务完成后,系统会在有界的跟进轮次中自动继续主助手的原需求;这一轮使用已有授权和正常的权限申请流程。管理员开启自动化后,Manager 也提供相同能力。
易读回答——助手正文按 GitHub 风格 Markdown 渲染,支持标题、列表、代码和表格;原始 HTML 会被忽略,也不会加载模型提供的图片 URL。
对话可以恢复——Manager、便携模式和开源信令服务都会保存会话快照。即使前端漏掉最终状态的实时通知,也能恢复已经结束的回答和工具结果,不会一直停留在“等待确认”。
工具调用可检查——点击工具时间线中的任意一项,可以展开查看模型生成的 JSON 输入,以及返回给模型的脱敏、限长输出;已结束的回合和恢复后的历史会话同样保留这些详情。
共享内核——传输中立的诊断逻辑集中在
desk-diagnose-corecrate,由中心大脑复用,杜绝行为漂移。
上下文选择与恢复
选择终端、窗口、文件或文档后,页面保存所选对象,实际读取仍需授权。当前回合运行时,等待结束后再修改选择;选择结果以刷新后的会话状态为准。
断线后可恢复会话并核对工具记录。权限确认只批准所列范围;重新连接、重试和应用切换保持原范围,失效对象需重新选择。
新问题会替代尚未开始的旧处理。已经派发的设备操作可能继续完成,应以原操作的实际回执判断;取消请求只说明已申请停止,结果未知时先核对设备状态。
后台完成的命令和操作保留原始结果。自动解读不可用时仍可查看回执;工具记录会区分成功、失败、未开始和结果未知。
Linux 能力边界
在 Linux 上,助手按能力逐项声明可用性。系统信息、进程与网络检查、容器检查、终端输出读取,以及所有者确认后的 bash/sh 执行,都沿用与 Windows、macOS 相同的瘦被控端和确认边界。在已经启动 systemd 的主机上,还可查询 systemd 服务状态和有界的 journald JSON 日志;如果缺少 systemd 运行时、systemctl 或 journalctl,对应两项能力会明确显示为不可用。日志可见范围仍受 Desk Server 进程自身权限限制。
Linux 文件能力只处理用户明确选择的文件和目录,模型不会看到原生路径。目录枚举与读取基于句柄相对操作,拒绝符号链接,在有界读取前后重新验证对象身份,也不会隐式递归。创建产物必须经过确认,并且只能写入设备精确配置的允许目录;实现先写入权限为 0600 的私有暂存文件,再用 Linux 的 no-replace 原子重命名发布,绝不会覆盖已经存在的目标。
Linux 桌面接入要求已登录、处于活动状态且未锁定的本地普通用户 GNOME Wayland 会话。Linux 桌面操作处于试用阶段,使用前需在目标环境核对观察、操作和退出控制;当前支持范围不包括 KDE、X11 回退、登录界面和无人登录图形会话。设备在线不代表桌面操作可用,文件和终端能力分别受自身权限与就绪条件约束。
便携模式每次宿主启动只自动尝试恢复一次 Portal 授权;媒体 worker 回收不会重新尝试。若回收后需要重新建立授权,请在被控机本地操作。
屏幕观察需要本机已通过 Portal 授权所选输出,并取得助手的屏幕权限。远程助手请求不会弹出系统授权框或恢复 Portal 会话。标记为 latest_observed 的截图会显示返回时的接收年龄,不保证反映当前画面。基于屏幕坐标的输入操作也采用尽力执行(best effort)方式:允许使用原始接收年龄不超过 30 秒的最新观察帧,仍需整屏单次精确授权和有效的本机输入控制时段。设备在每次提交前用单调时钟复核年龄;缓存重发不续期,超时需要重新观察并重新授权。期间画面可能变化,LatestObserved 不会被改标为 Fresh。
浏览器操作需要在被控机上配对 Chrome 扩展。配对通过本机被控端页面完成,并要求运行被控端的同一 OS 用户生成一次性证明;远程登录 Manager 不等于取得该本机证明。浏览器就绪与 Portal 屏幕授权独立。
Linux 桌面写操作需要一个有效的本机 best-effort 输入控制时段,同时仍检查目标、动作权限和原始帧年龄上限。这种控制仅尝试阻断进入时已有的键鼠,不保证完整隔离,也不覆盖新插入设备。输入设备权限不足时明确失败,不自动加入 input 组或将桌面进程提权;应用确需开启无障碍时,由设备 owner 了解影响后在本机明确配置。
启动失败信息包含取得和失败的设备数量、权限拒绝数量,以及首个其他设备错误(如按键尚未松开或设备被占用)。无法取得支持退出组合键的键盘时,已取得的设备会释放,控制时段不会开始。
便携模式的 Tauri 托盘提供“AI 输入控制”窗口:选择期限、确认临时阻断后开始,可选择是否接受部分覆盖。窗口显示实际阻断计数,并提供停止按钮;关闭窗口或宿主连接断开会清理控制连接。只有收到 worker 的结束回执才显示已确认释放,连接错误不会被当作释放确认。ServiceDaemon 模式需要先完成原生会话注册,再由对应的普通用户 worker 发布入口;未注册或 worker 失效时不可用。试用服务模式前,先确认当前桌面能打开入口并可靠结束控制。
也可使用本机命令建立输入控制时段。查阅当前 session worker 日志中的 Local AI best-effort input control endpoint,用同一普通桌面用户在本机终端运行(路径必须对应当前 worker):
lcxl-remote-desk-server ai-input-control /run/user/1000/lcxl-ai-input/<worker-id>.sock --seconds 60阅读说明并输入 START,等待三秒并松开所有按键后才尝试阻断。默认拒绝部分失败;只有明确接受部分覆盖时才添加 --allow-partial。命令显示实际成功、失败和跳过数量。按 Ctrl+Alt+L 退出;达到期限(最长 300 秒)、设备异常、控制命令断连、桌面身份失效或 worker 退出也会结束控制。保持命令连接。首次桌面动作绑定 turn 后,应用会向对应中心核对状态;整轮已结束、取消、被替代或执行租约过期时释放输入控制。查询或网络暂不可用不会延长本机期限,仍可随时在本机结束。时段会绑定首次获准桌面动作的上游来源、用户和完整 turn 身份;另一轮操作需要在本机重新开始控制,不能复用上一轮的时段。当前桌面动作的匹配取消获准后也会释放控制;普通动作完成不会结束整个时段,其他动作或旧动作的取消不会关闭新时段。屏幕不会因此隐藏,浏览器和文件操作不依赖此控制时段。
该入口是同一 OS 用户的本机 IPC;终端确认不构成物理在场证明,也不隔离同用户下已有的程序执行权限。它不增加任何 AI 动作权限,不修改设备权限,不保证已经提交的输入能被撤回。请先在目标 GNOME 桌面核对阻断计数、停止按钮和退出组合键,再用于实际任务。
Portal 的输入回复不保证输入已经处理或画面已经改变。只有该回复、没有效果证据时,助手保留“结果未知”,需要重新观察,不自动重复执行。
仅被控端模式需要远端中心服务
无界面的 desk-server 是纯被控端,不内嵌信令服务器,因此必须连接远端信令服务或 Manager 才能使用 AI 功能。便携 default 模式在同一进程内包含信令服务,可以独立使用。
读取已选择的 Office、Numbers、Pages 或 Keynote 文档时,助手使用这次输入所选的原文档。等待授权期间切换前台应用不改变该选择;原文档关闭、过期或撤销选择后,请重新选择再请求读取。
开源 Signal 还会在每次非浏览器读取前后复核原输入、当前 grant 与 readiness。授权限额会收窄发往主机的 typed 参数,并约束完整返回 payload(包括错误正文和图片元数据);超限内容只产生固定错误,不会获得可供模型使用的结果标签。标签绑定已经验证的精确结果字节,期限不晚于原 grant 或所选数据。读取过程中输入或授权发生变化时,已经收到的 Provider 终态仍会准确持久化,但正文不会释放;明确收到的结果不会被误记成允许自动重试的 OutcomeUnknown。
工具结果与文件恢复
助手使用工具返回的对象和结果继续处理任务。查看工具记录可核对实际输入、输出和错误;需要重新选择文件或应用时,请按页面提示操作。发送、修改和删除仍需相应授权,结果未知时先核对实际状态。
网页拉取与域名授权
AI 可以根据你的任务自行选择公开 HTTP 或 HTTPS 地址,也可以使用搜索结果或历史消息中的链接;地址无须写在当前消息里。首次访问时,权限卡片展示并授权完整域名,例如 example.com。
批准后,在本会话的授权有效期内可重复访问同一域名下的其他路径、查询参数、HTTP/HTTPS 协议和端口,不消耗调用次数。不同子域名(例如 docs.example.com)需要单独授权。大小写、国际化域名和域名末尾的点会统一处理;撤销或过期后需重新授权。
拉取器只读取公开文本网页,并检查实际连接地址和重定向。同域名重定向可继续访问,跨域名重定向会报错;本机/私网地址、URL 中的账号密码及其他协议不可用。返回内容作为外部资料处理。
配置
模型提供方(供应商、base URL、模型、API Key、输出格式、授予的执行模式、单回合推理轮次上限、单回合同一工具调用上限以及命令审批超时)在中心信令服务器上配置。推理轮次上限默认 40、取值范围 1–80,统计的是模型响应轮次而不是单个工具调用,并且不得小于同一工具调用上限。同一工具调用上限默认 20、取值范围 1–50;即使参数不同,只要工具类型相同也计入。两者都与 Desk 服务端的同时运行命令进程数相互独立。API Key 是严格的服务端密钥——绝不回传浏览器、绝不写日志、绝不进任何公开设置 DTO。
命令审批超时控制 AI 新建议的命令可以等待设备所有者确认多久,默认 120 秒,取值范围 30–1800 秒。信令服务会在创建审批时冻结该值,因此修改设置只影响之后的新建议。确认卡会把审批窗口与设备强制执行的命令运行上限分别展示;后者仅在批准命令后开始计时。此设置不会修改被控端 ConfirmExec pending 的有效期,也不会修改设备另一条远程访问审批(Gate B)的超时。
保存按钮旁的**「测试连接」**按钮会对表单中当前显示的提供方配置做端到端探测,包括尚未保存的修改,并且测试本身不会保存配置。文本模型会收到极小的单词回复探针;开启“支持图片输入”后,同一个按钮会发送仓库内置的视觉探针,只有模型读出其中的标记才算成功,结果会列出已验证的 text / image_input 能力。API Key 输入框留空时复用已保存的密钥;新输入的密钥只用于本次测试,直到点击保存才会持久化。API Key 全程留在服务端。
接口协议采用精确值并 fail-closed:只能选择 open_ai_chat_completions 或 anthropic_messages;空值、未知值和预留值会显示为“不支持”,不能保存或测试。Standard、DeepSeek、Anthropic adaptive/manual 与 Custom preset 只会填充明确请求选项,运行时绝不根据模型名或服务商名称猜测行为。
OSS 新配置及预设的运行时输出上限默认 65536 tokens。Standard 使用 {};DeepSeek 显式关闭 thinking;Anthropic adaptive 使用 display: omitted。连接测试共用运行时输出上限,不再配置独立探针预算。manual 预设可编辑;其思考预算必须小于模型运行时额度与终端补全设置额度的较小值,服务端在保存和使用时校验。任何预设都不会填写 max_context_bytes。已有显式输出配置保持原值。
模型设置保存成功后,页面使用返回的配置版本号继续保存。如果其他页面或进程修改了配置,保存时会提示版本冲突;请刷新本页,确认最新配置后重新保存。保存失败会显示后端原因,并保留当前未保存的输入。
表单还要求填写 4 KiB–16 MiB 的历史上下文字节预算(max_context_bytes)。系统提示、工具定义和请求框架先占用其中一部分,剩余额度用于序列化历史,包含工具调用/结果以及必需的 replay 状态。服务端元数据与内联图片的 data URL/Base64 数据不占文字预算;图片另有每张 400,000 个解码后字节、每次模型请求最多四张的独立限制。普通文字或工具参数中的图片样式字符串仍计入文字预算。它不是服务商的 Token 上下文窗口。程序和小型连接探针都无法取得任意兼容端点的真实上限,请根据上游模型文档和实际请求组成保守填写。探针 observation 绑定配置 revision;配置变化后会明确显示为陈旧。
推理/thinking 是私有协议状态,不是回答正文。已提交的助手消息中可读的思考内容会以默认折叠的「思考内容」展示;不透明的协议重放数据不会展示。当工具续调要求精确状态时,信令服务可能保存不透明 replay envelope,例如 DeepSeek reasoning_content,或保持原序的 Anthropic thinking/redacted-thinking、签名与 tool block。不透明重放数据不会进入 transcript 响应、安全审核输入或日志,但仍可能增加服务商 Token 用量。
长对话会完整持久化并继续显示。历史越过所配高水位后,只向模型发送按完整消息/工具组截取的尾部窗口,并在该回合显示行内提示,明确说明较早历史本次未发送;可见记录没有被删除。若最新不可拆分消息或工具组本身超过预算,请求返回 AI_CONTEXT_ITEM_TOO_LARGE;请提高配置预算,或缩短本次输入后重试。
每台设备另在自己的设置里保留两项本地控制:执行上限(AI 在该设备上可用的最高模式,用于收紧中心授权)与证据采集策略(allow_logs / allow_screen,设备对“哪些证据可以离开本机”的最终决定权)。
证据采集策略默认允许截图(allow_screen = true),默认不允许日志(allow_logs = false);已有配置中显式保存的关闭设置不会被覆盖。允许截图不等于会话已获授权,实际采集仍需满足相应的授权要求。
Linux 被控端的同一本地 AI 策略页面还可控制供需要标准输入的已批准命令使用的一次性 PTY 执行。该设置是整机级别并默认开启;关闭后会阻止新的 PTY 派发,但不会终止已经运行的命令。交互式提权是独立、默认关闭的从属开关,在 ServiceDaemon 的 root containment 路径可用前会保持禁用。PTY 输入按普通字节流中继:是否回显由远端程序的终端模式决定,LCXL 不识别、不留存这些输入,也不另设密码字段。
安全
设备读取失败且错误标记为不适合交给模型时,在后续模型调用和会话保存前替换为通用工具失败说明,不包含内部错误详情。
服务端统一判断权限、脱敏失败即中止、密钥仅存服务端、审计不记录原文等安全规则,详见 AI 安全模型。
在自动化任务的运行详情中,可以查看本次运行提出的目录路径、用途、确认状态和按当前时区显示的到期时间,并批准、拒绝或移除已确认目录。目录确认只确定文件范围,不授予读取、写入或发送权限;实际操作仍受任务契约约束。决定提交后会重新读取会话,提交成功不代表任务已经执行成功。移除正在等待的目录会终止这次等待;原目录引用到期也会结束本次等待,不会自动获取新引用或沿用旧批准。已经发生的操作不会被撤回。
任务暂停后可点击“恢复后续运行”,服务端重新检查原授权、契约及当前设备和模型条件,不延长原授权,也不补跑暂停期间。启用的独立任务可“立即运行一次”,这会新建独立运行而不改变日历。运行历史中的“取消本次运行”只针对所选运行;取消意图不代表已派发操作已被撤回。
会话定时任务暂停后也可恢复。恢复要求原会话需求版本未改变、没有未解决的执行结果,且单次时间仍在未来;时间已过请先改期。恢复不会增加会话权限,执行前仍重新检查当前授权。
在任务管理页也可以选择设备和已有会话,创建一次性的会话续跑任务。会话列表只显示当前用户可用的原会话;保存和启用时会再次核对原需求版本。独立自动任务可由用户手动创建,也可从 AI 提出的草稿进入审核,均需要录制和明确授权。
任务列表显示连续失败次数及暂停阈值。没有活动运行时可以修改阈值(默认 3 次);调高阈值不会自动恢复已暂停的任务。普通失败未达到阈值时,后续周期仍会执行;结果未知或授权失效等暂停原因需要先处理,再明确恢复。
编辑任务要求会使原授权失效,独立任务需重新录制并审核发布。仅修改调度时间不会扩大权限。契约页展示当前授权的版本及批准、到期、撤销时间,并列出与上一版相比的预算、权限、步骤、例外策略及要求变化,可展开查看上一版内容。选择“撤销任务授权”会暂停后续调度,保留历史;已派发的动作仍可能完成。
OSS owner 可以在“设置 → 定时任务预算”配置服务端独立任务上限,初始值为每 UTC 日 24 次、每次运行 64 次工具调用、100,000 个模型 token 和 900 秒。保存按持久化版本核对。降低上限可能阻止现有契约继续执行;提高上限不会扩大任务权限或自动恢复任务。保存冲突或响应不确定时,先重新读取。
改期时会按所选时区回填已有规则。原样保存不会改写 UTC 时间;切换时区会重新显示原规则。修改时间后,先预览未来最多五次执行时间,再确认保存;服务端会复核换算输入与版本,换算结果变化时需重新确认。固定间隔也由服务端换算起点,后续按固定秒数运行。暂停任务的未来时间仅是规则预览,不表示已经启用。
后台命令运行期间
同一会话可以同时跟踪多个后台任务,每个任务返回独立的任务 ID,等待、取消和完成回执均按该 ID 关联。新命令是否可执行由被控端的原子并发准入决定:未达到配置上限时继续,达到上限时明确返回容量已满,不排队、不自动重试。同步查询仍可使用。逐命令授权、桌面与浏览器的独占写入限制,以及结果未知时的安全限制继续生效。
后台结果由系统自动回传,无需持续轮询,也无需保持当前 AI 回合开启。普通对话中没有可独立推进的工作时,助手应简短说明任务仍在运行并结束本轮;结束回复不会取消后台任务,也不代表任务已完成;结果回传后,助手会继续尚未完成的工作。
输入框工具栏提供固定的「后台任务」入口,括号内显示运行中(含取消处理中)的任务数。点击打开侧栏,统一查看当前会话的命令任务和后台工具任务;未结束任务优先,命令历史保留最近 50 条可见记录。命令结果可展开查看,过长内容仅截断展示,原始执行记录保留。点击「取消任务」只针对该任务,最终状态以设备或 Provider 回执为准;设备离线时不能发送命令取消,但仍可查看已有记录。
模型返回可读的思考内容时,已提交的助手消息会显示默认折叠的「思考内容」,点击即可展开;刷新和查看历史仍可恢复。思考与正文分开展示,过长内容仅保留有界展示片段。模型未返回明文思考时不显示该区域,签名、加密内容及内部协议重放字段不会展示。
后续消息没有选择新的上下文、或工具授权次数耗尽,不会移除同一会话中已发生的工具结果与 AI 回复。新的读取和操作仍需授权;达到上下文容量限制时才进行摘要压缩或裁剪。恢复中断会话时,未知的操作结果仍保留为未知。
macOS 的观察区支持 列出应用:先返回常规桌面应用的名称与按生命周期生效的选择引用,再点击应用读取其窗口和控件,包括后台应用。不会自动激活应用,也不会在列出应用时采集所有 UI 内容。AI 获得相应读取授权后同样可以选择应用;操作仍需单独确认。切换前台不影响应用选择,但进程重启后须重新选择,本地策略变化仍会限制访问。应用未提供辅助功能内容时可能无法读取,不能据此判断它已经关闭。
Windows 使用同一 列出应用 和选择入口:列表按当前交互会话内具有可见顶层窗口的进程去重,以可执行文件名显示。选中应用后按 UIA 能力读取其窗口与控件;选定窗口后只读取该窗口。达到枚举或读取上限会标记结果不完整。应用引用绑定进程生命周期,窗口关闭后旧窗口引用不可继续使用。Windows 独立窗口截图使用 WGC,只返回所选窗口的 PNG;窗口最小化、关闭、身份变化、存在密码控件或无法完整完成保护检查时拒绝,不改为截取整屏。截图仍需对应读取授权;后台输入受其独立能力状态限制,应用可选不代表后台输入已可用。
Windows 控件实际支持 UIA 语义滚动时,观察结果会显示“滚动内容”。该操作直接作用于所选控件,不激活窗口:每轴 0 表示不滚动,±1 为小幅、±2 为大幅,正值向右/下;至少一轴非零。不支持的轴会被拒绝,不回退为鼠标滚轮。语义滚动与后台滚轮分别按工具申请权限,后台滚轮仍使用像素单位。执行后需重新读取实际结果;macOS 未支持语义滚动的控件不显示该动作。
原生 UI 请求有等待上限。批处理在首个错误处停止,回执区分确定未开始、部分步骤已派发和结果未知,并记录已经完成原生派发的步骤数;这不等于应用状态已验证。工具卡片折叠时也会展示确定未开始、前序步骤已派发或结果未知的提示。尚未开始的超时请求会从队列撤销并报告确定未开始;已开始的操作超时不代表操作已取消或未生效,必须查看当前界面与运行结果,不能直接重复原操作。原调用未结束时,新的原生 UI 请求会被暂时拒绝;取消、写租约失效或本地策略变化后,尚未发出的 UI 修改不会继续执行。
普通桌面 UI 动作(点击、选择、聚焦、切换、设置值)的成功仅表示原生 Accessibility/UIA API 调用成功,不表示界面已达到任务预期。被控端不自动比较操作前后的 UI 树或回读属性来判定效果;AI 应在操作后另行读取 UI,判断下一步,并按现有权限申请后续操作。超时、断连等无法确认执行结果的情况仍不得盲目重试。
UI 工具向模型返回对象 ID 和类型,快照元数据与引用有效期只在服务端保留;省略空字段与空动作列表。前端观察面板和设备协议仍使用完整结构。结果被截断时,助手应提高读取深度/节点预算或选择具体窗口继续检查;已批准读取授权耗尽或自然到期后可以重新申请,仍需用户确认,拒绝和撤销不会自动恢复。
UI 读取支持 scope 三种范围:默认 content 只读取普通界面;menus 只读取菜单,适合已有界面信息中找不到目标时补查;all 同时读取两者。macOS 的应用菜单栏应使用应用根或默认前台应用,窗口根只读取该窗口内的菜单。范围选择不会替代读取授权或操作确认。
应用、UI 控件、进程和服务查询统一使用顶层 queries 字符串数组(最多 16 个词,每词最多 128 UTF-8 字节),按不区分大小写的子串匹配,任一词命中即返回,不支持正则或拼写纠错。服务按名称及显示名称匹配,先过滤后截断,未命中返回空列表。旧 UI query 对象和名称/原生标识/角色精确筛选、旧服务 name 参数已移除。已知控件可以用顶层 element_id 或 root_id 加 element_only=true 定位;无条件列表必须显式传 allow_unfiltered=true。
截图保留两种方式:read_current_screen 不传 window_id 时截取单个屏幕的完整画面:inspect_desktop_session 返回当前屏幕的 display 标识、名称、分辨率与位置;只有一屏时自动采用,不要求用户另选,多屏时 AI 先选择目标,再以相同的 display 参数申请截图授权并执行。执行时未传 display 仅允许当前恰有一个屏幕;多屏时返回选择提示,不使用远程桌面的历史显示器配置。目标已断开时拒绝,不自动换屏;通过 window_id 传入 owner_selectable_windows 中的窗口 ID 时,Windows/macOS 使用独立窗口采集,被遮挡不需要切到前台,也不要求先选择显示器。窗口与显示器不能同时作为采集目标;窗口失效时直接失败,不会回退到整屏截图。最小化窗口没有新画面时会明确失败,恢复窗口仍需操作授权。窗口选择不会跳过截图授权。截图转为不含图片的历史文字时,系统校验原始记录,再生成保持原敏感等级、模型授权边界和来源链的新校验记录,避免下一轮因摘要或长度不符中断。
模型历史审计按内容字节预算处理完整记录,不因对话超过 64 条或回复来源超过 256 条而中止;每条记录仍校验摘要和目标模型,来源元数据另有字节上限。容量超限、数据完整性错误与权限拒绝分别报告。加载新工具默认保留当前已加载工具;达到工具数量或描述体积预算时,助手可显式替换工作集,加载本身不授予权限。 describe_tools 默认合并当前工具定义,超出既有描述字节预算时可用 replace: true 显式替换;失败不会改动原工作集,同一输入下的目标续跑也保留已加载定义。
批准桌面 UI 操作时,权限批次默认同时包含当前设备的桌面会话与 UI 读取(不含截图),方便操作后检查结果。附带读取默认与操作申请使用相同有效期,每项最多 16 次;它们单独展示并默认勾选,用户可缩短有效期、减少次数或拒绝。已有读取申请的更窄限制保持不变。原生 UI 操作仅支持批准指定应用内的一组动作并限制期限与次数,已移除单次精确输入授权;读取与操作权限可分别撤销,实际调用继续校验当前会话授权、应用归属与本地能力。
每次模型请求都会按当前会话的有效授权提供工具定义,并刷新剩余次数和有效期;批准后无需再次加载,授权耗尽、到期或撤销后自动回收,同名工具还有其他有效授权时继续保留。未授权工具的参数说明可按需获取,应用范围审批无需预先加载每个动作。工具没有固定 8 项名额;只有定义体积超出预算时才收敛可选项,当前审批续跑工具优先。权限申请、任务状态、历史与后台任务管理仍使用独立入口。获取说明不代表批准或执行,也不会清理历史工具结果和截图。
会话截图与上下文
AI 助手的截图作为会话附件独立保存。刷新页面、重连和上下文压缩不会删除附件;可在会话中查看图片、放大查看完整截图、加载更多图片或删除单张图片。保存的是该次工具调用经审核后提供给模型的截图,不会通过重新截图来替代历史画面。无法恢复此前已经丢弃像素的旧记录。
模型输入中的图片按需使用;转为文字历史时保留工具调用引用,压缩不会触发附件清理。需要再次检查图片时,助手使用 read_conversation_attachment,按历史结果中的 attachment_id 读取。重新读取仍检查当前模型的授权并执行图片安全审核;切换模型不自动授予旧图片的外发权限,历史截图也不会恢复过期的 UI 操作引用或被当作当前屏幕状态。
OSS / Tauri 将图片保存在本机数据目录的 assistant-attachments/,SQLite 只保存附件元数据;Manager 将附件元数据和图片二进制保存在共享 PostgreSQL 表中,多实例使用同一份数据。会话 JSON 不包含图片像素。每张图片沿用模型输入的 400,000 字节上限,每个会话附件总量上限为 100 MiB;图片、JSON 和文字共用该配额;空间不足时按最近访问时间自动淘汰最早的附件并保留墓碑。
图片默认随会话保留。显式删除图片或会话被删除后,服务端立即停止提供相应图片;后台清理文件或二进制内容。单图删除标记保留到会话删除,防止重放旧结果恢复图片。压缩和权限到期本身都不会删除附件。会话仍受现有历史保留策略约束;“随会话保留”并不绕过该策略。
为降低上下文消耗,助手应在首次读取 UI 后优先按元素引用或用 queries 搜索原生标识、角色和名称;权限申请仅需选择工具名,Provider 和效果由服务端确定。失效授权按工具和状态汇总,当前有效的精确操作参数仍保留供核对。工具结果不会因授权到期提前从历史中裁剪。
AI 申请会话定时任务时只保存待确认申请,不保存任务草稿;本轮会等待用户决定,同时在对话中直接展示审批卡片,与权限申请保持相同风格,展示任务内容和执行时间。等待期间不会继续调用模型;用户通过或拒绝后,服务端将明确结果交回同一轮 AI,再继续回复。点击发送按钮处的「停止」可结束等待,申请不会因此自动通过。点击「通过并启用」才创建正式任务,点击「拒绝」会拒绝申请并保存回执;无需再发送聊天确认。卡片没有关闭操作,只有明确点击通过或拒绝才提交决定;多个申请可同时显示。服务端确认后展示结果,失败时保留提示供核对和重试。待确认和已拒绝申请不出现在任务管理列表中。已启用的会话定时任务会保留,后续普通聊天(包括“确认了”)不会取消任务;只有显式暂停或取消才停止调度。到期后等待会话空闲,在原会话最新上下文中执行用户已批准的任务内容。执行开始时固定输入版本,执行期间的新输入仍会阻止旧轮次继续操作。授权会重新校验,不延长有效期或扩大权限。
“5 分钟后”等相对时间从点击启用并由服务端确认成功时开始计时。审核前保存并展示待确认的延迟,不计算绝对执行时间;启用时转换并保存为绝对 UTC 时间;界面按所选时区显示。启用回执保存在原会话中,不新增用户输入,也不授予任何工具权限。独立自动任务仍需完成录制、权限审核和发布。
AI 可通过 list_scheduled_tasks 查询当前会话的定时任务,返回服务端实际状态、创建来源、执行时间和是否可取消。通过 cancel_scheduled_task 可直接取消由 AI 创建的任务,无需额外权限或审核;用户手工创建的任务只能查询,必须由用户在任务管理页面取消,不能通过权限申请绕过。是否由 AI 创建以服务端记录的最初创建来源为准,用户确认启用不会将 AI 提案变为手工任务。取消停止后续调度;已经开始执行时返回“已请求取消”,不承诺撤销已发生的外部操作。
服务重启或执行进程中断后,已过期的执行租约不会让会话持续显示为运行中。页面恢复服务端状态后会解除停止等待,保留历史并允许创建新会话;后台命令仍有独立生命周期,不会随会话状态恢复被取消。
会话执行期间可以新建或切换历史会话,原会话继续在后台运行。会话列表以旋转圆环标识运行中的会话,运行中的排在最前,其余按最后活跃时间从新到旧排序。点击删除会先弹出确认框;运行中的会话另有提示。确认删除后移除历史和图片、停止该会话继续处理并取消关联的会话定时任务。后台命令采用尽力停止策略,不保证一定停止,也不会撤销已执行的操作。
输入区固定在助手页面或远程桌面助手面板的底部,消息区独立滚动并默认跟随最新内容。向上滚动查看历史时暂停跟随,点击右下角“回到最新消息”按钮或手动滚到底部即可恢复跟随。切换会话后默认定位到最新消息。
会话目录右侧的“定时任务”打开当前会话的定时任务列表,包含已完成任务。对话主区域只保留待审批任务卡片。上下文用量圆环支持点击查看详情;输入区按钮以及顶部的会话列表、设置会话定时续跑、新会话按钮,均在空间不足时收起文字,保留图标。
macOS 语义 UI 操作在审批后重新查找并验证原目标的进程和元素身份;人工点击、按键、拖动和滚动会抢占执行,单纯移动鼠标不会;抢占也不会仅因点击审批就清除语义目标引用。坐标快照、引用到期和工作进程重启仍会使对应引用失效。操作失败时,助手收到原始错误并自行读取当前应用状态,再决定下一步。结果不明确只作为警告,不阻止后续已授权写入,也不需要用户确认或关闭记录;原始回执保留,不能仅凭失败就重复执行。
操作结果待核对卡片默认显示操作类别、回执不确定的说明及核对步骤;请求与执行标识收在默认折叠的排查详情内。记录没有具体错误原因时会明确说明,不将内部标识当作错误解释。
执行失败或结果待核对时,会展示实际消耗授权所对应的原权限申请理由,帮助识别该操作的目的。关联依据是服务端执行记录和授权使用记录;没有对应记录时不会根据相近时间或相似参数猜测。申请理由只用于解释操作目的,不代表错误原因,也不会赋予新的权限。
稳定的 UI 元素标识
UI 结果中的 element_id 与该元素的 object_ref.token 相同,标识被控工作进程内的一个原生元素。重复读取、不同搜索范围、文本或数值变化,以及授权过期/重新授权不会重新分配该 ID。macOS 使用保留的 AXUIElement 原生对象比对,Windows 使用进程生命周期内的 RuntimeId 与保留的 UIA 元素;不按树中序号、名称或位置认定为同一元素。原生元素销毁重建、应用重启或工作进程/桌面会话重建后,旧 ID 不再代表新元素。
桌面对象引用按原生对象生命周期生效,不设固定过期时间。重复读取未变化的应用或控件会复用 ID 和存储映射;对象销毁重建、应用重启、worker 或桌面会话更换后引用失效。执行前仍校验原生对象、应用归属和有效授权,授权按用户批准的时长和次数生效,不再被引用期限缩短。引用存储有容量上限,需要时回收失效的 UI 映射;仍满时拒绝新增引用,保留已有存活 ID。
会话授权与原生值类型
授权按当前会话和批准范围生效,普通消息(例如“继续”)不会因此使授权失效。新用户输入重新开始工具详情工作集;同一输入下的续跑保留已加载定义。有效期、次数、撤销和具体操作的参数约束仍然生效。缺少权限时,助手直接提交审批卡片;输入已知的多个操作可以合并申请,不必先在聊天中再次征求同意。
macOS UI 的 set_value 按控件原生值类型执行:文本使用字符串,数值要求有限十进制数,日期接受带时区偏移的 RFC3339、YYYY-MM-DD(保留本地时间)或 HH:MM[:SS](保留本地日期)。读取日期时返回带时区偏移的时间;非法格式或不支持的值类型在写入前返回明确错误。
应用范围授权与控件搜索
处理应用内的多步操作时,AI 可以申请当前会话的应用范围授权。审批卡片显示从设备观察结果取得的应用名称,以及允许的点击、选择、聚焦、切换或填写动作;用户可以缩小动作范围、有效期和次数。每次执行仍校验会话、有效授权、真实控件所属应用及进程身份。其他应用、原始键鼠输入与截图不在该操作授权内;桌面读取作为单独的审批项展示。原应用重启后需要重新观察和申请;引用年龄不影响已批准的授权期限。原生 UI 操作只使用应用范围授权。
普通聊天、审批后的继续与会话定时续跑均按数据库中的有效授权恢复工具范围,不因新增消息而丢失权限。申请批次校验失败时整批不创建审批卡片,AI 会收到错误项、所需参数结构和前置读取指引。
原生 UI 权限申请只使用 application_scope,不接受 exact_input;每次执行必须携带已批准的 application 引用、当前控件 target 与 action。加载工具详情不创建审批申请;只有 request_permissions 返回带 request_id 和 pending_user_decision 的成功回执后,助手才可告知用户审批卡已提交。
能力目录和已加载的工具详情会标明各工具申请权限时需要应用范围、完整的精确入参,还是可以选择性地绑定精确入参。建议有效期和使用次数可以省略,此时服务端建议 300 秒;只读设备工具建议使用次数上限,截图建议 3 次,其他工具建议 1 次。用户仍可缩小申请范围;创建审批卡前,服务端仍会校验实际范围和只能使用一次的要求。
桌面 UI 工具面向模型只使用 ID:读取使用可省略的 root_id,语义操作使用 application_id、element_id 和 action,应用授权申请使用 application_scope.application_id,窗口截图使用 window_id(省略时截取单个完整显示器,仅在当前恰有一个屏幕时自动选择)。模型不再提供快照 ID 或引用有效期;服务端从当前会话的读取记录解析完整引用,并继续校验对象存活、对象类型、应用归属和操作授权。局部回读不会覆盖其他控件的引用。引用失效会明确要求重新读取,未知 ID 不会触发全量搜索,也不会自动申请新权限。历史读取结果仍保留;对象生命周期和授权有效期分别校验。Windows 兜底输入也使用 application_id,保留既有精确输入审批。
工具调用按对话顺序展示为默认折叠的记录,展开后可查看工具名称、入参和出参(包括错误信息)。实时调用在结果返回后更新;重新打开会话或加载之前消息时也能查看已保存的记录。历史记录没有保存调用成功标记时显示「已返回结果」,不把它误称为「状态待核实」或操作成功;明确报错和未收到结果分别显示,操作结果未知则由具体回执提示。界面只能展示服务端保留的数据。
UI 批量动作的完成回执表示步骤已分发,应用内的最终状态仍需另行观察。精确发送结果把“回执已验证”(receipt_status=verified)与业务效果(business_effect=sent、not_sent 或 unknown)分开;只有 sent 能确认发送。确定未发送会显示为已返回结果,不计作发送成功;结果未知时不能盲目重试。
Web、Android 和 iOS 中,两段非空 AI 正文之间若有至少两项思考或工具调用,会合并为一条「工作过程」,默认折叠。Web 中包含截图的工作过程默认展开,截图卡片直接显示缩略图;同级工具调用和思考内容仍默认折叠,可分别展开。截图异步加载后会展开所属过程,手动收起后不会因后续更新再次展开。只有一项时直接显示;用户消息会隔断分组,首段回复前或末段回复后尚未结束的过程也直接可见。
新截图的「观察记录时间」是服务端收到该次截图结果时记录的时间,按浏览器本地时区显示,不表示画面源的精确生成时间或当前新鲜度。历史截图缺失有效时间时显示「时间未记录」,不会用刷新时间补写。设备返回的帧状态和接收年龄另行展示。
设备能力状态有效期为 60 秒,每 25 秒刷新上报。诊断日志记录采集延迟或缓慢、上报通道关闭、状态无效或过期,以及执行前缺少有效状态,不记录 UI 内容或工具载荷。
AI 界面搜索会组合中文标签与英文名称、原生标识及控件类型(每批最多 16 项),即使界面是中文也应尝试 date/time/input 等英文候选。搜索未命中不代表功能不支持;已授权且支持点击的日期等入口,应由助手自行展开并继续读取。助手须核对实际编辑的控件和结果,不能把快速输入框或既有日程误当成已完成的编辑。桌面引用按原生对象生命周期校验,授权时长与次数单独校验。每轮模型请求提供当前 UTC 时间;设备本地日期与时区仍须依据当前设备/应用证据或用户明确说明,不能从语言或服务端时区推测。
macOS 后台鼠标和键盘(实验性)
优先使用语义 UI 控件操作;当语义 UI 无法表达所需操作,或根据观察及实际结果确认难以可靠完成时,再结合目标应用窗口的当前截图使用后台输入。截图通过 read_current_screen 指定 window_id 获取,必要时刷新。存在适用的语义 UI 操作时,不应默认改用后台输入。
AI 可通过 send_background_input 向已观察到的应用窗口发送单击、双击、滚动、Unicode 文本和带修饰键的按键。工具使用应用 ID、窗口 ID;单击、双击可用控件 ID 或窗口截图中的原始图片像素坐标,滚动必须用截图像素坐标(左上角为原点,x 小于图片宽度,y 小于图片高度);PID、窗口几何和引用元数据由服务端处理。鼠标目前仅支持主按钮,拖拽暂不支持。
权限卡按当前会话中的应用和动作范围批准,可缩小有效期、次数及动作;批准后范围内的操作复用授权,默认包含桌面与 UI 读取,截图单独授权。后台输入与语义 UI 操作是独立工具,不能互用权限。设备本地的应用访问策略仍生效。
输入定向发送,不主动激活应用、移动真实光标或回退到前台输入。键盘要求目标窗口是该应用当前接收键盘输入的窗口;最小化或无法唯一定位的窗口会返回错误。坐标操作需要窗口截图,窗口尺寸变化后应重新截图;控件定位使用执行时的控件位置。其他前台应用的用户输入不会自动抢占这项后台操作,用户停止会话仍会取消后续事件;已发送的事件无法撤回。
结果仅说明事件投递,AI 需重新读取 UI 或截图确认实际结果。失败会返回具体原因,部分投递会说明已发送的事件数,不要求用户确认“未决”结果,也不阻止后续已授权操作。鼠标路径依赖运行时探测的非公开 macOS API;不可用时鼠标返回不支持,键盘能力不因此禁用。已验证环境为 macOS 15.6.1 的 TextEdit;Command+A 在该背景条件下未生效,不能假定其他应用和系统版本具有相同表现。
批量 UI 与后台输入(试用)
AI 当前只看到 execute_ui_actions(语义 UI)和 send_background_input(后台键鼠)两个批量入口;原单动作入口暂时隐藏。每批 1–20 步,一个步骤也必须放在 steps 数组中。每批限定同一个应用,后台批次还限定同一个窗口;两类操作暂不混在同一批。
自动审批批准应用范围后,该应用内只包含点击(invoke)的操作不再逐批送审。这样可以减少误拒,但在已批准应用内点错按钮不会被逐批审查拦下。其他界面操作和后台键鼠输入仍逐批审查。同一工具在一次需求中被拒两次后,助手不再继续送审,而是询问你如何处理或改用其他方法;你的下一条消息会重置计数。
批准范围必须覆盖批次全部动作;复用会话应用授权,一次批量调用消耗一次授权使用次数。整批封存并持有同一个执行租约,步骤依次执行,出错即停,不回滚、不自动重试。批次总执行期限仍受既有 30 秒派发期限及授权/取消限制约束。
默认不增加步骤间固定等待,只保留原生键鼠事件所需间隔。遇到打开窗口、布局变化等异步依赖,应结束当前批次,读取 UI 或应用截图后再提交。优先语义 UI,确实不好操作时才结合窗口截图使用后台输入。
成功只返回完成步数;执行中失败只返回失败步骤编号、具体错误和该步是否可能产生效果,编号前的步骤已完成原生调用,后的步骤未执行。整批预检失败则明确所有步骤均未执行。原始入参保留在默认折叠的工具记录中。原生调用完成不代表业务结果符合预期,AI 仍需回读;失败记录无需用户确认,也不阻断新的授权内操作。
macOS 应用任务先按应用的中英文名称查询运行中的应用列表,找到后再用应用 ID 读取控件。完整的应用列表搜索未命中时,应通过已授权的启动方式打开应用,再查询并读取 UI;不反复增加控件搜索深度,也不把未运行误判为未安装。前台查询已明确命中目标应用时可直接使用其引用。应用列表仍要求搜索条件,只有确有必要时才显式请求全量列表。
应用列表返回 application_state:foreground(前台)、background(后台)、hidden(隐藏,优先于前台判定);无法读取状态时省略该字段,不猜测。应用条目不再返回 matched_queries,控件搜索仍保留命中信息。此状态不表示窗口最小化、遮挡或桌面空间可见性。
工具调用记录在折叠标题中显示状态图标:成功为绿色勾号,失败为错误叉号,执行中显示转圈。会话停止且未收到结果时显示中性未知图标,不误报成功或失败;悬停和辅助阅读可获取状态说明。
macOS 截图安全检查独立遍历 Accessibility 可访问的子控件,不受模型 UI 返回的深度、节点数和字节数限制。检查只读取控件子类型和子控件关系,不收集文本,也不将 UI 树加入模型上下文。发现受保护控件时拒绝截图;系统读取失败或扫描超过 10 秒时明确提示安全检查未完成,不再误报发现受保护控件。
macOS 应用截图先搜索运行中的应用,再使用返回的应用 ID 配合 queries=["窗口", "window"] 查询窗口,最后将返回的窗口 ID 传给截图工具。应用列表本身不查询窗口:模型结果省略空窗口列表,并明确提示继续查询应用下的窗口。
macOS 截图安全扫描失败时记录扫描 ID、进程 ID、扫描范围、控件遍历位置、类型、AX 错误码和耗时。仅在失败后补查该属性是否受支持以及子控件数量接口的结果;日志不记录控件标题、值或日程文本。诊断读取不会绕过保护或重试截图。
应用窗口截图检查目标应用和窗口,不再检查无关的前台应用;全屏截图保留前台检查。宿主应用菜单栏或原生窗口标题栏按钮读取 AXChildren 返回 -25200 时记录警告并跳过该分支,其余控件继续扫描,其他读取错误仍会阻止截图。
窗口截图的精确授权在审批和服务端引用解析后统一绑定同一个窗口 ID,服务端补充的引用元数据不会导致授权失配。不同窗口、不同显示器参数或全屏截图不能复用该精确授权;执行时仍校验原生对象有效性和当前权限。
macOS 截图扫描只判断敏感输入,普通容器、按钮无需读取可选子类型。隐藏的子树、最小化窗口,以及无可见面积或完全位于窗口/滚动区域之外的敏感输入会被忽略;部分可见的输入仍检查,缺少可见性信息不等于不可见。后台窗口被其他应用遮挡不视为其内容隐藏。
助手收到截图后,可在下一模型步骤执行已授权的定位操作,无需再次截图。同一批调用中的截图与定位操作仍会被拦截,此类拒绝计入重复调用限制。截图历史附加图片说明文字后,后台输入仍能读取其窗口尺寸。
UI 搜索结果增加 location.status。macOS 控件能获取有效位置时,返回可见区域的 bounds(x、y、width、height,单位为原始窗口截图像素,原点为左上角)和所属 window 引用,与后台输入使用同一窗口坐标系。隐藏、位于可见区域外和无法获取位置会明确标记;其他适配器目前返回位置不可用。助手应结合名称、类型和位置选择目标;无法区分滚动区域时,通过当前应用截图定位。操作后读取结果再判断是否成功,没有变化时应重新定位,不能只重复增加滚动量。
截图按对应工具调用融入消息流,显示在工具记录之后、后续助手回复之前。对应消息尚未加载或已压缩的较早截图显示在消息流顶部;加载之前消息后会自动归位。图片查看、删除和分页加载功能保留。
后台滚动使用 horizontal_pixels 和 vertical_pixels,单位为像素距离,不是滚轮格数或行数。例如 vertical_pixels: -300 向下滚动 300 像素,-6 只移动 6 像素。发送消息后,输入内容保留到服务端确认接收;15 秒仍未确认时可点击“查询并重试”,先检查服务端消息记录,仍未确认则使用原消息 ID 重发。发送、接收与超时日志只记录标识,不记录消息正文。
后台滚动必须指定当前窗口原始截图中的 position: {x,y},不再接受 element_id(单击、双击仍支持控件 ID)。落点应位于目标内容区域内部,避开侧栏、工具栏和分隔线。成功批次可额外返回 last_scroll,包含最后一次实际发送的像素落点和滚动距离,不返回完整成功步骤。回执不代表内容已移动;AI 应重新读取 UI 或截图,内容未变化时先重新判断落点,再考虑调整距离,反复失败应如实说明。
执行回执不再返回固定值字段 application_state_verified;status 仅表示原生派发结果,AI 通过重新读取 UI 或截图判断实际效果。
桌面会话/UI 能力选择按桌面会话生命周期生效,不沿用状态上报有效期;读取时仍检查当前可用性和授权。此类选择使用能力 ID,不混入文件/窗口附件 ID。具体对象附件过期时,需要重新选择或明确移除。消息接收前被拒绝时保留输入和错误,历史刷新不覆盖错误,修正后作为新请求发送;只有接收状态未知的请求才按原消息 ID 和参数重试,重试前的历史查询限时十秒。
AI 工具输入不再要求固定 schema_version,包括通信草稿与浏览器引用中的嵌套版本。服务端在授权和执行两条路径补齐协议版本,命令内容、shell、超时与精确授权匹配仍严格校验。申请权限前先加载目标工具定义;精确输入格式错误会返回字段路径与约束、必填字段和结构示例,AI 应自行修正,不应要求用户猜格式。Gmail 草稿附件按实际协议为可选。
“观察与排障”中的手动语义 UI 观察(包括延迟观察、列出应用和选择应用)会显式请求有数量上限的全量读取,不要求用户输入搜索条件。AI 工具仍须提供搜索条件或显式选择全量读取。
“观察与排障”中的“桌面状态”展示操作系统和当前前台应用;语义 UI 观察按应用或控件展示名称、类型、内容和支持的操作,并提示读取结果截断。两种观察的原始结果均放在默认折叠的“技术详情”中,查看结果不代表获得操作授权。
AI 选择后台点击前先查询控件,优先使用控件支持的语义操作。仅读取元素自身的 element_only 不能与搜索条件组合,误用时返回纠正示例。搜索截断时引导加深或缩小范围重查,不应判定 UI 不支持。批次回执仅确认派发,AI 需检查实际结果并在批准范围内继续纠正。
文本修改和删除在执行前仍检查权限、目标身份与完整内容版本,并先保存备份;备份失败会阻止文件变更。文件系统提交成功后不再回读文件验证结果。之后的其他程序写入或引用登记失败不会把这次操作改报失败;缺少后续引用时可重新查询文件,不能重做已经成功的修改。
文件更新和删除前的备份保存在被控设备的私有恢复库中,与会话及文件操作关联,不再作为长期隐藏目录留在原文件旁,也不会自动加入 AI 上下文。文件操作记录中的“文件备份”入口可查看当前会话的备份并导出恢复包;设备的文件备份管理入口可查看当前用户有权访问的记录。
列表显示已加载的备份记录数量,有下一页时提示还有更多;该数量不是整个设备的备份总数,仍受当前访问范围和分页限制。
仅设备所有者可管理备份,设备需要在线。保留天数、容量上限和已用容量适用于整台设备。容量不足会阻止新的文件变更,不会自动删除尚未到期的备份;缩短期限需要确认,并按备份原生成时间重新计算截止时间。页面按当前时区显示日期。
删除会话时会额外提示关联备份也将清理。设备离线或清理未完成时,清理任务会保留并重试,可在备份管理中查看进度。截图与文件备份分别管理,恢复包包含修改前文本与保存的元数据,不会直接覆盖当前文件。
恢复包包含两个固定名称的文件:before.txt 保存修改前的 UTF-8 文本,metadata.json 保存说明性元数据。首期不提供自动原位恢复。
| 信息 | 保存与导出范围 |
|---|---|
| 原文本 | 完整保存本次操作前的文本,当前原生工具上限为 64 KiB |
| 原路径、文件名 | 作为清单数据保存,不用来决定解包写入位置 |
| mode、用户与组 ID、ACL | 保存数值及 ACL 文本,导出时不自动应用到当前文件或解包文件 |
| 创建、访问、修改时间 | 保存操作前读取到的秒及纳秒值,不承诺解包后恢复这些时间 |
| 扩展属性及资源 fork | 在元数据清单中以十六进制保存二进制值;与元数据一起计入容量,不作为额外可执行文件导出 |
元数据序列化后上限为 256 KiB。读取或保存必要元数据失败、超过大小或容量限制时,文件修改会被阻止。导出的文本副本不代表原 inode、原权限或所有文件系统行为都已还原。
操作结果未知的备份不会按普通期限自动删除,仍可导出并计入容量。可以在 Web、iOS 或 Android 的备份列表中选择“放弃备份”,确认后清理该版本;当前文件与原操作结果不会改变。尚未结束的操作不能放弃,身份无法确认的临时文件不会强行删除,清理未完成时页面会提示仍待处理。
设备时间异常时会暂停备份清理。请先修正设备系统时间,再刷新备份管理;如仍显示暂停,可以点击“确认设备时间”,核对弹窗中设备报告的时间后恢复自动清理。确认可能使已到期的备份进入清理,但不会改写备份原时间或文件操作结果。显示时间超过一分钟或设备再次调时时需刷新后重新确认。
会话附件与模型切换
AI 助手保留已经发生的工具调用和结果;普通工具结果不会按时间过期。操作引用与执行授权仍有各自的有效期,历史记录不能代替新的操作授权。同一网关内更换兼容模型可以继续原会话;当前图片或上下文容量不兼容时,会明确提示,避免静默丢弃历史。只有显式上下文压缩会生成摘要。
超过 4 KiB 的结果正文保存在会话附件中,模型先收到引用和读取指引,没有残缺正文预览。JSON 必须保持合法且不超过 32 KiB;超过上限会明确失败,需要通过原工具支持的筛选或范围参数缩小结果,不能为了取得结果而重复已经执行的操作。文字附件最多保存 400,000 字节的 UTF-8 完整前缀,并标明原始大小与是否截断。命令的标准输出和标准错误分别保存,PTY 输出合并保存。
会话标题栏与工具结果旁的附件按钮提供按会话查看、筛选、分页、查看正文、下载、删除和批量删除。列表不读取正文;主动查看和下载会更新最近访问时间。图片、JSON 和文字共用每会话 100 MiB 配额,空间不足时自动淘汰最近访问时间最早的附件,保留缺失原因与历史引用。
模型使用 read_conversation_attachment 按需读取。文字支持行范围和多关键词 OR 按行搜索;JSON 只支持顺序分页,不提供关键词搜索;每页正文最多 32 KiB,并受当前模型剩余容量约束。读取正文在模型成功消费且当前轮次正常结束后替换成简短读取记录;失败、取消和等待授权不会提前释放。图片仍只保留最近一张的活动像素,历史图片通过附件按需读取。
回复未完成的排查
“达到单次输出 token 上限”表示模型明确返回 length 或 max_tokens。检查模型设置中的输出预算以及网关限制;模型标称最大输出不是当前请求预算。响应格式或结束状态异常会单独提示,不会执行其中的工具调用。服务端模型调用日志包含结束原因、实际请求输出上限和 token 用量;缺失结束原因记为 missing,未知值记为 unrecognized,不记录正文或密钥。
桌面检查返回不透明屏幕引用 ID,截图授权与执行需原样使用同一 ID,操作系统原生屏幕名称由被控端解析。明确拒绝不能解释为授权尚未生效;精确参数不匹配应使用当前已批准参数,窗口引用失效则需重新观察并为新目标取得授权。
Windows 单次屏幕截图遇到 DXGI 的 GPU 设备已移除错误时,会在同一个已授权屏幕上用 GDI 重试一次;权限错误不会触发此回退,窗口截图与已保存的远程桌面采集配置不受影响。
截图安全检查使用独立的原生辅助功能扫描,不复用发给模型的有界 UI 查询结果。Windows 的全屏与窗口截图均检查保护标记、可见性等元数据,并覆盖 WebView 后代控件,不读取正文或值。可见密码控件会阻止截图;遍历或属性读取失败会明确提示安全检查未完成并保持阻止,不再误报为已检测到保护内容。
启动失败诊断与服务查询
应用启动回执会区分授权检查、目标解析、运行环境、辅助宿主和实际启动阶段,并在可用时保留系统错误域、错误码与可读说明。Windows 普通启动遇到要求提权的程序会直接失败;请求管理员启动则要求宿主已有可用的管理员用户令牌,工具不会弹 UAC,也不会使用 SYSTEM。系统拒绝启动不等于用户拒绝授权。提交后断连或无法确认结果时显示结果未知,应先检查实际状态,避免重复启动。
命令执行失败仍返回已捕获且经过脱敏的输出,stdout/stderr 分别保留,PTY 保留合并输出。结果包含是否已启动、可空退出码、信号和分阶段诊断。未启动或未观察到退出状态时不伪造退出码;非零退出、超时、取消、输出读取失败与进程树回收失败分别报告。大型输出仍使用会话附件,附件保存失败不会重新执行命令。
read_service_status 支持名称关键词与平台原生启动配置筛选:Windows 使用 start_types(例如 auto、manual、disabled);Linux 使用 unit_file_states(例如 enabled、static、masked)及 scope=system/user/all;macOS 使用 launch_policies(例如 run_at_load、keep_alive、scheduled)。同一数组内为“或”,名称与类型之间为“且”。不填类型表示全部类型;无任何搜索条件时需显式传 allow_unfiltered=true。Linux 的 disabled 不等于禁止启动,macOS 标为 disk 的策略仅代表磁盘配置。
列表按匹配结果分页,默认 50 条、最多 200 条,每页 JSON 最多 32 KiB。使用原搜索条件与 next_cursor 继续;正常空页不会带续页游标。complete=false 和 errors 表示查询或已检查的元数据不完整,不能解释为没有服务。集合或范围变化会使游标失效,需重新查询;跨页结果不是原子快照。查询只读,不改变服务配置。
输出 token 配置
普通输入及其子 agent 没有额外的累计 token 上限;用量仍记录。规划调用使用已绑定模型的运行时输出额度。调用次数、期限、权限和上下文大小限制保持生效。长期目标保留页面中的有限预算或关闭预算选项,定时运行采用冻结合同的有限预算;来源组在创建时冻结额度,目标自身仍在原有检查点应用当前策略。
“设置 → 上下文管理”可编辑摘要最大输出 token(默认 16384);“设置 → 终端补全”可编辑补全最大输出 token(默认 512)。实际单次输出取用途额度与模型运行时额度的较小值,均为正整数。编辑仅影响后续绑定或新请求;窗口策略保留摘要额度,但不执行摘要。配置写入 config.toml,重建运行数据库无需重新填写。
摘要输出被模型截断时,会显示“上下文摘要输出被截断”,原始历史保留,不提交不完整摘要。请在上下文管理中提高摘要最大输出 token,并检查 AI 模型的运行时输出上限后继续;模型思考也可能占用输出额度。其他压缩失败仍显示对应的通用压缩错误,不会自动重试模型调用。
自动审批可以使用历史中的附件结果引用及已读取的文本页。引用不会自动展开原始附件;已释放的读取页只提供读取回执,历史证据也不会恢复过期的控件引用或授予新的操作权限。
思考回传、清理与短引用
在模型设置中明确选择思考回传契约。标准 OpenAI Chat Completions 不回传 reasoning_content;DeepSeek 保留已留存轮次的完整思考(含最终回复),可显式选择 low、high 或 max。未知兼容网关使用保守契约,不按模型名猜测。Anthropic Messages 保留原始 thinking、redacted-thinking、签名及工具块,不改写其内容。
Anthropic 可以单独启用原生思考清理,选择保留最近的正整数轮次或全部思考;默认关闭。请求通过 context_management 配置 clear_thinking_20251015 并发送相应 beta header。可视控件与高级 JSON 编辑同一份请求选项,已有缓存设置和数值预算会保留。切换预设也保留手工填写的运行时输出上限。
只有供应商要求签名前缀绑定时才启用该能力。系统检查实际 system、tools 和历史块的前缀;只从发送视图移除失效的已完成思考,原始历史保留。当前受保护工具链若需要改变该前缀,会明确报错并停止;动态工具集合或运行态提示变化不能保证维持这类模型的签名绑定。摘要遇到已知的当前链冲突时会在调用摘要模型前停止。
上下文圆环显示本地请求字节预算,不是模型窗口百分比。详情另列最近主助手调用的实际输入 token、输出思考 token、请求字节及原生清理回执;输入包含适用的缓存读写且只计算一次。缺失或不可信的计数显示未知,旧调用注明时间/陈旧状态,不用旧值阻断新消息。清理 token 不再次从计费或输入用量中扣减。
桌面/UI 结果与浏览器结果使用会话内稳定短引用:s1 会话、a1 应用、w1 窗口、e1 元素、o1 输出、p1 页面、b1 浏览器元素。模型必须复制当前会话观察到的 ID。完整对象、快照、生命周期和浏览器来源仍由服务端及 worker 校验;未知、错误类型或失效引用会拒绝操作并提示重新观察。主会话与子会话分别维护映射,会话删除时一起删除,编号不会在同一会话内复用。权限复用、审批和附件的模型视图使用同样的短引用,执行与审计仍保留完整对象。
原生移动端的助手操作与审批
iOS、Android 的主/子会话操作集中在输入栏左下角 +。上下文、持续工作和自动审批状态可以同时显示;窄屏或大字体采用图标并保留完整读屏名称。+ → AI 自动审批 使用原生开关,空会话先初始化,不要求先测试模型;主/子入口操作同一个根会话开关。切换失败后重新读取服务端状态,无法读取时保留错误并提供重试。
普通权限、目录与目标申请在自动审批时显示审核进度;交互式命令和需要重新校验的请求仍保留人工处理。权限历史显示各项的决定来源、结果和原因。具备管理员权限的用户可用 + → AI 审批详情 查看本人当前会话的输入、实际返回的可读思考与答复、裁决、记录状态和处理时间线;主会话默认包括本人子会话,子会话入口只显示当前子会话。记录未采集、已过期或已清理时不会补写思考,也不因管理员身份开放其他用户记录。
上下文详情分别展示完整请求预算及预留开销、实际准备的请求/上下文字节、协议差额、本地估算状态和最近模型调用的 token 观测。未知观测显示未知;协议差额可以为负,已经包含在准备后的用量中,不再重复叠加;本地历史百分比不代表供应商窗口百分比。
AI 审批详情
具备全局管理员权限的用户,可在本人 AI 助手会话的 + → 权限历史 → 审批详情 查看当次实际发送的输入、供应商返回的可读思考与答复、解析裁决和处理时间线。+ → AI 自动审批 → 查看本会话 AI 审批记录 也可打开列表,包含模型调用前的故障和具体动作复核。主会话默认包含本人子会话;子会话入口默认只显示当前子会话。管理员不能查看其他用户逐条审批结果,组织权限或设备共享权限不授予此能力。
模型批准、授权写入和操作执行结果分别展示。没有执行账本时不显示执行成功。未提供可读思考、断流、记录关闭、存储故障、单条截断、到期和预算清理均明确提示;缺失正文不会事后用当前会话重建。页面仅展示实际返回的可读思考,不解析签名或加密思考块。内容按片段加载,关闭页面、切换账号或失去权限后清理详情缓存。
独立记录器的故障不改变审批判定、授权或执行,不触发模型重试,不增加模型上下文。模型要求流式返回时,意外收到的 JSON 可读返回仍可用于诊断,但不会绕过原流式与裁决校验自动批准。API Key、请求头、思考签名、加密回传及图片正文不保存在此记录中。
审批模型设置页可调整记录配置;默认开启、7 天、256 MiB 平台预算、单条 16 MiB。全局设置写入实际 config.toml 的 [approval_trace],SQLite 只保存运行记录;重建运行库不丢失这些设置。纯 DeskServer 模式查看实际审批中心的详情和统计。
工具标识与引用
工具记录中的标识用于定位具体对象。请保留返回的原值;来源失效时重新读取或选择对象。引用本身不授予操作权限,后续动作仍需当前授权。
目录自动审批与工具结果
开启会话的 AI 自动审批后,执行助手提出的 request_directory 申请也由审批 AI 处理,主会话与子会话共用根会话开关。目录面板显示“等待 AI 审批”、决定来源和理由;管理员可在本人会话的“+ → 权限历史 → AI 审批”查看输入、模型返回与处理过程。拒绝或审核故障会结束本次申请并把原因反馈给执行助手,不会留下无限等待。用户手工选择目录仍是用户授权;定时任务沿用任务合同。目录获批只确认该目录身份,不批准其中任何文件读写、删除或模型外发。
创建产物时,权限申请的 exact_input 保留必要业务内容:文本文件需要 file_name 和 content_utf8;显式空字符串表示创建空文件,漏传正文则报缺参。唯一批准目录无需重复目录 ID;多个未绑定目录需要明确选择,服务端在审批前固定目标。表格预览、公式、报告标题和消息内容仍需明确,摘要、完整对象引用及固定元数据由系统提供。目录尚未批准或目标未确定时,应先完成前置步骤。
文件读取使用 contextual_exact_input:按任务提供必要的文件、工作表/单元格或合并规则。记录来源使用 file_result_call_id,目录有多个可读文件时再选择 entry_name,来源类型由系统恢复。完整且未分页的目录结果只有一个可读文件时,无需重复文件名。只有本轮已接受的用户输入明确选中所需文件或文件集合,读取才可省略来源;可选附件和最近历史不代表已选目标。文档转换仍需已验证结果作为来源。Excel 单元格读取默认输出上限为 32 KiB,可显式缩小。审批与执行使用同一份冻结目录、文件选择及默认值,新增目录不会把已批准操作转向其它目标。
全屏截图的 display 是可选参数:执行时只有一块屏幕会自动选择,不需要用户指定。多屏时必须先观测并选择目标,不能使用旧远程桌面设置猜测。范围权限申请无需预先提供具体截图参数;审批 AI 仍审查用户任务和截图风险。
preview_computer_action 的应用 UI 动作使用 ui_in_application,需要观测到的目标与应用 ID,预览不执行动作。模型侧的 file_result_call_id 是工具返回的结果选择 ID,应直接复制;服务端恢复内部调用 ID 并校验原始结果、目录身份及有效期。分页和附件外置不会把页面文本变成文件证明。参数错误返回可纠正的工具结果,错误内容改变或过期仍会被拒绝。
自动审批的逐项结果与容量
AI 自动审批处理与人工审批相同的权限申请。一个批次可以同时包含批准、模型拒绝和系统阻断;全部项目结束后一次提交,只有批准项目获得授权。每项显示决定来源、结果类别和原因。供应商错误、连接失败、超时、输出截断、配置或预算问题不会冒充模型风险拒绝,也不会连带取消其他已批准项目。停止、新输入、委托撤销和已提交的人工决定优先于迟到审批结果。
已完成且内容可验证的命令回执可作为历史事实参与审批,旧执行引用到期不要求重新运行命令。过期的 UI、文件、附件引用仍不能用于当前操作;当前目标错误在申请前反馈助手。无关旧授权到期或撤销不会使新申请失效。批准后修改审批模型配置不会撤销已有授权,授权自身的范围、期限、次数和撤销仍正常生效。
合法的 16 KiB 用户输入完整保留。辅助历史按审批模型的上下文容量选取,省略数量进入审批输入;系统不截断当前需求或确切操作。必要内容超过容量时,申请前提示拆分操作或提高审批上下文容量。测试审批模型用于诊断,配置完整即可运行,无需以探针通过为开关前提。
压缩与审批续跑
上下文管理中的“压缩后历史预算目标(%)”默认 50,允许 1–99,是本地历史字节预算的参考目标,不是供应商 token 窗口。系统不为达到目标保留无用旧历史,也不为压低百分比删除必要结果;同一长任务有新历史后可以再次压缩。页面分别展示最近准备请求字节、协议编码差额以及准备后新增内容的估算。
压缩只重建发送给模型的工作窗口,原始会话、审批记录和引用映射保留。等待审批仍暂停;批准后恢复即使触发压缩,也按当前授权使用原精确参数与对象,不能重复申请、刷新时效或重放已执行操作。部分批准、拒绝、撤销和到期仍按真实状态处理;未读结果与执行中/结果未知的调用保持保护。
审批输出格式纠正
审批 AI 正常结束但返回的 JSON 格式有误时,系统会告知具体格式问题,并重新发送同一冻结申请,默认额外纠正 1 次。只有 verdict、reason_code、reason、evidence_event_ids 四个字段;不重放错误答复或思考。合法拒绝立即结束,证据引用无效、截断、超时、断流或结果未知均不触发格式纠正。用尽次数仍无有效裁决会显示审批故障。
管理员在 设置 → 审批 AI → 审批 AI 运行设置 配置“格式纠正重试次数”。全局策略保存到实际使用的 config.toml 的 [approval_runtime] 节,例如 format_retry_count = 1。重建 SQLite 不会丢失此配置。 该值表示额外次数,0 关闭;保存仅影响之后的新审批。纠正不延长申请或租约期限,每次发送仍须满足原有授权及预算。
审批详情按“第几次调用”分别展示输入、思考、原始答复、用量与时间线,避免多个答复混在一起;只展示供应商实际返回的可读思考。模型调用指标按实际调用次数记录,审批批准率/拒绝率/故障率按申请的最终结果计一次。 每次调用独立预留和记录 token 用量,OSS 不涉及价格或记账;缺失用量保守结算并保留逐次对账关联。
目标时间限制与异常恢复
累计活动时间与目标有效期限默认均不限制,可在长期目标预算页面分别开启。活动时间按模型、摘要、审批等物理调用累计,并发调用可能分别计时;目标有效期限从创建时间计算,包含等待与停机。关闭时间限制不清零已用量,也不关闭其他预算、权限或设备不可用限制。来源有效时,重启后不会再被旧委托组的两小时期限阻止;子任务仍保留自己的固定截止时间。暂停、阻塞或等待用户答复且没有实际工作的目标,输入栏显示发送按钮,目标面板仍可恢复或取消。