You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用1Password CLI启动Bruno时,.env秘密引用未替换如何解决?

问题分析与解决办法

核心问题在于Bruno读取环境变量的方式和printenv不同:op run会把1Password秘密引用替换后注入到子进程的环境变量中,但如果Bruno是直接读取本地.env文件的原始内容,而非读取进程的环境变量,自然不会识别到替换后的密钥。

可能的解决步骤:

  • 跳过本地.env文件,直接通过op run注入环境变量
    不用依赖.env文件,直接让op run把变量传递给Bruno,命令改成:

    op run --no-masking --env API_KEY="op://Private/api_key/password" -- bruno
    

    这样op run会直接将替换后的密钥注入到Bruno的进程环境变量中,而非通过文件传递。

  • 确认Bruno的变量引用逻辑
    在Bruno的请求配置里,确保你是通过进程环境变量引用密钥(比如用{{env.API_KEY}}这类语法),而不是直接读取.env文件里的字符串。如果Bruno默认优先加载本地.env文件的内容,你可能需要在Bruno的设置里调整,让它优先使用进程环境变量。

  • 临时替换.env文件内容(备选方案)
    如果Bruno必须读取本地.env文件,可以先让op run把替换后的变量写入临时文件,再让Bruno加载临时文件:

    op run --no-masking --env-file=.env -- sh -c 'printenv API_KEY > .env.tmp && bruno --env-file=.env.tmp && rm .env.tmp'
    

    这个命令会先生成替换后的临时.env文件,让Bruno加载后再删除临时文件。

内容的提问来源于stack exchange,提问作者Luca

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 04:17:36