【免费下载链接】cloudroom-coreOpen-source, self-hostable Rust runtime that runs Claude Code, Codex, and Pi in the cloud.项目地址https://gitcode.com/gh_mirrors/cl/cloudroom-core点击查看免费下载Cloudroom 是一个开源、可自托管的 AI Agent 运行时用 Rust 编写可在你自己的 Linux 机器上运行 Claude Code、Codex、Pi 等编码 Agent并自动保存它们的聊天历史。它内置的云密钥模块 cloud-secrets解决了一个最头疼的安全难题当 AI Agent 需要 OpenAI API Key、邮件服务 Token 等凭据时完全不需要你把机密粘贴进聊天窗口——Agent 通过一条命令向你弹出安全表单你填完即可密钥全程不经过对话记录。为什么把 API Key 粘贴进聊天很危险很多新手第一次让 AI Agent 配置外部服务时会直接把sk-...开头的密钥贴在对话框里。这个习惯其实隐患很大密钥会永久留在聊天记录里Cloudroom 会把每个会话的历史写入本机磁盘并参与备份聊天里的密钥相当于明文存档模型上下文会复述它密钥一旦被读入 Agent 的上下文后续回答、日志、摘要都可能再次出现撤回困难你无法像撤回短信一样撤回一条已进入持久化历史的密钥。正确姿势只有一个让 Agent 发起一个安全请求你在专用表单里填写密钥直接落到受保护的文件里。这正是 cloud-secrets 的设计目标。cloud-secrets 的工作原理密钥零聊天通道整个流程可以概括为四步密钥始终不经过聊天Agent 在 Cloudroom 云端线程里运行一条room-cli secret request命令声明我需要哪些变量Cloudroom core 创建一条待处理的密钥请求App 在聊天线程中弹出一个安全表单只有变量名和用途说明不含任何值你在表单里填写真实的 API Key 并提交也可以取消命令端直接把值写入 dotenv 文件文件权限设为0600仅属主可读写并打印写入摘要。也就是说你在表单里输入的密钥只存在于App 表单 → core → 命令进程 → 文件这条链路中聊天历史里从头到尾只有变量名。完整教程3 步安全获取 API Key第 1 步让 Agent 发起密钥请求比如你在 Cloudroom 线程里让 Claude Code 配置一个需要 OpenAI 和 Resend 凭据的服务它会执行类似这样的命令room-cli secret request OPENAI_API_KEY RESEND_API_KEY \ --purpose Configure application credentials \ --describe OPENAI_API_KEY OpenAI API key used by the server \ --describe RESEND_API_KEY Resend API key used for transactional email \ --write-env .env.local各参数含义一目了然参数作用位置参数变量名要请求的变量一次可请求 1–50 个须唯一且符合环境变量命名规则字母/下划线开头只含字母、数字、下划线--purpose请求用途会展示在表单标题中让你确认它为什么需要密钥--describe 变量名 说明为每个变量附加一句话说明帮助你核对--write-env密钥最终写入的 dotenv 文件相对路径基于当前工作目录命令发起后会阻塞等待直到你提交或取消最长 10 分钟。第 2 步在安全表单中填写密钥Cloudroom App 会在该聊天线程里显示表单列出每个变量名和对应说明。你逐项粘贴真实的 API Key 并提交即可如果改主意了直接取消请求也行——任何时候都不要把值发到聊天消息里。第 3 步密钥自动写入受保护的文件你提交后命令端会把新变量追加到文件末尾已存在的变量就地更新保留行内注释以0600权限原子写入先写临时文件再重命名只有 Agent 用户可读打印一份 JSON 摘要只包含文件路径、变量名和added / updated / unchanged三个计数——不打印任何值。如果文件里存在重复赋值或多行引号值这类结构问题命令会直接报错拒绝提示你先修正文件结构后重试且全程不会读取现有值。内置的安全设计细节这套流程的安全不是口号源码里处处有约束值得了解一下见 src/secrets/mod.rs️只有 Agent 账户能发起请求密钥接口只挂在 agent-only 的本地 socket 上且会校验调用进程是否属于当前云会话的 Agent请求校验逻辑✅严格输入校验变量名 1–50 个且唯一、命名规则、用途与描述长度、路径合法性都会被检查check 函数防止注入异常文件路径文件保护写入用临时文件 重命名保证原子性权限固定0600write 函数并且会跟随 symlink 的真实目标写Agent 被明确禁止回读密钥cloud-secrets 技能文档 要求 Agent 成功后信任打印的路径和计数严禁用cat、env等任何方式把值打印出来⏱️命令端有硬限制单个值最长 16 KB、必须单行HTTP 响应体上限 1 MB。常见错误与最佳实践清单✅批量请求把已知的所有变量合并到一次请求里而不是逐个问用户要✅先查文档变量名先从README或.env.example里确认别凭空猜❌不要回显配置完成后 Agent 不会也不应该把.env.local内容贴到聊天里看到这种行为要打断它❌不要重试时贴值请求被取消后正确做法是在聊天里问是否重试而不是请把 key 发给我⚠️信任但可验证写入摘要只给计数不给值你可以放心地用test -f .env.local之类的方式确认文件存在而不必也不能查看内容。相关资源技能定义Agent 如何使用 cloud-secretssrc/secrets/cloud-secrets/SKILL.md核心实现请求 → 表单 → 写文件的完整链路src/secrets/mod.rs#L235-L263回答密钥请求的 HTTP 接口POST /v1/sessions/{id}/secrets/{request}docs/api.md云端线程命令行 room-cli 用法总览src/mac/room-cli/SKILL.md项目介绍与安全模型总述README.md从此以后让 AI Agent 拿 API Key 的正确姿势就一句话它问表单填文件落聊天零机密。赞分享【免费下载链接】cloudroom-coreOpen-source, self-hostable Rust runtime that runs Claude Code, Codex, and Pi in the cloud.项目地址https://gitcode.com/gh_mirrors/cl/cloudroom-core点击查看免费下载相关推荐FastClaw API密钥三级体系详解admin、user、agent密钥的正确使用姿势FastClaw API密钥三级体系详解admin、user、agent密钥的正确使用姿势 FastClaw 是一个用 Go 编写的轻量级 AI AgentDevSpace 4.x devspace reset key 命令完全指南重置集群加密密钥的正确姿势DevSpace 4.x devspace reset key 命令完全指南重置集群加密密钥的正确姿势 devspace reset key 是 DevSpa云原生开发工具DevOps容器编排密钥永不眠SWE-agent中Anthropic API密钥轮换机制全解析密钥永不眠SWE agent中Anthropic API密钥轮换机制全解析 在当今AI驱动的软件工程领域API密钥的安全管理至关重要。SWE agent作为AI AgentAgent 框架代码智能体后端开发工具上一篇GraphQL API设计终极指南Shopify生产环境经验的23个黄金法则下一篇ncmdump技术深度解析网易云音乐NCM格式解密与转换原理创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
阅读完成 · 觉得有帮助?