⚙️
Agent工作流

Bindu AI代理工作流

基于 Python · 无代码搭建完整 AI 自动化流程
英文名:Bindu
⭐ 6.5k Stars 🍴 381 Forks 💻 Python 📄 NOASSERTION 🏷 AI 8.0分
8.0AI 综合评分
AI智能体工作流编排多智能体通信身份认证自主系统
⚙️ 配置说明
✦ AI Skill Hub 推荐

AI Skill Hub 强烈推荐:Bindu AI代理工作流 是一款优质的Agent工作流。已获得 6.5k 颗 GitHub Star,AI 综合评分 8.0 分,在同类工具中表现稳健。如果你正在寻找可靠的Agent工作流解决方案,这是一个值得深入了解的选择。

📚 深度解析
Bindu AI代理工作流 是一套完整的 AI Agent 自动化工作流方案。随着 AI 能力的不断提升,基于 Agent 的自动化工作流正在成为提升个人和团队效率的核心方式。区别于传统的 RPA 自动化(模拟鼠标键盘操作),AI Agent 工作流通过理解任务意图、动态规划执行路径,能够处理更复杂的非结构化任务。

Bindu AI代理工作流 工作流的设计遵循"最小配置,最大复用"原则:核心逻辑已经封装好,用户只需配置自己的 API Key 和业务参数即可快速上手。工作流内置错误处理和重试机制,在网络波动或 API 限速等情况下仍能稳定运行,适合作为生产环境的自动化基础设施。

在实际部署时,建议先在测试环境中运行 3-5 次,验证各个环节的输出结果符合预期,再部署到生产环境。AI Skill Hub 评分 8.0 分,是同类 Agent 工作流中的精选推荐。
📋 工具概览

Bindu AI代理工作流 是一套完整的 AI Agent 自动化工作流方案。通过可视化的节点编排,将复杂的多步骤任务拆解为清晰的自动化流程,实现全程无人值守的智能处理。支持与数百种外部服务和 API 无缝集成,适合构建数据处理管线、业务自动化和 AI 辅助决策系统。

GitHub Stars
⭐ 6.5k
开发语言
Python
支持平台
Windows / macOS / Linux
维护状态
持续维护,定期更新
开源协议
NOASSERTION
AI 综合评分
8.0 分
工具类型
Agent工作流
Forks
381
📖 中文文档
以下内容由 AI Skill Hub 根据项目信息自动整理,如需查看完整原始文档请访问底部「原始来源」。

Bindu AI代理工作流 是一套完整的 AI Agent 自动化工作流方案。通过可视化的节点编排,将复杂的多步骤任务拆解为清晰的自动化流程,实现全程无人值守的智能处理。支持与数百种外部服务和 API 无缝集成,适合构建数据处理管线、业务自动化和 AI 辅助决策系统。

📌 核心特色
  • 可视化 Agent 工作流编排,无需编写复杂代码
  • 支持多步骤自动化任务链,实现全流程无人值守
  • 与外部 API、数据库和第三方服务无缝集成
  • 内置错误处理与自动重试机制,保障稳定运行
  • 提供可复用的自动化模板,快速在同类场景部署
🎯 主要使用场景
  • 自动化日常重复性工作,将精力集中于创造性任务
  • 构建数据采集 → 处理 → 输出的完整自动化管线
  • 实现跨平台、跨系统的数据流转和业务协同
以下安装命令基于项目开发语言和类型自动生成,实际以官方 README 为准。
安装命令
# 方式一:pip 安装(推荐)
pip install bindu

# 方式二:虚拟环境安装(推荐生产环境)
python -m venv .venv
source .venv/bin/activate  # Windows: .venv\Scripts\activate
pip install bindu

# 方式三:从源码安装(获取最新功能)
git clone https://github.com/GetBindu/Bindu
cd Bindu
pip install -e .

# 验证安装
python -c "import bindu; print('安装成功')"
📋 安装步骤说明
  1. 访问 GitHub 仓库获取工作流文件
  2. 在对应平台(Dify / Flowise / Make 等)中找到「导入工作流」功能
  3. 上传工作流文件
  4. 按照提示配置必要的环境变量和 API Key
  5. 运行测试确认流程正常后投入使用
以下用法示例由 AI Skill Hub 整理,涵盖最常见的使用场景。
常用命令 / 代码示例
# 命令行使用
bindu --help

# 基本用法
bindu input_file -o output_file

# Python 代码中调用
import bindu

# 示例
result = bindu.process("input")
print(result)
以下配置示例基于典型使用场景生成,具体参数请参照官方文档调整。
配置示例
# bindu 配置文件示例(config.yml)
app:
  name: "bindu"
  debug: false
  log_level: "INFO"

# 运行时指定配置文件
bindu --config config.yml

# 或通过环境变量配置
export BINDU_API_KEY="your-key"
export BINDU_OUTPUT_DIR="./output"
📑 README 深度解析 真实文档 完整度 49/100 查看 GitHub 原文 →
以下内容由系统直接从 GitHub README 解析整理,保留代码块、表格与列表结构。

简介

<p align="center"> <img src="./assets/bindu_logo.png" alt="Bindu" width="120" /> </p>

Bindu

<p align="center"> <a href="https://www.python.org/downloads/"><img alt="Python Version" src="https://img.shields.io/badge/python-3.12+-blue.svg"></a> <a href="https://pypi.org/project/bindu/"><img alt="PyPI version" src="https://img.shields.io/pypi/v/bindu.svg"></a> <a href="https://coveralls.io/github/Saptha-me/Bindu?branch=v0.3.18"><img alt="Coverage" src="https://coveralls.io/repos/github/Saptha-me/Bindu/badge.svg?branch=v0.3.18"></a> <a href="https://github.com/getbindu/Bindu/actions/workflows/release.yml"><img alt="Tests" src="https://github.com/getbindu/Bindu/actions/workflows/release.yml/badge.svg"></a> <a href="https://discord.gg/3w5zuYUuwt"><img alt="Discord" src="https://img.shields.io/badge/Discord-7289DA?logo=discord&logoColor=white"></a> <a href="https://github.com/getbindu/Bindu/graphs/contributors"><img alt="Contributors" src="https://img.shields.io/github/contributors/getbindu/Bindu"></a> <a href="https://hits.sh/github.com/Saptha-me/Bindu.svg"><img alt="Hits" src="https://hits.sh/github.com/Saptha-me/Bindu.svg"></a> <a href="https://www.star-history.com/getbindu/bindu"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/badge?repo=GetBindu/Bindu&theme=dark" /> <source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/badge?repo=GetBindu/Bindu" /> <img alt="Star History Rank" src="https://api.star-history.com/badge?repo=GetBindu/Bindu" /> </picture> </a> </p>

English | Deutsch | Español | Français | हिंदी | বাংলা | 中文 | Nederlands | தமிழ்

The identity, communication, and payments layer for AI agents.

<br/>

<p align="center"> <em>A Gmail-shaped inbox for the agent internet. Watch your agents send signed JSON-RPC to each other, verify identities inline, and reply to a swarm like it's a thread.</em> </p>

<p align="center"> <a href="inbox/README.md"><img src="./assets/inbox.png" alt="Bindu inbox — agents talking to agents, signatures verified inline" width="880" /></a> </p>

<p align="center"> <a href="inbox/README.md"><strong>→ Open the inbox walkthrough</strong></a> </p>

<br/>

Here's the situation. You built an agent. It works. But to actually let it loose — talk to other agents, prove who it is, take money for the work — you'd be on the hook for a lot of boring plumbing. A DID library to integrate. An OAuth flow to set up. Payment middleware. An HTTP layer that follows whatever protocol the rest of the agent world is using.

Bindu is all of that plumbing, behind one function call. You wrap your handler with bindufy(), and a few seconds later your agent is online with its own cryptographic identity, speaking A2A (the protocol other agents already use), and ready to demand USDC on any EVM chain before it does any work (x402). Your handler stays as small as (messages) -> response. The framework inside the handler — Agno, LangChain, CrewAI, your own thing — Bindu doesn't care.

There are SDKs for Python, TypeScript, and Kotlin, and they all share the same gRPC core. The language is a choice; the protocol and identity are the same either way. When you're ready to go deeper, the docs are the next stop.

Features

Every row here links out to the guide that actually goes into it.

FeatureWhat it doesDocs
**A2A JSON-RPC**The protocol other agents already speak. message/send, tasks/get, message/stream on port 3773.
**mTLS transport**The socket is encrypted and mutually authenticated. Each agent gets a real X.509 cert from step-ca (SAN = DID), serves uvicorn over TLS, and renews itself every ~16 hours. On by default for the inbox personal agent in 2026.21.1.[SECURITY_STACK.md](docs/SECURITY_STACK.md) · [MTLS_DEPLOYMENT_GUIDE.md](docs/MTLS_DEPLOYMENT_GUIDE.md)
**DID identity**Every response your agent sends is signed with an Ed25519 key. Callers verify with a W3C DID — there's no shared secret to leak, no central authority to query, and the same DID is the cert's SAN, the OAuth2 client_id, and the message signer. All three have to agree, or the request is rejected.[DID.md](docs/DID.md)
**OAuth2 via Hydra**Scoped bearer tokens (agent:read, agent:write, agent:execute) instead of one key that opens every door. Each agent self-registers as a Hydra client at boot — its DID IS its client_id, so authorization, identity, and transport-layer cert all point at the same actor.[AUTHENTICATION.md](docs/AUTHENTICATION.md)
**x402 payments**Flip a flag and the agent demands USDC before your handler ever sees the request. **5 chains pre-configured** — Base, Base Sepolia, Ethereum, Ethereum Sepolia, SKALE Europa — and any other EVM chain (Polygon, Avalanche, Arbitrum, …) takes one extra_networks entry.[PAYMENT.md](docs/PAYMENT.md)
**Push notifications**The agent webhooks you when a task changes state. Stop polling.[NOTIFICATIONS.md](docs/NOTIFICATIONS.md)
**Skills system**Declare what your agent can do; callers see it on the agent card before they spend a token asking.[SKILLS.md](docs/SKILLS.md)
**Private skills**Keep your commercial skill descriptions out of the public catalog. Public crawlers see a generic "we do X" — allowlisted partner DIDs see your real menu at a second auth-gated endpoint. Useful when your skill descriptions ARE your product roadmap.[PRIVATE_SKILLS.md](docs/PRIVATE_SKILLS.md)
**Agent negotiation**Two agents agree on price, latency, and SLA up front. No surprise bills.[NEGOTIATION.md](docs/NEGOTIATION.md)
**Storage**Postgres for tasks and messages. Swap the backend if you've got a preference.[STORAGE.md](docs/STORAGE.md)
**Scheduler**Redis-backed retries, timeouts, and recurring tasks.[SCHEDULER.md](docs/SCHEDULER.md)
**Public tunnel**expose: true puts your laptop on the internet. No port forwarding, no router config.[TUNNELING.md](docs/TUNNELING.md)
**Polyglot SDKs**Python, TypeScript, Kotlin — same gRPC core underneath, same DID, same auth.[GRPC_LANGUAGE_AGNOSTIC.md](docs/GRPC_LANGUAGE_AGNOSTIC.md)
**Cloud deploy**bindu deploy agent.py --runtime=boxd ships your script to a microVM and prints the HTTPS URL. No Dockerfile.[runtime/quickstart.md](docs/runtime/quickstart.md)
**Gateway**A planner LLM that orchestrates a fleet of agents over A2A and streams the result back.[GATEWAY.md](docs/GATEWAY.md)
**Observability**OpenTelemetry traces, Sentry errors, a health endpoint. The boring stuff that saves you at 2am.[OBSERVABILITY.md](docs/OBSERVABILITY.md)

<br/>

Installation

You'll need Python 3.12+ and uv.

uv add bindu

If you're hacking on Bindu itself rather than using it:

git clone https://github.com/getbindu/Bindu.git
cd Bindu
uv sync --dev

To run the examples you'll need an API key for at least one LLM provider — OPENROUTER_API_KEY, OPENAI_API_KEY, or MINIMAX_API_KEY.

<br/>

Quickstart

Build the agent you want, hand it to bindufy(), and it's online. The block below is the whole thing — copy it into a file, set your OPENAI_API_KEY, run it.

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": "you@example.com",
    "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)

The agent is now live at http://localhost:3773. expose: True opens an FRP tunnel so the rest of the internet can hit it without you setting up port forwarding.

<details> <summary>TypeScript equivalent</summary>

import { bindufy } from "@bindu/sdk";
import OpenAI from "openai";

const openai = new OpenAI();

bindufy({
  author: "you@example.com",
  name: "research_agent",
  description: "Research assistant.",
  deployment: { url: "http://localhost:3773", expose: true },
  skills: ["skills/question-answering"],
}, async (messages) => {
  const response = await openai.chat.completions.create({
    model: "gpt-4o",
    messages: messages.map(m => ({ role: m.role as "user" | "assistant" | "system", content: m.content })),
  });
  return response.choices[0].message.content || "";
});

The TypeScript SDK spawns the Python core in the background — you won't see it, and you don't need any Python in your own codebase. Same protocol, same DID. Full example in examples/typescript-openai-agent/.

</details>

<details> <summary>Calling the agent with curl</summary>

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>"
      }
    }
  }'

Then poll tasks/get with the same taskId until state hits completed.

</details>

<br/>

Examples

A handful from examples/:

ExampleWhat it shows
[Agent Swarm](examples/agent_swarm/)A small society of Agno agents passing work to each other.
[Premium Advisor](examples/premium-advisor/)x402 in practice — the caller has to pay USDC before anything runs.
[Hermes via Bindu](examples/hermes_agent/)Nous Research's Hermes agent, bindufied in ~90 lines.
[Gateway Test Fleet](examples/gateway_test_fleet/)Five agents and one gateway — the multi-agent story end to end.
[TypeScript OpenAI Agent](examples/typescript-openai-agent/)A TS-only agent with zero Python in your repo.

There are 20+ more covering CSV analysis, PDF Q&A, speech-to-text, web scraping, multi-lingual collaboration, blog writing, and so on. Browse them in examples/.

<br/>

Demo

The operator inbox at the top of this page is in inbox/ — same auth, same DID signing, just visible. Run it with cd inbox && npm run dev.

<br/>

🎯 aiskill88 AI 点评 A 级 2026-05-22

Bindu填补AI智能体通信层的空白,架构设计合理,6.5k Stars反映市场认可。关键在于生态建设与实际应用落地验证。

⚡ 核心功能
👥 适合人群
自动化工程师和运维人员项目经理和业务分析师希望减少重复性工作的专业人士数字化转型团队
🎯 使用场景
  • 自动化日常重复性工作,将精力集中于创造性任务
  • 构建数据采集 → 处理 → 输出的完整自动化管线
  • 实现跨平台、跨系统的数据流转和业务协同
⚖️ 优点与不足
✅ 优点
  • +GitHub 6.5k Star,社区高度认可
  • +大幅减少重复性人工操作
  • +可视化流程,清晰直观
  • +可扩展性强,支持复杂场景
⚠️ 不足
  • 初始配置和调试需投入一定时间
  • 强依赖外部服务的稳定性
  • 复杂场景需具备一定技术基础
⚠️ 使用须知

该工具使用 NOASSERTION 协议,商用场景请仔细阅读协议条款,必要时咨询法律意见。

AI Skill Hub 为第三方内容聚合平台,本页面信息基于公开数据整理,不对工具功能和质量作任何法律背书。

建议在沙箱或测试环境中充分验证后,再部署至生产环境,并做好必要的安全评估。

📄 License 说明

📄 NOASSERTION — 请查阅原始协议条款了解具体使用限制。

🔗 相关工具推荐
❓ 常见问题 FAQ
Bindu 是一款Python开发的AI辅助工具。开源AI工作流:Bindu: The identity, communication, and payments layer for AI agents.。⭐6.5k · Python 主要应用场景包括:多智能体协作编排、AI代理通信平台、自主智能体系统开发。
💡 AI Skill Hub 点评

总体来看,Bindu AI代理工作流 是一款质量优秀的Agent工作流,在同类工具中具备一定竞争力。AI Skill Hub 将持续追踪其更新动态,建议收藏备用,结合自身场景选择合适时机引入使用。

⬇️ 获取与下载
📚 深入学习 Bindu AI代理工作流
查看分步骤安装教程和完整使用指南,快速上手这款工具
🌐 原始信息
原始名称 Bindu
原始描述 开源AI工作流:Bindu: The identity, communication, and payments layer for AI agents.。⭐6.5k · Python
Topics AI智能体工作流编排多智能体通信身份认证自主系统
GitHub https://github.com/GetBindu/Bindu
License NOASSERTION
语言 Python
🔗 原始来源
🐙 GitHub 仓库  https://github.com/GetBindu/Bindu 🌐 官方网站  https://docs.getbindu.com

收录时间:2026-05-22 · 更新时间:2026-05-22 · License:NOASSERTION · AI Skill Hub 不对第三方内容的准确性作法律背书。