API Key 安全操作手册(GUI 版本,不需要终端)
手把手操作:密钥怎么存、文件怎么建
不用终端命令行——用你熟悉的文本编辑器就能搞定
1
新建 .env 文件,把密钥写进去
在你的项目文件夹里创建一个文本文件
1
打开"访达",进入你的项目文件夹
2
打开"文本编辑"App(或 VS Code / Sublime)
搜索 Spotlight:Cmd+空格 → 输入"文本编辑"
搜索 Spotlight:Cmd+空格 → 输入"文本编辑"
3
重要:切换到纯文本模式
菜单栏 → 格式 → 制作纯文本(不是富文本!)
菜单栏 → 格式 → 制作纯文本(不是富文本!)
4
把下面的内容打进去(把
xxxx 替换成你的真实密钥)5
保存:Cmd+S → 文件名输入
如果弹窗问"要不要用 . 开头",选"使用 ."
.env → 保存到项目文件夹里如果弹窗问"要不要用 . 开头",选"使用 ."
1
打开"资源管理器",进入你的项目文件夹
2
打开"记事本"(或 VS Code / Notepad++)
搜索:Win 键 → 输入"记事本"
搜索:Win 键 → 输入"记事本"
3
把下面的内容打进去(把
xxxx 替换成你的真实密钥)4
保存:Ctrl+S → 保存类型选"所有文件(*.*)" → 文件名输入
⚠ 保存类型一定要选"所有文件",不然会变成 .env.txt
.env⚠ 保存类型一定要选"所有文件",不然会变成 .env.txt
文件里写什么:
1
2
3
4
5
6
7
8
# 把下面的 xxxx 替换成你自己的密钥2
3
4
5
6
7
8
# 密钥从各平台的"API 设置"页面复制
ANTHROPIC_API_KEY=sk-ant-api03-xxxxxxxxxxxxxxxx
# 下面这些是可选的,用哪个模型就填哪个
OPENAI_API_KEY=sk-proj-xxxxxxxxxxxxxxxx
DEEPSEEK_API_KEY=sk-xxxxxxxxxxxxxxxx
注意三点:① 等号两边不要加空格 ② 值不需要加引号 ③ 密钥从平台复制过来后直接粘贴,不要多加字符
2
新建 .gitignore 文件,防止密钥被提交到 Git
同样用文本编辑器创建
1
用同样的方法,在项目文件夹里新建一个文件
2
文件名保存为
如果项目里已有 .gitignore,直接打开编辑,在末尾加上新内容
.gitignore如果项目里已有 .gitignore,直接打开编辑,在末尾加上新内容
1
2
3
4
5
6
7
8
9
# 密钥文件——绝对不能提交到 Git2
3
4
5
6
7
8
9
.env
.env.local
.env.*.local
# 其他不需要提交的文件
node_modules/
__pycache__/
.DS_Store
写了 .gitignore 之后,Git 会自动忽略里面列出的文件——不会被
git add 收录,不会被推送到 GitHub。密钥就安全了。3
新建 .claudeignore 文件,不让 Agent 读取密钥
跟 .gitignore 一样的语法,但对象是 Agent
1
在项目文件夹里再新建一个文件,保存为
.claudeignore1
2
3
4
# Agent 不能读取这些文件2
3
4
.env
.env.*
secrets/
.gitignore vs .claudeignore 的区别:
.gitignore
告诉 Git:"不要提交这些文件"
防止密钥被推到 GitHub
告诉 Git:"不要提交这些文件"
防止密钥被推到 GitHub
.claudeignore
告诉 Agent:"不要读取这些文件"
防止密钥出现在 Agent 的输出里
告诉 Agent:"不要读取这些文件"
防止密钥出现在 Agent 的输出里
两个都要创建。.gitignore 防 Git 泄露,.claudeignore 防 Agent 泄露。Codex 用 .codexignore,其他框架在各自的 settings 里配置 deny 规则。
4
在 AGENTS.md 里加一条安全红线
行为层面的第三道保险
1
打开你项目里的 CLAUDE.md 或 AGENTS.md 文件
没有就新建一个
没有就新建一个
2
在里面加上这几行:
1
2
3
4
5
6
7
8
# 安全红线2
3
4
5
6
7
8
- 绝对不要读取、打开、或引用 .env 文件的任何内容
- 绝对不要在代码、文档、输出中写入 API Key 的真实值
- 代码中需要用到密钥时,用环境变量引用:
Python: os.environ["ANTHROPIC_API_KEY"]
Node.js: process.env.ANTHROPIC_API_KEY
- 绝对不要执行 sudo 命令
5
新建 .env.example,告诉别人要填什么
只有变量名没有真实值——可以安全提交到 Git
1
新建一个文件,保存为
.env.example2
写上需要的变量名,但值用说明文字代替,不要写真实密钥
1
2
3
4
5
6
7
# 使用方法:2
3
4
5
6
7
# 1. 把这个文件复制一份,改名为 .env
# 2. 把下面的说明文字替换成你自己的密钥
ANTHROPIC_API_KEY=在这里粘贴你的 Anthropic 密钥
OPENAI_API_KEY=在这里粘贴你的 OpenAI 密钥
DEEPSEEK_API_KEY=在这里粘贴你的 DeepSeek 密钥(可选)
这个文件可以安全提交到 Git——因为里面没有真实密钥。它的作用是告诉队友"你需要创建一个 .env 文件,里面要有这些变量"。
✅ 做完后,你的项目文件夹应该长这样:
📂 my-project/
├── 🔒 .env ← 真实密钥(不提交 Git、Agent 读不到)
├── 📄 .env.example ← 模板(可以提交 Git,给队友看)
├── 📄 .gitignore ← 告诉 Git 忽略 .env
├── 📄 .claudeignore ← 告诉 Agent 忽略 .env
├── 📄 CLAUDE.md ← 写了"不要碰 .env"的红线
├── 📂 data/
├── 📂 output/
└── 📄 README.md
├── 🔒 .env ← 真实密钥(不提交 Git、Agent 读不到)
├── 📄 .env.example ← 模板(可以提交 Git,给队友看)
├── 📄 .gitignore ← 告诉 Git 忽略 .env
├── 📄 .claudeignore ← 告诉 Agent 忽略 .env
├── 📄 CLAUDE.md ← 写了"不要碰 .env"的红线
├── 📂 data/
├── 📂 output/
└── 📄 README.md
Agent 启动时会自动读取 .env 里的密钥——你不需要做任何额外操作。只要 .env 文件在项目根目录下,Claude Code / Codex / Hermes 启动时都会自动加载里面的环境变量。Agent 通过框架间接调用 API,全程看不到密钥的内容。
Mac 用户注意:以 . 开头的文件在访达里默认是隐藏的。按
Cmd + Shift + . 可以切换显示/隐藏。Windows 用户:在资源管理器的"查看"菜单里勾选"隐藏的项目"。