机密
把密码、令牌和密钥保存在钥匙串而不是工作区文件中,并把它们交给命令行工具和 CI。
机密是一个值保留在你 Mac 钥匙串中的变量。工作区文件里只有它的名称,因此你可以提交并分享工作区,而不会分享你的凭据。密码、令牌、API 密钥,以及任何你不会粘贴到聊天里的内容,都应该用机密。
把变量设为机密
- 打开变量表:环境页面、文件夹设置… › 变量,或请求的变量标签页。
- 添加变量,或找到它,然后勾选密钥。
- 在字段中输入值(字段显示未在这台 Mac 上设置),然后按 ↩ 或点按存储。
字段永远不会再次显示这个值。一旦有了值,它会显示带钥匙图标的存储在钥匙串中。要更改值,请输入一个新值并存储。
使用机密就像使用任何变量一样:{{token}}。

在文件中,机密只有名称和一个标志,没有值:
[[variables]]
name = "token"
secret = true每个层级都保存自己的值。Staging 环境中的机密 password 和 Production 中的是两个钥匙串项,所以每个环境都可以有自己的密码。
值保存在哪里
值保存在你的登录钥匙串中,每个机密一项,标签为 Echolot secret <name>。它们属于工作区(通过 workspace.toml 中的 ID)以及定义该变量的层级。同一台 Mac 上的命令行工具读取同样的项。
在这台 Mac 上没有值的机密不会回退到其他层级。在你设置一个值之前,请求会显示 the secret {{password}} has no value on this Mac。
Mac App Store 版
App Store 版使用同一个钥匙串。直接下载版或命令行工具创建的项可能会请求一次访问权限;请选择始终允许。
比较两个版本什么绝不会进入文件
Echolot 不会把下面这些写入工作区文件:
- 机密变量的值。
- 响应捕获存储的机密:标记为机密的捕获只会写入钥匙串。在 Alpenglow 中,Auth › Sign in 把
access_token捕获到机密{{token}}中。 - OAuth 2.0 令牌和 MCP 登录信息。
- 你用移到钥匙串(见下文)转移的值。
你以纯文本输入的内容仍是纯文本。当认证或代理的密码字段中是字面值而不是变量时,Echolot 会在它下方发出警告:以纯文本形式存储在工作区文件中。 点按移到钥匙串:该值会变成工作区的机密变量,字段中则换成 {{name}}。
在 Echolot 显示或交出已解析请求的任何地方,机密也会被遮盖:预览、快速查看、“变量”面板、历史记录搜索,以及智能体收到的一切内容。生成代码…和拷贝为 cURL 是例外:它们按请求将要发送的样子写出,机密也包含在内。
导入会把凭据移入机密
当你导入 Postman 集合、Insomnia 导出文件或其他文件时,在认证设置和凭据标头中找到的密码、令牌和 API 密钥会变成机密变量。它们的值进入钥匙串,请求中则换成 {{name}}:请求的名称加字段,例如 {{me_password}}。导入报告列出所存储机密的名称,绝不列出值。
写在地址(https://user:pass@…)、查询字符串和正文中的凭据目前不会被移动。导入之后请检查这些位置。
导出会略去值
导出在每种格式中都只写出机密变量的名称,不带值。打开导出内容的人在自己那边设置这些值。
命令行和 CI 中的机密
命令行工具按以下顺序查找机密的值:
- 传给
echolot run的--secrets文件:每行NAME=value。 - 环境变量
ECHOLOT_SECRET_<NAME>:名称大写,字母或数字以外的每个字符都变成_。{{token}}读取ECHOLOT_SECRET_TOKEN;{{api-key}}读取ECHOLOT_SECRET_API_KEY。 - 在 Mac 上,是 App 保存的钥匙串项。
ECHOLOT_SECRET_TOKEN=… echolot run Alpenglow.echolot --folder orders
echolot run Alpenglow.echolot --env staging --secrets staging.secrets设置了 CI,或设置了 ECHOLOT_KEYCHAIN=0 时,会跳过钥匙串。在 CI 中,请从 CI 的机密存储设置 ECHOLOT_SECRET_… 变量。见 CI。
在环境变量中找到的机密对每个层级都有效:ECHOLOT_SECRET_PASSWORD 会在任何环境中应答 {{password}}。
命令行中的导入会像 App 一样把凭据移入机密。没有钥匙串时,工具会告诉你该设置哪些 ECHOLOT_SECRET_… 变量。
同事第一次打开
克隆了工作区的同事会得到每个机密的名称,但没有任何值。他们的表格显示未在这台 Mac 上设置。他们设置一次自己的值,此后所有人都基于同样的文件、使用各自的凭据工作。见 Git 和团队。
