爱意满满的作品展示区。
Lfinesse

写了个小工具:按终端隔离 Claude Code / Codex 的配置,不用全局切环境变量

  •  
  •   Lfinesse · 2 days ago · 1085 views

    背景是迫于有好几套 provider ——公司网关一套、自己买的订阅、中转站有几套

    之前一直靠 ANTHROPIC_* 这些环境变量配置,或者 cc switch 之类工具来切换,但都是全局切换,所有终端跟着一起变,没法同时两边各自跑,用了公司的网关就没法再同时跑自己的

    写了个小工具来满足这个需求,叫 hats (戴不同的施工帽干活

    每套配置存成一个 "hat",hats work 就只在这次启动的进程里套上这套环境,其他终端完全不受影响。启动前会先把继承来的 ANTHROPIC_*、OPENAI_* 相关变量清掉,避免串配置,这样就用

    hats add work claude   # 按提示配一套环境
    hats work              # 这个终端用 work 的配置跑 claude
    

    也添加了 --isolated 选项,用来把配置目录( settings 、MCP 、history )一起隔离,用于想彻底分开的场景

    因为平时用 herdr 比较多,为了方便,加了个让 agent 列表展示对应用的哪个 hat 的小功能


    GitHub: https://github.com/Colafornia/hats

    目前的功能主打满足自己日常使用,感觉琢磨琢磨,应该还可以加一些好用的小功能

    README 里有演示 GIF ,有需要的可以试试,问题欢迎提 issue

    15 replies    2026-07-23 10:03:20 +08:00
    Hilong
        1
    Hilong  
       2 days ago
    确实是有这个场景的。我之前自己的和公司的账号老是搞混了
    strean
        2
    strean  
       2 days ago
    我也想过做个这个,挺好的、现在 ccswitch 切中转站时候,全部会话被切挺呆的
    Lfinesse
        3
    Lfinesse  
    OP
       2 days ago
    @strean 是的,之前我还以为我的场景有点小众,但是用下来,还是多号同蹬是常态,接下来是想想怎么更有效地实时显式是哪个 provider 了
    Lfinesse
        4
    Lfinesse  
    OP
       2 days ago
    @Hilong 我司还有审计,得完全杜绝搞混了这种
    gap
        5
    gap  
       2 days ago
    这个方案好,🌟送上
    heyjei
        6
    heyjei  
       2 days ago
    这个思路不错,我是 bash 写了一个 alias ,ccpro 和 ccdeepseek
    SurfaceW
        7
    SurfaceW  
       2 days ago
    可以试一试我最近做的: https://hubs.e-studio.ai/
    定义好你自己的 skills, rules, commands 等 suites (预置的配置) 之后,在 Claude, Cursor, Codex 等一键切换,很舒服 ~
    Lfinesse
        8
    Lfinesse  
    OP
       2 days ago
    @SurfaceW 看了一下,我们解决的是两层问题,理论上可以一起用
    Lfinesse
        9
    Lfinesse  
    OP
       2 days ago
    @gap 感谢!
    Lfinesse
        10
    Lfinesse  
    OP
       2 days ago
    @heyjei 一开始我也是这样的,换了几个中转站之后,想着还是做一层薄一点的工具简化一下哈哈
    le0zh0u
        11
    le0zh0u  
       2 days ago
    我用的是 ccst ,在 github 上开源的
    le0zh0u
        12
    le0zh0u  
       2 days ago
    @le0zh0u ccsc ,打错了
    CamD
        13
    CamD  
       2 days ago
    我目前使用的 direnv 这个工具,不同的 codex 账号就配置不同的 CODEX_HOME 变量,用着也还行。
    Lfinesse
        14
    Lfinesse  
    OP
       1 day ago
    @le0zh0u #12 感谢推荐,ccsc 依托 cc-switch 生态来做,这个思路还蛮好的
    Lfinesse
        15
    Lfinesse  
    OP
       1 day ago
    @CamD 之前也考虑过用 direnv ,还是忍不住自己动手弄个更顺手的了,我再想想怎么迭代一下,能让使用起来更顺滑。命令行薄薄一层的顺手小工具这样
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2725 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 35ms · UTC 14:43 · PVG 22:43 · LAX 07:43 · JFK 10:43
    ♥ Do have faith in what you're doing.