bindu 0.3.14__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. bindu-0.3.14/.gitignore +194 -0
  2. bindu-0.3.14/PKG-INFO +351 -0
  3. bindu-0.3.14/README.md +301 -0
  4. bindu-0.3.14/bindu/__init__.py +6 -0
  5. bindu-0.3.14/bindu/common/__init__.py +19 -0
  6. bindu-0.3.14/bindu/common/models.py +168 -0
  7. bindu-0.3.14/bindu/common/protocol/__init__.py +30 -0
  8. bindu-0.3.14/bindu/common/protocol/types.py +1843 -0
  9. bindu-0.3.14/bindu/common/types.py +27 -0
  10. bindu-0.3.14/bindu/extensions/__init__.py +47 -0
  11. bindu-0.3.14/bindu/extensions/did/__init__.py +52 -0
  12. bindu-0.3.14/bindu/extensions/did/did_agent_extension.py +432 -0
  13. bindu-0.3.14/bindu/extensions/did/validation.py +170 -0
  14. bindu-0.3.14/bindu/extensions/x402/__init__.py +50 -0
  15. bindu-0.3.14/bindu/observability/__init__.py +82 -0
  16. bindu-0.3.14/bindu/observability/openinference.py +412 -0
  17. bindu-0.3.14/bindu/penguin/__init__.py +29 -0
  18. bindu-0.3.14/bindu/penguin/bindufy.py +438 -0
  19. bindu-0.3.14/bindu/penguin/config_validator.py +306 -0
  20. bindu-0.3.14/bindu/penguin/manifest.py +383 -0
  21. bindu-0.3.14/bindu/server/__init__.py +29 -0
  22. bindu-0.3.14/bindu/server/applications.py +331 -0
  23. bindu-0.3.14/bindu/server/endpoints/__init__.py +48 -0
  24. bindu-0.3.14/bindu/server/endpoints/a2a_protocol.py +80 -0
  25. bindu-0.3.14/bindu/server/endpoints/agent_card.py +73 -0
  26. bindu-0.3.14/bindu/server/endpoints/did_endpoints.py +86 -0
  27. bindu-0.3.14/bindu/server/endpoints/static_files.py +121 -0
  28. bindu-0.3.14/bindu/server/middleware/__init__.py +54 -0
  29. bindu-0.3.14/bindu/server/middleware/auth0.py +66 -0
  30. bindu-0.3.14/bindu/server/middleware/base.py +244 -0
  31. bindu-0.3.14/bindu/server/middleware/cognito.py +153 -0
  32. bindu-0.3.14/bindu/server/scheduler/__init__.py +59 -0
  33. bindu-0.3.14/bindu/server/scheduler/base.py +83 -0
  34. bindu-0.3.14/bindu/server/scheduler/memory_scheduler.py +83 -0
  35. bindu-0.3.14/bindu/server/scheduler/redis_scheduler.py +176 -0
  36. bindu-0.3.14/bindu/server/static/agent.html +72 -0
  37. bindu-0.3.14/bindu/server/static/chat.html +81 -0
  38. bindu-0.3.14/bindu/server/static/css/custom.css +89 -0
  39. bindu-0.3.14/bindu/server/static/js/agent.js +342 -0
  40. bindu-0.3.14/bindu/server/static/js/api.js +426 -0
  41. bindu-0.3.14/bindu/server/static/js/chat.js +451 -0
  42. bindu-0.3.14/bindu/server/static/js/common.js +1446 -0
  43. bindu-0.3.14/bindu/server/static/js/head-loader.js +51 -0
  44. bindu-0.3.14/bindu/server/static/js/storage.js +421 -0
  45. bindu-0.3.14/bindu/server/static/storage.html +85 -0
  46. bindu-0.3.14/bindu/server/storage/__init__.py +49 -0
  47. bindu-0.3.14/bindu/server/storage/base.py +209 -0
  48. bindu-0.3.14/bindu/server/storage/memory_storage.py +469 -0
  49. bindu-0.3.14/bindu/server/task_manager.py +724 -0
  50. bindu-0.3.14/bindu/server/workers/__init__.py +26 -0
  51. bindu-0.3.14/bindu/server/workers/base.py +236 -0
  52. bindu-0.3.14/bindu/server/workers/manifest_worker.py +720 -0
  53. bindu-0.3.14/bindu/settings.py +469 -0
  54. bindu-0.3.14/bindu/utils/__init__.py +15 -0
  55. bindu-0.3.14/bindu/utils/auth_utils.py +229 -0
  56. bindu-0.3.14/bindu/utils/display.py +120 -0
  57. bindu-0.3.14/bindu/utils/logging.py +137 -0
  58. bindu-0.3.14/bindu/utils/notifications.py +152 -0
  59. bindu-0.3.14/bindu/utils/request_utils.py +65 -0
  60. bindu-0.3.14/bindu/utils/security.py +32 -0
  61. bindu-0.3.14/bindu/utils/task_telemetry.py +292 -0
  62. bindu-0.3.14/bindu/utils/worker_utils.py +237 -0
  63. bindu-0.3.14/pyproject.toml +111 -0
  64. bindu-0.3.14/tests/README.md +218 -0
@@ -0,0 +1,194 @@
1
+ # Byte-compiled / optimized / DLL files
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+
6
+ # C extensions
7
+ *.so
8
+
9
+ # Distribution / packaging
10
+ .Python
11
+ build/
12
+ develop-eggs/
13
+ dist/
14
+ downloads/
15
+ eggs/
16
+ .eggs/
17
+ lib/
18
+ lib64/
19
+ parts/
20
+ sdist/
21
+ var/
22
+ wheels/
23
+ share/python-wheels/
24
+ *.egg-info/
25
+ .installed.cfg
26
+ *.egg
27
+ MANIFEST
28
+
29
+ # PyInstaller
30
+ # Usually these files are written by a python script from a template
31
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
32
+ *.manifest
33
+ *.spec
34
+
35
+ # Installer logs
36
+ pip-log.txt
37
+ pip-delete-this-directory.txt
38
+
39
+ # Unit test / coverage reports
40
+ htmlcov/
41
+ .tox/
42
+ .nox/
43
+ .coverage
44
+ .coverage.*
45
+ .cache
46
+ nosetests.xml
47
+ coverage.xml
48
+ *.cover
49
+ *.py,cover
50
+ .hypothesis/
51
+ .pytest_cache/
52
+ cover/
53
+
54
+ # Translations
55
+ *.mo
56
+ *.pot
57
+
58
+ # Django stuff:
59
+ *.log
60
+ local_settings.py
61
+ db.sqlite3
62
+ db.sqlite3-journal
63
+
64
+ # Flask stuff:
65
+ instance/
66
+ .webassets-cache
67
+
68
+ # Scrapy stuff:
69
+ .scrapy
70
+
71
+ # Sphinx documentation
72
+ docs/_build/
73
+
74
+ # PyBuilder
75
+ .pybuilder/
76
+ target/
77
+
78
+ # Jupyter Notebook
79
+ .ipynb_checkpoints
80
+
81
+ # IPython
82
+ profile_default/
83
+ ipython_config.py
84
+
85
+ # pyenv
86
+ # For a library or package, you might want to ignore these files since the code is
87
+ # intended to run in multiple environments; otherwise, check them in:
88
+ # .python-version
89
+
90
+ # pipenv
91
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
92
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
93
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
94
+ # install all needed dependencies.
95
+ #Pipfile.lock
96
+
97
+ # UV
98
+ # Similar to Pipfile.lock, it is generally recommended to include uv.lock in version control.
99
+ # This is especially recommended for binary packages to ensure reproducibility, and is more
100
+ # commonly ignored for libraries.
101
+ #uv.lock
102
+
103
+ # poetry
104
+ # Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
105
+ # This is especially recommended for binary packages to ensure reproducibility, and is more
106
+ # commonly ignored for libraries.
107
+ # https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
108
+ #poetry.lock
109
+
110
+ # pdm
111
+ # Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
112
+ #pdm.lock
113
+ # pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
114
+ # in version control.
115
+ # https://pdm.fming.dev/latest/usage/project/#working-with-version-control
116
+ .pdm.toml
117
+ .pdm-python
118
+ .pdm-build/
119
+
120
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
121
+ __pypackages__/
122
+
123
+ # Celery stuff
124
+ celerybeat-schedule
125
+ celerybeat.pid
126
+
127
+ # SageMath parsed files
128
+ *.sage.py
129
+
130
+ # Environments
131
+ .env
132
+ .venv
133
+ env/
134
+ venv/
135
+ ENV/
136
+ env.bak/
137
+ venv.bak/
138
+
139
+ # Spyder project settings
140
+ .spyderproject
141
+ .spyproject
142
+
143
+ # Rope project settings
144
+ .ropeproject
145
+
146
+ # mkdocs documentation
147
+ /site
148
+
149
+ # mypy
150
+ .mypy_cache/
151
+ .dmypy.json
152
+ dmypy.json
153
+
154
+ # Pyre type checker
155
+ .pyre/
156
+
157
+ # pytype static type analyzer
158
+ .pytype/
159
+
160
+ # Cython debug symbols
161
+ cython_debug/
162
+
163
+ # PyCharm
164
+ # JetBrains specific template is maintained in a separate JetBrains.gitignore that can
165
+ # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
166
+ # and can be added to the global gitignore or merged into this file. For a more nuclear
167
+ # option (not recommended) you can uncomment the following to ignore the entire idea folder.
168
+ #.idea/
169
+
170
+ # Ruff stuff:
171
+ .ruff_cache/
172
+
173
+ # PyPI configuration file
174
+ .pypirc
175
+ .DS_Store
176
+
177
+ # bindu project files
178
+ bindu-project/*
179
+ bindu-project_private_key.json
180
+ bindu_project_certificates/*
181
+ bindu_project_private_key.json
182
+
183
+ # Examples directory - exclude all generated files
184
+ examples/.pebbling/*
185
+
186
+
187
+ examples/.pebbling/private.pem
188
+ examples/.pebbling/public.pem
189
+
190
+ # Security scanning baselines (tracked for audit)
191
+ # .secrets.baseline
192
+ # .bandit.baseline
193
+ examples/.pebbling/private.pem
194
+ examples/.pebbling/public.pem
bindu-0.3.14/PKG-INFO ADDED
@@ -0,0 +1,351 @@
1
+ Metadata-Version: 2.4
2
+ Name: bindu
3
+ Version: 0.3.14
4
+ Summary: A protocol framework for agent-to-agent communication
5
+ Author-email: Raahul Dutta <raahul@saptha.me>
6
+ License: MIT
7
+ Classifier: License :: OSI Approved :: MIT License
8
+ Classifier: Operating System :: OS Independent
9
+ Classifier: Programming Language :: Python :: 3
10
+ Requires-Python: <3.13,>=3.12
11
+ Requires-Dist: aiofiles>=24.1.0
12
+ Requires-Dist: base58>=2.1.1
13
+ Requires-Dist: cryptography>=44.0.2
14
+ Requires-Dist: didkit>=0.3.3
15
+ Requires-Dist: loguru>=0.7.3
16
+ Requires-Dist: opentelemetry-api>=1.35.0
17
+ Requires-Dist: opentelemetry-exporter-otlp-proto-http>=1.35.0
18
+ Requires-Dist: opentelemetry-exporter-otlp>=1.35.0
19
+ Requires-Dist: opentelemetry-instrumentation-fastapi>=0.56b0
20
+ Requires-Dist: opentelemetry-instrumentation-httpx>=0.56b0
21
+ Requires-Dist: opentelemetry-sdk>=1.35.0
22
+ Requires-Dist: orjson>=3.10.18
23
+ Requires-Dist: pipreqs>=0.5.0
24
+ Requires-Dist: psycopg2-binary>=2.9.10
25
+ Requires-Dist: pydantic>=1.8.2
26
+ Requires-Dist: pyjwt[crypto]>=2.8.0
27
+ Requires-Dist: pyperclip>=1.11.0
28
+ Requires-Dist: pyyaml>=6.0.2
29
+ Requires-Dist: redis>=6.4.0
30
+ Requires-Dist: requests>=2.31.0
31
+ Requires-Dist: rich>=13.0.0
32
+ Requires-Dist: sqlalchemy>=2.0.43
33
+ Requires-Dist: starlette>=0.48.0
34
+ Requires-Dist: twine>=6.1.0
35
+ Requires-Dist: ty>=0.0.1a14
36
+ Requires-Dist: types-requests>=2.32.0.20250328
37
+ Requires-Dist: uvicorn>=0.15.0
38
+ Requires-Dist: uvx<2.0
39
+ Requires-Dist: x402>=0.2.1
40
+ Provides-Extra: dev
41
+ Requires-Dist: pre-commit>=3.0.0; extra == 'dev'
42
+ Requires-Dist: pytest-asyncio>=0.26.0; extra == 'dev'
43
+ Requires-Dist: pytest-cov>=4.1.0; extra == 'dev'
44
+ Requires-Dist: pytest-timeout>=2.2.0; extra == 'dev'
45
+ Requires-Dist: pytest-xdist>=3.0.0; extra == 'dev'
46
+ Requires-Dist: pytest>=8.0.0; extra == 'dev'
47
+ Provides-Extra: examples
48
+ Requires-Dist: pyperclip>=1.8.2; extra == 'examples'
49
+ Description-Content-Type: text/markdown
50
+
51
+ <p align="center">
52
+ <img src="assets/bindu-logo.svg" alt="bindu Logo" width="200">
53
+ </p>
54
+
55
+ <h1 align="center"> bindu </h1>
56
+
57
+ [![GitHub License](https://img.shields.io/badge/license-MIT-blue.svg)](https://opensource.org/licenses/MIT)
58
+ [![Hits](https://hits.sh/github.com/bindu-ai/pebble.svg?style=flat-square&label=Hits%20%F0%9F%90%A7&extraCount=100&color=dfb317)](https://hits.sh/github.com/bindu-ai/pebble/)
59
+ [![Python Version](https://img.shields.io/badge/python-3.12+-blue.svg)](https://www.python.org/downloads/)
60
+ [![Tests](https://github.com/bindu-ai/pebble/actions/workflows/release.yml/badge.svg)](https://github.com/bindu-ai/pebble/actions/workflows/release.yml)
61
+ [![Coverage Status](https://coveralls.io/repos/github/bindu-ai/pebble/badge.svg?branch=v0.1.0.5)](https://coveralls.io/github/bindu-ai/pebble?branch=v0.1.0.5)
62
+ [![PyPI version](https://badge.fury.io/py/bindu.svg)](https://badge.fury.io/py/bindu)
63
+ [![PyPI Downloads](https://img.shields.io/pypi/dm/bindu)](https://pypi.org/project/bindu/)
64
+ [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](https://github.com/bindu-ai/pebble/pulls)
65
+ [![Join Discord](https://img.shields.io/badge/Join%20Discord-7289DA?logo=discord&logoColor=white)](https://discord.gg/Fr6rcRJa)
66
+ [![Documentation](https://img.shields.io/badge/Documentation-๐Ÿ“•-blue)](https://docs.bindu.ai)
67
+ [![GitHub stars](https://img.shields.io/github/stars/bindu-ai/pebble)](https://github.com/bindu-ai/pebble/stargazers)
68
+
69
+ โœจ Imagine a world where AI agents collaborate effortlessly and securelyโ€”no passport ๐Ÿšซ, no boundaries ๐ŸŒ.
70
+
71
+ Thatโ€™s bindu ๐ŸŒป.An open source, secured protocol for agent-to-agent communication.
72
+
73
+ ๐Ÿš€ Powered by Decentralised Identifiers (DIDs) ๐Ÿ”‘, secured conversations with mutual TLS (mTLS) ๐Ÿ”’, and a lightweight yet powerful communication protocol built on JSON-RPC 2.0 โšก๏ธโ€”bindu is paving the way for the next generation of collaborative AI systems. ๐ŸŒŸ๐Ÿค–
74
+
75
+
76
+ ## ๐ŸŒŸ Features
77
+
78
+ bindu helps your AI agents talk to each other seamlessly:
79
+
80
+ ๐Ÿ”’ **Super Secure** - Your agents exchange secrets safely (with built-in mTLS)
81
+
82
+ ๐Ÿงฉ **Plug-and-Play** - Just decorate your agent and it's ready to communicate
83
+
84
+ โšก **Lightning Fast** - Quick connections without the weight
85
+
86
+ ๐ŸŒ **Works Everywhere** - Connect any agents, regardless of their programming language
87
+
88
+ ๐Ÿ”„ **Reliable Communication** - Messages always arrive correctly and in order
89
+
90
+
91
+ ## ๐Ÿ“ฆ Installation
92
+
93
+ ```bash
94
+ # Using pip
95
+ pip install bindu
96
+
97
+ # Using uv (recommended)
98
+ uv add bindu
99
+ ```
100
+
101
+ ## ๐Ÿš€ Quick Start
102
+
103
+ ### ๐Ÿช Quick Start with Cookiecutter Template
104
+
105
+ The fastest way to get started with bindu is using our cookiecutter template:
106
+
107
+ ```bash
108
+ # Create a new bindu project
109
+ uv tool run cookiecutter cookiecutter-bindu/
110
+ ```
111
+
112
+ Follow the interactive prompts:
113
+ ```
114
+ [1/4] name (pebble_project): my_weather_agent
115
+ [2/4] description (): A weather forecasting agent
116
+ [3/4] bindu_email (): your.email@example.com
117
+ [4/4] Select agent_framework
118
+ 1 - none
119
+ 2 - agno
120
+ 3 - crew
121
+ 4 - langchain
122
+ Choose from [1/2/3/4] (1): 2
123
+ ```
124
+
125
+ After project creation:
126
+ ```bash
127
+ ๐ŸŽ‰ Project created successfully!
128
+
129
+ ๐ŸŒป Welcome to bindu โ€” powered by the bindu CLI.
130
+ Next steps:
131
+ 1๏ธโƒฃ cd 'my_weather_agent'
132
+ 2๏ธโƒฃ Set it up using uv: ๐Ÿ“ฆ
133
+ uv sync
134
+ 3๏ธโƒฃ Run your agent locally: ๐Ÿ’ป
135
+ PYTHONPATH=src python3 -m my_weather_agent
136
+ or
137
+ python3 src/<filename.py>
138
+ 4๏ธโƒฃ Deploy your agent: ๐Ÿš€
139
+ pebble launch
140
+
141
+ ๐Ÿค– Selected agent framework: agno
142
+ Need help? See README.md for details. โœจ
143
+ ```
144
+
145
+ **Setup and run your agent:**
146
+ ```bash
147
+ # Navigate to your project
148
+ cd my_weather_agent
149
+
150
+ # Create virtual environment
151
+ uv venv --python 3.12.9
152
+ source .venv/bin/activate
153
+
154
+ # Install dependencies
155
+ uv sync
156
+
157
+ # Run your agent
158
+ uv run src/pebble_agent.py
159
+ ```
160
+
161
+ Your agent will start with full bindu capabilities:
162
+ - โœ… Automatic DID identity generation
163
+ - โœ… Security setup with mTLS certificates
164
+ - โœ… Agent manifest creation
165
+ - โœ… Local server running on http://localhost:8030
166
+ - โœ… OpenInference observability integration
167
+
168
+ > ๐Ÿ“‚ **Template Repository**: [cookiecutter-bindu](https://github.com/bindu-ai/cookiecutter-bindu)
169
+
170
+ ### Manual Setup - bindufy an Agent
171
+
172
+ ```python
173
+ from bindu import bindufy
174
+
175
+ @bindufy(name="My Agent", description="A simple agent", version="1.0.0")
176
+ def my_agent(message: str) -> str:
177
+ return "Hello, Agent!"
178
+
179
+ # You're now ready to communicate securely between agents!
180
+ ```
181
+
182
+ ### bindufy a [Agno](https://github.com/agno-ai/agno) Agent
183
+
184
+ ```python
185
+ from bindu import bindufy
186
+ from agno.agent import Agent
187
+ from agno.models.openai import OpenAIChat
188
+
189
+ @bindufy(name="Agno Agent", description="A helpful assistant", version="1.0.0")
190
+ def agno_agent(message: str) -> str:
191
+ agent = Agent(
192
+ model=OpenAIChat(id="gpt-4o"),
193
+ instructions="You are a helpful assistant.",
194
+ )
195
+ result = agent.run(message)
196
+ return result.to_dict()["content"]
197
+
198
+ # You're now ready to communicate securely between agents!
199
+ ```
200
+
201
+ ## ๐ŸŽฅ Agent in Action
202
+ <img src="./pebble-cli.gif" alt="Agent Demo" width="640">
203
+
204
+ ## ๐Ÿ“Š Interactive Diagrams
205
+
206
+ <table>
207
+ <tr>
208
+ <td>
209
+
210
+ **๐Ÿ”„ Sequence Diagram**
211
+ [![View Interactive Diagram](https://img.shields.io/badge/View%20Interactive%20Diagram-๐Ÿ“Š-blue?style=for-the-badge)](https://www.mermaidchart.com/app/projects/818fccf7-4d32-4f82-8a5f-006808d90e34/diagrams/89f06b06-fe7c-4c8f-ab91-20eb0146fc0f/version/v0.1/edit)
212
+
213
+ Open the interactive version of this sequence diagram in MermaidChart
214
+
215
+ </td>
216
+ <td>
217
+
218
+ **๐Ÿ—๏ธ Orchestration Diagram**
219
+ [![View Interactive Diagram](https://img.shields.io/badge/View%20Interactive%20Diagram-๐Ÿ“Š-green?style=for-the-badge)](https://www.mermaidchart.com/app/projects/818fccf7-4d32-4f82-8a5f-006808d90e34/diagrams/143c8f38-3810-4404-898c-cceb59b39670/version/v0.1/edit)
220
+
221
+ Open the interactive version of this orchestration diagram in MermaidChart
222
+
223
+ </td>
224
+ </tr>
225
+ </table>
226
+
227
+ ## ๐Ÿ› ๏ธ Supported Agent Frameworks
228
+
229
+ bindu is tested and integrated with popular agent frameworks:
230
+
231
+ - โœ… [Agno](https://github.com/agno-ai/agno)
232
+ - ๐Ÿ”œ CrewAI (Coming soon)
233
+ - ๐Ÿ”œ AutoGen (Coming soon)
234
+ - ๐Ÿ”œ LangChain (Coming soon)
235
+ - ๐Ÿ”œ LlamaIndex (Coming soon)
236
+
237
+ Want integration with your favorite framework? Let us know on [Discord](https://discord.gg/Fr6rcRJa)!
238
+
239
+ ## ๐Ÿ“– Documentation
240
+
241
+ For comprehensive documentation, visit [docs.bindu.ai](https://docs.bindu.ai)
242
+
243
+ ## ๐Ÿงช Testing
244
+
245
+ bindu is thoroughly tested with a test coverage of over 83%:
246
+
247
+ ```bash
248
+ # Run tests with coverage
249
+ make test
250
+ make coverage
251
+ ```
252
+
253
+ ## ๐Ÿค Contributing
254
+
255
+ We welcome contributions! Here's how to get started:
256
+
257
+ ```bash
258
+ # Clone the repository
259
+ git clone https://github.com/bindu-ai/pebble.git
260
+ cd pebble
261
+
262
+ # Install development dependencies
263
+ uv sync --dev
264
+
265
+ # Install pre-commit hooks
266
+ pre-commit install
267
+
268
+ # Run tests
269
+ make test
270
+ ```
271
+
272
+ Please see our [Contributing Guidelines](.github/CONTRIBUTING.md) for more details.
273
+
274
+ ## ๐Ÿ‘ฅ Maintainers
275
+
276
+ For more details about maintainership, including how to become a maintainer, see our [MAINTAINERS.md](MAINTAINERS.md) file.
277
+
278
+ ## ๐Ÿ“œ License
279
+
280
+ bindu is proudly open-source and licensed under the [MIT License](https://choosealicense.com/licenses/mit/).
281
+
282
+ ## ๐Ÿ’ป Example Use Cases
283
+
284
+ bindu is ideal for:
285
+
286
+ - **Multi-Agent Collaboration**: Enable efficient, secure teamwork between LLM-driven agents.
287
+ - **Decentralized Autonomous Systems**: Build reliable decentralized AI networks.
288
+ - **Secure Agent Ecosystems**: Create ecosystems where agents from different providers interact seamlessly.
289
+ - **Distributed AI Workflows**: Coordinate agents across distributed computing environments.
290
+
291
+ ## ๐ŸŽ‰ Community
292
+
293
+ We ๐Ÿ’› contributions! Whether you're fixing bugs, improving documentation, or building demos โ€” your contributions make bindu better.
294
+
295
+ - Join our [Discord](https://discord.gg/Fr6rcRJa) for discussions and support
296
+ - Star the repository if you find it useful!
297
+
298
+ ## ๐Ÿšง Roadmap
299
+
300
+ Here's what's next for bindu:
301
+
302
+ - [ ] GRPC transport support
303
+ - [ ] Integration with [Hibiscus](https://github.com/bindu-ai/hibiscus) (DiD - Decentralized Identifiers, mTLS)
304
+ - [ ] Detailed tutorials and guides
305
+ - [ ] Expanded multi-framework support
306
+
307
+ Suggest features or contribute by joining our [Discord](https://discord.gg/Fr6rcRJa)!
308
+
309
+ ## FAQ
310
+
311
+ **Can bindu be deployed locally?**
312
+ Yes! bindu supports local development as well as cloud-based deployments.
313
+
314
+ ## Security:
315
+ curl --request POST \
316
+ --url https://dev-tlzrol0zsxw40ujx.us.auth0.com/oauth/token \
317
+ --header 'content-type: application/json' \
318
+ --data '{"client_id":"GGLemeiKL6MfXD7Hy4L4mtz8WNIhRtkS","client_secret":"zXcdPIQRAM9iHzABZtcfaN_2iICW4pfuoyUChIcVDF5488ejtyKG_U_PyWj9kpJT","audience":"https://dev-tlzrol0zsxw40ujx.us.auth0.com/api/v2/","grant_type":"client_credentials"}' \
319
+ | jq -r '.access_token'
320
+
321
+
322
+ Standard JSON-RPC (-32700 to -32603)
323
+ โ”œโ”€ -32700: Parse error
324
+ โ”œโ”€ -32600: Invalid Request
325
+ โ”œโ”€ -32601: Method not found
326
+ โ”œโ”€ -32602: Invalid params
327
+ โ””โ”€ -32603: Internal error
328
+
329
+ A2A Official (-32001 to -32007)
330
+ โ”œโ”€ -32001: TaskNotFoundError โœ…
331
+ โ”œโ”€ -32002: TaskNotCancelableError โœ…
332
+ โ”œโ”€ -32003: PushNotificationNotSupportedError โœ…
333
+ โ”œโ”€ -32004: UnsupportedOperationError โœ…
334
+ โ”œโ”€ -32005: ContentTypeNotSupportedError โœ…
335
+ โ”œโ”€ -32006: InvalidAgentResponseError โœ…
336
+ โ””โ”€ -32007: AuthenticatedExtendedCardNotConfiguredError โœ…
337
+
338
+ Bindu Extensions (-32008 to -32099)
339
+ โ”œโ”€ -32008: TaskImmutableError (custom)
340
+ โ”œโ”€ -32009 to -32013: Authentication errors
341
+ โ””โ”€ -32020 to -32021: Context errors
342
+
343
+
344
+ ## โญ Star History
345
+
346
+ [![Star History Chart](https://api.star-history.com/svg?repos=bindu-ai/pebble&type=Date)](https://star-history.com/#bindu-ai/pebble&Date)
347
+
348
+
349
+ Built with โค๏ธ by the bindu team from Amsterdam ๐ŸŒท.
350
+
351
+ Happy bindu! ๐ŸŒป๐Ÿš€โœจ