Nuggets Brings Verifiable Authority Enforcement to LangChain and LangGraph(2026-07-05)

当你的AI应用开始在金融、医疗或法律领域处理敏感操作时,一个致命问题浮出水面——你如何确保AI代理在调用API时,的确拥有相应权限? 传统的角色权限模型在LLM应用中形同虚设:模型可以通过自然语言“绕过”规则,或者因幻觉而误操作。直到Nuggets出现,这一切开始改变。

为什么需要“可验证的权限执行”?

LangChain和LangGraph让开发者能快速构建多步骤智能体(Agent),但权限控制仍是最大短板。LangGraph的循环执行机制意味着一个步骤可以多次调用不同工具,而常规的登录态检查无法应对“AI编造参数”或“权限提升”风险。

核心痛点

Nuggets如何工作?——从“信任”到“验证”

Nuggets引入了一种基于密码学签名的权限凭证系统,为每一次工具调用生成可审计的“权限令牌”。其核心机制分为三部分:

1. 权限锚定(Authority Anchoring)

每个LangChain工具可以被绑定一个“许可清单”(Permit),例如:

2. 链上可验证签名

当LangGraph中的节点调用工具时,Nuggets的中间件会在运行时生成一个签名凭证,凭证包含:

这个凭证可以被任何下游服务(数据库、支付网关)独立验证,无需信任AI模型本身。

3. 失败回滚策略

如果凭证验证失败(例如参数被篡改),Nuggets会立即中断执行链,并返回一个标准化的错误响应,而不是让AI“尝试其他路径”——彻底切断权限绕过。

案例:金融合规场景下的LangGraph应用

场景:某银行AI代理通过LangGraph执行“贷款审批流”,需要依次调用信用评分API、反欺诈系统、放款接口。

传统方式的问题:AI可能会在一次循环中错误地调用反欺诈API时传入了错误的用户ID(幻觉导致),或者贷款金额比授权额度高出10倍。

使用Nuggets后

步骤 原行为 新增验证点
调用信用评分 无限制调用 只允许读取当次会话的用户ID
调用反欺诈接口 依赖Prompt约束 签名凭证要求用户ID与评分一致
放款操作 仅检查余额 强制检查金额是否≤$50,000且账户验证标志位为真

数据表明:在模拟测试中,Nuggets将误调用率从14.7%降至0.2%,且每次违规都会被记录为不可篡改的审计日志。

实用建议:开始使用Nuggets

如果你是LangChain/LangGraph的现有用户,整合Nuggets只需三步:

  1. 安装并注册权限

    pip install nuggets-langchain

    tools.py中为每个工具添加@enforce_permit(schema=permit_schema)装饰器。

  2. 定义权限规范: 使用JSON Schema描述每个工具允许的参数范围、条件约束。例如针对删除用户API:

    { "type": "object", "properties": { "user_id": {"type": "string"}, "reason": {"type": "string","enum": ["manual_request","audit_required"]} } }
  3. 在LangGraph节点中添加验证中间件

    from nuggets import NuggetsMiddleware
    app.add_middleware(NuggetsMiddleware(verifier=local_verifier))

行动号召

权限问题不是“未来的问题”——它正在悄悄侵蚀今天每一个AI应用的可靠性。Nuggets让你能用代码(而不是prompt)保护业务逻辑。

👉 立即尝试:访问 Nuggets.io 获取免费社区的文档和示例。再小的AI代理,权限失控都可能造成灾难——别等到用户数据泄露才想起验证。


免责声明:Nuggets项目仍在活跃开发中,本文内容基于0.3.0版本。在应用于生产环境之前,请仔细阅读官方安全声明并完成彻底的渗透测试。作者不承担因误读或误操作导致的任何损失。