Skip to Content
卡片 SDK概览

卡片 SDK

自定义卡片是一个小型 Web 应用,和你的智能体、终端、笔记一起放在画布上。任何人都可以用卡片 SDK (@neurosquad/card-sdk)开发一张卡片并推送到 GitHub,其他人只需把 owner/repo 粘贴进 NeuroSquad 就能安装。

本节面向两类读者:

  • 所有想使用别人所做卡片的人——请从安装社区卡片开始。那里说明了卡片能做什么、不能做什么, 安装对话框会告诉你哪些信息,以及如何收回授权。
  • 想自己开发卡片的开发者——请从快速上手开始:几分钟内就能在画布上跑起一张可用的卡片。

卡片能做什么

自定义卡片是画布上的“一等公民”:它有同样的标题栏,可以调整大小、加入分组、连接箭头, 缩小画布时显示概览图块,也和其他卡片一样出现在侧边栏中。在自己的方框里,它想画什么都行。借助 SDK,它可以:

观察智能体
谁在工作、谁在等你、一轮何时开始和结束——在你连接之后,还能看到智能体输出了什么。
向智能体发提示词
给与它相连的智能体发送指令。智能体工作时提示词会排队,并遵守工作区预算。
与其他卡片通信
通过箭头上的类型化端口:卡片可以向笔记追加内容、往清单里添加任务,或为另一张自定义卡片提供数据。
为智能体提供工具
声明一个工具并在卡片中实现它;相连的智能体通过应用的 MCP 服务器调用它。
访问网络
从它声明过的主机获取数据——经由应用的代理,所用的密钥卡片自己永远看不到。
处理项目文件
在你允许时,读写工作区文件夹中的文件。
运行命令
在与它相连的终端卡片中运行命令,并拿到退出码和输出。
设置与存储
由应用绘制的设置表单、重启后依然保留的卡片存储,以及应用的主题和语言。

卡片永远不会越出画布

社区代码不被信任,因此每张卡片都被封闭在自己的方框里运行:

  • 它运行在单独的沙箱进程中。卡死或崩溃的卡片不会冻结画布,也不会连累其他任何东西。
  • 它无法自行访问应用本身、你的其他卡片、Node.js、你的文件、Cookie 或互联网。一切都要经过 SDK, 而应用会把每一个请求与你的授权逐一核对。
  • 它不能打开窗口或弹窗、进入全屏、弹出系统对话框、发送系统通知、下载文件,也不能让应用跳转到别处。它只能在自己的卡片里绘制。
  • 当卡片需要你做决定时——确认操作、打开链接、授予权限、发给危险模式下智能体的提示词、API 密钥之类的机密—— 由应用在它自己的对话框中询问你,这个对话框会让整个窗口变暗,包括侧边栏和标题栏。卡片无法在自己的方框之外绘制, 所以永远伪造不了这一点。卡片正文里的一切都属于卡片自己:NeuroSquad 从不在那里索要密钥。

用大白话讲安全模型

由你决定它能做什么

卡片会列出它需要的权限。在安装任何东西之前,你都能看到这些权限,高风险的排在最前。 没有任何权限的卡片只能在自己的方框里绘制。

箭头就是同意

任何到达另一张卡片或智能体的东西——端口上的数据、提示词、命令、读取屏幕——都需要两张卡片之间有一条箭头, 并且具备相应的权限。没有箭头,就没有数据。

锁定到某个提交

一次安装就是“这个仓库的这个确切提交”——是仓库本身的提交,而不是某个分叉(fork)的提交。 不会有任何东西在你背后悄悄改变:更新从不自动进行;要求更多权限、或改变卡片向智能体提供的内容的更新,会再次征求你的同意。

密钥留在应用里

API 密钥只能在应用自己的对话框中输入,加密保存,并由应用添加到发往你授权的互联网主机的请求中。卡片本身永远看不到它们。

有些文件碰不得

即使有文件访问权限,卡片也永远不能修改 .git、智能体的设置和指令(.claude/、.mcp.json、CLAUDE.md、AGENTS.md……) 或 CI 工作流——而如果工作区是你的主文件夹或整个磁盘,它根本得不到任何文件访问权限。

一切都看得见

通过卡片发出的提示词或工具调用会点亮它所经过的箭头,并连同卡片名称记入箭头日志。

社区卡片并非由 NeuroSquad 团队制作或审核。只安装你信任的人做的卡片,并仔细阅读权限列表—— 能向智能体发提示词或运行命令的卡片,可以做那些智能体和终端能做的任何事。

本节内容

卡片 SDK 刚刚推出。这里描述的一切都基于卡片协议第 1 版;有几件事被有意留到以后——卡片市场、自动更新、 完全没有外框就能运行的卡片、文件选择器,以及在手机上运行卡片代码。在相关的地方都会一一注明。