求助,claude code配置了api还是需要登录(windows端)

帮同事安装了claude code。然后配置了settings.json 。但是在cmd运行claude后,还是提示要登录。。。我自己电脑没遇到过这问题,佬友们,有懂这个是啥原因吗?咋解决啊?

配置看一下


就设置了api和代理。是还缺什么嘛?

遇到过,这是没有办法读取文件进入终端,你先在环境变量中加入配置一下,然后再试一下就能成功使用api了,关闭claude,删除环境变量,就可以了,配置文件不要删除。
我认为是没有初始化好所以缺少文件配置,用环境变量之后就加载了一些配置,然后就能读取配置文件了。

哈雷佬喜欢这种问题 :face_savoring_food:

佬,这个环境变量是怎么配置? 是把settings.json的文件路径丢path里面吗?

右键计算机,点击属性,高级系统,url和这api你应该知道怎么填写,记得保存





我之前也是,你可以到~/.claude.json,把hasCompletedOnboarding设为true,如果没有这个字段就加上这个字段。然后settings.json是这样

{
  "env": {
    "ANTHROPIC_AUTH_TOKEN": "sk-xxx",
    "ANTHROPIC_BASE_URL": "https://xxx.xx/",
    "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1"
  },
  "permissions": {
    "allow": [],
    "deny": []
  }
}

可以把setting.json删掉
用这个:

# 设置用户级环境变量(永久生效)
[System.Environment]::SetEnvironmentVariable("ANTHROPIC_BASE_URL", "https://你的api链接", [System.EnvironmentVariableTarget]::User)
[System.Environment]::SetEnvironmentVariable("ANTHROPIC_AUTH_TOKEN", "你的api-key", [System.EnvironmentVariableTarget]::User)

{
“env”: {
“ANTHROPIC_AUTH_TOKEN”: “sk-1234”,
“ANTHROPIC_BASE_URL”: “https://api.abc.com
},
“permissions”: {
“allow”: [
“mcp__cc-codex__codex”,
“mcp__gemini__gemini”,
“mcp__MCP__web_search_exa”
],
“defaultMode”: “bypassPermissions”
},
“statusLine”: {
“command”: “~/.claude/ccline/ccline”,
“padding”: 0,
“type”: “command”
}
}
T佬说还需要加这个:
“defaultMode”: “bypassPermissions”

自己修改系统环境变量的方式也可以,但是就是不方便切换。比如使用cc switch

终端代理,可以用这种方式修改,运行notepad $PROFILE,修改打开的配置文件,添加这两句就可以(换成实际代理端口):

$env:http_proxy  = "http://127.0.0.1:7897"
$env:https_proxy = "http://127.0.0.1:7897"

感谢佬,辛苦啦!用这个方法解决了

牛啊,大佬

感谢,wsl 这样配置之后,也能成功搞定