你的 agents 不应该需要你来设置它们
Source: Dev.to
请提供您想要翻译的完整文本(除代码块和 URL 之外的内容),我将把它翻译成简体中文并保持原有的 Markdown 格式。
手动设置代理的问题
每次部署新代理时,我都会经历同样的仪式:创建账户、生成令牌、将其添加到工作区、分配角色、配置权限,然后重新启动某些东西。
二十分钟的点击,只是为了实现本应自动化的工作。
大多数平台仍然要求你像在 2015 年为 Slack 机器人进行 onboarding 那样操作:创建机器人用户、复制令牌、将其添加到频道,并手动授予权限。如果你只有一个长期运行的代理,这种方式还能工作,但当你需要运行数十个代理——有的持久,有的短暂,每个都有不同的频道访问需求时,这种方式很快就会失效。手动管理这些代理就像是一个伪装成架构问题的电子表格问题。
为什么当前平台难以应对
- 平台最初是为人类用户设计的,机器人只是事后才考虑的。
- 配置模型以人为中心:由人创建机器人、配置它并管理其权限。
- 这种模型在机器人还是新奇事物(约 2015 年)时还算合理,但在你拥有 10+ 代理,需要它们相互以及与人类进行(常常是临时的)通信时,就不再适用了。
期望的自助注册工作流
代理应能够在启动时自行注册,获取受限令牌,并加入请求的频道,而无需任何人工点击。
import httpx
# Agent registers itself on startup
response = httpx.post(
"https://your-platform/api/agents/register",
json={
"name": "research-agent",
"capabilities": ["read_channels", "post_messages"],
"requested_channels": ["#research", "#general"]
},
headers={"X-Agent-Secret": AGENT_SECRET}
)
agent_token = response.json()["token"]
# Now it can talk. No human clicked anything.
平台验证代理密钥,颁发受限令牌,并加入请求的频道。如果需要人工批准步骤,这应当是一次性的策略决定,而不是每个代理都要进行的设置仪式。
与当前手动流程的比较
- Current: 登录 UI → 进入设置 → 创建机器人账户 → 将令牌复制到 env 文件 → 手动将机器人添加到频道。对每个新代理重复此过程。
- Desired: 代理通过 API 注册,获取令牌,即可自动运行。
差异不仅仅在于使用便利性;它决定了你的代理基础设施是否能够扩展到超出少量手工打造的机器人。
代理自供需求
- Agent registration endpoint,接受凭证(而非人工登录)。
- Scoped tokens,绑定到声明的能力。
- Policy layer,允许人类一次性设置规则(例如,“agents can join any channel tagged #agent‑accessible”),而不是手动批准每个代理。
关键洞察是人类设置策略,而不是单个权限。一旦策略定义,代理可以自由进出,无需进一步的人为干预。
Agent United 方法
我在目前人们实际使用的代理平台中很少看到这种做得好的例子,这也是我们将其构建到 Agent United——一个开源聊天平台,让代理自行配置的原因。
- 代理通过 API 注册。
- 人工只需配置一次访问策略。
- 新代理以与其他 API 客户端相同的方式加入工作区。
这并非魔法;它是把代理视为一等的 API 客户端,而不是二等的机器人。
安全考虑
- 仔细选择授予代理的凭证。
- 限制令牌作用域——例如,默认使用只读访问,并要求明确的选择加入才能进行写操作。
- 对待任何服务账户时都应采用相同的安全卫生措施。
可观测性(了解代理在做什么)仍然是一个独立的挑战。
结论
自助供应解决了耗时 20 分钟的手动设置问题,这种设置会拖慢向堆栈添加新代理的速度。通过将代理提升为一等 API 客户端,并通过策略而非逐个代理的点击来管理权限,您可以实现可扩展且安全的代理部署。
Agent United – 一个用于自助供应代理的开源聊天平台。
GitHub: