Bindu 智能体基础设施
为 AI 智能体统一提供身份认证、通信、编排与收款能力。
- Star 数
- ★ 10k
- 最近更新
- 2 个月前
- License
- NOASSERTION
- 主语言
- Python
- FA 评分
- 62/100 · 存在缺口
30 秒速览
- 运行形态
- 可在哪里用
- 通用 · 跨平台OpenAI API · Claude API
- 费用
- 软件免费,模型调用费用自付
- 上手难度
- 中 · 需要几步配置
- 开始前需要
- 典型场景
- 已经用 Agno、LangChain、CrewAI 或自有框架完成处理逻辑,希望在不重写核心智能体的情况下增加 A2A 接口、身份和授权的开发团队。
- 不适合
- 只想调用现成托管 API、不愿自建身份与支付基础设施的团队
- 无法接受 Postgres、Redis 及 USDC 钱包等运维依赖的小型项目
- 源码审查
- 62/100 · 存在缺口
这个 Agent 能做什么,适合哪些场景?
Bindu 是一个面向 AI 智能体的开发与运行层,将 A2A JSON-RPC 通信、DID 身份、OAuth2 授权、mTLS 传输和 x402 支付整合在同一套框架中。开发者把现有处理函数交给 bindufy(),即可在 3773 端口提供 message/send、tasks/get 和 message/stream 等接口,而处理函数仍保持 (messages) -> response 的简单边界。项目提供 Python、TypeScript 和 Kotlin SDK,并通过共同的 gRPC 核心保持协议、身份与认证方式一致。它可以包裹 Agno、LangChain、CrewAI、LangGraph、AG2、Hermes Agent 等现有框架,也支持兼容 OpenAI 或 Anthropic API 的模型提供商。运行边界既包括本地服务和 FRP 公网隧道,也包括通过 bindu deploy agent.py --runtime=boxd 发布到微型虚拟机。除单个智能体外,仓库还包含负责多智能体编排的 Gateway、可视化操作员收件箱,以及存储、调度、通知和可观测性组件。
开发者先用 bindufy(config, handler) 注册智能体的作者、名称、描述、部署 URL 和技能,再把来自 A2A 的消息交给自己的处理函数。Bindu 在处理函数之前接收 JSON-RPC 请求,并可依次执行基于 step-ca 证书的 mTLS、通过 Ory Hydra 内省的 OAuth2 权限检查,以及针对规范化 JSON 正文的 Ed25519 DID 签名验证。请求通过验证后,框架运行开发者提供的 Agno、LangChain、CrewAI、自定义代码或其他受支持实现,并把结果作为 A2A 任务响应返回;调用者可使用同一 taskId 查询 tasks/get,或使用流式消息与推送通知。启用 x402 后,系统可在处理函数执行前要求调用者支付 USDC,并预配置 Base、Base Sepolia、Ethereum、Ethereum Sepolia 和 SKALE Europa。Gateway 使用规划模型通过 A2A 调度一组智能体并流式返回结果;Postgres 保存任务与消息,Redis 支持重试、超时和周期任务。expose: true 可建立 FRP 公网隧道,bindu deploy 则可把脚本部署到 boxd 微型虚拟机并输出 HTTPS 地址。
- 已经用 Agno、LangChain、CrewAI 或自有框架完成处理逻辑,希望在不重写核心智能体的情况下增加 A2A 接口、身份和授权的开发团队。
- 需要让多个智能体相互分派任务,并在执行前协商价格、延迟和 SLA 的多智能体系统建设者。
- 提供付费分析、顾问或数据处理服务,希望通过 x402 在运行处理函数前收取 USDC 的智能体运营者。
- 处理合规或商业敏感能力,希望公开通用技能说明、仅向白名单合作方 DID 展示完整私有技能目录的团队。
- 需要从本地快速演示智能体的开发者,可用 FRP 隧道公开 3773 端口,而无需配置路由器端口转发。
- 需要统一接入 Python、TypeScript 和 Kotlin 智能体,并让它们共享 DID、认证和 A2A 协议的异构技术团队。
如何安装或部署这个 Agent?
使用 Python SDK需要 Python 3.12+ 和 uv:
uv add bindu若要参与 Bindu 本身的开发:
git clone https://github.com/getbindu/Bindu.git
cd Bindu
uv sync --dev运行仓库示例时,至少配置一个模型提供商凭据:OPENROUTER_API_KEY、OPENAI_API_KEY 或 MINIMAX_API_KEY。贡献者环境还可按仓库给出的流程创建指定 Python 环境并运行检查:
git clone https://github.com/getbindu/Bindu.git
cd Bindu
uv venv --python 3.12.9 && source .venv/bin/activate
uv sync --dev
pre-commit run --all-files如何使用这个 Agent?
下面是文档给出的首个 Python 智能体。设置 OPENAI_API_KEY 后运行该文件;它会在 http://localhost:3773 提供服务,并因 expose: True 建立公网隧道。
import os
from bindu.penguin.bindufy import bindufy
from agno.agent import Agent
from agno.models.openai import OpenAIChat
from agno.tools.duckduckgo import DuckDuckGoTools
agent = Agent(
instructions="You are a research assistant.",
model=OpenAIChat(id="gpt-4o"),
tools=[DuckDuckGoTools()],
)
config = {
"author": "[email protected]",
"name": "research_agent",
"description": "Research assistant with web search.",
"deployment": {"url": "http://localhost:3773", "expose": True},
"skills": ["skills/question-answering"],
}
def handler(messages: list[dict[str, str]]):
return agent.run(input=messages)
bindufy(config, handler)可用 A2A JSON-RPC 发送第一条消息:
curl -X POST http://localhost:3773/ \
-H 'Content-Type: application/json' \
-d '{
"jsonrpc": "2.0",
"method": "message/send",
"id": "<uuid>",
"params": {
"message": {
"role": "user",
"kind": "message",
"parts": [{"kind": "text", "text": "Hello"}],
"messageId": "<uuid>",
"contextId": "<uuid>",
"taskId": "<uuid>"
}
}
}'随后使用同一 taskId 调用 tasks/get,直到任务状态变为 completed。需要托管部署时可运行:
bindu deploy agent.py --runtime=boxd这个 Agent 有哪些优点和局限?
- 一次
bindufy()封装即可为现有处理函数增加 A2A JSON-RPC、DID 身份和部署入口,无需绑定某一种内部智能体框架。 - 安全模型明确分层:mTLS 保护并双向认证连接,Hydra OAuth2 控制当前操作权限,Ed25519 DID 签名验证具体消息正文。
- Python、TypeScript 和 Kotlin SDK 共用 gRPC 核心,可在多语言项目中保持相同的 DID、协议和认证语义。
- x402 支付在处理函数运行前完成校验,并预配置五条 EVM 网络,也允许添加其他 EVM 网络。
- 同时提供本地公网隧道、boxd 微型虚拟机部署、Gateway 编排、Postgres 存储、Redis 调度和 OpenTelemetry 可观测性路径。
- Python 路径要求 Python 3.12+ 和
uv;示例还要求至少一个受支持模型提供商的 API 密钥。 - 完整安全栈引入 step-ca、Ory Hydra、证书续期、令牌内省和 DID 密钥管理等基础设施与运维成本。
- README 将三层安全的默认启用范围具体限定为 2026.21.1 的操作员个人智能体,不能据此认定所有部署方式都会自动采用相同默认值。
- 存储和调度能力分别依赖 Postgres 与 Redis;支付场景还涉及 USDC、钱包和 EVM 网络配置。
- 提供的仓库元数据标记许可证为
NOASSERTION,而 README 声称采用 Apache 2.0 并指向LICENSE.md;正式采用前应核对实际许可证文件。
这个 Agent 与同类方案有什么区别?
相较于开发者自行组合 DID 库、OAuth 流程、支付中间件和 A2A HTTP 层,Bindu 将这些能力放到 bindufy() 后的共同通信与身份层中。它也不是 Agno、LangChain、CrewAI 或 LangGraph 的替代品:这些框架可以继续负责处理函数内部的推理与工具调用,Bindu 负责外部协议、身份、授权、支付和部署边界。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| Bindu 智能体基础设施 当前 | 62 · 存在缺口 | 代码库 / SDK免费 + 模型费 | ★ 10k | 2 个月前 | Python | OpenAI API · Claude API |
| Prismer Cloud | 56 · 缺口较多 | 命令行工具免费版 + 付费版 | ★ 1.4k | 15 天前 | TypeScript | Claude Code |
| Google ADK TypeScript 开发套件 | 51 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 1.5k | 7 天前 | TypeScript | — |
| AgentsMesh | 45 · 缺口较多 | 自托管服务免费版 + 付费版 | ★ 2.4k | 1 个月前 | Go | Codex · Claude Code |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
证据显示:CI工作流采用最小权限默认(contents: read),发布流程需要人工触发并受环境门控;安全文档详细描述了mTLS、OAuth2和DID签名三层安全机制,并默认启用;依赖版本有明确范围,但未提供漏洞扫描报告;外部影响(如暴露隧道、支付)有文档说明,但缺乏用户确认机制;回滚机制未明确提及。扣分原因:用户确认机制薄弱,回滚机制缺失,依赖安全缺乏具体扫描证据。
证据显示:README与pyproject.toml中的依赖版本一致,CI配置了单元测试和E2E测试,测试文件展示了具体测试用例;依赖可用性方面,依赖列表明确,但未提供锁定文件;失败消息方面,测试文件展示了错误处理改进,但整体失败消息质量未全面评估。扣分原因:依赖锁定文件缺失,失败消息覆盖不全面。
证据显示:README明确了目标受众(AI代理开发者)和多种使用场景(支付、身份、通信);能力边界通过功能列表和文档说明;触发精度方面,提供了API调用示例和协议细节;环境适配方面,支持多种语言和框架,但未提供详细的部署环境要求。扣分原因:环境适配细节不足,触发精度依赖文档而非实际测试。
证据显示:README结构清晰,包含安装、快速开始、功能、文档等;安装说明明确;命名稳定(bindufy等);提供了多个示例和FAQ链接;已知限制有专门文档;许可证为Apache 2.0;版本控制通过标签和changelog,但changelog未在文件中直接体现;维护责任通过维护者列表和贡献指南明确。扣分原因:changelog未直接提供,版本控制细节不足。
证据显示:输出可用性方面,提供了清晰的API响应示例和错误格式;边际价值方面,Bindu提供了独特的身份、通信和支付集成,具有明显价值;成本效益方面,开源免费,但部署和运行成本未详细说明。扣分原因:成本效益分析缺乏具体数据。
证据显示:README中的功能声明有对应文档链接,测试文件验证了部分行为;跨来源验证方面,依赖外部项目(如A2A、x402)但未提供独立验证;事实与推断分离方面,README区分了功能描述和设计意图。扣分原因:跨来源验证不足,部分声明缺乏独立证据。
- 用户确认机制薄弱:自动暴露隧道和支付功能可能在没有明确用户确认的情况下执行,需谨慎使用。
- 依赖安全缺乏具体漏洞扫描证据,建议在部署前进行独立的安全审计。
- 回滚机制未明确,升级或配置变更可能难以回退。
最近版本
来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。
-
2026.22.4 2026.22.4: x402 settle-first + scenario hardening
发布说明摘录
Release: x402 settle-first + scenario hardening ==================================================== Version: 2026.22.4 Date: May 28, 2026 Author: Raahul Dutta OVERVIEW -------- This release closes issue #562 — the verify-vs-settle gap in Bindu's x402 payment middleware — in two steps. First (#563): a failed settlement no longer delivers the artifact. The worker now gates artifact delivery on settle success, and persists the EIP-3009 nonce, full authorization, and network on every failed-settle path so an operator can reconcile against the chain instead of seeing …在 GitHub 查看 ↗ -
2026.20.7 2026.20.7: bindu-communication Inbox and Secured Outbound A2A
发布说明摘录
Release: bindu-communication Inbox and Secured Outbound A2A Version: 2026.20.7 Date: May 17, 2026 OVERVIEW -------- This release ships bindu-communication, an operator inbox for watching agent-to-agent traffic, together with the authentication and observability work that lets it talk to Hydra-protected peers end-to-end. The inbox is a three-pane Gmail-shape surface backed by SQLite that stitches outbound sends, agent webhooks, and gateway plan traces into one conversation per A2A context_id. Outbound calls are now JWT-bearer plus DID-signed using the operator's personal agent as …在 GitHub 查看 ↗ -
v2026.12.5 v2026.12.5: Document Analyzer & Reliability Improvements
发布说明摘录
Release: Document Analyzer & Reliability Improvements Version: 2026.12.5 Date: March 19, 2026 OVERVIEW -------- Maintenance and feature release focused on document analysis, payment robustness, scheduler and storage reliability, and usability improvements across the UI and configuration. This release also introduces a DSPy agent example, structured LangGraph workflow integration, and multiple accessibility and documentation enhancements contributed by the community. PROBLEM SOLVED -------------- Before this release: …在 GitHub 查看 ↗
常见问题
必须使用某个特定智能体框架吗?
是否只能使用 OpenAI 模型?
所有请求是否默认同时启用 mTLS、OAuth2 和 DID 签名?
如何收费,支持哪些网络?
extra_networks 添加。能否先在本机测试,再迁移到托管环境?
expose: true 可通过 FRP 公开访问;之后可用 bindu deploy agent.py --runtime=boxd 部署并获得 HTTPS 地址。