所有文章

Claude Code + DeepSeek + Skills 自用配置流程

· 5 分钟

0. 注意事项

  • 不要把 API Key 发给别人。
  • 不要把 .env、token、cookie、SSH 私钥粘贴给 AI。
  • 环境变量配置后需要 重启终端 才会生效。
  • 下方脚本中的 <你的 DeepSeek API Key> 记得替换成自己的 Key。

1. 一键安装脚本(选择你的系统)

下面三个选项卡各是一段完整脚本,从头跑到尾即可。右上角的复制按钮可以一键复制整段。

Windows PowerShell 一键脚本

普通用户 身份运行 PowerShell(不需要管理员),把下面整段复制进去执行。运行前先把 <你的 DeepSeek API Key> 替换成真实 Key。

# 遇错即停,避免前面失败后面继续跑出更迷的错误
$ErrorActionPreference = "Stop"

# ===== 0. 前置检查 =====
$apiKey = "<你的 DeepSeek API Key>"
if ($apiKey -like "*<*" -or [string]::IsNullOrWhiteSpace($apiKey)) {
    Write-Host "❌ 请先把脚本里的 <你的 DeepSeek API Key> 替换成真实 Key 再运行。" -ForegroundColor Red
    return
}
if (-not (Get-Command winget -ErrorAction SilentlyContinue)) {
    Write-Host "❌ 没检测到 winget,请先从微软商店安装『应用安装程序 (App Installer)』后再来。" -ForegroundColor Red
    Start-Process "https://apps.microsoft.com/detail/9NBLGGH4NNS1"
    return
}

# ===== 1. 安装 Git + Node.js LTS =====
winget install --id Git.Git           -e --source winget --accept-source-agreements --accept-package-agreements
winget install --id OpenJS.NodeJS.LTS -e --source winget --accept-source-agreements --accept-package-agreements

# ===== 2. 刷新当前会话 PATH(关键!否则 npm/node 在本会话内找不到) =====
$env:Path = [System.Environment]::GetEnvironmentVariable("Path","Machine") + ";" +
            [System.Environment]::GetEnvironmentVariable("Path","User")

if (-not (Get-Command npm -ErrorAction SilentlyContinue)) {
    Write-Host "⚠️  当前会话仍然找不到 npm,请关闭并重新打开 PowerShell 后再跑一次本脚本。" -ForegroundColor Yellow
    return
}

# ===== 3. 安装 Claude Code =====
npm install -g @anthropic-ai/claude-code

# npm 的全局 bin 目录通常在 %AppData%\npm,再刷一次 PATH 确保 claude 可用
$env:Path = [System.Environment]::GetEnvironmentVariable("Path","Machine") + ";" +
            [System.Environment]::GetEnvironmentVariable("Path","User")

# ===== 4. 配置 DeepSeek 环境变量(注册表持久化 + 当前会话立即生效) =====
$envVars = [ordered]@{
    "ANTHROPIC_BASE_URL"             = "https://api.deepseek.com/anthropic"
    "ANTHROPIC_AUTH_TOKEN"           = $apiKey
    "ANTHROPIC_MODEL"                = "deepseek-v4-pro[1m]"
    "ANTHROPIC_DEFAULT_OPUS_MODEL"   = "deepseek-v4-pro[1m]"
    "ANTHROPIC_DEFAULT_SONNET_MODEL" = "deepseek-v4-pro[1m]"
    "ANTHROPIC_DEFAULT_HAIKU_MODEL"  = "deepseek-v4-flash"
    "CLAUDE_CODE_SUBAGENT_MODEL"     = "deepseek-v4-flash"
    "CLAUDE_CODE_EFFORT_LEVEL"       = "max"
}
foreach ($k in $envVars.Keys) {
    [Environment]::SetEnvironmentVariable($k, $envVars[$k], "User")  # 持久化(新终端可见)
    Set-Item -Path "Env:$k" -Value $envVars[$k]                       # 当前会话立即生效
}

# ===== 5. 安装 Claude Code Skills =====
claude plugin marketplace add https://github.com/daymade/claude-code-skills
claude plugin install skill-creator@daymade-skills
claude plugin install daymade-docs@daymade-skills
claude plugin install daymade-claude-code@daymade-skills

Write-Host "`n✅ 全部完成。建议关闭并重新打开 PowerShell 后再进行下方「验证」步骤。" -ForegroundColor Green

重启 PowerShell 后验证:

git --version
node --version
npm --version
claude --version
$env:ANTHROPIC_BASE_URL
$env:ANTHROPIC_MODEL
$env:ANTHROPIC_DEFAULT_HAIKU_MODEL
claude plugin list

创建默认 CLAUDE.md(在你的工作目录执行):

@'
# Claude 工作规则(自用)

## 回答风格
- 默认使用中文回答。
- 先简要说明思路,再给出可执行的命令或代码。

## 修改代码
- 修改前先分析,确认影响范围再动手。
- 优先最小改动,不要顺手重构无关代码。
- 修改后要总结:改了哪些文件、为什么改、如何测试。

## 安全
- 不读取或输出 .env、API Key、token、cookie、SSH 私钥等敏感文件。
- 不自动执行 git commit、git push,提交由我手动完成。
- 删除、重置、强推等高风险操作必须先确认。

## 其他
- 不确定的地方直接说不确定,不要编造。
'@ | Out-File CLAUDE.md -Encoding utf8

2. 最终验收

claude --version
mkdir cc-test
cd cc-test
claude

进入 Claude Code 后粘贴这段 prompt:

请读取当前目录,创建一个 hello.js,输出 Hello Claude Code,并告诉我如何运行。

运行生成的文件:

node hello.js

预期输出:

Hello Claude Code

3. 常用命令速查

/help      查看所有可用命令
/clear     清空当前会话上下文
/model     查看或切换当前模型
/exit      退出 Claude Code

4. 回滚 / 卸载

# 卸载 Claude Code
npm uninstall -g @anthropic-ai/claude-code

# 删除 DeepSeek 环境变量
[Environment]::SetEnvironmentVariable("ANTHROPIC_BASE_URL",            $null, "User")
[Environment]::SetEnvironmentVariable("ANTHROPIC_AUTH_TOKEN",          $null, "User")
[Environment]::SetEnvironmentVariable("ANTHROPIC_MODEL",               $null, "User")
[Environment]::SetEnvironmentVariable("ANTHROPIC_DEFAULT_OPUS_MODEL",  $null, "User")
[Environment]::SetEnvironmentVariable("ANTHROPIC_DEFAULT_SONNET_MODEL",$null, "User")
[Environment]::SetEnvironmentVariable("ANTHROPIC_DEFAULT_HAIKU_MODEL", $null, "User")
[Environment]::SetEnvironmentVariable("CLAUDE_CODE_SUBAGENT_MODEL",    $null, "User")
[Environment]::SetEnvironmentVariable("CLAUDE_CODE_EFFORT_LEVEL",      $null, "User")