无极开物Docs
在会话中工作

权限

选择智能体拥有的访问权限(CLI + App),以及更改如何在会话进行中生效。

权限控制的作用

权限决定了智能体在尝试运行工具(如编辑文件或执行命令)时无极开物请求确认的频次,同时也决定了会话环境的受限程度。

你可以在两处设置权限:

  • CLI:在启动会话时指定
  • App 界面:按会话单独设置(也可配置为新会话的默认值)

无极开物会将你的选择保存在会话中,因此在另一台设备上打开同一会话时,设置依然有效。

权限模式

在 CLI 或 App 中,你会看到以下几种模式:

  • Default(默认):采用提供商的标准行为(需要时询问)。
  • Read-only(只读):智能体可以读取和审查,但会拒绝所有写入类操作。
  • Safe YOLO(安全放行):自动允许读取类操作;在执行写入类操作前请求确认。
  • YOLO(完全放行):在提供商允许的最大限度内跳过确认(速度最快,安全性最低)。

并非所有提供商都支持全部模式。遇到不支持的模式时,无极开物会回退到最接近的可用行为,并在界面中展示实际生效的 Effective 策略。

旧版说明:

  • 部分旧会话和兼容路径的权限元数据中可能仍包含 plan
  • 在当前无极开物版本中,Plan 被视作会话模式,而非普通权限选项
  • 当无极开物遇到旧版 permissionMode=plan 时,会在兼容的提供商上将其映射为 Mode = Plan

会话模式

部分提供商提供了会话模式(例如 plan 与 build,或 default 与 plan)。

会话模式与权限完全独立:

  • 权限控制确认机制与安全边界。
  • 会话模式控制智能体的工作状态(由提供商定义)。

请注意这一重要区别:

  • 切换 Mode 会改变当前会话的状态
  • 启动 Plan 子智能体则是在智能体面板中发起并行任务

这两项功能在设计上有着截然不同的定位。

查看面向用户的完整指南,请参阅会话模式。

CLI 用法

指定会话模式启动会话:

KAIWU claude --agent-mode plan
KAIWU codex --agent-mode plan
KAIWU opencode --agent-mode plan
KAIWU kilo --agent-mode plan

App 界面用法

在会话中打开输入设置;如果当前提供商支持,即可在 Mode 区域选择相应模式。

若提供商不支持会话模式,界面将隐藏 Mode 控制项。

在支持会话模式的提供商上,无极开物也支持切回默认模式。在 App 中,该项显示为默认/不覆盖选项。

重要说明:Plan 模式不会绕过权限

Plan 模式改变的是提供商的行为逻辑,它绝不等同于“自动批准所有操作”。

在当前无极开物版本中:

  • 即使处于 Mode = Plan,你依然会收到权限确认请求
  • 当提供商或运行时请求确认时,你所选的权限模式依然有效
  • 退出 Plan 模式时,无极开物会将该会话恢复为对应提供商的常规工作模式

退出 Plan 模式

当提供商请求退出 Plan 模式时,无极开物会将其作为用户操作请求呈现,而非一般的权限确认提示。

常见操作包括:

  • Approve Plan(批准计划):退出 Plan 模式并继续执行
  • Request changes(请求修改):留在 Plan 模式并要求提供商修改方案
  • 特定提供商的专属确认选项,如 Accept Edits(接受编辑) 或 Bypass All Permissions(绕过所有权限)

Claude 是最典型的例子:

  • Approve Plan 会将该会话恢复为 Mode: Build
  • Approve Plan (Accept Edits) 会切回 Build 模式,并启用对编辑更友好的安全权限模式
  • Approve Plan (Bypass All Permissions) 会切回 Build 模式,并启用 YOLO 风格的放行权限模式

这些确认选项影响的是退出 Plan 模式之后的行为,并不代表 Plan 模式本身可以绕过审批提示。

恢复运行支持

在无极开物中,会话恢复现已成为一项会话层面的资格判定,不再属于常规的运行时探测流程。

实际上,无极开物会综合以下因素判定会话是否可恢复:

  • 该会话所使用的智能体及提供商
  • 会话内是否存有有效的提供商恢复 ID
  • 你的账户及后端配置

针对 Codex 的特别说明:

  • 恢复运行取决于会话元数据与选定的后端路径
  • App Server 是无极开物默认支持恢复的路径
  • 若 Codex 设为纯 mcp,新会话仍可在此运行,但该路径不支持厂商级恢复功能
  • 显式恢复依然遵循**故障关闭(fail-closed)**原则:恢复失败时无极开物会直接报错,绝不静默启动新会话

查看面向用户的具体流程,请参阅恢复非活跃会话。

模型选择

部分提供商允许你选择由哪款模型运行当前会话。

如果支持模型选择,你可以通过以下方式设置:

  • CLI:在启动会话时指定
  • App 界面:在会话内的输入设置中选择

CLI 用法

KAIWU gemini --model gemini-2.5-pro

App 界面用法

在会话中打开输入设置,即可在 Model 区域挑选模型。

对于声明了支持模型的 ACP 提供商,无极开物会展示提供商的实时列表。 对于没有实时列表的提供商(如 Claude Code),无极开物允许手动输入自定义模型 ID。

模型生效机制(修改后的触发逻辑)

模型变更由能力驱动,且因提供商而异:

  • Claude:在下一条提示词时生效(无需重启会话)。
  • Codex (MCP):在 MCP 会话启动时确定模型;更改模型需要启动新的 MCP 会话。
  • Codex/OpenCode/Kilo/Auggie (ACP):若支持 session/set_model,无极开物会实时应用模型变更;否则会在有可用配置时回退到提供商配置项。
  • Gemini (ACP):更换模型可能需要重建底层的 ACP 进程;无极开物会通过回放历史记录来保留上下文,确保会话继续。

关于引擎选择、动态/静态模型列表、自定义模型 ID、模型专属选项及常用模型的完整指南,请参阅模型与引擎选择。

CLI 用法

指定权限模式启动会话:

KAIWU codex --permission-mode read-only
KAIWU codex --permission-mode safe-yolo
KAIWU claude --permission-mode yolo

创建新会话时,建议优先使用:

  • --permission-mode ...:用于控制审批行为
  • --agent-mode plan:用于直接在 Plan 模式下启动会话本身

别名(你可以沿用习惯的表达)

CLI 支持常见别名,并会自动将其解析为标准模式:

输入内容对应结果
ask、prompt、normaldefault
readonly、read、ro、no-toolsread-only
accept-editsacceptEdits
safe、workspace、workspace-write、auto-edit、autosafe-yolo
full、full-access、danger、danger-full-access、bypass、dont-askyolo
bypass-permissionsbypassPermissions

auto 这一行值得多看一眼。它会被解析为 safe-yolo, 允许智能体在工作区内直接写入而无需每次询问。如果你原本的意图是 “需要时询问”,请传入 ask 或 normal。

解析完成后还有第二步处理。如果智能体对某个标准值没有细分模式, 会在会话启动时进一步收敛:Claude 和类 Codex 智能体都会将 acceptEdits 折叠为 safe-yolo,并将 bypassPermissions 折叠为 yolo; 此外 Claude 还会将 plan 视为只读。因此,上表体现的是 CLI 的解析逻辑, 而智能体的实际运行模式则是收敛后所支持的模式。

如果传入未知的值,无极开物会打印出支持的列表和示例。

App 界面用法

修改当前会话的权限

在会话中打开权限标志(盾牌图标),选择所需模式。

选择器中包含:

  • 各模式的简短说明,以及
  • 一行 Effective 提示,用于解释所选模式在当前提供商与会话下的实际效果。

操作审批独立运行

操作审批与权限模式是分开配置的。

如果你需要针对每个操作和每个界面单独配置无极开物的行为,请前往设置 → 操作,选择是否:

  • 彻底停用该操作
  • 在执行该操作前必须经过审批确认

这一审批机制贯穿所有主要的操作界面,包括:

  • 会话智能体界面
  • CLI 界面
  • 外部 MCP 界面
  • 语音界面

关于整体架构的详细介绍,请参阅无极开物工具与操作及收件箱与审批。

设置新会话的默认值

前往设置 → 会话 → 权限,按后端选项分别设置默认权限模式。

默认设置界面围绕两项独立的诉求进行设计:

  • 针对各启用后端的默认权限
  • 针对运行中会话的应用权限变更时机

这两项设置解决的是不同维度的问题,因此分开配置十分必要。

专属权限设置界面

在 App 中,权限界面是配置会话默认权限的核心入口。

打开路径:

  1. 设置
  2. 会话
  3. 权限

默认权限

默认权限区域会为每个已启用的后端选项展示一行配置。

核心特性:

  • 该列表完全是动态生成的
  • 根据解析出的后端目录自动加载
  • 界面并未对特定提供商进行死板的硬编码

这意味着:

  • 启用新后端时,它会自动出现在列表中
  • 当前账户或构建版本不支持的后端不会出现
  • 配置好的自定义 ACP 后端会与内置提供商并列展示

应用权限变更

应用权限变更是一个独立的下拉选项。

它决定了权限变更何时生效:

  • 立即生效:立刻将会话同步为新的权限模式
  • 下一条提示词:在本地暂存该变更,发送下一条消息时再行同步

这样的设计很实用:有的用户希望正在运行的智能体立刻响应,有的用户则希望新权限模式从下一轮对话开始生效。

提示位置

你还可以在该界面中选择权限请求的展示位置:

  • 输入框区域,或
  • 会话记录中

此项设置仅更改审批请求的界面展示位置,不会影响底层的权限判定逻辑。

记住当前会话的审批选择

当无极开物弹出权限提示时,部分提供商支持选定作用域的“不再询问”选项。

例如:

  • 对此工具不再询问
  • 对此命令不再询问

做出此类选择后,当前会话的许可列表会随之更新,后续匹配的请求在该会话中将不再弹窗。

核心细节:

  • 仅在当前会话有效,并非永久性的全局策略
  • 命令级审批的作用域窄于工具级审批
  • 若提供商或运行时不支持对应的许可列表更新,无极开物会回退为常规的逐次提示

权限与用户操作请求的推送通知

当账户启用推送通知后,若会话因以下原因挂起,无极开物会向你发送通知:

  • 权限请求,或
  • 用户操作请求(如 AskUserQuestion 或 退出 Plan 模式)

目前移动端的通知机制如下:

  • 通知中会标明所请求的工具或请求类型
  • 可能附带简要细节,如文件提示或命令名称
  • 可直接提供快捷操作:
    • 权限请求对应 Allow / Deny
    • 用户操作请求对应 Answer

点击 Allow 或 Deny 会打开 App;若目标服务器处于活跃状态或已保存在设备上,系统会直接发送确认响应,随后带你返回会话。

点击 Answer 会在 App 中精确打开对应会话,方便你结合上下文给出回复。

若通知指向的服务器尚未在设备上建立信任,无极开物会引导你走更安全的“添加/切换”流程,绝不会在未知服务器上自动放行。

会话记录存储默认设置

当当前服务器或版本支持会话记录存储选项时,权限界面还会按后端选项展示新会话的默认存储模式。

该选项放置在此处,是因为它直接关系到新会话的默认安全性与持久化策略。

变更何时生效?

在设置 → 会话中,你可以掌控权限变更的具体生效时机:

  • 立即生效:立刻向会话推送新的权限模式(适合希望正在运行的智能体立即响应、无需等待新消息的场景)。
  • 下一条提示词:在你发送下一条消息时应用新模式,并在该消息提交后推送生效(适合希望为后续请求预设配置、不打扰当前运行轮次的场景)。

若选择了下一条提示词但未发送任何消息,该修改将始终保留在你的本地设备上,直到发出消息为止。

下拉列表项的展示逻辑

在当前的 App 版本中,权限下拉菜单的选项行会直接显示当前选中的内容。

这意味着通常无需重新展开下拉菜单,即可直观看到:

  • 右侧标注的当前选中模式标签,以及
  • 作为该行副标题展示的选中项说明文字

提供商注意事项(实际表现)

Codex(默认为 App Server,可选 ACP,全新会话可用 MCP)

Codex 支持通过不同的后端运行:

  • App Server:无极开物中的默认后端;在会话包含有效 Codex 恢复元数据时,也是常规的恢复运行路径
  • ACP:显式将 Codex 切换到 ACP 模式后依然可用,同样支持恢复运行
  • MCP:仍可用于启动常规全新会话,但在当前无极开物版本中,纯 MCP 路径不支持厂商级恢复

在无极开物中,权限始终是 Codex 的核心控制项。无极开物会将你选定的权限意图映射为当前 Codex 后端最接近的本机原生策略。

不同 Codex 构建版本与账户的模型 ID 可能会有所差异。若 App 中未展示该 Codex 会话的模型选择项,你依然可以通过 CLI 进行设置(前提是本地安装的 Codex 后端支持该功能)。

当前会话的具体行为,请以界面中的 Effective 提示行为准。

Claude

Claude 同时支持:

  • 无极开物常规的权限模式,以及
  • 提供商专属的 Mode = Plan

在 Claude 处于 Plan 模式期间:

  • Claude 仍可发起权限请求
  • 无极开物会照常弹出权限确认提示
  • 退出 Plan 模式会作为用户操作请求呈现,并附带针对计划的专属审批选项

若 Effective 行的内容与预期不符,请以该行展示的策略作为该会话的行为准则。## 记住 Shell 命令

当你允许执行某条 Shell 命令并让 Kaiwu 记住时,实际授予的权限比表面上要更严格——这是有意设计的,因为“记住 git”绝不应该变成“允许运行任何以 git 开头的命令”。

整条命令完全匹配时优先级最高,这同样适用于你曾作为整体批准过的链式命令。其他情况下,Kaiwu 会解析该命令并应用以下三项规则:

  • 未加引号的重定向会被拒绝。 只要命令中任意位置出现未加引号的 < 或 >,任何已记住的授权均不再适用。
  • 每个分段都必须独立匹配。 包含控制操作符的命令,仅在每个顶层分段均单独获批时才允许执行。正是这一机制,防止了对 git:* 的授权连带放行 git status && rm -rf …。
  • 无法解析的输入遵循默认拒绝原则。 面对未闭合的引号或末尾的转义符,系统会直接拒绝,而不是试图猜测其意图。

被拒绝的命令并不会被彻底拦截——系统只是会再次向你请求确认,避免已有的授权被过度泛化,从而覆盖你未曾批准的操作。

相关内容

© 乾元执中(南京)科技有限公司 · WUJI-Labs

On this page