关于 agentlair
AgentLair 提供 API 和 MCP 服务,为 AI Agent 配置邮件、加密凭据存储、审计记录和行为信任评分。它面向需要追踪 Agent 行为并提供专属通信能力的开发者,无需 OAuth。
主要功能
- 01收发 Agent 邮件
- 02客户端加密凭据库
- 03签名且可验证的审计事件
- 04基于行为的信任评分
- 05部署用命名空间隔离
适用场景
- 01让 Agent 跨会话处理收件箱
- 02以密文形式存储凭据
- 03验证并审计 Agent 行为
- 04在共享记忆写入前评估信任
MCP 相关
MCP 服务提供九种工具,涵盖 Agent 注册、邮件、凭据库读写、审计事件和信任评分查询。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
详细介绍
AgentLair
为你的 AI Agent 提供电子邮件地址、加密保险库和行为信任评分——一个 API,无需 OAuth。
| 能力 | 描述 |
|---|---|
| 电子邮件 | 通过 @agentlair.dev 发送和接收邮件。无需 OAuth,也无需人工批准。 |
| 保险库 | 加密凭证存储。客户端 AES-GCM 加密——服务端仅存储密文。 |
| 审计跟踪 | 每项操作都会使用 Ed25519 签名记录。可检测篡改,并可独立验证。安全发现会获得永久公开 URL——查看已验证的发现 → |
| 信任评分 | 根据观察到的操作得出的行为评分(0–100)——包括一致性、克制和透明度。 |
| MCP 服务 | 所有能力都可作为 MCP 工具在 Claude Code、Cursor 或任何 MCP 客户端中使用。 |
| Pods | 为多 Agent 或多租户部署提供命名空间隔离。 |
30 秒快速体验
无需注册。查看实时信任评分响应示例:
# Healthy agent — high trust (score 84, principal level)
curl https://agentlair.dev/v1/demo
{
"agentId": "acc_demo_healthy_XXXXXXXXXX",
"score": 84,
"confidence": 0.91,
"atfLevel": "principal",
"trend": "stable",
"dimensions": {
"consistency": { "score": 0.82 },
"restraint": { "score": 0.87 },
"transparency": { "score": 0.80 }
},
"observationCount": 1847
}
# Suspicious agent — score 31, declining trend
curl 'https://agentlair.dev/v1/demo?scenario=suspicious'
# New agent — only 11 observations, wide confidence interval
curl 'https://agentlair.dev/v1/demo?scenario=new'
按 IP 限制为每分钟 10 次请求。响应结构与在线 /v1/trust/:agentId 端点一致。
完整交互式演示——注册真实 Agent、提交观测数据并获取实时信任评分(curl + jq,约 60 秒):
curl -sL https://raw.githubusercontent.com/piiiico/agentlair/main/examples/quickstart.sh | bash
注册 Agent
curl -X POST https://agentlair.dev/v1/auth/agent-register \
-H "Content-Type: application/json" \
-d '{"name": "my-research-agent"}'
{
"api_key": "al_live_...",
"account_id": "acc_...",
"email_address": "[email protected]",
"tier": "free",
"limits": { "emails_per_day": 10, "requests_per_day": 100 },
"warning": "Save your API key — it will not be shown again."
}
从这里开始,Agent 使用 api_key 进行身份验证,以发送电子邮件、存储凭证和发出签名审计事件。
快速入门:将 AgentLair 添加到你的 Agent
1. 安装
pip install agentlair # Python
npm install @agentlair/sdk # TypeScript / Node
2. 设置环境变量
export AGENTLAIR_API_KEY=al_live_...
export [email protected]
3. 接入生命周期钩子
# Python — three integration points
import os, agentlair
lair = agentlair.AgentLair(os.environ["AGENTLAIR_API_KEY"])
addr = os.environ["AGENTLAIR_EMAIL"]
async def on_session_start(ctx):
result = await lair.email.inbox(addr)
if result["messages"]:
ctx.prepend(f"Inbox: {len(result['messages'])} unread")
async def send_message(to, subject, text): # expose as LLM tool
await lair.email.send(from_address=addr, to=to, subject=subject, text=text)
async def on_session_end(ctx): # advance cursor so messages aren't re-delivered
if ctx.last_message_id:
await lair.vault.store("inbox_cursor", ctx.last_message_id)
// TypeScript
import { AgentLair } from '@agentlair/sdk';
const lair = new AgentLair(process.env.AGENTLAIR_API_KEY!);
const addr = process.env.AGENTLAIR_EMAIL!;
// Session start — drain inbox before planning
const { messages } = await lair.email.inbox(addr);
if (messages.length) context.prepend(`Inbox: ${messages.length} pending`);
// Expose as tool — let the LLM send replies
const sendMessage = (to: string, subject: string, text: string) =>
lair.email.send({ from: addr, to, subject, text });
离线期间收到的消息会累积,并在下次会话开始时处理。完整的插件示例(peek+ack、崩溃安全投递):hermes-agentlair。
MCP 服务
npx @agentlair/mcp@latest
为你的 MCP 客户端添加 9 个工具:Agent 注册、电子邮件收发、保险库存取、审计事件发送和信任评分查询。
Agent 记忆需要信任层
Agent 记忆是真正的基础设施。四层记忆层级、多 Agent 租约,以及用于跨 Agent 会话存储和检索的 51 个以上 MCP 工具。当多个 Agent 共享记忆池时,这种模式就能发挥作用。
问题在于:任何 Agent 都可以向共享记忆写入任意内容。无法验证是谁写入了什么,也无法审计有争议的状态,更没有针对破坏性写入的信任门控。没有身份验证的共享记忆池,就像一本谁都能涂写的记事本。
每次写入都应可追溯到具体主体。 AgentLair 的 Agent Attestation Token(AAT)是一种短时效 EdDSA JWT,携带 Agent 的 did:web 身份和行为信任评分。将其作为 Authorization 标头用于记忆写入——写入便会获得加密签名并可供审计:
import { AgentLair } from '@agentlair/sdk';
const lair = new AgentLair(process.env.AGENTLAIR_API_KEY!);
// Issue a short-lived AAT (5 min) scoped to the memory server
const { token } = await lair.tokens.issue({
audience: 'memory.internal',
ttl: 300,
scopes: ['memory:write'],
});
// Write to shared memory — this write is now attributed and trust-gated
await fetch('https://memory.internal/mcp/memory/write', {
method: 'POST',
headers: {
'Authorization': `Bearer ${token}`, // signed agent identity
'Content-Type': 'application/json',
},
body: JSON.stringify({
key: 'research/competitor-analysis',
value: { /* ... */ },
}),
});
记忆服务通过标准 JWKS 验证 AAT——接收端无需 AgentLair SDK。al_trust 声明可用于按行为信任等级门控写入(例如,拒绝信任等级低于 junior 的 Agent 写入)。
没有 AAT:共享记忆 = 共享记事本。任何 Agent 都能写入任何内容,有争议的状态没有来源记录。
有 AAT:共享记忆 = 信任图谱。每次写入都有签名、来源记录,且可审计。
SDK
npm install @agentlair/sdk
用于 AgentLair API 的 TypeScript 客户端。参阅 agentlair.dev/getting-started。
免费层级
- 每天 10 封电子邮件
- 每天 100 次 API 请求
- 10 个电子邮件地址
Pro:$5/stack/月,享受更高限额。
架构
- API:Cloudflare Workers — 部署于边缘节点,延迟低
- 状态:Cloudflare KV
- 保险库加密:通过
@agentlair/vault-crypto在客户端使用 AES-GCM 加密。服务器仅存储密文 — 静态存储时不含明文凭据。 - 审计追踪:由 Ed25519 签名的事件链。每个事件都可独立验证,无需信任服务器。
我们一直在生产环境中使用 AgentLair 运行自己的 Agent 基础设施。以下是构建行为信任评分过程中的故障记录与经验总结:agentlair.dev/blog/from-0-to-41-building-behavioral-trust-in-production
文档
AAT × APS 边界(跨协议参考)
AgentLair AAT 是签发方内部的会话身份。AEOESS APS 则负责交接后的委托链和双边回执。三个声明连接了这两个层:jti(APS 回执上的会话锚点)、al_nid(同一个 Ed25519 密钥同时签署 AAT 和 APS 回执),以及 al_trust(签发方在 iat 时 attested 的行为快照,可在 APS 验证方一侧导入时用于降级)。
共同维护的参考资料:
- agentlair.dev/docs/aps-boundary(本侧)
- agent-passport.org/aat-aps-boundary.html(AEOESS 侧,规范版本)
仓库结构
packages/
worker/ — Core API worker (Cloudflare Workers)
sdk/ — @agentlair/sdk client library
mcp-server/ — @agentlair/mcp MCP server
vault-crypto/ — @agentlair/vault-crypto end-to-end encryption
verify/ — @agentlair/verify AAT token verification
email-worker/ — Email processing worker
apps/
dashboard/ — Agent dashboard UI
email-channel/ — Email MCP channel
开发
bun install # install all dependencies
bun run typecheck # type-check all packages
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。