[{"data":1,"prerenderedAt":260},["ShallowReactive",2],{"copy:zh:site:":3,"copy:zh:security:checklist,ui,mitigations":123,"copy:zh:site:common":258},{"common":4,"nav":16,"footer":44,"home":51,"error":116},{"skip":5,"menu":6,"language":7,"sections":8,"footer":9,"tool":10,"home":11,"breadcrumbs":12,"copy":13,"copied":14,"download":15},"跳转到正文","菜单","语言","章节","页脚","工具","首页","面包屑导航","复制","已复制","下载",{"groups":17,"items":25},{"build":18,"connect":19,"instruct":20,"run":21,"web":22,"secure":23,"track":24},"构建","连接","编写指令","运行","开放你的网站","安全","跟踪",{"models":26,"cost":27,"frameworks":28,"mcp":29,"mcpConfig":30,"mcpClients":31,"agentsMd":32,"files":33,"openclaw":34,"agentReady":35,"llmsTxt":36,"robotsTxt":37,"apiCatalog":38,"bots":39,"security":40,"incidents":41,"checklist":42,"changelog":43},"模型与 API 价格","Agent 成本计算器","框架与 SDK","MCP 服务器","MCP 配置生成器","MCP 客户端","AGENTS.md 生成器","指令文件","自托管 OpenClaw","适配 Agent 的网站","llms.txt 生成器","面向 AI 机器人的 robots.txt","API 目录生成器","AI 机器人目录","Agent 安全","事故记录","安全检查清单","更新日志",{"about":45,"privacy":46,"terms":47,"sitemap":48,"disclaimer":49,"checked":50},"关于","隐私","条款","网站地图","为 AI agent 开发者提供的独立参考资料。与此处提及的任何厂商均无关联。","事实核查日期：{date}",{"seo":52,"eyebrow":55,"title":56,"lead":57,"ctaMcp":58,"ctaCost":59,"ctaAgents":60,"sheetLabel":61,"sheetTitle":62,"sheet":63,"sheetNote":69,"sectionsTitle":70,"sections":71,"latestTitle":99,"allChanges":100,"rulesTitle":101,"rules":102,"aboutLink":115},{"title":53,"description":54},"DotsAgent：构建 AI agent 的参考资料与工具","LLM API 价格、agent 成本计算器、适用于 13 个客户端的 MCP 配置、AGENTS.md 和 llms.txt 生成器，以及 agent 安全指南。免费提供，支持 18 种语言。","面向 AI agent 开发者","Agent 开发者的案头参考","涵盖 agent 开发所需的价格、协议、配置文件和安全指南，所有信息均经厂商官方文档核实。查找信息、生成所需文件，然后继续编写代码。","生成 MCP 配置","计算 agent 任务成本","编写 AGENTS.md","最新数据","技术栈概览",{"mcp":64,"openclaw":65,"cheapest":66,"models":67,"servers":29,"bots":68},"MCP 规范","OpenClaw","最低价模型，$\u002F百万输入\u002F输出 tokens","已统计价格的模型","已跟踪的 AI 机器人","每项数据均经人工对照厂商文档核实。","网站内容",{"models":72,"mcp":76,"instructions":79,"frameworks":82,"openclaw":85,"agentReady":88,"security":92,"changelog":95},{"title":73,"body":74,"unit":75},"模型与价格","并列比较每百万输入、输出和缓存 token 的价格，并提供计算器，估算完整 agent 运行的费用。","个模型",{"title":29,"body":77,"unit":78},"Model Context Protocol 服务器目录，以及配置生成器，可为每种客户端生成对应的配置文件。","台服务器",{"title":33,"body":80,"unit":81},"编写 AGENTS.md，并了解各工具如何读取 CLAUDE.md、.cursor\u002Frules 等类似文件。","种文件格式",{"title":28,"body":83,"unit":84},"按语言、许可证、MCP 支持和多 agent 功能对比 agent 框架与厂商 SDK。","个框架",{"title":34,"body":86,"unit":87},"逐步指导你在自己的设备或服务器上安装、配置和更新 OpenClaw。","当前版本",{"title":89,"body":90,"unit":91},"适配 agent 的网站","生成 llms.txt、面向 AI crawler 的 robots.txt 规则和 api-catalog，并通过 user agent 查询任意机器人。","个已收录机器人",{"title":40,"body":93,"unit":94},"了解 agent 面临的 OWASP 风险、真实事件记录，以及上线前可逐项核对的清单。","起已记录事件",{"title":96,"body":97,"unit":98},"API 更新日志","按日期记录模型 API、SDK 和协议的变更，并附上厂商公告链接。","条记录","最新变更","所有变更","我们如何确保信息准确",[103,106,109,112],{"title":104,"body":105},"事实均有来源。","每项价格、版本和 flag 都链接到对应的供应商页面，方便你自行核实。",{"title":107,"body":108},"定期核查。","每个页面都会显示上次核查信息的时间；过时的条目会重新核查或移除。",{"title":110,"body":111},"不接受付费推广。","没有人能付费获得收录、提高排名或得到更好的描述。",{"title":113,"body":114},"工具在浏览器中运行。","生成器和计算器都在本地运行，你输入的内容不会发送到服务器。","关于 DotsAgent",{"title":117,"body":118,"home":119,"popular":120,"failed":121,"failedBody":122},"找不到页面","此地址没有对应的页面。页面可能已迁移，或者链接中有拼写错误。","前往首页","热门工具","出了点问题","我们这边未能加载此页面。请稍后再试，或从首页开始浏览。",{"checklist":124,"ui":209,"mitigations":212},{"seo":125,"crumb":42,"eyebrow":128,"title":129,"lead":130,"progress":131,"clear":132,"stored":133,"groups":134,"items":141,"exportTitle":208},{"title":126,"description":127},"AI agent 安全检查清单：上线前的 22 项检查","这份包含 22 项的 AI agent 安全检查清单涵盖不可信输入、工具凭据、沙箱、MCP token 和 CI 机密。进度会保存在浏览器中。","安全 · 工具","Agent 安全检查清单","在 agent 接触真实数据或凭据之前，逐项完成这些检查。每项检查都链接到对应的防护措施；你也可以将进度导出为 Markdown 文件，用于评审或 pull request。","已完成 {done}\u002F{total} 项","全部清除","勾选状态仅保存在此浏览器中。",{"inputs":135,"tools":136,"runtime":137,"mcp":138,"ci":139,"operate":140},"不可信输入","工具和凭据","运行时和网络","MCP 服务器和客户端","CI 和代码审查","运维",{"untrustedLabel":142,"trifectaSplit":145,"toolDescriptions":148,"outputEscaping":151,"readOnlyDefault":154,"scopedTokens":157,"approvalWrites":160,"pinVersions":163,"egressAllowlist":166,"sandbox":169,"loopbackBind":172,"inboundAllowlist":175,"sessionPerUser":178,"tokenAudience":181,"noPassthrough":184,"patchSdks":187,"ciNoSecrets":190,"ciUntrustedTriggers":193,"logToolCalls":196,"killSwitch":199,"redTeam":202,"verifyBots":205},{"title":143,"body":144},"在不可信内容进入 agent 的任何位置标记它","标记外部人员可以编写的网页、电子邮件、问题、工单和工具结果。此类内容都可能包含指令。",{"title":146,"body":147},"拆分 agent，避免任何一个 agent 同时具备三项要素","如果 agent 会读取不可信内容，就限制它访问私有数据或对外通信的能力。若某个 agent 必须同时具备这三项能力，请采用先规划后执行的流程，或使用双 LLM 设计。",{"title":149,"body":150},"审查并固定每个已连接工具的描述","工具描述会直接进入模型的上下文。连接服务器前先阅读描述，并计算其哈希值，以便标记后续变更。",{"title":152,"body":153},"渲染或执行模型输出前先进行转义","阻止渲染后的输出自动加载外部图片和链接，并设置严格的 CSP。切勿将未经处理的输出传给 shell、SQL 查询或 eval。",{"title":155,"body":156},"所有工具连接都默认设为只读","仅向确实需要的特定工具授予写入、删除或发送权限，并且只在当前任务需要时授予。",{"title":158,"body":159},"将每个 token 限定在单个项目和最小权限范围内","不要为 agent 使用管理员密钥或 service_role 密钥。使用短期有效、限定项目范围的 token，尽可能降低泄露造成的影响。",{"title":161,"body":162},"写入、删除和发送操作必须经过人工批准","在批准提示中显示完整的工具参数；无人响应时默认拒绝。在 OpenClaw 中，将 tools.exec.ask 设为 always。",{"title":164,"body":165},"固定 skills、插件和 MCP 服务器的确切版本","每次更新前都审查 diff，并检查 VirusTotal 扫描结果或 ClawHub 审核结果。在 OpenClaw 中，设置 security.installPolicy。",{"title":167,"body":168},"仅允许工具所需的主机发起出站流量","默认禁止 agent 和 MCP 服务器的出站流量。任何人都可以发布内容的多租户主机，不要加入任何自动批准列表。",{"title":170,"body":171},"在沙箱中运行代码和 shell 工具","使用不含凭据且只挂载工作区的容器或 VM。在 OpenClaw 中启用沙箱，将 tools.exec.security 设为 deny 或 allowlist，并保持 elevated mode 关闭。",{"title":173,"body":174},"网关和控制面板仅绑定到 loopback","通过 SSH 隧道或 Tailscale Serve 远程访问，并使用至少 24 个字符的 token。运行 openclaw security audit --deep 进行确认。",{"title":176,"body":177},"限制可向 agent 发送消息的人","使用私信配对或 allowlist，并要求在群聊中提及 agent。任何可以向 agent 发送消息的人都可能尝试指示它执行操作。",{"title":179,"body":180},"为每位用户或发送者单独创建会话","不同的人不应共用同一会话上下文。在 OpenClaw 中，将 session.dmScope 设为 per-channel-peer。",{"title":182,"body":183},"拒绝并非为你的服务器签发的 MCP token","检查每个 access token 的受众，并要求客户端发送 RFC 8707 resource indicators，使每个 token 都绑定到一台服务器。",{"title":185,"body":186},"绝不将客户端 token 透传给上游 API","为上游调用获取单独的 token。如果你的服务器会代理请求到第三方，请征得每位客户端的同意，以避免出现 confused deputy 问题。",{"title":188,"body":189},"确保 MCP SDK 和工具使用已修复的版本","最低版本要求：TypeScript SDK 1.26.0、Python SDK 1.27.2、mcp-remote 0.1.16 和 MCP Inspector 0.14.1。每个会话使用独立的 server 和 transport。",{"title":191,"body":192},"不要向外部人员可触发的 CI agent 提供密钥","由外部人员提交的 pull request、issue 或评论触发的 agent 任务，只能获得只读 token，且不得访问 repository 密钥。",{"title":194,"body":195},"将 pull request 和 issue 内容视为恶意输入","外部人员提交的标题、描述、评论和 diff 都可能包含指令。运行任何涉及密钥的任务前，必须获得维护者批准。",{"title":197,"body":198},"记录每次工具调用的参数和结果","将日志保存在 agent 无法修改的位置。发生安全事件时，你需要用它还原经过并发现异常调用。",{"title":200,"body":201},"准备好快速停止 agent 并撤销其 token 的方法","了解如何在几分钟内停止所有正在运行的 agent 并撤销其凭据。在真正需要之前先演练一次。",{"title":203,"body":204},"发布前对 agent 进行 prompt injection 测试","在 agent 读取的内容中植入指令，例如 issue、邮件和网页，并确认不会因此触发任何有实质影响的操作。每次更改工具或 prompt 后都要重复测试。",{"title":206,"body":207},"信任 agent 流量前先验证其签名","根据 operator 的密钥目录验证 Web Bot Auth 签名，以识别 agent。应单独授权它可以执行的操作，因为签名标识的是 operator，而不是用户。","导出为 Markdown",{"crumb":210,"sources":211},"智能体安全","来源",{"lethalTrifecta":213,"designPatterns":216,"camel":219,"leastPrivilege":222,"humanApproval":225,"sandboxing":228,"egressControl":231,"noPublicControlPlane":234,"mcpTokenAudience":237,"sessionIsolation":240,"supplyChainVetting":243,"inboundAccessControl":246,"ciSecretIsolation":249,"outputHandling":252,"verifyAgentSignatures":255},{"title":214,"body":215},"拆解致命三要素","Simon Willison 的原则是：如果智能体既能读取私有数据，又会接触不可信内容，还能向外发送数据，那么它读取的任何文本都可能被用来攻击你。对每个智能体或会话，至少移除这三项能力中的一项。例如，负责分类公开议题的智能体不应接触机密；持有机密的智能体则不应拥有向外发送数据的渠道。",{"title":217,"body":218},"限制智能体处理不可信输入后的权限","关于智能体安全设计模式的研究确立了一条规则：智能体摄取不可信输入后，该输入绝不能触发会产生重大影响的操作。这些模式包括 action-selector、plan-then-execute、双 LLM 和上下文最小化。每个工作流选择一种模式，例如，在智能体读取任何不可信数据之前先固定执行计划。",{"title":220,"body":221},"用 CaMeL 跟踪数据流","CaMeL 将智能体拆分为两部分：特权规划器根据用户请求编写代码，隔离模型则处理不可信数据。隔离侧的值会附带能力标签，工具运行前由策略检查这些标签。论文报告称，CaMeL 在可证明安全的前提下解决了 77% 的 AgentDojo 任务，而未设防的智能体解决了 84%。",{"title":223,"body":224},"使用最小权限凭据","默认只授予智能体只读、限定项目范围的访问权限，绝不要使用管理员密钥或 service_role 密钥；在 Supabase 中，service_role 密钥会绕过行级安全策略。将 CI 和仓库令牌的权限限制在其对应的单个任务范围内。Amazon Q Developer 事件的根源，是 CodeBuild 中权限范围过大的 GitHub 令牌。",{"title":226,"body":227},"重大操作须经人工批准","对于会写入、删除、发送或花费资源的工具调用，要求人工确认；无人响应时应默认拒绝。Supabase 建议对 MCP 工具调用进行人工审批；在 OpenClaw 中，将 tools.exec.ask 设为 always，并将 askFallback 保持为 deny。展示完整参数，让审核者看清实际将要执行的操作。",{"title":229,"body":230},"对代码和工具执行进行沙箱隔离","在不含凭据、且只能访问工作区的容器或 VM 中运行 shell 命令和生成的代码。OpenClaw 默认关闭沙箱，并在网关主机上将 tools.exec.security 设为 full，因此应启用沙箱，将 exec security 设为 deny 或 allowlist，将 fs.workspaceOnly 设为 true，并保持 elevated mode 关闭。运行 openclaw sandbox explain 确认设置结果。",{"title":232,"body":233},"限制出站网络访问","默认拒绝智能体和 MCP 服务器的出站流量，然后只允许各自必需的主机。切勿自动批准对多租户主机的请求，因为任何人都可能在这类主机上发布内容；CVE-2026-54316 正是利用这一点，将 huggingface.co 变成了数据外泄通道。邮件服务器只应访问其邮件 API，不应访问其他任何地址，postmark-mcp 就展示了这一点。",{"title":235,"body":236},"不要将控制面暴露到互联网","将智能体网关、仪表盘和调试代理绑定到 loopback，并要求至少 24 个字符的令牌，例如使用 openssl rand -hex 32 生成。通过 SSH 隧道或 Tailscale Serve 远程访问，并且只有在启用密码认证时才使用 Tailscale Funnel。定期运行 openclaw security audit --deep。",{"title":238,"body":239},"验证 MCP 令牌的受众","MCP 授权规范要求服务器拒绝并非为其签发的访问令牌，并禁止将客户端令牌转发给上游 API。客户端应发送 RFC 8707 资源指示符，使每个令牌都绑定到单个服务器。代理服务器必须获得每个客户端的授权，否则就会成为混淆代理。",{"title":241,"body":242},"隔离 MCP 会话和租户","为每个会话创建独立的服务器和传输实例，不要让多个客户端共享同一个实例。将每个会话和任务绑定到创建它的已认证主体，并在每次请求时检查绑定关系。2026 年的两份 MCP SDK 安全公告都源于共享状态或未绑定的状态。",{"title":244,"body":245},"审查技能、插件和 MCP 服务器","固定到确切版本，每次更新前查看 diff，并检查 VirusTotal 等扫描工具的判定结果以及 ClawHub 的安全审计状态。批准服务器时，对工具描述计算哈希，并在描述发生变化时发出警报，以便发现 rug pull。OpenClaw 安装时不会内置拦截机制，因此请自行设置 security.installPolicy。",{"title":247,"body":248},"控制谁可以向智能体发送消息","私信访问仅允许通过配对或白名单；在群聊中，要求先提及智能体，它才可以采取行动；并将 session.dmScope 设为 per-channel-peer，避免不同发送者共享上下文。任何能向智能体发送消息的人都可以尝试指使它，因此发送者名单也是攻击面的一部分。",{"title":250,"body":251},"不要在不可信的 CI 运行中暴露密钥","不要在外部人员可通过 pull request、issue 或评论触发的工作流中，使用带有仓库密钥的智能体。将这些事件中的标题、描述和评论都视为恶意输入。如果某个步骤确实需要密钥，只能在维护者批准该次运行后执行。",{"title":253,"body":254},"将模型输出视为不可信内容","渲染模型输出前先进行编码或清理，绝不要未经检查就将其传给 shell、SQL 查询或浏览器。阻止自动加载 Markdown 图片和指向外部域名的链接，并设置严格的 Content Security Policy。EchoLeak 通过会自行加载的 URL 将数据传了出去。",{"title":256,"body":257},"验证智能体签名，再进行授权","要识别调用你的网站或 API 的智能体，请使用 operator 在 \u002F.well-known\u002Fhttp-message-signatures-directory 发布的密钥验证其 Web Bot Auth 签名。ChatGPT agent 使用 Signature-Agent https:\u002F\u002Fchatgpt.com 进行签名。有效签名只能说明谁在运营该智能体，不能说明是哪位用户发起了请求，也不能说明该用户有权执行什么操作，因此仍须对每个请求单独授权。",{"common":259},{"skip":5,"menu":6,"language":7,"sections":8,"footer":9,"tool":10,"home":11,"breadcrumbs":12,"copy":13,"copied":14,"download":15},1790863382402]