跳到主要内容

将已安装的编程 Agent 用作聊天模型

如果已付费使用编程 Agent,并在 Libre WebUI 后端机器上登录,就可以在普通聊天中使用它,而无需另加 API 密钥。Libre WebUI 会检测 CLI 并在模型选择器中显示。

检测内容​

每次请求模型列表时,Libre WebUI 在服务器 PATH 中查找:

模型命令提供方
Claude CodeclaudeAnthropic
CodexcodexOpenAI
Kirokiro-cliAWS
Muse CodemuseMeta
OpenCodeopencodeSST
PipiMario Zechner

发现的命令出现在Agent组中;系统不会代为安装,也不需要配置文件。

设置 → 聊天 → 默认设置也会将这些条目标为智能体,包括你的账户有权使用时的 Strands。插件模型保留提供商名称,只有 Ollama 模型使用 Ollama 标签。禁用 Ollama 不会隐藏已配置的智能体或插件。模型信息卡显示所选条目的显示名称和提供商,仅在目录提供时显示大小、系列和格式。

选择模型,而不只是 CLI​

各 CLI 可以在智能体组中提供多个选项:

  • Claude Code 提供默认模型和 Sonnet、Opus、Haiku。 此外还提供明确的 Sonnet 5.5(claude-sonnet-5-5)、Opus 5.5(claude-opus-5-5)和 Haiku 5.5(claude-haiku-5-5)选项。Sonnet 5.5 需要 Claude Code 2.1.284 或更高版本,Opus 5.5 需要 Claude Code 2.1.280 或更高版本,Haiku 5.5 需要 Claude Code 2.1.293 或更高版本,均要求已登录账户拥有访问权限;运行 claude update 更新 CLI。现有的 Sonnet、Opus 和 Haiku 别名仍遵循 CLI 当前的模型映射。
  • Codex 提供默认模型以及 GPT-6 Astra、GPT-6.1 Sol (gpt-6.1-sol)、GPT-6 Sol、GPT-6 Luna、GPT-5.6 Sol、Terra、Luna、GPT-5.5、GPT-5.3 Codex Spark。 可用与否取决于 CLI 的登录状态和账户的模型访问权限。
  • Kiro 在其配置的默认模型旁列出已登录账户可用的模型(来自 kiro-cli chat --list-models)。每一轮都以非交互方式在 CLI 的 V3 智能体引擎上运行,并固定使用其内置默认智能体(vibe),因此自定义的 chat.defaultAgent 不会生效。需要 Kiro CLI 2.27 或更高版本。
  • Muse Code 提供其配置的默认模型以及 Muse Spark 1.3(muse-spark-1.3)、Muse Spark 1.3 Contributor(muse-spark-1.3-contributor)和 Muse Wonder 1.0(muse-wonder-1.0)。它通过 muse login(Meta 账户)登录,或使用来自 META_API_KEY 或 muse auth set 的 Meta Model API 密钥。Contributor 模型按较低费率计费,因为 Meta 可能会用你发送给它们的内容进行训练。
  • Pi 使用 CLI 中配置的模型。
  • OpenCode 从 opencode models 列出已认证提供商并要求明确选择;CLI 默认值可能指向 Libre WebUI 主机无法访问的本地服务器。

内置的 Strands 引擎在你的账户有权使用时,也会出现在智能体组中。它不是 CLI:它在后端内部运行,驱动你的 Ollama 和提供商插件模型。单独的 Strands 条目(strands)使用你的默认聊天模型。其他条目(strands:<route>)为每个可用模型各列出一项,例如 Strands · gpt-5.6-sol (Codex (ChatGPT)),并为该对话同时固定模型及其提供商;发生中断时,其他可用提供商不能替代它。列出选项不会启动引擎。

相同的 Strands 条目也可用作设置 → 聊天 → 默认设置中自动标题和思考摘要的任务模型。使用当前运行的模型会使用对话保存的 Strands 选择。这些短文本请求直接调用底层提供商模型,不执行智能体工具,也不创建智能体会话。其他 CLI 配置档需要 Ollama、插件或 Strands 任务模型处理这些辅助请求。

Pi 以 --no-session 无状态运行,禁用本地工具并使用中性系统 Prompt,不会读写服务器用户的个人 Pi 配置。

Kiro 在这两方面正好相反:它使用服务器用户的 Kiro 配置运行,内置默认智能体会被固定,但权限规则(~/.kiro/settings/permissions.yaml)、MCP 服务器和配置的默认模型仍然生效;并且每一轮都会作为新会话保存在该用户的 Kiro 会话存储中(kiro-cli chat --list-sessions 可以显示,其中包含最近的聊天记录)。没有关闭此行为的选项,因此聊天内容也会保存在后端用户的主目录中,位于 Libre WebUI 数据库之外。Kiro 的工具保持启用:凡是这些权限规则信任的操作(默认包括读取和 date 等只读命令)都会直接运行而不询问,任何需要批准的工具调用都会被拒绝,因为聊天轮次无法回应该提示。

Muse Code 从私有文件读取提示词,并在关闭审批(--approval-mode never)的情况下以无头模式运行,因为聊天轮次无法回应审批提示。它自己的沙箱保持开启,每一轮都会获得一个用后即删除的临时工作区,因此它写入的文件不会落到服务器用户的主目录中。各轮次不会保存到 Muse 的会话日志中(--no-session-log),但服务器用户的 Muse 设置、规则和默认模型仍然生效。

使用方法​

  1. 以管理员身份登录。
  2. 打开聊天和模型选择器。
  3. 在 Agent 中选择。
  4. 正常发送,回复逐 Token 流式返回。

聊天可保存、重命名和搜索;每轮会发送最近对话转录。

谁能使用及其访问范围​

此功能仅限管理员。智能体在宿主上以 Libre WebUI 后端相同的 OS 用户身份运行,而不是在 Work 容器中,因此继承该用户的智能体凭据及通常的访问权限,包括按需读取服务器文件和运行命令。

启用此功能等同于授予智能体宿主 shell 权限,因此默认关闭。管理员必须在设置 → 用户管理 → 访问与策略 → CLI代理模型中启用。设置会持久化,并立即生效,无需重启。

更改此开关会立即刷新模型目录;智能体类别包含直接 CLI 项,插件模型包含 Codex (ChatGPT) 等提供商 API 集成。Strands 也列在同一类别中,但它遵循自己的 Strands 引擎 访问设置,而不是此开关,因此即使 CLI代理模型处于关闭状态,它也可能显示。它的模型发现不会阻塞已安装 CLI 智能体的发现。

在保存独立 CLI 设置之前,已有安装继承原先保存的智能体启用决定。

若要在部署层固定决定,不受运行时开关影响,请设置以下任一环境变量值;这也会锁定界面开关:

AGENT_CLI_MODELS_ENABLED=false # or true

如果需要能操作文件但保持在沙箱中的模型,请使用 Work:它在受限容器及隔离工作区中运行支持工具的模型。

Work 中的相同智能体​

Work 提供相同的智能体、相同的模型选项和相同的登录,但在任务沙箱中而不是在宿主上运行它们,并通过出口代理将真实令牌挡在沙箱之外。它们有自己的访问模式 Work 中的智能体 CLI,不需要上面的开关。请参阅 Work 中的智能体 CLI。

用量跟踪​

打开提供商使用情况(/usage),在页面顶部附近找到智能体。Claude Code、Codex、Kiro、Muse Code、OpenCode、Pi 和 Strands 活动都有独立条目;所选时间段没有调用记录时也会明确提示。

通过 LWUI 发出的 CLI 调用会记录结果、时长及报告的令牌用量。每次调用只产生一个用量事件;重复快照和分步报告不会重复生成事件或计算令牌。缺失令牌计数保持未报告状态。停止响应会记录取消,CLI 非正常退出也不会因产生了部分文本而被记为成功。不会导入 LWUI 之外的 CLI 调用用量。

Strands 调用会计入 Strands 智能体。分类和限制见智能体用量。

配置​

变量默认值用途
AGENT_CLI_MODELS_ENABLED未设置固定 true/false,否则使用管理开关
AGENT_CLI_TIMEOUT_MS600000单轮最长运行时间

故障排除​

没有出现智能体组。 请确认已在设置 → 用户管理 → 访问与策略 → CLI代理模型中启用(默认关闭),并以管理员身份登录。然后确认命令位于后端进程的 PATH 中,而不只是交互式 shell 的路径中。服务管理器、Docker 容器或桌面启动器通常使用比登录终端更精简的 PATH。

立即失败 — 以服务器用户运行 claude -p "hello"、codex exec "hello"、muse exec "hello" 或 echo hello | kiro-cli chat --no-interactive --output-format stream-json --agent-engine v3 --agent vibe,检查登录或订阅限额。需要 Kiro CLI 2.27 或更高版本;较旧的 CLI 会先在这里失败,错误清晰可见,而在聊天中同样的失败只会显示为 Kiro exited unsuccessfully。OpenCode 可重新执行 opencode auth login;Kiro 通过 kiro-cli login 登录,会话过期时会以同样方式失败。在以服务器用户身份运行 muse login 之前,Muse Code 会报告 missing meta credentials。

回复中断 — 提高 AGENT_CLI_TIMEOUT_MS 或拆分请求。

相关内容​