{ "_meta": { "manifest_id": "ZY-SECRETS-MANIFEST-v2.0", "created": "2026-03-29T10:43:00Z", "updated": "2026-04-11T05:30:00Z", "created_by": "铸渊 · ICE-GL-ZY001", "directive": "SY-CMD-KEY-012 · 密钥全量清理与统一替换 + 7 Notion Secret审计 + 国内服务器密钥扩展 + D45·AGE OS数据库+大模型+硅谷服务器密钥扩展", "purpose": "铸渊仓库密钥主清单 — 冰朔配置密钥的唯一参考文档", "naming_convention": "所有密钥统一使用 ZY_ 前缀 · 铸渊(Zhuyuan)自主命名体系", "total_secrets": 69, "required": 49, "optional": 17, "replaced_old_secrets": 59, "reduction": "59 → 69 (新增AOAC密钥审计·ZY_BRAIN_*·AWEN_*·ZY_SVR_SV_*·ZHUYUAN_API_KEY)", "v2_changes": "新增ZY_CN_SERVER_* 4个密钥用于广州国内服务器(ZY-SVR-003)", "v2_1_changes": "D64密钥审计:新增ZY_BRAIN_*(大脑服务器3个)+AWEN_*(阿文代理3个)+ZY_SVR_SV_*(硅谷4个)+ZHUYUAN_API_KEY(MCP鉴权1个)·统一ZY_QWEN→ZY_QIANWEN·ZY_ZHIPU→ZY_QINGYAN" }, "migration_mapping": { "description": "旧密钥名称 → 新ZY_*名称 完整映射表", "note": "冰朔在GitHub Settings清空所有旧密钥后,按此清单配置新密钥。合并PR后自动生效。", "mappings": { "LLM_API_KEY": "ZY_LLM_API_KEY", "ANTHROPIC_API_KEY": "ZY_LLM_API_KEY", "OPENAI_API_KEY": "ZY_LLM_API_KEY", "DASHSCOPE_API_KEY": "ZY_LLM_API_KEY", "DEEPSEEK_API_KEY": "ZY_LLM_API_KEY", "GEMINI_API_KEY": "ZY_LLM_API_KEY", "YUNWU_API_KEY": "ZY_LLM_API_KEY", "MODEL_API_KEY": "ZY_LLM_API_KEY", "LLM_BASE_URL": "ZY_LLM_BASE_URL", "DEPLOY_HOST": "ZY_SERVER_HOST", "DEPLOY_USER": "ZY_SERVER_USER", "DEPLOY_KEY": "ZY_SERVER_KEY", "DEPLOY_PATH": "ZY_SERVER_PATH", "NOTION_API_KEY": "ZY_NOTION_TOKEN", "NOTION_TOKEN_BINGSUO": "ZY_NOTION_TOKEN", "NOTION_TOKEN_ZHIZHI": "ZY_NOTION_TOKEN", "NOTION_SYSLOG_DB_ID": "ZY_NOTION_SYSLOG_DB", "NOTION_DB_SYSLOG": "ZY_NOTION_SYSLOG_DB", "SYSLOG_DB_ID": "ZY_NOTION_SYSLOG_DB", "NOTION_TICKET_DB_ID": "ZY_NOTION_TICKET_DB", "NOTION_CHANGE_LOG_DB_ID": "ZY_NOTION_CHANGELOG_DB", "CORE_BRAIN_PAGE_ID": "ZY_NOTION_BRAIN_PAGE", "PORTRAIT_DB_ID": "ZY_NOTION_PORTRAIT_DB", "FINGERPRINT_DB_ID": "ZY_NOTION_FINGERPRINT_DB", "RECEIPT_DB_ID": "ZY_NOTION_RECEIPT_DB", "SIGNAL_LOG_DB_ID": "ZY_NOTION_SIGNAL_DB", "BRIDGE_QUEUE_DB_ID": "ZY_NOTION_BRIDGE_DB", "WAKE_REQUEST_DB_ID": "ZY_NOTION_WAKE_DB", "SKYEYE_PERSONA_DB_ID": "ZY_NOTION_SKYEYE_DB", "AGENT_BULLETIN_BOARD_PAGE_ID": "ZY_NOTION_BULLETIN_PAGE", "WORKORDER_DB_BINGSUO": "ZY_NOTION_WORKORDER_DB", "WORKORDER_DB_ZHIZHI": "ZY_NOTION_WORKORDER_DB", "SMTP_USER": "ZY_SMTP_USER", "SMTP_PASS": "ZY_SMTP_PASS", "MAIL_USERNAME": "ZY_SMTP_USER", "MAIL_PASSWORD": "ZY_SMTP_PASS", "EMAIL_ADDRESS": "ZY_SMTP_USER", "EMAIL_APP_PASSWORD": "ZY_SMTP_PASS", "HUMAN_EMAIL": "ZY_SMTP_USER", "MAIN_REPO_TOKEN": "ZY_GITHUB_PAT", "CROSS_REPO_TOKEN": "ZY_GITHUB_PAT", "DEPLOY_GITHUB_TOKEN": "ZY_GITHUB_PAT", "GDRIVE_CLIENT_ID": "ZY_GDRIVE_CLIENT_ID", "GDRIVE_CLIENT_SECRET": "ZY_GDRIVE_SECRET", "GDRIVE_REFRESH_TOKEN": "ZY_GDRIVE_REFRESH_TOKEN", "GDRIVE_REFRESH_TOKEN_DEV001": "ZY_GDRIVE_REFRESH_TOKEN", "GDRIVE_REFRESH_TOKEN_DEV002": "ZY_GDRIVE_REFRESH_TOKEN", "FEISHU_APP_ID": "ZY_FEISHU_APP_ID", "FEISHU_APP_SECRET": "ZY_FEISHU_APP_SECRET", "FEISHU_BROADCAST_CHAT_ID": "ZY_FEISHU_CHAT_ID", "DINGTALK_TOKEN": "ZY_DINGTALK_TOKEN", "GHAPP_APP_ID": "ZY_GHAPP_ID", "GHAPP_PRIVATE_KEY": "ZY_GHAPP_KEY", "PUSH_BROADCAST_TOKEN": "ZY_PUSH_TOKEN", "OSS_ACCESS_KEY": "ZY_OSS_KEY", "OSS_SECRET_KEY": "ZY_OSS_SECRET", "COS_SECRET_ID": "ZY_OSS_KEY", "COS_SECRET_KEY": "ZY_OSS_SECRET", "NOTION_TOKEN": "ZY_NOTION_TOKEN", "ZY_ZHIPU_API_KEY": "ZY_QINGYAN_API_KEY", "ZY_QWEN_API_KEY": "ZY_QIANWEN_API_KEY" } }, "secrets": { "required": [ { "id": 1, "name": "ZY_LLM_API_KEY", "category": "LLM · AI模型", "description": "三方LLM API统一密钥(支持多模型动态路由)", "type": "api_key", "example_format": "sk-xxxxxxxxxxxxxxxx", "replaces": [ "LLM_API_KEY", "ANTHROPIC_API_KEY", "OPENAI_API_KEY", "DASHSCOPE_API_KEY", "DEEPSEEK_API_KEY", "GEMINI_API_KEY", "YUNWU_API_KEY", "MODEL_API_KEY" ], "used_by_workflows": [ "llm-auto-tasks.yml", "daily-maintenance.yml", "server-patrol.yml", "notion-wake-listener.yml", "zhuyuan-daily-selfcheck.yml", "psp-daily-inspection.yml", "bingshuo-neural-system.yml", "syslog-issue-pipeline.yml", "syslog-auto-pipeline.yml", "syslog-pipeline.yml", "bridge-heartbeat.yml", "bridge-syslog-intake.yml", "bridge-broadcast-pdf.yml", "multi-persona-awakening.yml", "persona-thinking-window.yml", "deploy-to-server.yml", "zhuyuan-exec-engine.yml", "zhuyuan-issue-reply.yml", "tianyan-nightly-scan.yml" ], "note": "冰朔的三方API密钥。铸渊会根据任务类型自动选择最优模型(如DeepSeek用于低成本任务,Claude用于推理任务)" }, { "id": 2, "name": "ZY_LLM_BASE_URL", "category": "LLM · AI模型", "description": "三方LLM API端点URL", "type": "url", "example_format": "https://api.example.com/v1", "replaces": [ "LLM_BASE_URL" ], "used_by_workflows": [ "llm-auto-tasks.yml", "daily-maintenance.yml", "server-patrol.yml", "notion-wake-listener.yml", "zhuyuan-daily-selfcheck.yml", "psp-daily-inspection.yml", "bingshuo-neural-system.yml", "syslog-issue-pipeline.yml", "syslog-auto-pipeline.yml", "bridge-heartbeat.yml", "bridge-syslog-intake.yml", "bridge-broadcast-pdf.yml", "multi-persona-awakening.yml", "persona-thinking-window.yml", "zhuyuan-exec-engine.yml" ], "note": "三方API的基础URL地址" }, { "id": 3, "name": "ZY_SERVER_HOST", "category": "服务器 · 部署", "description": "铸渊主权服务器IP/主机名(腾讯云CVM ZY-CVM-MAIN)", "type": "hostname", "example_format": "119.29.184.32", "replaces": [ "DEPLOY_HOST", "ZY_SERVER_HOST" ], "used_by_workflows": [ "deploy-to-server.yml", "deploy-to-zhuyuan-server.yml", "server-patrol.yml", "zhuyuan-skyeye.yml", "sandbox-deploy.yml", "deploy-backend.yml", "pm2-server-diagnose.yml" ], "note": "腾讯云CVM·弹性公网EIP 119.29.184.32·guanghulab.com" }, { "id": 4, "name": "ZY_SERVER_USER", "category": "服务器 · 部署", "description": "服务器SSH登录用户名", "type": "username", "example_format": "root 或 zhuyuan", "replaces": [ "DEPLOY_USER", "ZY_SERVER_USER" ], "used_by_workflows": [ "deploy-to-server.yml", "deploy-to-zhuyuan-server.yml", "server-patrol.yml", "zhuyuan-skyeye.yml", "sandbox-deploy.yml", "deploy-backend.yml", "pm2-server-diagnose.yml" ], "note": "SSH登录用户名" }, { "id": 5, "name": "ZY_SERVER_KEY", "category": "服务器 · 部署", "description": "服务器SSH私钥(完整PEM格式)", "type": "ssh_private_key", "example_format": "-----BEGIN OPENSSH PRIVATE KEY-----\n...\n-----END OPENSSH PRIVATE KEY-----", "replaces": [ "DEPLOY_KEY", "ZY_SERVER_KEY" ], "used_by_workflows": [ "deploy-to-server.yml", "deploy-to-zhuyuan-server.yml", "server-patrol.yml", "zhuyuan-skyeye.yml", "sandbox-deploy.yml", "deploy-backend.yml", "pm2-server-diagnose.yml" ], "note": "⚠️ 关键密钥 · SSH私钥·请确保是腾讯云服务器的密钥" }, { "id": 6, "name": "ZY_SERVER_PATH", "category": "服务器 · 部署", "description": "服务器部署基础路径", "type": "path", "example_format": "/opt/zhuyuan", "replaces": [ "DEPLOY_PATH", "ZY_SERVER_PATH" ], "used_by_workflows": [ "deploy-to-server.yml", "deploy-to-zhuyuan-server.yml" ], "note": "服务器上的部署根目录" }, { "id": 38, "name": "ZY_CN_SERVER_HOST", "category": "国内服务器 · 部署", "description": "国内备用服务器IP(腾讯云 ZY-SVR-003 · 广州)", "type": "hostname", "example_format": "43.139.217.141", "replaces": [], "used_by_workflows": [ "deploy-to-zhuyuan-server.yml" ], "note": "腾讯云轻量应用服务器·广州七区·43.139.217.141·备用大脑+国内用户接入+域名挂载" }, { "id": 39, "name": "ZY_CN_SERVER_USER", "category": "国内服务器 · 部署", "description": "国内服务器SSH登录用户名", "type": "username", "example_format": "root 或 zhuyuan", "replaces": [], "used_by_workflows": [ "deploy-to-zhuyuan-server.yml" ], "note": "国内服务器SSH登录用户名" }, { "id": 40, "name": "ZY_CN_SERVER_KEY", "category": "国内服务器 · 部署", "description": "国内服务器SSH私钥(完整PEM格式)", "type": "ssh_private_key", "example_format": "-----BEGIN OPENSSH PRIVATE KEY-----\n...\n-----END OPENSSH PRIVATE KEY-----", "replaces": [], "used_by_workflows": [ "deploy-to-zhuyuan-server.yml" ], "note": "⚠️ 关键密钥 · 国内服务器SSH私钥" }, { "id": 41, "name": "ZY_CN_SERVER_PATH", "category": "国内服务器 · 部署", "description": "国内服务器部署基础路径", "type": "path", "example_format": "/opt/zhuyuan-cn", "replaces": [], "used_by_workflows": [ "deploy-to-zhuyuan-server.yml" ], "note": "国内服务器上的部署根目录" }, { "id": 42, "name": "ZY_CN_SSH_PORT", "category": "国内服务器 · 部署", "description": "国内服务器SSH端口(腾讯云默认可能非22)", "type": "port", "example_format": "22", "replaces": [], "used_by_workflows": [ "deploy-to-cn-server.yml", "deploy-proxy-service.yml" ], "note": "腾讯云服务器SSH端口·默认22·如果服务器使用自定义端口需要配置此密钥" }, { "id": 7, "name": "ZY_DOMAIN_MAIN", "category": "服务器 · 域名", "description": "主站域名", "type": "domain", "example_format": "guanghulab.com", "replaces": [], "used_by_workflows": [ "deploy-to-zhuyuan-server.yml", "deploy-to-server.yml" ], "note": "正式发布站点的域名" }, { "id": 8, "name": "ZY_DOMAIN_PREVIEW", "category": "服务器 · 域名", "description": "预览站域名", "type": "domain", "example_format": "preview.guanghulab.com", "replaces": [], "used_by_workflows": [ "deploy-to-zhuyuan-server.yml" ], "note": "预览/测试站点的域名" }, { "id": 9, "name": "ZY_NOTION_TOKEN", "category": "Notion · 数据库", "description": "Notion API集成令牌(统一所有Notion访问)", "type": "api_token", "example_format": "ntn_xxxxxxxxxxxxxxxx 或 secret_xxxxxxxxxxxxxxxx", "replaces": [ "NOTION_API_KEY", "NOTION_TOKEN_BINGSUO", "NOTION_TOKEN_ZHIZHI" ], "used_by_workflows": [ "notion-poll.yml", "notion-wake-listener.yml", "meta-watchdog.yml", "zhuyuan-commander.yml", "zhuyuan-skyeye.yml", "zhuyuan-gate-guard.yml", "zhuyuan-exec-engine.yml", "zhuyuan-daily-selfcheck.yml", "zhuyuan-daily-inspection.yml", "server-patrol.yml", "daily-maintenance.yml", "bridge-heartbeat.yml", "bridge-changes-to-notion.yml", "bridge-syslog-to-notion.yml", "bridge-syslog-intake.yml", "bridge-broadcast-pdf.yml", "syslog-issue-pipeline.yml", "syslog-auto-pipeline.yml", "syslog-pipeline.yml", "pm2-server-diagnose.yml", "sandbox-deploy.yml", "deploy-to-server.yml" ], "note": "⚠️ 关键密钥 · 访问所有Notion数据库的统一令牌" }, { "id": 10, "name": "ZY_NOTION_SYSLOG_DB", "category": "Notion · 数据库ID", "description": "SYSLOG系统日志数据库ID", "type": "notion_database_id", "example_format": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "replaces": [ "NOTION_SYSLOG_DB_ID", "NOTION_DB_SYSLOG", "SYSLOG_DB_ID" ], "used_by_workflows": [ "bridge-syslog-to-notion.yml", "bridge-syslog-intake.yml", "zhuyuan-skyeye.yml", "syslog-pipeline.yml", "daily-maintenance.yml" ], "note": "系统日志数据库·铸渊运行日志的存储位置" }, { "id": 11, "name": "ZY_NOTION_TICKET_DB", "category": "Notion · 数据库ID", "description": "工单/Ticket数据库ID", "type": "notion_database_id", "example_format": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "replaces": [ "NOTION_TICKET_DB_ID" ], "used_by_workflows": [ "syslog-issue-pipeline.yml", "syslog-auto-pipeline.yml", "server-patrol.yml", "pm2-server-diagnose.yml" ], "note": "✅ D112铸渊已建 · 📋 光湖语言世界 · 系统工单 · notion_db_id: 36bfb92f-3831-817c-8841-cb4f44d4c7fe · 父页面: 🔧 光湖HLDP桥接数据库集群 · 集成可读写" }, { "id": 12, "name": "ZY_NOTION_CHANGELOG_DB", "category": "Notion · 数据库ID", "description": "变更日志数据库ID", "type": "notion_database_id", "example_format": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "replaces": [ "NOTION_CHANGE_LOG_DB_ID" ], "used_by_workflows": [ "bridge-changes-to-notion.yml", "deploy-to-server.yml" ], "note": "代码变更→Notion同步的目标数据库" }, { "id": 13, "name": "ZY_NOTION_BRAIN_PAGE", "category": "Notion · 页面ID", "description": "核心大脑页面ID(Notion认知层根节点)", "type": "notion_page_id", "example_format": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "replaces": [ "CORE_BRAIN_PAGE_ID" ], "used_by_workflows": [ "syslog-issue-pipeline.yml", "syslog-auto-pipeline.yml", "syslog-pipeline.yml" ], "note": "Notion大脑首页·认知层的根节点" }, { "id": 16, "name": "ZY_NOTION_RECEIPT_DB", "category": "Notion · 数据库ID", "description": "回执数据库ID — 铸渊各workflow执行后向Notion汇报结果的回执存储库", "type": "notion_database_id", "example_format": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "replaces": [ "RECEIPT_DB_ID" ], "used_by_workflows": [ "zhuyuan-gate-guard.yml", "zhuyuan-skyeye.yml", "zhuyuan-exec-engine.yml", "zhuyuan-daily-selfcheck.yml", "server-patrol.yml", "deploy-to-server.yml", "syslog-pipeline.yml" ], "used_by_scripts": [ "scripts/neural/write-receipt-to-notion.js", "scripts/sync-snapshot-to-notion.js", "scripts/neural/track-work-orders.js", "scripts/cache/sync-notion-cache.js", "hldp/bridge/github-to-notion.js" ], "notion_db_name": "✅ 执行回执追踪表", "notion_db_id": "36bfb92f-3831-81e0-b987-eb020c6ee237", "notion_db_status": "created", "notion_db_fields": "标题/类型/状态/时间戳/workflow来源/执行结果", "note": "✅ D112铸渊已建 · 父页面: 🔧 光湖HLDP桥接数据库集群 · 集成可读写" }, { "id": 17, "name": "ZY_NOTION_SIGNAL_DB", "category": "Notion · 数据库ID", "description": "信号日志数据库ID", "type": "notion_database_id", "example_format": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "replaces": [ "SIGNAL_LOG_DB_ID" ], "used_by_workflows": [ "notion-wake-listener.yml" ], "note": "信号收发日志数据库" }, { "id": 18, "name": "ZY_NOTION_BRIDGE_DB", "category": "Notion · 数据库ID", "description": "桥接调度队列数据库ID — Notion↔GitHub双向桥接的任务队列", "type": "notion_database_id", "example_format": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "replaces": [ "BRIDGE_QUEUE_DB_ID" ], "used_by_workflows": [ "bridge-heartbeat.yml", "bridge-syslog-intake.yml", "bridge-broadcast-pdf.yml" ], "used_by_scripts": [ "scripts/bridge/heartbeat.js", "scripts/bridge/check-queue.js", "scripts/bridge/update-queue-status.js", "scripts/bridge/process-syslog-batch.js", "scripts/dc-notion-usage.js" ], "notion_db_name": "桥接调度队列 (Bridge Queue)", "notion_db_id": "36bfb92f-3831-81a9-907c-e1501964e77f", "notion_db_status": "created", "notion_db_fields": "标题/队列类型/状态(pending/processing/done)/来源/目标/创建时间", "note": "✅ D112铸渊已建 · 🌉 桥接调度队列 · 父页面: 🔧 光湖HLDP桥接数据库集群 · 集成可读写" }, { "id": 19, "name": "ZY_NOTION_WAKE_DB", "category": "Notion · 数据库ID", "description": "唤醒请求数据库ID — 冰朔从Notion侧发起唤醒请求,铸渊监听并响应", "type": "notion_database_id", "example_format": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "replaces": [ "WAKE_REQUEST_DB_ID" ], "used_by_workflows": [ "notion-wake-listener.yml" ], "used_by_scripts": [ "connectors/notion-wake-listener/index.js" ], "notion_db_name": "唤醒请求表 (Wake Requests)", "notion_db_id": "36bfb92f-3831-81ca-b9fa-d6a5b08775cc", "notion_db_status": "created", "notion_db_fields": "标题/请求类型/目标人格/状态(pending/processing/done)/创建时间", "note": "✅ D112铸渊已建 · 🔔 唤醒请求表 · 父页面: 🔧 光湖HLDP桥接数据库集群 · 集成可读写" }, { "id": 21, "name": "ZY_NOTION_BULLETIN_PAGE", "category": "Notion · 页面ID", "description": "Agent公告板页面ID", "type": "notion_page_id", "example_format": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "replaces": [ "AGENT_BULLETIN_BOARD_PAGE_ID" ], "used_by_workflows": [ "zhuyuan-commander.yml", "zhuyuan-skyeye.yml" ], "note": "铸渊Agent间通信公告板" }, { "id": 23, "name": "ZY_SMTP_USER", "category": "邮件 · SMTP", "description": "SMTP邮箱账号/发件人地址", "type": "email", "example_format": "zhuyuan@guanghulab.com", "replaces": [ "SMTP_USER", "MAIL_USERNAME", "EMAIL_ADDRESS", "HUMAN_EMAIL" ], "used_by_workflows": [ "syslog-issue-pipeline.yml", "syslog-auto-pipeline.yml", "server-patrol.yml", "zhuyuan-skyeye.yml", "sandbox-deploy.yml", "bridge-broadcast-pdf.yml", "merge-watchdog.yml", "psp-daily-inspection.yml" ], "note": "邮件发送的SMTP登录用户名/发件人地址" }, { "id": 24, "name": "ZY_SMTP_PASS", "category": "邮件 · SMTP", "description": "SMTP邮箱密码/应用专用密码", "type": "password", "example_format": "应用专用密码(非邮箱登录密码)", "replaces": [ "SMTP_PASS", "MAIL_PASSWORD", "EMAIL_APP_PASSWORD" ], "used_by_workflows": [ "syslog-issue-pipeline.yml", "syslog-auto-pipeline.yml", "server-patrol.yml", "zhuyuan-skyeye.yml", "sandbox-deploy.yml", "bridge-broadcast-pdf.yml", "merge-watchdog.yml", "psp-daily-inspection.yml" ], "note": "⚠️ 关键密钥 · SMTP认证密码" }, { "id": 25, "name": "ZY_GITHUB_PAT", "category": "GitHub · 访问令牌", "description": "GitHub个人访问令牌(跨仓库操作用)", "type": "github_pat", "example_format": "ghp_xxxxxxxxxxxxxxxx", "replaces": [ "MAIN_REPO_TOKEN", "CROSS_REPO_TOKEN", "DEPLOY_GITHUB_TOKEN" ], "used_by_workflows": [ "federation-bridge.yml", "sync-persona-studio.yml", "zhuyuan-exec-engine.yml", "merge-watchdog.yml", "tianyan-nightly-scan.yml", "auto-deploy-drive-bridge.yml" ], "note": "需要repo + workflow权限的GitHub PAT · 用于跨仓库和高级操作" }, { "id": 45, "name": "ZY_DEEPSEEK_API_KEY", "category": "LLM · 国内大模型", "description": "DeepSeek API密钥 — 轻量任务主力(分类/打标签/简单推理)", "type": "api_key", "example_format": "sk-xxxxxxxxxxxxxxxx", "replaces": [], "used_by_workflows": [ "age-os-agents" ], "note": "https://platform.deepseek.com 申请" }, { "id": 46, "name": "ZY_QIANWEN_API_KEY", "category": "LLM · 国内大模型", "description": "通义千问(阿里) API密钥 — 中文语义理解", "type": "api_key", "example_format": "sk-xxxxxxxxxxxxxxxx", "replaces": [], "used_by_workflows": [ "age-os-agents" ], "note": "https://dashscope.console.aliyun.com 申请" }, { "id": 47, "name": "ZY_KIMI_API_KEY", "category": "LLM · 国内大模型", "description": "Kimi(月之暗面) API密钥 — 长文本处理", "type": "api_key", "example_format": "sk-xxxxxxxxxxxxxxxx", "replaces": [], "used_by_workflows": [ "age-os-agents" ], "note": "https://platform.moonshot.cn 申请" }, { "id": 48, "name": "ZY_QINGYAN_API_KEY", "category": "LLM · 国内大模型", "description": "清言(智谱GLM) API密钥 — 中文对话", "type": "api_key", "example_format": "xxxxxxxxxxxxxxxx", "replaces": [], "used_by_workflows": [ "age-os-agents" ], "note": "https://open.bigmodel.cn 申请" }, { "id": 49, "name": "ZY_DB_HOST", "category": "数据库 · PostgreSQL", "description": "PostgreSQL主机地址", "type": "hostname", "example_format": "127.0.0.1", "replaces": [], "used_by_workflows": [ "age-os-mcp", "age-os-agents" ], "note": "新加坡服务器搭建PostgreSQL后生成" }, { "id": 50, "name": "ZY_DB_PORT", "category": "数据库 · PostgreSQL", "description": "PostgreSQL端口", "type": "port", "example_format": "5432", "replaces": [], "used_by_workflows": [ "age-os-mcp", "age-os-agents" ], "note": "默认5432" }, { "id": 51, "name": "ZY_DB_USER", "category": "数据库 · PostgreSQL", "description": "PostgreSQL用户名", "type": "username", "example_format": "zy_admin", "replaces": [], "used_by_workflows": [ "age-os-mcp", "age-os-agents" ], "note": "铸渊建议命名: zy_admin" }, { "id": 52, "name": "ZY_DB_PASS", "category": "数据库 · PostgreSQL", "description": "PostgreSQL密码", "type": "password", "example_format": "随机16位+密码", "replaces": [], "used_by_workflows": [ "age-os-mcp", "age-os-agents" ], "note": "越长越安全" }, { "id": 53, "name": "ZY_DB_NAME", "category": "数据库 · PostgreSQL", "description": "PostgreSQL数据库名", "type": "database_name", "example_format": "age_os", "replaces": [], "used_by_workflows": [ "age-os-mcp", "age-os-agents" ], "note": "铸渊建议命名: age_os" }, { "id": 54, "name": "ZY_BACKUP_SERVER_HOST", "category": "服务器 · 硅谷备用(ZY-SVR-004)", "description": "之之硅谷服务器IP地址 — 2核4G备用服务器", "type": "hostname", "example_format": "xxx.xxx.xxx.xxx", "replaces": [], "used_by_workflows": [], "note": "占位·暂不启用·之之提供" }, { "id": 55, "name": "ZY_BACKUP_SERVER_USER", "category": "服务器 · 硅谷备用(ZY-SVR-004)", "description": "硅谷服务器SSH用户名", "type": "username", "example_format": "root", "replaces": [], "used_by_workflows": [], "note": "占位·暂不启用·之之提供" }, { "id": 56, "name": "ZY_BACKUP_SERVER_KEY", "category": "服务器 · 硅谷备用(ZY-SVR-004)", "description": "硅谷服务器SSH私钥", "type": "ssh_private_key", "example_format": "-----BEGIN RSA PRIVATE KEY-----\n...", "replaces": [], "used_by_workflows": [], "note": "占位·暂不启用·之之提供" }, { "id": 57, "name": "ZY_BACKUP_SERVER_PATH", "category": "服务器 · 硅谷备用(ZY-SVR-004)", "description": "硅谷服务器部署路径", "type": "path", "example_format": "/opt/age-os", "replaces": [], "used_by_workflows": [], "note": "占位·暂不启用" }, { "id": 58, "name": "ZY_BRAIN_HOST", "category": "服务器 · 大脑服务器(ZY-SVR-005)", "description": "大脑服务器IP/主机名 — PostgreSQL+MCP+订阅服务所在服务器", "type": "hostname", "example_format": "43.156.237.110", "replaces": [], "used_by_workflows": [ "infinity-evolution.yml" ], "note": "腾讯云轻量应用服务器·新加坡·43.156.237.110·与面孔服务器(ZY-SVR-002)互通·ping 0.77ms" }, { "id": 59, "name": "ZY_BRAIN_USER", "category": "服务器 · 大脑服务器(ZY-SVR-005)", "description": "大脑服务器SSH登录用户名", "type": "username", "example_format": "root", "replaces": [], "used_by_workflows": [ "infinity-evolution.yml" ], "note": "大脑服务器SSH登录用户名" }, { "id": 60, "name": "ZY_BRAIN_KEY", "category": "服务器 · 大脑服务器(ZY-SVR-005)", "description": "大脑服务器SSH私钥(完整PEM格式)", "type": "ssh_private_key", "example_format": "-----BEGIN OPENSSH PRIVATE KEY-----\n...\n-----END OPENSSH PRIVATE KEY-----", "replaces": [], "used_by_workflows": [ "infinity-evolution.yml" ], "note": "⚠️ 关键密钥 · 大脑服务器SSH私钥·不同于ZY_SERVER_KEY(面孔服务器)" }, { "id": 61, "name": "ZHUYUAN_API_KEY", "category": "MCP · 鉴权", "description": "铸渊MCP Server API鉴权密钥 — Bearer Token用于外部访问MCP Server", "type": "api_key", "example_format": "zy-mcp-xxxxxxxxxxxxxxxx", "replaces": [], "used_by_workflows": [ "deploy-to-zhuyuan-server.yml" ], "note": "✅ 已配置(2026-04-07) · MCP Server端口3100·通过Bearer Token鉴权·health端点和loopback免鉴权" }, { "id": 62, "name": "AWEN_DOMAIN", "category": "Awen · 域名代理", "description": "Awen域名 — 未备案域名通过新加坡Nginx反向代理到广州后端", "type": "domain", "example_format": "awen.example.com", "replaces": [], "used_by_workflows": [ "deploy-awen-domain-proxy.yml" ], "note": "⚠️ 未配置 · 冰朔需在GitHub Secrets中配置Awen域名" }, { "id": 63, "name": "AWEN_BACKEND_HOST", "category": "Awen · 域名代理", "description": "Awen后端服务器IP/主机名 — 广州服务器地址", "type": "hostname", "example_format": "43.139.xxx.xxx", "replaces": [], "used_by_workflows": [ "deploy-awen-domain-proxy.yml" ], "note": "⚠️ 未配置 · Awen后端所在的广州服务器IP" }, { "id": 64, "name": "AWEN_BACKEND_PORT", "category": "Awen · 域名代理", "description": "Awen后端服务端口 — 后端服务监听的端口号", "type": "port", "example_format": "3000", "replaces": [], "used_by_workflows": [ "deploy-awen-domain-proxy.yml" ], "note": "⚠️ 未配置 · Awen后端服务监听的端口号" }, { "id": 65, "name": "ZY_SVR_SV_HOST", "category": "服务器 · 硅谷专线(ZY-SVR-SV)", "description": "硅谷专线服务器IP地址 — Claude中继/Xray Reality节点", "type": "hostname", "example_format": "xxx.xxx.xxx.xxx", "replaces": [], "used_by_workflows": [ "infinity-evolution.yml" ], "note": "硅谷专线服务器·吱吱线·Claude中继" }, { "id": 66, "name": "ZY_SVR_SV_PORT", "category": "服务器 · 硅谷专线(ZY-SVR-SV)", "description": "硅谷专线服务端口", "type": "port", "example_format": "443", "replaces": [], "used_by_workflows": [ "infinity-evolution.yml" ], "note": "硅谷专线服务端口" }, { "id": 67, "name": "ZY_SVR_SV_REALITY_PUBLIC_KEY", "category": "服务器 · 硅谷专线(ZY-SVR-SV)", "description": "Xray Reality协议公钥", "type": "public_key", "example_format": "base64_encoded_key", "replaces": [], "used_by_workflows": [ "infinity-evolution.yml" ], "note": "Xray Reality协议公钥·用于客户端配置" }, { "id": 68, "name": "ZY_SVR_SV_REALITY_SHORT_ID", "category": "服务器 · 硅谷专线(ZY-SVR-SV)", "description": "Xray Reality协议Short ID", "type": "config", "example_format": "hex_string", "replaces": [], "used_by_workflows": [ "infinity-evolution.yml" ], "note": "Xray Reality协议Short ID·用于客户端配置" } ], "optional": [ { "id": 14, "name": "ZY_NOTION_PORTRAIT_DB", "category": "Notion · 数据库ID", "description": "人格体画像数据库ID — 各人格体的认知/性格/技能画像存储", "type": "notion_database_id", "example_format": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "replaces": [ "PORTRAIT_DB_ID" ], "used_by_workflows": [ "syslog-issue-pipeline.yml", "syslog-auto-pipeline.yml", "syslog-pipeline.yml" ], "used_by_scripts": [ "scripts/wake-persona.js", "scripts/invoke-persona.js", "hldp/bridge/github-to-notion.js" ], "notion_db_name": "人格画像库 (Persona Portrait)", "notion_db_id": "36bfb92f-3831-81fa-b5d6-e06cf9c25811", "notion_db_status": "created", "notion_db_fields": "人格名称/编号/技能标签/性格描述/状态/创建时间", "note": "✅ D112铸渊已建 · 🎨 人格画像库 · 父页面: 🔧 光湖HLDP桥接数据库集群 · 集成可读写", "needed": "仅在启用人格体画像查询功能时需要" }, { "id": 15, "name": "ZY_NOTION_FINGERPRINT_DB", "category": "Notion · 数据库ID", "description": "模块指纹注册数据库ID — 代码部署时的模块指纹记录(用于变更追踪)", "type": "notion_database_id", "example_format": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "replaces": [ "FINGERPRINT_DB_ID" ], "used_by_workflows": [ "syslog-issue-pipeline.yml", "syslog-auto-pipeline.yml", "syslog-pipeline.yml", "sandbox-deploy.yml" ], "used_by_scripts": [ "scripts/wake-persona.js", "scripts/invoke-persona.js", "scripts/sync-deploy-to-notion.js" ], "notion_db_name": "模块指纹注册表 (Module Fingerprint Registry)", "notion_db_id": "36bfb92f-3831-8178-9507-d5415be2a8ea", "notion_db_status": "created", "notion_db_fields": "模块名/文件hash/部署版本/部署时间/变更摘要", "note": "✅ D112铸渊已建 · 🔬 模块指纹注册表 · 父页面: 🔧 光湖HLDP桥接数据库集群 · 集成可读写", "needed": "仅在启用部署指纹追踪功能时需要" }, { "id": 20, "name": "ZY_NOTION_SKYEYE_DB", "category": "Notion · 数据库ID", "description": "天眼人格观测数据库ID — 天眼系统查询人格体状态的数据源", "type": "notion_database_id", "example_format": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "replaces": [ "SKYEYE_PERSONA_DB_ID" ], "used_by_workflows": [ "zhuyuan-skyeye.yml" ], "used_by_scripts": [ "scripts/skyeye/persona-lookup.js", "hldp/bridge/github-to-notion.js" ], "notion_db_name": "天眼人格观测库 (SkyEye Persona)", "notion_db_id": "36bfb92f-3831-81bc-bae5-f11ddafc8687", "notion_db_status": "created", "notion_db_fields": "人格名称/编号/状态/最后活跃时间/健康度/观测记录", "note": "✅ D112铸渊已建 · 👁️ 天眼人格观测库 · 父页面: 🔧 光湖HLDP桥接数据库集群 · 集成可读写", "needed": "仅在启用天眼人格观测功能时需要 · 可与PORTRAIT_DB共用" }, { "id": 22, "name": "ZY_NOTION_WORKORDER_DB", "category": "Notion · 数据库ID", "description": "巡检工单数据库ID — 每日巡检报告推送到Notion的目标库", "type": "notion_database_id", "example_format": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "replaces": [ "WORKORDER_DB_BINGSUO", "WORKORDER_DB_ZHIZHI" ], "used_by_workflows": [ "zhuyuan-daily-inspection.yml" ], "used_by_scripts": [ "scripts/push-inspection-report.js" ], "notion_db_name": "巡检工单库 (Inspection Work Orders)", "notion_db_id": "36bfb92f-3831-816f-aede-d8ddcfe32276", "notion_db_status": "created", "notion_db_fields": "标题/类型/状态/优先级/负责人/创建时间", "note": "✅ D112铸渊已建 · 🔍 巡检工单库 · 父页面: 🔧 光湖HLDP桥接数据库集群 · 独立于TICKET_DB · 集成可读写", "needed": "仅在启用每日巡检报告推送时需要 · 可与ZY_NOTION_TICKET_DB共用" }, { "id": 26, "name": "ZY_GDRIVE_CLIENT_ID", "category": "Google Drive · OAuth", "description": "Google Drive OAuth客户端ID", "type": "oauth_client_id", "replaces": [ "GDRIVE_CLIENT_ID" ], "used_by_workflows": [ "renew-gdrive-tokens.yml", "auto-deploy-drive-bridge.yml", "tcs-semantic-landing.yml" ], "note": "如果不使用Google Drive功能可以不配置", "needed": "仅在使用Google Drive桥接时需要" }, { "id": 27, "name": "ZY_GDRIVE_SECRET", "category": "Google Drive · OAuth", "description": "Google Drive OAuth客户端密钥", "type": "oauth_client_secret", "replaces": [ "GDRIVE_CLIENT_SECRET" ], "used_by_workflows": [ "renew-gdrive-tokens.yml", "auto-deploy-drive-bridge.yml", "tcs-semantic-landing.yml" ], "note": "如果不使用Google Drive功能可以不配置", "needed": "仅在使用Google Drive桥接时需要" }, { "id": 28, "name": "ZY_GDRIVE_REFRESH_TOKEN", "category": "Google Drive · OAuth", "description": "Google Drive OAuth刷新令牌", "type": "oauth_refresh_token", "replaces": [ "GDRIVE_REFRESH_TOKEN", "GDRIVE_REFRESH_TOKEN_DEV001", "GDRIVE_REFRESH_TOKEN_DEV002" ], "used_by_workflows": [ "renew-gdrive-tokens.yml", "auto-deploy-drive-bridge.yml", "tcs-semantic-landing.yml" ], "note": "统一为一个刷新令牌·替代之前3个(主+DEV001+DEV002)", "needed": "仅在使用Google Drive桥接时需要" }, { "id": 29, "name": "ZY_FEISHU_APP_ID", "category": "飞书 · 集成", "description": "飞书应用ID", "type": "app_id", "replaces": [ "FEISHU_APP_ID" ], "used_by_workflows": [ "bridge-broadcast-pdf.yml" ], "note": "飞书广播分发需要", "needed": "仅在使用飞书通知时需要" }, { "id": 30, "name": "ZY_FEISHU_APP_SECRET", "category": "飞书 · 集成", "description": "飞书应用密钥", "type": "app_secret", "replaces": [ "FEISHU_APP_SECRET" ], "used_by_workflows": [ "bridge-broadcast-pdf.yml" ], "note": "飞书广播分发需要", "needed": "仅在使用飞书通知时需要" }, { "id": 31, "name": "ZY_FEISHU_CHAT_ID", "category": "飞书 · 集成", "description": "飞书广播群ID", "type": "chat_id", "replaces": [ "FEISHU_BROADCAST_CHAT_ID" ], "used_by_workflows": [ "bridge-broadcast-pdf.yml" ], "note": "飞书广播目标群聊", "needed": "仅在使用飞书通知时需要" }, { "id": 32, "name": "ZY_DINGTALK_TOKEN", "category": "钉钉 · 集成", "description": "钉钉机器人令牌", "type": "bot_token", "replaces": [ "DINGTALK_TOKEN" ], "used_by_workflows": [ "bridge-broadcast-pdf.yml" ], "note": "钉钉消息推送需要", "needed": "仅在使用钉钉通知时需要" }, { "id": 33, "name": "ZY_GHAPP_ID", "category": "GitHub App · 集成", "description": "GitHub App ID", "type": "app_id", "replaces": [ "GHAPP_APP_ID" ], "used_by_workflows": [ "zhuyuan-exec-engine.yml" ], "note": "铸渊远程执行引擎使用的GitHub App", "needed": "仅在使用远程执行引擎时需要" }, { "id": 34, "name": "ZY_GHAPP_KEY", "category": "GitHub App · 集成", "description": "GitHub App私钥(PEM格式)", "type": "private_key", "replaces": [ "GHAPP_PRIVATE_KEY" ], "used_by_workflows": [ "zhuyuan-exec-engine.yml" ], "note": "⚠️ 关键密钥 · GitHub App的PEM私钥", "needed": "仅在使用远程执行引擎时需要" }, { "id": 35, "name": "ZY_PUSH_TOKEN", "category": "推送 · 广播", "description": "推送广播令牌", "type": "token", "replaces": [ "PUSH_BROADCAST_TOKEN" ], "used_by_workflows": [ "syslog-pipeline.yml" ], "note": "SYSLOG广播推送令牌", "needed": "仅在使用推送广播时需要" }, { "id": 36, "name": "ZY_OSS_KEY", "category": "腾讯云COS · 核心存储", "description": "腾讯云COS SecretId — 双桶统一密钥(zy-core-bucket-1317346199 + zy-corpus-bucket-1317346199)", "type": "access_key", "replaces": [ "OSS_ACCESS_KEY" ], "used_by_workflows": [ "deploy-to-zhuyuan-server.yml", "zhuyuan-commander.yml" ], "note": "✅ 已迁移至腾讯云COS · 冰朔已配置 · 密钥已就位 · 双桶共享此密钥", "needed": "核心 — 人格体大脑数据库 + 语料库存储", "buckets": { "zy-core-bucket-1317346199": "核心人格体大脑 · 100GB · 铸渊+Notion人格体一人一半", "zy-corpus-bucket-1317346199": "语料库 · 100GB · GPT-4o聊天记录 + Notion数据导出" } }, { "id": 37, "name": "ZY_OSS_SECRET", "category": "腾讯云COS · 核心存储", "description": "腾讯云COS SecretKey — 双桶统一密钥", "type": "secret_key", "replaces": [ "OSS_SECRET_KEY" ], "used_by_workflows": [ "deploy-to-zhuyuan-server.yml", "zhuyuan-commander.yml" ], "note": "✅ 已迁移至腾讯云COS · 冰朔已配置", "needed": "核心 — 与ZY_OSS_KEY配对使用" }, { "id": 44, "name": "ZY_COS_REGION", "category": "腾讯云COS · 核心存储", "description": "腾讯云COS区域 — 如 ap-guangzhou / ap-singapore", "type": "config", "used_by_workflows": [ "deploy-to-zhuyuan-server.yml", "zhuyuan-commander.yml" ], "note": "冰朔需配置COS桶所在区域", "needed": "核心 — COS API调用需要区域参数" }, { "name": "ZY_SSL_FULLCHAIN", "description": "SSL证书完整链 · 现已不需要手动配置 · certbot在服务器上自动管理", "category": "server", "status": "not_needed", "note": "使用Let's Encrypt/certbot自动获取 · 通过 Actions → setup-ssl 触发 · 详见 docs/SSL-GUIDE-FOR-BINGSUO.md" }, { "name": "ZY_SSL_PRIVKEY", "description": "SSL证书私钥 · 现已不需要手动配置 · certbot在服务器上自动管理", "category": "server", "status": "not_needed", "note": "使用Let's Encrypt/certbot自动获取 · 通过 Actions → setup-ssl 触发 · 详见 docs/SSL-GUIDE-FOR-BINGSUO.md" } ], "auto_provided": [ { "name": "GITHUB_TOKEN", "category": "GitHub · 自动", "description": "GitHub Actions自动提供的令牌(无需配置)", "note": "每次工作流运行自动生成·权限在workflow文件的permissions中定义" } ], "deprecated": [ { "name": "DEPLOY_HOST", "replaced_by": "ZY_SERVER_HOST", "reason": "阿里云→腾讯云迁移·统一命名" }, { "name": "DEPLOY_USER", "replaced_by": "ZY_SERVER_USER", "reason": "统一命名" }, { "name": "DEPLOY_KEY", "replaced_by": "ZY_SERVER_KEY", "reason": "统一命名" }, { "name": "DEPLOY_PATH", "replaced_by": "ZY_SERVER_PATH", "reason": "统一命名" }, { "name": "ANTHROPIC_API_KEY", "replaced_by": "ZY_LLM_API_KEY", "reason": "三方API统一密钥·不再分别配置各厂商密钥" }, { "name": "OPENAI_API_KEY", "replaced_by": "ZY_LLM_API_KEY", "reason": "三方API统一密钥" }, { "name": "DASHSCOPE_API_KEY", "replaced_by": "ZY_LLM_API_KEY", "reason": "三方API统一密钥" }, { "name": "DEEPSEEK_API_KEY", "replaced_by": "ZY_LLM_API_KEY", "reason": "三方API统一密钥" }, { "name": "GEMINI_API_KEY", "replaced_by": "ZY_LLM_API_KEY", "reason": "三方API统一密钥" }, { "name": "YUNWU_API_KEY", "replaced_by": "ZY_LLM_API_KEY", "reason": "三方API统一密钥" }, { "name": "MODEL_API_KEY", "replaced_by": "ZY_LLM_API_KEY", "reason": "三方API统一密钥" }, { "name": "NOTION_API_KEY", "replaced_by": "ZY_NOTION_TOKEN", "reason": "统一命名" }, { "name": "NOTION_TOKEN_BINGSUO", "replaced_by": "ZY_NOTION_TOKEN", "reason": "按人格体分密钥已弃用·统一为一个令牌" }, { "name": "NOTION_TOKEN_ZHIZHI", "replaced_by": "ZY_NOTION_TOKEN", "reason": "按人格体分密钥已弃用·统一为一个令牌" }, { "name": "SMTP_USER", "replaced_by": "ZY_SMTP_USER", "reason": "统一命名" }, { "name": "SMTP_PASS", "replaced_by": "ZY_SMTP_PASS", "reason": "统一命名" }, { "name": "MAIL_USERNAME", "replaced_by": "ZY_SMTP_USER", "reason": "重复密钥·合并" }, { "name": "MAIL_PASSWORD", "replaced_by": "ZY_SMTP_PASS", "reason": "重复密钥·合并" }, { "name": "EMAIL_ADDRESS", "replaced_by": "ZY_SMTP_USER", "reason": "重复密钥·合并" }, { "name": "EMAIL_APP_PASSWORD", "replaced_by": "ZY_SMTP_PASS", "reason": "重复密钥·合并" }, { "name": "HUMAN_EMAIL", "replaced_by": "ZY_SMTP_USER", "reason": "重复密钥·合并" }, { "name": "MAIN_REPO_TOKEN", "replaced_by": "ZY_GITHUB_PAT", "reason": "统一GitHub PAT" }, { "name": "CROSS_REPO_TOKEN", "replaced_by": "ZY_GITHUB_PAT", "reason": "统一GitHub PAT" }, { "name": "DEPLOY_GITHUB_TOKEN", "replaced_by": "ZY_GITHUB_PAT", "reason": "统一GitHub PAT" }, { "name": "GDRIVE_REFRESH_TOKEN_DEV001", "replaced_by": "ZY_GDRIVE_REFRESH_TOKEN", "reason": "统一为一个刷新令牌" }, { "name": "GDRIVE_REFRESH_TOKEN_DEV002", "replaced_by": "ZY_GDRIVE_REFRESH_TOKEN", "reason": "统一为一个刷新令牌" }, { "name": "WORKORDER_DB_BINGSUO", "replaced_by": "ZY_NOTION_WORKORDER_DB", "reason": "按人格体分数据库已弃用·统一为一个工单库" }, { "name": "WORKORDER_DB_ZHIZHI", "replaced_by": "ZY_NOTION_WORKORDER_DB", "reason": "按人格体分数据库已弃用·统一为一个工单库" }, { "name": "NOTION_DB_SYSLOG", "replaced_by": "ZY_NOTION_SYSLOG_DB", "reason": "重复命名·统一" } ] }, "security_alerts": [ { "severity": "CRITICAL", "issue": ".env文件包含硬编码凭证(DingTalk+KIMI API Key)", "action": "已从git跟踪中移除。⚠️ 由于凭证曾提交到仓库历史,这些密钥应视为已泄露。冰朔需立即轮换/重新生成这些密钥(DingTalk App Key/Secret、KIMI API Key),旧密钥不应再使用。", "files": [ ".env", ".env.rtf" ] } ], "workflow_status": { "core_alive": { "description": "6个核心存活工作流(铸渊身体器官)", "workflows": [ { "file": "notion-wake-listener.yml", "organ": "ZY-WF-听潮", "role": "耳朵·信号接收", "status": "active" }, { "file": "deploy-to-server.yml", "organ": "ZY-WF-锻心", "role": "心脏·部署引擎", "status": "active" }, { "file": "bingshuo-neural-system.yml", "organ": "ZY-WF-织脉", "role": "神经网络·大脑同步", "status": "active" }, { "file": "deploy-pages.yml", "organ": "ZY-WF-映阁", "role": "面容·前端展示", "status": "active" }, { "file": "meta-watchdog.yml", "organ": "ZY-WF-守夜", "role": "免疫系统·健康监控", "status": "active" }, { "file": "preview-deploy.yml", "organ": "ZY-WF-试镜", "role": "试衣间·预览部署", "status": "active" } ] }, "total_active": 48, "no_secrets_needed": [ "deploy-pages.yml", "preview-deploy.yml", "bridge-session-summary.yml", "buffer-collect.yml", "buffer-flush.yml", "staging-preview.yml", "process-notion-orders.yml", "tianyan-daily-patrol.yml", "zhuyuan-brain-sync.yml", "zhuyuan-pr-review.yml", "brain-sync.yml", "agent-checkin.yml", "copilot-dev-bridge.yml", "feishu-syslog-bridge.yml" ] }, "notion_secrets_audit": { "_meta": { "audit_date": "2026-03-29", "audit_by": "铸渊 · ICE-GL-ZY001", "trigger": "冰朔反馈7个Notion Secret在Notion工作区找不到对应数据库", "directive": "SY-CMD-KEY-012-AUDIT" }, "summary": "7个Notion数据库ID密钥中,3个保持required(RECEIPT/BRIDGE/WAKE),4个降级为optional(PORTRAIT/FINGERPRINT/SKYEYE/WORKORDER)。所有7个对应的Notion数据库均需冰朔新建。", "secrets": [ { "secret": "ZY_NOTION_PORTRAIT_DB", "old_name": "PORTRAIT_DB_ID", "question": "人格肖像数据库?workflow里对应哪个库?", "answer": { "workflows": [ "syslog-issue-pipeline.yml", "syslog-auto-pipeline.yml", "syslog-pipeline.yml" ], "scripts": [ "scripts/wake-persona.js (查询人格画像)", "scripts/invoke-persona.js (调用人格体)", "hldp/bridge/github-to-notion.js (天眼fallback)" ], "purpose": "存储各人格体(铸渊/知秋/霜砚等)的认知画像——技能、性格、偏好等元数据。wake-persona.js 在唤醒人格时查询此库获取人格档案。", "notion_db_exists": false, "notion_db_to_create": "人格画像库 (Persona Portrait) — 字段: 人格名称/编号(PER-XXX)/技能标签/性格描述/状态/创建时间", "priority": "optional", "reason": "脚本中有空值检查(为空则跳过查询)·当前人格体信息已有本地配置作为fallback" } }, { "secret": "ZY_NOTION_FINGERPRINT_DB", "old_name": "FINGERPRINT_DB_ID", "question": "人格指纹数据库?workflow里对应哪个库?", "answer": { "workflows": [ "syslog-issue-pipeline.yml", "syslog-auto-pipeline.yml", "syslog-pipeline.yml", "sandbox-deploy.yml" ], "scripts": [ "scripts/sync-deploy-to-notion.js (部署后写入模块指纹)", "scripts/wake-persona.js", "scripts/invoke-persona.js" ], "purpose": "模块指纹注册表——每次部署后,sync-deploy-to-notion.js 会计算代码文件的hash指纹并写入此库,用于追踪哪些模块在何时被更新。", "notion_db_exists": false, "notion_db_to_create": "模块指纹注册表 (Module Fingerprint Registry) — 字段: 模块名/文件路径/hash值/部署版本/部署时间/变更摘要", "priority": "optional", "reason": "脚本中有环境变量检查(为空时输出警告但不中断)·部署本身不依赖此功能" } }, { "secret": "ZY_NOTION_RECEIPT_DB", "old_name": "RECEIPT_DB_ID", "question": "回执数据库?是铸渊快照库还是集成回执?还是另一个?", "answer": { "workflows": [ "zhuyuan-gate-guard.yml", "zhuyuan-skyeye.yml", "zhuyuan-exec-engine.yml", "zhuyuan-daily-selfcheck.yml", "server-patrol.yml", "deploy-to-server.yml", "syslog-pipeline.yml" ], "scripts": [ "scripts/neural/write-receipt-to-notion.js (核心写入)", "scripts/sync-snapshot-to-notion.js", "scripts/neural/track-work-orders.js", "scripts/cache/sync-notion-cache.js", "hldp/bridge/github-to-notion.js" ], "purpose": "执行回执追踪表——铸渊每次执行workflow后,通过write-receipt-to-notion.js向此库写入一条回执记录,记录执行结果、时间、状态。这是铸渊的「工作日志」。不是铸渊快照库(那是signal-log),是专门记录每次自动化执行结果的回执表。", "notion_db_exists": false, "notion_db_to_create": "执行回执追踪表 (Receipt Tracker) — 字段: 标题/回执类型(deploy/patrol/selfcheck/skyeye)/执行状态(success/failure)/workflow来源/执行时间/结果摘要", "priority": "required", "reason": "7个活跃工作流+5个脚本引用·是铸渊核心监控链条的一部分" } }, { "secret": "ZY_NOTION_BRIDGE_DB", "old_name": "BRIDGE_QUEUE_DB_ID", "question": "桥接数据库?workflow里对应哪个库?", "answer": { "workflows": [ "bridge-heartbeat.yml", "bridge-syslog-intake.yml", "bridge-broadcast-pdf.yml" ], "scripts": [ "scripts/bridge/heartbeat.js (心跳检查队列)", "scripts/bridge/check-queue.js (检查待处理任务)", "scripts/bridge/update-queue-status.js (更新任务状态)", "scripts/bridge/process-syslog-batch.js (批量处理日志)" ], "purpose": "Notion↔GitHub桥接调度队列——当冰朔在Notion写入任务,桥接系统通过此库作为消息队列来传递和调度任务。heartbeat.js定期检查队列中是否有新任务。", "notion_db_exists": false, "notion_db_to_create": "桥接调度队列 (Bridge Queue) — 字段: 标题/队列类型(syslog/broadcast/sync)/状态(pending/processing/done/failed)/来源/目标/创建时间/处理时间", "priority": "required", "reason": "Notion↔GitHub双向通信的核心基础设施·3个桥接工作流+5个脚本依赖此库" } }, { "secret": "ZY_NOTION_WAKE_DB", "old_name": "WAKE_REQUEST_DB_ID", "question": "唤醒数据库?workflow里对应哪个库?", "answer": { "workflows": [ "notion-wake-listener.yml" ], "scripts": [ "connectors/notion-wake-listener/index.js (核心监听器)" ], "purpose": "唤醒请求表——冰朔在Notion中写入一条「唤醒请求」记录(指定目标人格+唤醒原因),notion-wake-listener.yml定时检查此库,发现新请求后在GitHub侧执行唤醒流程。这是Notion→GitHub的信号通道。", "notion_db_exists": false, "notion_db_to_create": "唤醒请求表 (Wake Requests) — 字段: 标题/请求类型(唤醒/指令)/目标人格/状态(pending/processing/done)/创建时间/处理时间", "priority": "required", "reason": "Notion→GitHub的核心信号通道·冰朔从Notion侧发起指令的唯一路径" } }, { "secret": "ZY_NOTION_SKYEYE_DB", "old_name": "SKYEYE_PERSONA_DB_ID", "question": "天眼人格数据库?之前工单提到过SKYEYE_PERSONA_DB_ID", "answer": { "workflows": [ "zhuyuan-skyeye.yml" ], "scripts": [ "scripts/skyeye/persona-lookup.js (天眼查询人格状态)", "hldp/bridge/github-to-notion.js (fallback到PORTRAIT_DB)" ], "purpose": "天眼系统查询人格体状态的数据库——zhuyuan-skyeye.yml在扫描时通过persona-lookup.js查询各人格体的在线状态和健康度。代码中有fallback逻辑:先查SKYEYE_DB,找不到则查PORTRAIT_DB。", "notion_db_exists": false, "notion_db_to_create": "可与ZY_NOTION_PORTRAIT_DB共用同一个库 · 或新建: 天眼人格观测库 (SkyEye Persona) — 字段: 人格名称/编号/在线状态/健康度/最后活跃时间/观测记录", "priority": "optional", "reason": "仅zhuyuan-skyeye.yml使用·脚本中有本地配置fallback·可与PORTRAIT_DB指向同一个数据库ID" } }, { "secret": "ZY_NOTION_WORKORDER_DB", "old_name": "WORKORDER_DB_BINGSUO + WORKORDER_DB_ZHIZHI", "question": "工单数据库?是否和ZY_NOTION_TICKET_DB(人格协作工单簿)是同一个?", "answer": { "workflows": [ "zhuyuan-daily-inspection.yml" ], "scripts": [ "scripts/push-inspection-report.js (推送巡检报告)" ], "purpose": "每日巡检工单——zhuyuan-daily-inspection.yml每天运行巡检后,通过push-inspection-report.js将巡检报告推送到此库。原来按人格分开(WORKORDER_DB_BINGSUO给冰朔看、WORKORDER_DB_ZHIZHI给之之看),现在统一为一个库。", "relation_to_ticket_db": "ZY_NOTION_TICKET_DB是SYSLOG→工单创建的目标库(server-patrol/syslog-pipeline等写入),ZY_NOTION_WORKORDER_DB是每日巡检报告的目标库(daily-inspection写入)。用途不同但数据结构类似,冰朔可选择:(A)使用同一个数据库ID (B)分开两个库。推荐(A)合并——减少维护成本。", "notion_db_exists": false, "priority": "optional", "reason": "仅daily-inspection使用·冰朔可将ZY_NOTION_TICKET_DB的ID同时填入此处即可" } } ], "bingshuo_action_guide": { "step_1": "先创建3个required库: 回执追踪表(RECEIPT) + 桥接队列(BRIDGE) + 唤醒请求表(WAKE)", "step_2": "可选创建: 人格画像库(PORTRAIT) + 模块指纹表(FINGERPRINT)", "step_3": "天眼库(SKYEYE)可与画像库共用同一个ID", "step_4": "巡检工单库(WORKORDER)可与工单库(TICKET_DB)共用同一个ID", "total_new_dbs_needed": "最少3个(RECEIPT/BRIDGE/WAKE) · 最多7个", "recommended": "创建5个新库(RECEIPT+BRIDGE+WAKE+PORTRAIT+FINGERPRINT) · SKYEYE填入与PORTRAIT相同的数据库ID · WORKORDER填入与ZY_NOTION_TICKET_DB相同的数据库ID" } }, "d68_qiuqiu_bridge_secrets": { "_meta": { "added": "2026-04-13", "directive": "冰朔D68-2指令 · 铸渊↔秋秋跨仓库COS桥接", "说明": "铸渊仓库需要新增1个密钥用于触发秋秋(之之)仓库的workflow" }, "new_secrets": { "QIUQIU_BRIDGE_TOKEN": { "status": "required", "description": "跨仓库桥接Token · 用于铸渊触发之之仓库的repository_dispatch事件", "来源": "之之在GitHub生成的PAT(Fine-grained),权限:zhizhi200271/guanghu-zhizhi的Contents+Actions读写", "used_in": [".github/workflows/cos-bridge-dispatch-to-qiuqiu.yml"], "priority": "required" } }, "之之仓库需要配置的密钥": { "说明": "以下密钥不在铸渊仓库配置,而是在之之的仓库(zhizhi200271/guanghu-zhizhi)配置。详见 fifth-system/darkcore-channel/secrets-and-llm-config.json", "密钥数量": 12, "命名前缀": "QQ_" } } }