Skip to content
FunCoding

Search

Search docs, Skills and MCP

运行时、终端与上传排障

用安全模式定位定制故障,检查退出码、终端交互与反向代理上传限制。

This page has not been translated into English yet. The original Chinese version is shown below.

先用最小复现区分 CLI、定制组件与运行环境的问题,再逐项恢复配置。

用安全模式隔离定制

qwen --safe-mode

安全模式停用上下文文件、Hooks、扩展、Skills、环境中的 MCP 配置、自定义 subagent、权限规则、设置中的审批覆盖、记忆和跨会话消息等。内置 subagent 仍加载,显式 --yolo 与 --approval-mode 仍生效。

显式传入本次调用的 --mcp-config 或 ACP session/new mcpServers 仍被接受,不能把安全模式理解为无条件禁止所有 MCP。Linux 操作者 executionSandbox 策略也仍保留;排障页笼统的“禁用沙箱设置”不覆盖专章的强制隔离说明。

QWEN_CODE_SAFE_MODE=true 可替代标志,但导出的变量会被子进程继承。由该 shell 启动的 daemon 或编辑器会让所有会话进入安全模式:不写会话记录,其他会话也不能列出或发消息给它们。排障后应为正常 daemon 取消该变量。

安装与 CI 检测

找不到 qwen 时检查 PATH、新终端与对应安装方式,见安装。MODULE_NOT_FOUND 在源码开发环境中可能表示依赖或构建不完整,不能把源码 npm install/build 当作所有独立安装的通用修复。

CLI 不显示交互提示时检查 CI、CONTINUOUS_INTEGRATION 或 CI_ 前缀变量;官方 UI 检测可能因此判定 CI。若该变量并非运行所需,可在单次命令中排除,例如 env -u CI_TOKEN qwen。

鼠标与滚动

ui.mouseTracking 默认启用,终端将鼠标事件交给 Qwen Code,其自带点击链接与上下文菜单。设为 false 可恢复终端原生处理,但应用内鼠标交互也会关闭。

默认 ui.useTerminalBuffer 为 true;关闭 mouseTracking 后,滚轮不再滚动虚拟历史,应使用 Shift+↑/↓、PgUp/PgDn 或 Ctrl+Home/End。还想恢复终端原生 scrollback 时再关闭 useTerminalBuffer,修改需重启。

tmux 可能将滚轮翻译为箭头键,导致切换输入历史。检查 tmux 的鼠标映射,或在非屏幕阅读器模式下用 Shift+Up/Down 滚动应用历史。

IDE Companion

确认 VS Code 只打开一个工作区目录,安装扩展后重启集成终端以继承 QWEN_CODE_IDE_WORKSPACE_PATH 和 QWEN_CODE_IDE_SERVER_PORT。容器中检查 host.docker.internal 解析。官方提供 /ide install 重新安装入口,并可在命令面板验证 Qwen Code: Run。

附件上传 413

反向代理可能在 daemon 收到请求前拒绝。daemon 单文件上限仍是 8 MiB,单纯增大 daemon body limit 不会改变代理限制。

支持 session_attachment_chunk_upload 的 daemon 与 TypeScript SDK/Web Shell 会把大于 512 KiB 的附件按 512 KiB 请求上传,不改变文件字节或图像质量。旧 daemon 仍走单请求,代理上限小于 512 KiB 时仍需调整。

上传过期或 daemon 重启后可从 UI 重试。已完成但响应丢失的文件可能仍在附件目录,取消不会删除已经完成的文件。

退出码

代码含义
41FatalAuthenticationError,认证失败
42FatalInputError,无头模式输入无效或缺失
44FatalSandboxError,沙箱环境错误
52FatalConfigError,配置无效
53FatalTurnLimitedError,无头模式达到会话轮数上限

工具失败时先确认最小操作、目标路径与权限;沙箱拒绝不等于模型故障,见沙箱入口。