🔐 凭据与密钥索引(去哪找)

所有 API key / 密码 / token / secret 的”去向表”。 🔒 本文件不存明文值,只登记”什么凭据 + 去哪找”。避免凭据散落多文件、每次翻找。 ⚠️ 安全:明文值只存在于标注的位置,本索引保持”指针”性质。


🕸️ 索引图

graph TD
    subgraph ENV["D:\hermes\.env(Hermes 主配置)"]
        ENV1["DEEPSEEK_API_KEY"]
        ENV2["OPENROUTER_API_KEY"]
        ENV3["TELEGRAM_BOT_TOKEN"]
        ENV4["GLM_API_KEY"]
        ENV5["GOOGLE_API_KEY"]
        ENV6["API_SERVER_KEY"]
    end

    subgraph HERMES["Hermes 认证"]
        AUTH["D:\hermes\auth.json<br/>provider keys"]
        GT["D:\hermes\google_token.json<br/>Google OAuth"]
        GT2["D:\hermes\google_token_tze.json<br/>tze 主账号 Drive readonly(2026-08-22 OAuth)"]
        DRVH["D:\hermes\scripts\drive_helper.py<br/>PI Drive 门禁卡(list/info/download)"]
        GCS["D:\hermes\google_client_secret.json"]
    end

    subgraph VAULT_FACTS["vault/memory/facts.md(权威凭据库)"]
        CF["Cloudflare API Key + Account/Zone ID<br/>**账号 email = ida.czia@gmail.com(8/23 验证)**"]
        GOAUTH["Google OAuth Client ID/Secret"]
        D1["D1 数据库 ID"]
        GA["GA Tracking"]
    end

    subgraph VAULT_ENV["vault/env/ 目录"]
        TUYA["tuya-iot-platform + 待办<br/>Tuya Access ID/Secret"]
        GINDEX["google-indexing-service-account.json<br/>Indexing SA"]
        GITHUB["github-credentials.md"]
        QSAAS["quotation-saas-credentials.md"]
    end

    subgraph SCRIPTS["脚本内嵌"]
        WH["tuya_home_webhook.py<br/>Tuya creds 内嵌"]
        RMS["winrm-cmd<br/>IDA PC 密码"]
    end

    subgraph CLOUD_8_19["8/19 新登记(Cloudflare Email Routing + Meta/WhatsApp)"]
        CFER["CF Email Routing token + Global API Key<br/>值在 Telegram 主会话 8/19 + CF 控制台"]
        WA4["WhatsApp 4 件套<br/>生产 wrangler secrets + .dev.vars 占位"]
        META["Meta Business / App Secret<br/>值在 Telegram 主会话 8/19 04:41"]
    end

    classDef file fill:#F3E5F5,stroke:#8E24AA;
    classDef vault fill:#E8F5E9,stroke:#2E7D32;
    classDef script fill:#FFF3E0,stroke:#E65100;
    classDef new fill:#E1F5FE,stroke:#0277BD;

    class ENV1,ENV2,ENV3,ENV4,ENV5,ENV6 file;
    class AUTH,GT,GCS file;
    class CF,GOAUTH,D1,GA vault;
    class TUYA,GINDEX,GITHUB,QSAAS vault;
    class WH,RMS script;
    class CFER,WA4,META new;

📋 凭据去向表

凭据真实去向类型
DeepSeek API Key(8/17 已轮换:旧 sk-a2fa5…2b01 已删,新 sk-25cf0f…)D:\hermes\.envDEEPSEEK_API_KEY(主)+ D:\hermes\hsdesign_work\bench\dskey.txt(PI/OMP 派发用)+ OpenClaw 三层:① agents/main/agent/openclaw-agent.sqliteauth_profile_store(gateway 实际使用来源)② agents/main/agent/models.jsonopenclaw.json——⚠️ gateway 不热加载,改后必须重启API
OpenRouter API KeyD:\hermes\.envOPENROUTER_API_KEYAPI
OpenRouter Vision Key(用户 8/15 提供,$15/月)D:\hermes\config.yamlauxiliary.vision.api_key(provider=openai)+ D:\hermes\scripts\vision_switch.py(6 档切换)API
⚠️ OpenRouter 用量状态(8/20 查明)已用 15(8/20 API 查询)——真凶:auxiliary 压缩兜底 fallback 走付费 google/gemini-3.6-flash(非视觉!8/19 11:54 首触发);已锁 auxiliary.free_only: true(8/20 生效,重启后彻底防漏);视觉链仍 = Gemini 3.7 Flash 免费用量
Telegram Bot TokenD:\hermes\.envTELEGRAM_BOT_TOKENBot
Gemini/GLM API KeyD:\hermes\.envGLM_API_KEYAPI
Google API KeyD:\hermes\.envGOOGLE_API_KEYAPI
Hermes provider authD:\hermes\auth.json(2026-08-12 起主副本移入 D:\hermes\private\ 安全区——共享工作目录不再放)认证
Google OAuth tokenD:\hermes\google_token.jsonOAuth
Google client secretD:\hermes\google_client_secret.jsonOAuth
Cloudflare credentialsvault/memory/facts.md + .env 部署;CF 账号登录 email = ida.czia@gmail.com(8/23 18:54 验证:Global API Key + X-Auth-Email/X-Auth-Key 全通;account id f6b7326e…;workers.dev 子域 ida-czia.workers.dev 未激活——1042 卡点,需激活子域或走自定义域名)
Google OAuth SaaSvault/memory/facts.md(Client ID/Secret)OAuth
Tuya Access ID/Secretvault/env/tuya-iot-platform.md + 智能家居集成_待办.md + tuya_home_webhook.py
Google Indexing SAvault/env/google-indexing-service-account.jsonService Acc
GitHub credentialsvault/env/github-credentials.md
Quotation SaaS credsvault/env/quotation-saas-credentials.md
IDA PC 密码硬编码 D:\hermes\hsdesign_work\winrm_cmd.py(PASS 常量,WinRM 用)密码
MSI remotesvc(远程管理账户)Hermes skill remote-task-offload(D:\hermes\skills\devops\)+ Hermes 记忆密码
Bukku API tokenD:\hermes\.bukku_token(⚠️ 2026-04-17 已过期,需换新;订阅需含 Open API)API
master app 登录密码glm5.2_cashflow/glm_return/.dev.vars(hash)+ wrangler secret(生产);2026-08-11 Prime 重设,用户已知密码
WO_PDF_TOKEN(WO 打印路由鉴权)glm5.2_cashflow/glm_return/.dev.vars + wrangler secret(生产);2026-08-12 轮换为新 64-hex(旧 token 失效,报告明文已清除)Worker
App Portal 登录密码(SSO 登录门)8/14 22:40 轮换(16 位随机,portal + life-map 共用;值在 Telegram 主会话 8/14 22:40 消息;实现硬编码 portal app.js 前端登录门 + Pages secret PORTAL_PASSWORD_HASH)——vault 不存明文;⚠️ 前端硬编码 = 仅防君子,公网可被查看源码绕过(内网工具另有 token 保护)密码
Life Map 登录门密码与 Portal 同一密码(8/14 22:40 轮换后共用;life-map D1 两行已更新)——vault 不存明文密码
WebWatch token(8787)webwatch/config.json + webwatch/URLS.txt;8/15 升级 Delegate Watch 后公网 Funnel / 走 SSO 短票,token 作为直连备选(?token=Worker
CF token: cfut_zal1…(cloudflared hs hermes,Tunnel 专用)✅ 8/14 23:26 验证有效(2027-03-31 过期);值在 Telegram 主会话 8/14 23:26 + 用户 CF 控制台;cfut = Tunnel 专用(不能部署 Pages)
CF token: cfut_a8y7…(worker scope)✅ 8/14 23:26 验证有效(永不过期);同上位置
CF token: cfat_nGPv…(API token,8/13 泄漏事故)❌ 8/14 23:26 验证已失效 401 → 泄漏风险自动解除,无需吊销
CF token: cfut_dKTXL…(Edit Cloudflare Workers 模板,Pages+Workers 权限齐)✅ 8/14 23:35 用户新建 → 验证 Pages+Workers 权限全齐 → 同步 site_secrets_backup/.env + WSL wrangler(Pages 部署能力恢复);值在 Telegram 主会话 8/14 23:35 + 用户 CF 控制台
CF token: cfut_X3Qum…Hermes email routing API token,8/19 新建)✅ 8/19 用于 Email Routing 配置(Email Routing Addresses:Edit + Email Routing Rules:Edit,hsdesign.biz);值在 Telegram 主会话 8/19 03:44 + 用户 CF 控制台(API Tokens → Hermes email routing API token)
CF token(8/19 更新版)用户按建议开权限 1/3/4(Email Routing + Workers + 其他)+ zone resources = all zones,8/19 03:59 update;值在 Telegram 主会话 8/19 03:59 + CF 控制台
CF Global API Key: cfk_r8EC…(8/19 用户提供)认证方式 = X-Auth-Email/X-Auth-Key(非 Bearer)8/23 18:54 验证通过(先试 healthspace.lab@gmail.com → 9103 不匹配;换 ida.czia@gmail.com/accounts 全通,account f6b7326e…)→ key 未失效,之前 9109 纯属认证方式/email 用错;值在 Telegram 主会话 8/19 03:59 + CF 控制台(My Profile → API Tokens → Global API Key)
CF Workers 测试脚本 tuya-eip-probe(8/23 18:54 部署,探测 Worker)在 ida-czia.workers.dev 下(子域未激活 → 1042);自定义域名 tuya-eip.hsdesign.biz 留作 IP 探测/监控面——激活子域或绑自定义域名后再用
CF token「remote control key」(8/18 21:19 用户建)值在 Telegram 主会话 8/18 21:19 + 用户 CF 控制台;用途待明确(远程控制相关)
WhatsApp Cloud API 4 件套(WA_PHONE_ID / WA_TOKEN / WA_APP_SECRET / WA_VERIFY_TOKEN)8/19 04:4x 已全部 wrangler secret put 写入生产 worker;本地占位 glm5.2_cashflow/glm_return/.dev.varsApp Secret 值在 Telegram 主会话 8/19 04:41——⚠️ 临时 EAA token 24h 过期(≈8/19 晚 04:41)→ 待换 System User 永久 token(8/19 10:00 提醒)Worker
Meta Business / 企业验证资料SSM 202603001610 / PG0581660-U、地址 24-1 Jalan Rosmerah 2/17 Taman Johor Jaya 81100 JB、hsdesign.biz、healthspace.lab@gmail.com、方形 logo;验证状态 in process(8/19);Meta Developer Tools MCP:https://mcp.facebook.com/devtools(OAuth)
cached_files token(:8081 /files)D:\hermes\hsdesign_work\cached_files\config.json(Bearer + ?token= 双通道,8/13 午任务 22 新增);Portal SSO 已配置自动注入;⚠️ URL 带 token 有日志泄露面 → 访问日志需脱敏Worker
FileBrowser 登录(开源版 /fb)admin 账号 + 12 位密码(8/12 晚修复——密码 ≥12 位规则;值在 Telegram 会话 + 用户记忆,vault 不存明文)——现成软件不支持 URL 登录,Portal 无法免登录密码
GitHub PAThermes-cicd-setup,8/18 建)D:\hermes\secrets\gh_pat_hermes_cicd.txt(600 权限,值不落日志明文)——账号 JakeBilu、repo+workflow、7 天有效期 8/25 前吊销;一次性梯子已用于 4 仓库 CI(hs-app-portal / hs-life-map / hsdesign-biz / hsd-cashflow);日常部署凭据 = GitHub Secrets(云端,CLOUDFLARE_API_TOKEN + CLOUDFLARE_ACCOUNT_ID,libsodium 加密,值不回显)——详见 CloudDeploy_Graph
CF 命名隧道 token(sparkbridge,8/24 建)D:\hermes\secrets\spark_tunnel_token.txt + D:\hermes\hsdesign_work\cloudflared_spark.yml(ingress→127.0.0.1:8000)——Spark MCP 桥固定域名 spark.hsdesign.biz/mcp(2026-08-24 定案)
CF 命名隧道 token(livecollab,8/26 建)D:\ida ceo\collaborative-browser\tunnel_token.txt(ingress→127.0.0.1:6080)——CEO 实时协同浏览器固定域名 live.hsdesign.biz(2026-08-26 定案)
Spark D1 token(Read+Write,主力管理用)H:\My Drive\hermes-to-spark\spark_d1_token.txt(8/24 建——Gemini Spark 管 D1 资料;写操作前确认业务数据,随时可吊销重建)API
D1 只读 token(Hermes 备用层专用)site_secrets_backup/tokens_status.md(8/24 建——备用时秒查 D1 用;与 Spark 读写 token 分离)API
Spark 凭据导航表 CREDENTIALS_INDEX.mdH:\My Drive\hermes-to-spark\CREDENTIALS_INDEX.md(8/24 建——Spark 专用,只放位置不放值;本表是 Hermes 侧镜像,两者保持一致)文档

🔑 关键认知

  1. 最常见:API key 都在 D:\hermes\.env
  2. Google 全家桶:token/secret 在 D:\hermes\,Cloudflare/SaaS 在 vault/memory/facts.md
  3. Tuya 分散 3 处(待办/vault env/webhook 脚本)——这是教训,应统一到 vault env,但历史遗留
  4. IDA 密码:硬编码在 D:\hermes\hsdesign_work\winrm_cmd.py(PASS 常量,WinRM 用,2026-08-09 实测确认);skill 引用的 env/winrm-ida-pc.md 已补建(只存指针)
  5. 8/19 新增:CF Email Routing 全家桶(email routing token + 更新版 token + Global API Key + remote control key)值都在 Telegram 主会话 8/18–8/19 对应消息 + 用户 CF 控制台;WhatsApp 4 件套在生产 worker secrets
  6. 8/23 更正:CF Global API Key 验证有效(X-Auth-Email/X-Auth-Key + ida.czia@gmail.com);CF 账号 email 是 ida.czia 不是 healthspace.lab(后者用于 Meta 验证等,勿混淆);workers.dev 子域未激活(1042)
  7. 8/24 新增(Spark 时代):Spark 相关凭据集中在 D:\hermes\secrets\spark_tunnel_token.txt(命名隧道)+ H:\My Drive\hermes-to-spark\(D1 读写 token / CREDENTIALS_INDEX / bridge_url / 心跳)——凭据导航表 CREDENTIALS_INDEX.md 是 Spark 侧入口,本表保持同步(只放指针不存值)
  8. 8/26 新增(Live Collab & DeepSeek Harness 命名隧道)
    • 协同浏览器命名隧道:D:\ida ceo\collaborative-browser\tunnel_token_livecollab.txt5240889b-922b-41f4-8406-91e18c3695f3
    • DeepSeek Harness 官方命名隧道:D:\ida ceo\collaborative-browser\tunnel_token_dshtunnel.txt6ab401d8-e585-4909-ad76-55c4793d5563

⚠️ 维护规则(2026-08-03)

  • 新凭据出现时:知识同步 cron 会自动登记到这里(哪个新系统)→ 但不存明文
  • 凭据位置变化:更新本表
  • 本索引永不存明文值,只放指针(安全)

相关

维护:新增/移动凭据时更新本表。只存位置,不存值。

Google Drive 访问(2026-08-22 更新)

  • GT2 tze 主账号 tokenD:\hermes\google_token_tze.json):OAuth 授权(quotation.hsdesign.biz web client + localhost:5173 回调)——scopes = drive.readonly + userinfo.email + openid(只读——能读 tze 账号全部 Drive 文件,不能改/删)
  • ⚠️ 坑(下次注意):该 token 无 refresh_token——第 2 轮授权时 Google 已发但客户端 oauthlib scope 校验异常丢失;第 3-4 轮不再发新刷新码 → access token 约 1 小时有效下个 Drive 任务前:Google 安全页撤销 “quotation.hsdesign.biz” 第三方访问 → 重新授权 → 拿回 refresh_token(一次性修好)
  • DRVH drive_helper.py(PI 门禁卡):python drive_helper.py list <query> | info <file_id> | download <file_id> <out_path> | refresh-check——token 工具内部自动刷新,凭据不进 PI 会话;上传不走 API(H:\My Drive 同步盘放入即同步)
  • 授权流程脚本:D:\hermes\scripts\tze_drive_oauth.py(web 流 + localhost:5173,须电脑浏览器点击授权——回跳本机)