关于Claude Code开启sandbox沙箱之后curl命令无法访问局域网

系统环境

  • 宿主机:win11

  • WSL2:ubuntu 24.04

  • WSL 网络模式:NAT模式

  • Claude Code:2.1.81 (安装到WSL中)

  • Claude Code 沙箱配置 (~/.claude/settings.json代码片段如下)

    json 复制代码
    {
      "sandbox": {
        "enabled": true,
        "autoAllowBashIfSandboxed": true,
        "allowUnsandboxedCommands": false,
        "excludedCommands": ["docker"],
        "filesystem": {
          "allowWrite": ["//tmp/build"],
          "denyRead": ["~/.config/opencode", "~/.codex", "~/.local/share/opencode", "~/.ssh"]
        },
        "network": {
          "allowedDomains": ["github.com"],
          "allowUnixSockets": [
            "/var/run/docker.sock"
          ]
        }
      }
    }

问题现象

在 claude cli 中,执行bash命令,命令为通过 curl 访问宿主机win11局域网中的设备。

发现执行 curl 命令时总是出现关于 Uses proxy env variable no_proxy == 'localhost,127.0.0.1,::1,*.local,.local,169.254.0.0/16,10.0. 0.0/8,172.16.0.0/12,192.168.0.0/16' 的提示。导致自动化测试时失败。

问题分析

claude code 开启沙箱之后,会自动设置 NO_PROXY 和 no_proxy,设置值为 localhost,127.0.0.1,::1,*.local,.local,169.254.0.0/16,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16。

另外还会设置 http_proxy=http://localhost:3128 和 https_proxy=http://localhost:3128

我尝试了在 ~/.claude/settings.json 的 env 中设置 no_proxy 和 NO_PROXY 为空,实际没有效果

将 curl 纳入 excludedCommands ,即 "excludedCommands": ["docker", "curl"] ,理论上 curl 命令就不应该在沙箱中运行了,但是实际发现仍然在沙箱中运行。查了一下 Claude Code 仓库的 issue ,发现属于官方文档中的一个bug。

该照提示进行修改,将 "excludedCommands": ["docker", "curl"] 修改为 "excludedCommands": ["docker:*", "curl:*"] 可以解决问题。

相关推荐
孔令飞5 小时前
企业智能化升级:智能体平台设计和实现
云原生·go·ai编程
文谦南宁AI普工5 小时前
榜单上那个 90.4 分,可能连它自己的置信区间都撑不住
agent·ai编程·产品
小四的小六5 小时前
重构 AI 代码,两千行里没有一处能删
aigc·openai·ai编程
梦想恒远5 小时前
11 道题给 RAG 装了个仪表盘,读数推翻了我三个想当然
ai编程
吴凡wudianmei5 小时前
从0搭AI Agent(六):什么时候该把任务拆给多个 Agent
langchain·llm·ai编程
壹米饭6 小时前
手搓 MCP 到最简 Agent,我都做了什么?
agent·ai编程·mcp
无懈可击6 小时前
Vue 可视化AI表单设计器 FcDesigner v3.6 版本发布,支持导出 SQL功能!
vue.js·开源·ai编程
ZzT6 小时前
vibe coding 做小游戏·玩法重做篇:只留自走棋、去掉羁绊,用电脑自动对局调难度
ai编程·游戏开发
灵感__idea6 小时前
Claude Code 实战:AI这么强了,为什么还在发明新概念?
aigc·ai编程·claude
Carson带你学Android6 小时前
AI时代,你的 App 会被 Agent 这三种方式调用
android·ai编程