{"id":43918971,"url":"https://github.com/getbindu/bindu","last_synced_at":"2026-02-21T10:01:12.322Z","repository":{"id":282784904,"uuid":"949646929","full_name":"GetBindu/Bindu","owner":"GetBindu","description":"Bindu: Turn any AI agent into a living microservice -  interoperable, observable, composable.","archived":false,"fork":false,"pushed_at":"2026-02-19T02:06:11.000Z","size":20874,"stargazers_count":783,"open_issues_count":78,"forks_count":189,"subscribers_count":3,"default_branch":"main","last_synced_at":"2026-02-19T07:26:30.088Z","etag":null,"topics":["a2a","agent-communication","agent-orchestration","ai-agent","autonomous-agents","machine-learning"],"latest_commit_sha":null,"homepage":"https://docs.getbindu.com","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/GetBindu.png","metadata":{"files":{"readme":"README.bn.md","changelog":null,"contributing":".github/contributing.md","funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":"maintainers.md","copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-03-16T22:37:03.000Z","updated_at":"2026-02-19T06:59:18.000Z","dependencies_parsed_at":"2025-05-19T07:25:18.067Z","dependency_job_id":"54395a56-6224-4fae-abee-988eb17580b7","html_url":"https://github.com/GetBindu/Bindu","commit_stats":null,"previous_names":["pebbling-ai/pebble","saptha-me/bindu","getbindu/bindu"],"tags_count":48,"template":false,"template_full_name":null,"purl":"pkg:github/GetBindu/Bindu","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GetBindu%2FBindu","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GetBindu%2FBindu/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GetBindu%2FBindu/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GetBindu%2FBindu/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GetBindu","download_url":"https://codeload.github.com/GetBindu/Bindu/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GetBindu%2FBindu/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29679049,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-21T09:33:50.764Z","status":"ssl_error","status_checked_at":"2026-02-21T09:33:19.949Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["a2a","agent-communication","agent-orchestration","ai-agent","autonomous-agents","machine-learning"],"created_at":"2026-02-06T22:06:06.312Z","updated_at":"2026-02-21T10:01:12.308Z","avatar_url":"https://github.com/GetBindu.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\" id=\"top\"\u003e\n  \u003ca href=\"https://getbindu.com\"\u003e\n    \u003cpicture\u003e\n      \u003cimg src=\"assets/bindu.png\" alt=\"Bindu\" width=\"300\"\u003e\n    \u003c/picture\u003e\n  \u003c/a\u003e\n\u003c/div\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cem\u003eAI এজেন্টদের জন্য পরিচয়, যোগাযোগ এবং পেমেন্ট লেয়ার\u003c/em\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://opensource.org/licenses/Apache-2.0\"\u003e\u003cimg src=\"https://img.shields.io/badge/license-Apache%202.0-blue.svg\" alt=\"License\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://hits.sh/github.com/Saptha-me/Bindu.svg\"\u003e\u003cimg src=\"https://hits.sh/github.com/Saptha-me/Bindu.svg\" alt=\"Hits\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://www.python.org/downloads/\"\u003e\u003cimg src=\"https://img.shields.io/badge/python-3.12+-blue.svg\" alt=\"Python Version\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://pepy.tech/projects/bindu\"\u003e\u003cimg src=\"https://static.pepy.tech/personalized-badge/bindu?period=total\u0026units=INTERNATIONAL_SYSTEM\u0026left_color=BLACK\u0026right_color=GREEN\u0026left_text=downloads\" alt=\"PyPI Downloads\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://pypi.org/project/bindu/\"\u003e\u003cimg src=\"https://img.shields.io/pypi/v/bindu.svg\" alt=\"PyPI version\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://pypi.org/project/bindu/\"\u003e\u003cimg src=\"https://img.shields.io/pypi/dm/bindu\" alt=\"PyPI Downloads\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://coveralls.io/github/Saptha-me/Bindu?branch=v0.3.18\"\u003e\u003cimg src=\"https://coveralls.io/repos/github/Saptha-me/Bindu/badge.svg?branch=v0.3.18\" alt=\"Coverage\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/getbindu/Bindu/actions/workflows/release.yml\"\u003e\u003cimg src=\"https://github.com/getbindu/Bindu/actions/workflows/release.yml/badge.svg\" alt=\"Tests\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://discord.gg/3w5zuYUuwt\"\u003e\u003cimg src=\"https://img.shields.io/badge/Join%20Discord-7289DA?logo=discord\u0026logoColor=white\" alt=\"Discord\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/getbindu/Bindu/graphs/contributors\"\u003e\u003cimg src=\"https://img.shields.io/github/contributors/getbindu/Bindu\" alt=\"Contributors\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n---\n\n**Bindu** (উচ্চারণ: _বিন্দু_) হলো AI এজেন্টদের জন্য একটি অপারেটিং লেয়ার যা পরিচয়, যোগাযোগ এবং পেমেন্ট সুবিধা প্রদান করে। এটি একটি প্রোডাকশন-রেডি সার্ভিস যা সুবিধাজনক API দিয়ে ডিস্ট্রিবিউটেড সিস্টেম জুড়ে এজেন্টদের সংযুক্ত, প্রমাণীকৃত এবং অর্কেস্ট্রেট করে – ওপেন প্রোটোকল ব্যবহার করে: **A2A**, **AP2**, এবং **X402**।\n\nডিস্ট্রিবিউটেড আর্কিটেকচার (Task Manager, scheduler, storage) দিয়ে তৈরি, Bindu দ্রুত ডেভেলপ করা এবং যেকোনো AI ফ্রেমওয়ার্কের সাথে ইন্টিগ্রেট করা সহজ করে তোলে। যেকোনো এজেন্ট ফ্রেমওয়ার্ককে Internet of Agents-এ যোগাযোগ, সহযোগিতা এবং কমার্সের জন্য সম্পূর্ণ ইন্টারঅপারেবল সার্ভিসে রূপান্তরিত করুন।\n\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003e🌟 \u003ca href=\"https://bindus.directory\"\u003eআপনার এজেন্ট রেজিস্টার করুন\u003c/a\u003e • 🌻 \u003ca href=\"https://docs.getbindu.com\"\u003eডকুমেন্টেশন\u003c/a\u003e • 💬 \u003ca href=\"https://discord.gg/3w5zuYUuwt\"\u003eDiscord কমিউনিটি\u003c/a\u003e\u003c/strong\u003e\n\u003c/p\u003e\n\n---\n\n\u003cbr/\u003e\n\n## 🎥 Bindu-কে কাজ করতে দেখুন\n\n\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"https://www.youtube.com/watch?v=qppafMuw_KI\" target=\"_blank\"\u003e\n    \u003cimg src=\"https://img.youtube.com/vi/qppafMuw_KI/maxresdefault.jpg\" alt=\"Bindu Demo\" width=\"640\" style=\"border-radius: 10px; box-shadow: 0 4px 8px rgba(0,0,0,0.1);\" /\u003e\n  \u003c/a\u003e\n\u003c/div\u003e\n\n## 📋 প্রয়োজনীয়তা\n\nBindu ইনস্টল করার আগে নিশ্চিত করুন যে আপনার কাছে আছে:\n\n- **Python 3.12 বা তার উপরে** - [এখানে ডাউনলোড করুন](https://www.python.org/downloads/)\n- **UV Package Manager** - [ইনস্টলেশন গাইড](https://github.com/astral-sh/uv)\n\n### আপনার সেটআপ যাচাই করুন\n\n```bash\n# Python ভার্সন চেক করুন\nuv run python --version  # 3.12 বা তার উপরে দেখাবে\n\n# UV ইনস্টলেশন চেক করুন\nuv --version\n```\n\n---\n\n\u003cbr/\u003e\n\n## 📦 ইনস্টলেশন\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eWindows ইউজারদের জন্য নোট (Git \u0026 GitHub Desktop)\u003c/b\u003e\u003c/summary\u003e\n\nকিছু Windows সিস্টেমে, ইনস্টলেশনের পরেও Command Prompt-এ git চিনতে পারে না – PATH কনফিগারেশন সমস্যার কারণে।\n\nযদি এই সমস্যায় পড়েন, আপনি বিকল্প হিসেবে *GitHub Desktop* ব্যবহার করতে পারেন:\n\n1. https://desktop.github.com/ থেকে GitHub Desktop ইনস্টল করুন\n2. আপনার GitHub অ্যাকাউন্ট দিয়ে সাইন ইন করুন\n3. রিপোজিটরি URL ব্যবহার করে ক্লোন করুন:\n   https://github.com/getbindu/Bindu.git\n\nGitHub Desktop আপনাকে কমান্ড লাইন ছাড়াই রিপোজিটরি ক্লোন, ব্রাঞ্চ ম্যানেজ, পরিবর্তন কমিট এবং pull request খুলতে দেয়।\n\n\u003c/details\u003e\n\n```bash\n# Bindu ইনস্টল করুন\nuv add bindu\n\n# ডেভেলপমেন্টের জন্য (যদি Bindu-তে কন্ট্রিবিউট করেন)\n# ভার্চুয়াল এনভায়রনমেন্ট তৈরি এবং অ্যাক্টিভেট করুন\nuv venv --python 3.12.9\nsource .venv/bin/activate  # macOS/Linux-এ\n# .venv\\Scripts\\activate  # Windows-এ\n\nuv sync --dev\n```\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eসাধারণ ইনস্টলেশন সমস্যা\u003c/b\u003e (প্রসারিত করতে ক্লিক করুন)\u003c/summary\u003e\n\n\u003cbr/\u003e\n\n| সমস্যা | সমাধান |\n|-------|----------|\n| `uv: command not found` | UV ইনস্টল করার পর টার্মিনাল রিস্টার্ট করুন। Windows-এ PowerShell ব্যবহার করুন |\n| `Python version not supported` | [python.org](https://www.python.org/downloads/) থেকে Python 3.12+ ইনস্টল করুন |\n| ভার্চুয়াল এনভায়রনমেন্ট অ্যাক্টিভেট হচ্ছে না (Windows) | PowerShell ব্যবহার করুন এবং `.venv\\Scripts\\activate` রান করুন |\n| `Microsoft Visual C++ required` | [Visual C++ Build Tools](https://visualstudio.microsoft.com/visual-cpp-build-tools/) ডাউনলোড করুন |\n| `ModuleNotFoundError` | venv অ্যাক্টিভেট করুন এবং `uv sync --dev` রান করুন |\n\n\u003c/details\u003e\n\n---\n\n\u003cbr/\u003e\n\n## 🚀 দ্রুত শুরু\n\n### অপশন ১: Cookiecutter ব্যবহার করুন (সুপারিশকৃত)\n\n**প্রথম এজেন্ট পর্যন্ত সময়: ~২ মিনিট ⏱️**\n\n```bash\n# Cookiecutter ইনস্টল করুন\nuv add cookiecutter\n\n# আপনার Bindu এজেন্ট তৈরি করুন\nuvx cookiecutter https://github.com/getbindu/create-bindu-agent.git\n```\n\n## 🎥 মিনিটেই প্রোডাকশন-রেডি এজেন্ট তৈরি করুন\n\n\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"https://youtu.be/obY1bGOoWG8?si=uEeDb0XWrtYOQTL7\" target=\"_blank\"\u003e\n    \u003cimg src=\"https://img.youtube.com/vi/obY1bGOoWG8/maxresdefault.jpg\" alt=\"Bindu Demo\" width=\"640\" style=\"border-radius: 10px; box-shadow: 0 4px 8px rgba(0,0,0,0.1);\" /\u003e\n  \u003c/a\u003e\n\u003c/div\u003e\n\nব্যস হয়ে গেল! আপনার লোকাল এজেন্ট এখন একটি লাইভ, সিকিউর এবং আবিষ্কারযোগ্য সার্ভিস। [আরো জানুন →](https://docs.getbindu.com/bindu/create-bindu-agent/overview)\n\n\u003e **💡 প্রো টিপ:** Cookiecutter দিয়ে তৈরি এজেন্টে GitHub Actions থাকে যা আপনার রিপোজিটরিতে push করলে স্বয়ংক্রিয়ভাবে [Bindu Directory](https://bindus.directory)-তে এজেন্ট রেজিস্টার করে। ম্যানুয়াল রেজিস্ট্রেশনের দরকার নেই!\n\n### অপশন ২: ম্যানুয়াল সেটআপ\n\nআপনার এজেন্ট স্ক্রিপ্ট `my_agent.py` তৈরি করুন:\n\n```python\nfrom bindu.penguin.bindufy import bindufy\nfrom agno.agent import Agent\nfrom agno.tools.duckduckgo import DuckDuckGoTools\nfrom agno.models.openai import OpenAIChat\n\n# আপনার এজেন্ট ডিফাইন করুন\nagent = Agent(\n    instructions=\"আপনি একজন রিসার্চ অ্যাসিস্ট্যান্ট যে তথ্য খুঁজে বের করে এবং সংক্ষিপ্ত করে।\",\n    model=OpenAIChat(id=\"gpt-4o\"),\n    tools=[DuckDuckGoTools()],\n)\n\n# কনফিগারেশন\nconfig = {\n    \"author\": \"your.email@example.com\",\n    \"name\": \"research_agent\",\n    \"description\": \"একটি রিসার্চ অ্যাসিস্ট্যান্ট এজেন্ট\",\n    \"deployment\": {\"url\": \"http://localhost:3773\", \"expose\": True},\n    \"skills\": [\"skills/question-answering\", \"skills/pdf-processing\"]\n}\n\n# Handler ফাংশন\ndef handler(messages: list[dict[str, str]]):\n    \"\"\"মেসেজ প্রসেস করে এবং এজেন্টের রেসপন্স রিটার্ন করে।\n\n    Args:\n        messages: কথোপকথনের ইতিহাস সহ মেসেজ ডিকশনারির লিস্ট\n\n    Returns:\n        এজেন্ট রেসপন্স রেজাল্ট\n    \"\"\"\n    result = agent.run(input=messages)\n    return result\n\n# Bindu-ফাই করুন\nbindufy(config, handler)\n```\n\n![Sample Agent](assets/agno-simple.png)\n\nআপনার এজেন্ট এখন `http://localhost:3773`-এ লাইভ এবং অন্য এজেন্টদের সাথে যোগাযোগ করতে প্রস্তুত।\n\n---\n\n### অপশন ৩: মিনিমাল Echo এজেন্ট (টেস্টিং)\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eমিনিমাল উদাহরণ দেখুন\u003c/b\u003e (প্রসারিত করতে ক্লিক করুন)\u003c/summary\u003e\n\nসবচেয়ে ছোট কার্যকর এজেন্ট:\n\n```python\nfrom bindu.penguin.bindufy import bindufy\n\ndef handler(messages):\n    return [{\"role\": \"assistant\", \"content\": messages[-1][\"content\"]}]\n\nconfig = {\n    \"author\": \"your.email@example.com\",\n    \"name\": \"echo_agent\",\n    \"description\": \"দ্রুত টেস্টিংয়ের জন্য একটি বেসিক echo এজেন্ট।\",\n    \"deployment\": {\"url\": \"http://localhost:3773\", \"expose\": True},\n    \"skills\": []\n}\n\nbindufy(config, handler)\n```\n\n**রান এবং টেস্ট করুন:**\n\n```bash\n# এজেন্ট স্টার্ট করুন\npython examples/echo_agent.py\n```\n\n\u003c/details\u003e\n\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003ecurl দিয়ে এজেন্ট টেস্ট করুন\u003c/b\u003e (প্রসারিত করতে ক্লিক করুন)\u003c/summary\u003e\n\n\u003cbr/\u003e\n\nইনপুট:\n```bash\ncurl --location 'http://localhost:3773/' \\\n--header 'Content-Type: application/json' \\\n--data '{\n    \"jsonrpc\": \"2.0\",\n    \"method\": \"message/send\",\n    \"params\": {\n        \"message\": {\n            \"role\": \"user\",\n            \"parts\": [\n                {\n                    \"kind\": \"text\",\n                    \"text\": \"Quote\"\n                }\n            ],\n            \"kind\": \"message\",\n            \"messageId\": \"550e8400-e29b-41d4-a716-446655440038\",\n            \"contextId\": \"550e8400-e29b-41d4-a716-446655440038\",\n            \"taskId\": \"550e8400-e29b-41d4-a716-446655440300\"\n        },\n        \"configuration\": {\n            \"acceptedOutputModes\": [\n                \"application/json\"\n            ]\n        }\n    },\n    \"id\": \"550e8400-e29b-41d4-a716-446655440024\"\n}'\n```\n\nআউটপুট:\n```bash\n{\n    \"jsonrpc\": \"2.0\",\n    \"id\": \"550e8400-e29b-41d4-a716-446655440024\",\n    \"result\": {\n        \"id\": \"550e8400-e29b-41d4-a716-446655440301\",\n        \"context_id\": \"550e8400-e29b-41d4-a716-446655440038\",\n        \"kind\": \"task\",\n        \"status\": {\n            \"state\": \"submitted\",\n            \"timestamp\": \"2025-12-16T17:10:32.116980+00:00\"\n        },\n        \"history\": [\n            {\n                \"message_id\": \"550e8400-e29b-41d4-a716-446655440038\",\n                \"context_id\": \"550e8400-e29b-41d4-a716-446655440038\",\n                \"task_id\": \"550e8400-e29b-41d4-a716-446655440301\",\n                \"kind\": \"message\",\n                \"parts\": [\n                    {\n                        \"kind\": \"text\",\n                        \"text\": \"Quote\"\n                    }\n                ],\n                \"role\": \"user\"\n            }\n        ]\n    }\n}\n```\n\nTask-এর স্ট্যাটাস চেক করুন\n```bash\ncurl --location 'http://localhost:3773/' \\\n--header 'Content-Type: application/json' \\\n--data '{\n    \"jsonrpc\": \"2.0\",\n    \"method\": \"tasks/get\",\n    \"params\": {\n        \"taskId\": \"550e8400-e29b-41d4-a716-446655440301\"\n    },\n    \"id\": \"550e8400-e29b-41d4-a716-446655440025\"\n}'\n```\n\nআউটপুট:\n```bash\n{\n    \"jsonrpc\": \"2.0\",\n    \"id\": \"550e8400-e29b-41d4-a716-446655440025\",\n    \"result\": {\n        \"id\": \"550e8400-e29b-41d4-a716-446655440301\",\n        \"context_id\": \"550e8400-e29b-41d4-a716-446655440038\",\n        \"kind\": \"task\",\n        \"status\": {\n            \"state\": \"completed\",\n            \"timestamp\": \"2025-12-16T17:10:32.122360+00:00\"\n        },\n        \"history\": [\n            {\n                \"message_id\": \"550e8400-e29b-41d4-a716-446655440038\",\n                \"context_id\": \"550e8400-e29b-41d4-a716-446655440038\",\n                \"task_id\": \"550e8400-e29b-41d4-a716-446655440301\",\n                \"kind\": \"message\",\n                \"parts\": [\n                    {\n                        \"kind\": \"text\",\n                        \"text\": \"Quote\"\n                    }\n                ],\n                \"role\": \"user\"\n            },\n            {\n                \"role\": \"assistant\",\n                \"parts\": [\n                    {\n                        \"kind\": \"text\",\n                        \"text\": \"Quote\"\n                    }\n                ],\n                \"kind\": \"message\",\n                \"message_id\": \"2f2c1a8e-68fa-4bb7-91c2-eac223e6650b\",\n                \"task_id\": \"550e8400-e29b-41d4-a716-446655440301\",\n                \"context_id\": \"550e8400-e29b-41d4-a716-446655440038\"\n            }\n        ],\n        \"artifacts\": [\n            {\n                \"artifact_id\": \"22ac0080-804e-4ff6-b01c-77e6b5aea7e8\",\n                \"name\": \"result\",\n                \"parts\": [\n                    {\n                        \"kind\": \"text\",\n                        \"text\": \"Quote\",\n                        \"metadata\": {\n                            \"did.message.signature\": \"5opJuKrBDW4woezujm88FzTqRDWAB62qD3wxKz96Bt2izfuzsneo3zY7yqHnV77cq3BDKepdcro2puiGTVAB52qf\"  # pragma: allowlist secret\n                        }\n                    }\n                ]\n            }\n        ]\n    }\n}\n```\n\n\u003c/details\u003e\n\n---\n\n\u003cbr/\u003e\n\n## [Postgres Storage](https://docs.getbindu.com/bindu/learn/storage/overview)\n\nBindu প্রোডাকশন ডিপ্লয়মেন্টের জন্য PostgreSQL-কে তার persistent storage backend হিসেবে ব্যবহার করে। Storage লেয়ার SQLAlchemy-র async engine দিয়ে তৈরি এবং protocol TypedDicts-এর সাথে imperative mapping ব্যবহার করে।\n\nএটি ঐচ্ছিক - ডিফল্টভাবে InMemoryStorage ব্যবহার করা হয়।\n\n### 📊 Storage স্ট্রাকচার\n\nStorage লেয়ার তিনটি প্রধান টেবিল ব্যবহার করে:\n\n1. **tasks_table**: JSONB history এবং artifacts সহ সব task স্টোর করে\n2. **contexts_table**: Context metadata এবং message history বজায় রাখে\n3. **task_feedback_table**: Task-এর জন্য ঐচ্ছিক feedback storage\n\n### ⚙️ কনফিগারেশন\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eকনফিগারেশন উদাহরণ দেখুন\u003c/b\u003e (প্রসারিত করতে ক্লিক করুন)\u003c/summary\u003e\n\nআপনার environment বা settings-এ PostgreSQL connection কনফিগার করুন:\nএজেন্টের config-এ connection string প্রদান করুন।\n\n```json\nconfig = {\n    \"author\": \"your.email@example.com\",\n    \"name\": \"research_agent\",\n    \"description\": \"একটি রিসার্চ অ্যাসিস্ট্যান্ট এজেন্ট\",\n    \"deployment\": {\"url\": \"http://localhost:3773\", \"expose\": True},\n    \"skills\": [\"skills/question-answering\", \"skills/pdf-processing\"],\n    \"storage\": {\n        \"type\": \"postgres\",\n        \"database_url\": \"postgresql+asyncpg://bindu:bindu@localhost:5432/bindu\",  # pragma: allowlist secret\n        \"run_migrations_on_startup\": False,\n    },\n}\n```\n\n\u003c/details\u003e\n\n**💡 Task-First Pattern**: Storage Bindu-র task-first approach সাপোর্ট করে যেখানে non-terminal task-এ message যোগ করে task চালিয়ে যাওয়া যায়, যা incremental refinements এবং multi-turn conversations সক্ষম করে।\n\n---\n\n\u003cbr/\u003e\n\n## [Redis Scheduler](https://docs.getbindu.com/bindu/learn/scheduler/overview)\n\nBindu একাধিক worker এবং process জুড়ে কাজ সমন্বয় করার জন্য Redis-কে তার distributed task scheduler হিসেবে ব্যবহার করে। Scheduler দক্ষ task distribution-এর জন্য blocking operations সহ Redis lists ব্যবহার করে।\n\nএটি ঐচ্ছিক - ডিফল্টভাবে InMemoryScheduler ব্যবহার করা হয়।\n\n### ⚙️ কনফিগারেশন\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eকনফিগারেশন উদাহরণ দেখুন\u003c/b\u003e (প্রসারিত করতে ক্লিক করুন)\u003c/summary\u003e\n\nআপনার এজেন্ট config-এ Redis connection কনফিগার করুন:\n\n```json\nconfig = {\n    \"author\": \"your.email@example.com\",\n    \"name\": \"research_agent\",\n    \"description\": \"একটি রিসার্চ অ্যাসিস্ট্যান্ট এজেন্ট\",\n    \"deployment\": {\"url\": \"http://localhost:3773\", \"expose\": True},\n    \"skills\": [\"skills/question-answering\", \"skills/pdf-processing\"],\n     \"scheduler\": {\n        \"type\": \"redis\",\n        \"redis_url\": \"redis://localhost:6379/0\",\n    },\n}\n```\n\n\u003c/details\u003e\n\nসব operation Redis-এ queue করা হয় এবং উপলব্ধ worker দ্বারা blocking pop mechanism ব্যবহার করে প্রসেস করা হয়, যা polling overhead ছাড়াই দক্ষ distribution নিশ্চিত করে।\n\n---\n\n\u003cbr/\u003e\n\n## [Retry Mechanism](https://docs.getbindu.com/bindu/learn/retry/overview)\n\n\u003e স্থিতিস্থাপক Bindu এজেন্টদের জন্য exponential backoff সহ স্বয়ংক্রিয় retry logic\n\nBindu-তে একটি built-in Tenacity-based retry mechanism আছে যা worker, storage, scheduler এবং API call জুড়ে transient failure সুন্দরভাবে হ্যান্ডেল করে। এটি নিশ্চিত করে যে আপনার এজেন্ট প্রোডাকশন environment-এ স্থিতিস্থাপক থাকে।\n\n### ⚙️ ডিফল্ট সেটিংস\n\nযদি কনফিগার না করা হয়, Bindu এই defaults ব্যবহার করে:\n\n| Operation Type | Max Attempts | Min Wait | Max Wait |\n| -------------- | ------------ | -------- | -------- |\n| Worker         | 3            | 1.0s     | 10.0s    |\n| Storage        | 5            | 0.5s     | 5.0s     |\n| Scheduler      | 3            | 1.0s     | 8.0s     |\n| API            | 4            | 1.0s     | 15.0s    |\n\n---\n\n\u003cbr/\u003e\n\n## [Sentry Integration](https://docs.getbindu.com/bindu/learn/sentry/overview)\n\n\u003e Bindu এজেন্টদের জন্য রিয়েল-টাইম error tracking এবং performance monitoring\n\nSentry একটি রিয়েল-টাইম error tracking এবং performance monitoring platform যা আপনাকে প্রোডাকশনে সমস্যা চিহ্নিত, নির্ণয় এবং সমাধান করতে সাহায্য করে। Bindu-তে আপনার AI এজেন্টদের জন্য comprehensive observability প্রদান করতে built-in Sentry integration আছে।\n\n### ⚙️ কনফিগারেশন\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eকনফিগারেশন উদাহরণ দেখুন\u003c/b\u003e (প্রসারিত করতে ক্লিক করুন)\u003c/summary\u003e\n\nআপনার `bindufy()` config-এ সরাসরি Sentry কনফিগার করুন:\n\n```python\nconfig = {\n    \"author\": \"gaurikasethi88@gmail.com\",\n    \"name\": \"echo_agent\",\n    \"description\": \"দ্রুত টেস্টিংয়ের জন্য একটি বেসিক echo এজেন্ট।\",\n    \"deployment\": {\"url\": \"http://localhost:3773\", \"expose\": True},\n    \"skills\": [],\n    \"storage\": {\n        \"type\": \"postgres\",\n        \"database_url\": \"postgresql+asyncpg://bindu:bindu@localhost:5432/bindu\",  # pragma: allowlist secret\n        \"run_migrations_on_startup\": False,\n    },\n    # Scheduler কনফিগারেশন (ঐচ্ছিক)\n    # Single-process-এর জন্য \"memory\" (default) বা distributed multi-process-এর জন্য \"redis\" ব্যবহার করুন\n    \"scheduler\": {\n        \"type\": \"redis\",\n        \"redis_url\": \"redis://localhost:6379/0\",\n    },\n    # Sentry error tracking (ঐচ্ছিক)\n    # Environment variable-এর পরিবর্তে code-এ সরাসরি Sentry কনফিগার করুন\n    \"sentry\": {\n        \"enabled\": True,\n        \"dsn\": \"https://252c0197ddeafb621f91abdbb59fa819@o4510504294612992.ingest.de.sentry.io/4510504299069520\",\n        \"environment\": \"development\",\n        \"traces_sample_rate\": 1.0,\n        \"profiles_sample_rate\": 0.1,\n    },\n}\n\ndef handler(messages):\n    # আপনার এজেন্ট logic\n    pass\n\nbindufy(config, handler)\n```\n\n\u003c/details\u003e\n\n### 🚀 শুরু করা\n\n1. **Sentry Account তৈরি করুন**: [sentry.io](https://sentry.io)-তে সাইন আপ করুন\n2. **আপনার DSN পান**: Project settings থেকে কপি করুন\n3. **Bindu কনফিগার করুন**: `sentry` config যোগ করুন (উপরে দেখুন)\n4. **আপনার এজেন্ট রান করুন**: Sentry স্বয়ংক্রিয়ভাবে initialize হয়\n\n\u003e 📚 সম্পূর্ণ বিবরণের জন্য [সম্পূর্ণ Sentry ডকুমেন্টেশন](https://docs.getbindu.com/bindu/learn/sentry/overview) দেখুন।\n\n---\n\n\u003cbr/\u003e\n\n## [Skills System](https://docs.getbindu.com/bindu/skills/introduction/overview)\n\n\u003e বুদ্ধিমান এজেন্ট orchestration-এর জন্য সমৃদ্ধ capability advertisement\n\nBindu Skills System বুদ্ধিমান orchestration এবং এজেন্ট discovery-র জন্য সমৃদ্ধ এজেন্ট capability advertisement প্রদান করে। Claude-এর skills architecture দ্বারা অনুপ্রাণিত, এটি এজেন্টদের তাদের ক্ষমতা সম্পর্কে বিস্তারিত ডকুমেন্টেশন প্রদান করতে সক্ষম করে যাতে orchestrator-রা সচেতন routing সিদ্ধান্ত নিতে পারে।\n\n### 💡 Skills কী?\n\nBindu-তে Skills **সমৃদ্ধ advertisement metadata** হিসেবে কাজ করে যা orchestrator-দের সাহায্য করে:\n\n* 🔍 **আবিষ্কার করতে** একটি task-এর জন্য সঠিক এজেন্ট\n* 📖 **বুঝতে** বিস্তারিত ক্ষমতা এবং সীমাবদ্ধতা\n* ✅ **যাচাই করতে** execution-এর আগে requirements\n* 📊 **অনুমান করতে** performance এবং resource needs\n* 🔗 **Chain করতে** একাধিক এজেন্ট বুদ্ধিমানভাবে\n\n\u003e **নোট**: Skills executable code নয়—এগুলো structured metadata যা বর্ণনা করে আপনার এজেন্ট কী করতে পারে।\n\n### 🔌 API Endpoints\n\n**সব Skills তালিকা করুন**:\n```bash\nGET /agent/skills\n```\n\n**Skill বিবরণ পান**:\n```bash\nGET /agent/skills/{skill_id}\n```\n\n**Skill ডকুমেন্টেশন পান**:\n```bash\nGET /agent/skills/{skill_id}/documentation\n```\n\n\u003e 📚 সম্পূর্ণ উদাহরণের জন্য [Skills ডকুমেন্টেশন](https://github.com/getbindu/Bindu/tree/main/examples/skills) দেখুন।\n\n---\n\n\u003cbr/\u003e\n\n## Negotiation\n\n\u003e বুদ্ধিমান orchestration-এর জন্য capability-based এজেন্ট selection\n\nBindu-র negotiation system orchestrator-দের একাধিক এজেন্ট query করতে এবং skills, performance, load এবং cost-এর ভিত্তিতে বুদ্ধিমানভাবে একটি task-এর জন্য সেরা এজেন্ট নির্বাচন করতে সক্ষম করে।\n\n### 🔄 এটি কীভাবে কাজ করে\n\n1. **Orchestrator broadcasts** একাধিক এজেন্টে assessment request\n2. **এজেন্ট self-assess** skill matching এবং load analysis ব্যবহার করে capability\n3. **Orchestrator ranks** multi-factor scoring ব্যবহার করে responses\n4. **সেরা এজেন্ট নির্বাচিত** এবং task execute করা হয়\n\n### 🔌 Assessment Endpoint\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eAPI বিবরণ দেখুন\u003c/b\u003e (প্রসারিত করতে ক্লিক করুন)\u003c/summary\u003e\n\n```bash\nPOST /agent/negotiation\n```\n\n**Request:**\n```json\n{\n  \"task_summary\": \"PDF invoice থেকে table extract করুন\",\n  \"task_details\": \"Invoice PDF প্রসেস করুন এবং structured data extract করুন\",\n  \"input_mime_types\": [\"application/pdf\"],\n  \"output_mime_types\": [\"application/json\"],\n  \"max_latency_ms\": 5000,\n  \"max_cost_amount\": \"0.001\",\n  \"min_score\": 0.7,\n  \"weights\": {\n    \"skill_match\": 0.6,\n    \"io_compatibility\": 0.2,\n    \"performance\": 0.1,\n    \"load\": 0.05,\n    \"cost\": 0.05\n  }\n}\n```\n\n**Response:**\n```json\n{\n  \"accepted\": true,\n  \"score\": 0.89,\n  \"confidence\": 0.95,\n  \"skill_matches\": [\n    {\n      \"skill_id\": \"pdf-processing-v1\",\n      \"skill_name\": \"pdf-processing\",\n      \"score\": 0.92,\n      \"reasons\": [\n        \"semantic similarity: 0.95\",\n        \"tags: pdf, tables, extraction\",\n        \"capabilities: text_extraction, table_extraction\"\n      ]\n    }\n  ],\n  \"matched_tags\": [\"pdf\", \"tables\", \"extraction\"],\n  \"matched_capabilities\": [\"text_extraction\", \"table_extraction\"],\n  \"latency_estimate_ms\": 2000,\n  \"queue_depth\": 2,\n  \"subscores\": {\n    \"skill_match\": 0.92,\n    \"io_compatibility\": 1.0,\n    \"performance\": 0.85,\n    \"load\": 0.90,\n    \"cost\": 1.0\n  }\n}\n```\n\n\u003c/details\u003e\n\n### 📊 Scoring Algorithm\n\nএজেন্ট একাধিক factor-এর ভিত্তিতে একটি confidence score গণনা করে:\n\n```python\nscore = (\n    skill_match * 0.6 +        # Primary: skill matching\n    io_compatibility * 0.2 +   # Input/output format support\n    performance * 0.1 +        # Speed এবং reliability\n    load * 0.05 +              # বর্তমান availability\n    cost * 0.05                # Pricing\n)\n```\n\n\u003e 📚 সম্পূর্ণ বিবরণের জন্য [Negotiation ডকুমেন্টেশন](https://docs.getbindu.com/bindu/negotiation/overview) দেখুন।\n\n---\n\n\u003cbr/\u003e\n\n## Task Feedback এবং DSPy\n\nBindu DSPy optimization-এর মাধ্যমে ক্রমাগত উন্নতি সক্ষম করতে task execution-এ user feedback সংগ্রহ করে। Rating এবং metadata সহ feedback স্টোর করে, আপনি বাস্তব interaction থেকে golden dataset তৈরি করতে পারেন এবং আপনার এজেন্টের prompt এবং behavior স্বয়ংক্রিয়ভাবে optimize করতে DSPy ব্যবহার করতে পারেন।\n\n### Feedback জমা দেওয়া\n\n`tasks/feedback` method ব্যবহার করে যেকোনো task-এ feedback প্রদান করুন:\n\n```bash\ncurl --location 'http://localhost:3773/' \\\n--header 'Content-Type: application/json' \\\n--header 'Authorization: Bearer \u003cyour-token\u003e' \\\n--data '{\n    \"jsonrpc\": \"2.0\",\n    \"method\": \"tasks/feedback\",\n    \"params\": {\n        \"taskId\": \"550e8400-e29b-41d4-a716-446655440200\",\n        \"feedback\": \"দুর্দান্ত কাজ! রেসপন্স খুবই সহায়ক এবং সঠিক ছিল।\",\n        \"rating\": 5,\n        \"metadata\": {\n            \"category\": \"quality\",\n            \"source\": \"user\",\n            \"helpful\": true\n        }\n    },\n    \"id\": \"550e8400-e29b-41d4-a716-446655440024\"\n}'\n```\n\nFeedback `task_feedback` table-এ স্টোর করা হয় এবং ব্যবহার করা যেতে পারে:\n- Training data-র জন্য উচ্চ-মানের task interaction ফিল্টার করতে\n- সফল বনাম ব্যর্থ completion-এ pattern চিহ্নিত করতে\n- DSPy দিয়ে এজেন্ট instruction এবং few-shot example optimize করতে\n- আমরা DsPY-তে কাজ করছি - শীঘ্রই রিলিজ করব।\n\n---\n\n\u003cbr/\u003e\n\n## 📬 Push Notifications\n\nBindu দীর্ঘ-চলমান task-এর জন্য **রিয়েল-টাইম webhook notification** সাপোর্ট করে, [A2A Protocol specification](https://a2a-protocol.org/latest/specification/) অনুসরণ করে। এটি client-দের polling ছাড়াই task state change এবং artifact generation সম্পর্কে push notification পেতে সক্ষম করে।\n\n### দ্রুত শুরু\n\n1. **Webhook receiver স্টার্ট করুন:** `python examples/webhook_client_example.py`\n2. **এজেন্ট কনফিগার করুন** `examples/echo_agent_with_webhooks.py`-তে:\n   ```python\n   manifest = {\n       \"capabilities\": {\"push_notifications\": True},\n       \"global_webhook_url\": \"http://localhost:8000/webhooks/task-updates\",\n       \"global_webhook_token\": \"secret_abc123\",\n   }\n   ```\n3. **এজেন্ট রান করুন:** `python examples/echo_agent_with_webhooks.py`\n4. **Task পাঠান** - webhook notification স্বয়ংক্রিয়ভাবে আসে\n\n📖 **[সম্পূর্ণ ডকুমেন্টেশন](docs/long-running-task-notifications.md)** - Architecture, security, example এবং troubleshooting সহ বিস্তারিত গাইড।\n\n---\n\n\u003cbr/\u003e\n\n## 🎨 Chat UI\n\nBindu `http://localhost:3773/docs`-এ একটি সুন্দর chat interface অন্তর্ভুক্ত করে\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"assets/agent-ui.png\" alt=\"Bindu Agent UI\" width=\"640\" style=\"border-radius: 10px; box-shadow: 0 4px 8px rgba(0,0,0,0.1);\" /\u003e\n\u003c/p\u003e\n\n---\n\n\u003cbr/\u003e\n\n## 🌐 Bindu Directory\n\n[**Bindu Directory**](https://bindus.directory) হলো সব Bindu এজেন্টের একটি পাবলিক রেজিস্ট্রি, যা তাদের বৃহত্তর এজেন্ট ইকোসিস্টেমে আবিষ্কারযোগ্য এবং অ্যাক্সেসযোগ্য করে তোলে।\n\n### ✨ Cookiecutter দিয়ে স্বয়ংক্রিয় রেজিস্ট্রেশন\n\nযখন আপনি cookiecutter টেমপ্লেট ব্যবহার করে একটি এজেন্ট তৈরি করেন, এতে একটি প্রি-কনফিগার্ড GitHub Action থাকে যা স্বয়ংক্রিয়ভাবে আপনার এজেন্ট ডিরেক্টরিতে রেজিস্টার করে:\n\n1. **আপনার এজেন্ট তৈরি করুন** cookiecutter ব্যবহার করে\n2. **GitHub-এ Push করুন** - GitHub Action স্বয়ংক্রিয়ভাবে ট্রিগার হয়\n3. **আপনার এজেন্ট দেখা যায়** [Bindu Directory](https://bindus.directory)-তে\n\n\u003e **🔑 নোট**: আপনাকে bindus.directory থেকে BINDU_PAT_TOKEN সংগ্রহ করতে হবে এবং আপনার এজেন্ট রেজিস্টার করতে এটি ব্যবহার করতে হবে।\n\n### 📝 ম্যানুয়াল রেজিস্ট্রেশন\n\nআমরা একটি ম্যানুয়াল রেজিস্ট্রেশন প্রক্রিয়ায় কাজ করছি।\n\n---\n\n\u003cbr/\u003e\n\n## 🌌 ভিশন\n\n```\nরাতের আকাশে এক ঝলক\n}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}\n{{            +             +                  +   @          {{\n}}   |                *           o     +                .    }}\n{{  -O-    o               .               .          +       {{\n}}   |                    _,.-----.,_         o    |          }}\n{{           +    *    .-'.         .'-.          -O-         {{\n}}      *            .'.-'   .---.   `'.'.         |     *    }}\n{{ .                /_.-'   /     \\   .'-.\\.                   {{\n}}         ' -=*\u003c  |-._.-  |   @   |   '-._|  \u003e*=-    .     + }}\n{{ -- )--           \\`-.    \\     /    .-'/                   }}\n}}       *     +     `.'.    '---'    .'.'    +       o       }}\n{{                  .  '-._         _.-'  .                   }}\n}}         |               `~~~~~~~`       - --===D       @   }}\n{{   o    -O-      *   .                  *        +          {{\n}}         |                      +         .            +    }}\n{{ jgs          .     @      o                        *       {{\n}}       o                          *          o           .  }}\n{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{\n```\n\n_প্রতিটি চিহ্ন একটি এজেন্ট – বুদ্ধিমত্তার একটি স্ফুলিঙ্গ। ক্ষুদ্র বিন্দুটি হলো Bindu, Internet of Agents-এর উৎপত্তি বিন্দু।_\n\n### NightSky সংযোগ [চলমান]\n\nNightSky এজেন্টদের ঝাঁক সক্ষম করে। প্রতিটি Bindu একটি বিন্দু যা A2A, AP2, এবং X402-এর ভাগ করা ভাষা দিয়ে এজেন্টদের টীকা করে। এজেন্ট যেকোনো জায়গায় হোস্ট করা যেতে পারে – ল্যাপটপ, ক্লাউড বা ক্লাস্টারে – তবুও একই প্রোটোকল বলে, ডিজাইন অনুযায়ী একে অপরকে বিশ্বাস করে এবং একক, ডিস্ট্রিবিউটেড মন হিসেবে একসাথে কাজ করে।\n\n\u003e **💭 পরিকল্পনা ছাড়া লক্ষ্য শুধুই একটি ইচ্ছা।**\n\n---\n\n\u003cbr/\u003e\n\n## 🛠️ সমর্থিত এজেন্ট ফ্রেমওয়ার্ক\n\nBindu **ফ্রেমওয়ার্ক-অজ্ঞেয়বাদী** এবং টেস্ট করা হয়েছে:\n\n- **Agno**\n- **CrewAI**\n- **LangChain**\n- **LlamaIndex**\n- **FastAgent**\n\nআপনার প্রিয় ফ্রেমওয়ার্কের সাথে ইন্টিগ্রেশন চান? [Discord-এ আমাদের জানান](https://discord.gg/3w5zuYUuwt)!\n\n---\n\n\u003cbr/\u003e\n\n## 🧪 টেস্টিং\n\nBindu **70%+ টেস্ট কভারেজ** বজায় রাখে:\n\n```bash\npytest -n auto --cov=bindu --cov-report= \u0026\u0026 coverage report --skip-covered --fail-under=70\n```\n\n---\n\n\u003cbr/\u003e\n\n## সমস্যা সমাধান\n\n\u003cdetails\u003e\n\u003csummary\u003eসাধারণ সমস্যা\u003c/summary\u003e\n\n\u003cbr/\u003e\n\n| সমস্যা | সমাধান |\n|---------|----------|\n| `Python 3.12 not found` | Python 3.12+ ইনস্টল করুন এবং PATH-এ সেট করুন, অথবা `pyenv` ব্যবহার করুন |\n| `bindu: command not found` | ভার্চুয়াল এনভায়রনমেন্ট অ্যাক্টিভেট করুন: `source .venv/bin/activate` |\n| `Port 3773 already in use` | কনফিগে পোর্ট পরিবর্তন করুন: `\"url\": \"http://localhost:4000\"` |\n| Pre-commit ব্যর্থ হয় | `pre-commit run --all-files` রান করুন |\n| টেস্ট ব্যর্থ হয় | Dev ডিপেন্ডেন্সি ইনস্টল করুন: `uv sync --dev` |\n| `Permission denied` (macOS) | এক্সটেন্ডেড অ্যাট্রিবিউট মুছতে `xattr -cr .` রান করুন |\n\n**এনভায়রনমেন্ট রিসেট করুন:**\n```bash\nrm -rf .venv\nuv venv --python 3.12.9\nuv sync --dev\n```\n\n**Windows PowerShell:**\n```bash\nSet-ExecutionPolicy RemoteSigned -Scope CurrentUser\n```\n\n\u003c/details\u003e\n\n\u003cbr/\u003e\n\n## 🤝 অবদান রাখুন\n\nআমরা অবদানকে স্বাগত জানাই! [Discord](https://discord.gg/3w5zuYUuwt)-এ আমাদের সাথে যোগ দিন। আপনার অবদানের সাথে সবচেয়ে ভালো মেলে এমন চ্যানেল বেছে নিন।\n\n```bash\ngit clone https://github.com/getbindu/Bindu.git\ncd Bindu\nuv venv --python 3.12.9\nsource .venv/bin/activate\nuv sync --dev\npre-commit run --all-files\n```\n\n\u003e 📖 [অবদান গাইডলাইন](.github/contributing.md)\n\n---\n\n\u003cbr/\u003e\n\n## 📜 লাইসেন্স\n\nBindu [Apache License 2.0](https://choosealicense.com/licenses/apache-2.0/)-এর অধীনে ওপেন-সোর্স।\n\n---\n\n\u003cbr/\u003e\n\n## 💬 কমিউনিটি\n\nআমরা 💛 অবদান! আপনি বাগ ঠিক করুন, ডকুমেন্টেশন উন্নত করুন বা ডেমো তৈরি করুন – আপনার অবদান Bindu-কে আরও ভালো করে তোলে।\n\n- 💬 আলোচনা এবং সাপোর্টের জন্য [Discord-এ যোগ দিন](https://discord.gg/3w5zuYUuwt)\n- ⭐ যদি এটি উপযোগী মনে হয় তাহলে [রিপোজিটরিতে স্টার দিন](https://github.com/getbindu/Bindu)!\n\n---\n\n\u003cbr/\u003e\n\n## 👥 সক্রিয় মডারেটর\n\nআমাদের নিবেদিত মডারেটররা একটি স্বাগতমূলক এবং উৎপাদনশীল কমিউনিটি বজায় রাখতে সাহায্য করে:\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ca href=\"https://github.com/raahulrahl\"\u003e\n        \u003cimg src=\"https://avatars.githubusercontent.com/u/157174139?v=4\" width=\"100px;\" alt=\"Raahul Dutta\"/\u003e\n        \u003cbr /\u003e\n        \u003csub\u003e\u003cb\u003eRaahul Dutta\u003c/b\u003e\u003c/sub\u003e\n      \u003c/a\u003e\n      \u003cbr /\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ca href=\"https://github.com/Paraschamoli\"\u003e\n        \u003cimg src=\"https://avatars.githubusercontent.com/u/157124537?v=4\" width=\"100px;\" alt=\"Paras Chamoli\"/\u003e\n        \u003cbr /\u003e\n        \u003csub\u003e\u003cb\u003eParas Chamoli\u003c/b\u003e\u003c/sub\u003e\n      \u003c/a\u003e\n      \u003cbr /\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ca href=\"https://github.com/Gaurika-Sethi\"\u003e\n        \u003cimg src=\"https://avatars.githubusercontent.com/u/178935569?v=4\" width=\"100px;\" alt=\"Gaurika Sethi\"/\u003e\n        \u003cbr /\u003e\n        \u003csub\u003e\u003cb\u003eGaurika Sethi\u003c/b\u003e\u003c/sub\u003e\n      \u003c/a\u003e\n      \u003cbr /\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ca href=\"https://github.com/Avngrstark62\"\u003e\n        \u003cimg src=\"https://avatars.githubusercontent.com/u/133889196?v=4\" width=\"100px;\" alt=\"Abhijeet Singh Thakur\"/\u003e\n        \u003cbr /\u003e\n        \u003csub\u003e\u003cb\u003eAbhijeet Singh Thakur\u003c/b\u003e\u003c/sub\u003e\n      \u003c/a\u003e\n      \u003cbr /\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\u003e মডারেটর হতে চান? [Discord](https://discord.gg/3w5zuYUuwt)-এ যোগাযোগ করুন!\n\n---\n\n\u003cbr/\u003e\n\n## 🙏 কৃতজ্ঞতা\n\nএই প্রজেক্টগুলির প্রতি কৃতজ্ঞ:\n\n- [FastA2A](https://github.com/pydantic/fasta2a)\n- [12 Factor Agents](https://github.com/humanlayer/12-factor-agents/blob/main/content/factor-11-trigger-from-anywhere.md)\n- [A2A](https://github.com/a2aproject/A2A)\n- [AP2](https://github.com/google-agentic-commerce/AP2)\n- [X402](https://github.com/coinbase/x402)\n- [Bindu Logo](https://openmoji.org/library/emoji-1F33B/)\n- [ASCII Space Art](https://www.asciiart.eu/space/other)\n\n---\n\n\u003cbr/\u003e\n\n## 🗺️ রোডম্যাপ\n\n- [ ] GRPC ট্রান্সপোর্ট সাপোর্ট\n- [x] Sentry এরর ট্র্যাকিং\n- [x] Ag-UI ইন্টিগ্রেশন\n- [x] Retry মেকানিজম\n- [ ] টেস্ট কভারেজ 80%-এ বৃদ্ধি করা - চলমান\n- [x] Redis scheduler ইমপ্লিমেন্টেশন\n- [x] মেমরি স্টোরেজের জন্য Postgres ডাটাবেস\n- [x] Negotiation সাপোর্ট\n- [ ] AP2 end-to-end সাপোর্ট\n- [ ] DSPy ইন্টিগ্রেশন - চলমান\n- [ ] MLTS সাপোর্ট\n- [ ] অন্যান্য facilitator-দের সাথে X402 সাপোর্ট\n\n\u003e 💡 [Discord-এ ফিচার সাজেস্ট করুন](https://discord.gg/3w5zuYUuwt)!\n\n---\n\n\u003cbr/\u003e\n\n## 🎓 ওয়ার্কশপ\n\n- [AI Native in Action: Agent Symphony](https://www.meetup.com/ai-native-amsterdam/events/311066899/) - [স্লাইড](https://docs.google.com/presentation/d/1SqGXI0Gv_KCWZ1Mw2SOx_kI0u-LLxwZq7lMSONdl8oQ/edit)\n\n---\n\n\u003cbr/\u003e\n\n## ⭐ স্টার হিস্ট্রি\n\n[![Star History Chart](https://api.star-history.com/svg?repos=getbindu/Bindu\u0026type=Date)](https://www.star-history.com/#getbindu/Bindu\u0026Date)\n\n---\n\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003eAmsterdam থেকে টিম দ্বারা 💛 দিয়ে তৈরি\u003c/strong\u003e\u003cbr/\u003e\n  \u003cem\u003eHappy Bindu! 🌻🚀✨\u003c/em\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003eআইডিয়া থেকে Internet of Agents পর্যন্ত ২ মিনিটে।\u003c/strong\u003e\u003cbr/\u003e\n  \u003cem\u003eআপনার এজেন্ট। আপনার ফ্রেমওয়ার্ক। সার্বজনীন প্রোটোকল।\u003c/em\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/getbindu/Bindu\"\u003e⭐ GitHub-এ আমাদের স্টার দিন\u003c/a\u003e •\n  \u003ca href=\"https://discord.gg/3w5zuYUuwt\"\u003e💬 Discord-এ যোগ দিন\u003c/a\u003e •\n  \u003ca href=\"https://docs.getbindu.com\"\u003e🌻 ডক্স পড়ুন\u003c/a\u003e\n\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgetbindu%2Fbindu","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgetbindu%2Fbindu","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgetbindu%2Fbindu/lists"}