Name | goat-sdk JSON |
Version |
0.1.0
JSON |
| download |
home_page | https://ohmygoat.dev/ |
Summary | Goat 🐐 (Great Onchain Agent Toolkit) is an open-source framework for connecting AI agents to any onchain app |
upload_time | 2025-01-07 15:04:49 |
maintainer | None |
docs_url | None |
author | Andrea Villa |
requires_python | <4.0,>=3.10 |
license | None |
keywords |
goat
sdk
web3
agents
ai
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# Goat 🐐 - Python SDK
Goat (Great Onchain Agent Toolkit) is an open-source framework for connecting AI agents to any onchain app.
[![Discord](https://img.shields.io/discord/1234567890?color=7289da&label=Discord&logo=discord&logoColor=white)](https://discord.gg/goat-sdk)
[![Documentation](https://img.shields.io/badge/docs-ohmygoat.dev-blue)](https://ohmygoat.dev)
## Installation
```bash
pip install goat-sdk
```
Or with Poetry:
```bash
poetry add goat-sdk
```
## Quick Start
```python
from goat import WalletClientBase, create_tool
from pydantic import BaseModel, Field
# Create a wallet client
wallet = MyWalletClient()
# Create a tool with parameters
class GetBalanceParameters(BaseModel):
address: str = Field(description="The address to get the balance of")
@Tool({
"description": "Get the balance of an address",
"parameters": GetBalanceParameters
})
def get_balance(params: dict) -> str:
balance = await wallet.balance_of(params["address"])
return f"{balance.value} {balance.symbol}"
# Get all available tools
tools = get_tools(wallet, plugins=[
CoinGeckoPlugin(),
ERC20Plugin()
])
```
## Features
- 🔌 Plugin System - Extend functionality with plugins
- 🔗 Multi-Chain Support - EVM, Solana, Aptos, and more
- 🛠️ Tool Framework - Create custom tools for AI agents
- 📦 Type Safety - Full type support with Python type hints
- ⚡ Async Support - Built for high performance
## Documentation
Visit our [documentation](https://ohmygoat.dev) for:
- Detailed guides
- API reference
- Examples
- Plugin development
- Best practices
## Examples
Check out our [examples directory](https://github.com/goat-sdk/goat/tree/main/python/examples) for complete working examples.
## Development
1. Clone the repository:
```bash
git clone https://github.com/goat-sdk/goat.git
cd goat/python
```
2. Install dependencies:
```bash
poetry install
```
3. Run tests:
```bash
poetry run pytest
```
## Contributing
We welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for details.
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## Community
- [Discord](https://discord.gg/goat-sdk)
- [Twitter](https://twitter.com/goat_sdk)
- [GitHub Discussions](https://github.com/goat-sdk/goat/discussions)
Raw data
{
"_id": null,
"home_page": "https://ohmygoat.dev/",
"name": "goat-sdk",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.10",
"maintainer_email": null,
"keywords": "goat, sdk, web3, agents, ai",
"author": "Andrea Villa",
"author_email": "andreakarimodm@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/1b/8c/25c7ae0a87104ad5f809ffba472ceb2f0d7e28199909563b94298e3db4d3/goat_sdk-0.1.0.tar.gz",
"platform": null,
"description": "# Goat \ud83d\udc10 - Python SDK\n\nGoat (Great Onchain Agent Toolkit) is an open-source framework for connecting AI agents to any onchain app.\n\n[![Discord](https://img.shields.io/discord/1234567890?color=7289da&label=Discord&logo=discord&logoColor=white)](https://discord.gg/goat-sdk)\n[![Documentation](https://img.shields.io/badge/docs-ohmygoat.dev-blue)](https://ohmygoat.dev)\n\n## Installation\n\n```bash\npip install goat-sdk\n```\n\nOr with Poetry:\n\n```bash\npoetry add goat-sdk\n```\n\n## Quick Start\n\n```python\nfrom goat import WalletClientBase, create_tool\nfrom pydantic import BaseModel, Field\n\n# Create a wallet client\nwallet = MyWalletClient()\n\n# Create a tool with parameters\nclass GetBalanceParameters(BaseModel):\n address: str = Field(description=\"The address to get the balance of\")\n\n@Tool({\n \"description\": \"Get the balance of an address\",\n \"parameters\": GetBalanceParameters\n})\ndef get_balance(params: dict) -> str:\n balance = await wallet.balance_of(params[\"address\"])\n return f\"{balance.value} {balance.symbol}\"\n\n# Get all available tools\ntools = get_tools(wallet, plugins=[\n CoinGeckoPlugin(),\n ERC20Plugin()\n])\n```\n\n## Features\n\n- \ud83d\udd0c Plugin System - Extend functionality with plugins\n- \ud83d\udd17 Multi-Chain Support - EVM, Solana, Aptos, and more\n- \ud83d\udee0\ufe0f Tool Framework - Create custom tools for AI agents\n- \ud83d\udce6 Type Safety - Full type support with Python type hints\n- \u26a1 Async Support - Built for high performance\n\n## Documentation\n\nVisit our [documentation](https://ohmygoat.dev) for:\n\n- Detailed guides\n- API reference\n- Examples\n- Plugin development\n- Best practices\n\n## Examples\n\nCheck out our [examples directory](https://github.com/goat-sdk/goat/tree/main/python/examples) for complete working examples.\n\n## Development\n\n1. Clone the repository:\n\n```bash\ngit clone https://github.com/goat-sdk/goat.git\ncd goat/python\n```\n\n2. Install dependencies:\n\n```bash\npoetry install\n```\n\n3. Run tests:\n\n```bash\npoetry run pytest\n```\n\n## Contributing\n\nWe welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for details.\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## Community\n\n- [Discord](https://discord.gg/goat-sdk)\n- [Twitter](https://twitter.com/goat_sdk)\n- [GitHub Discussions](https://github.com/goat-sdk/goat/discussions)\n",
"bugtrack_url": null,
"license": null,
"summary": "Goat \ud83d\udc10 (Great Onchain Agent Toolkit) is an open-source framework for connecting AI agents to any onchain app",
"version": "0.1.0",
"project_urls": {
"Bug Tracker": "https://github.com/goat-sdk/goat/issues",
"Homepage": "https://ohmygoat.dev/",
"Repository": "https://github.com/goat-sdk/goat"
},
"split_keywords": [
"goat",
" sdk",
" web3",
" agents",
" ai"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "a471ff587035a322a7e7f68d68783f7c0a213f26468bbb03d62ad6c162757f4f",
"md5": "8caa2f36b1ba3f792014874216bf164a",
"sha256": "61810a3626e26735ef2ab1be8b96c60f9e3731429ffce83374c7e448d0eac093"
},
"downloads": -1,
"filename": "goat_sdk-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "8caa2f36b1ba3f792014874216bf164a",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.10",
"size": 8655,
"upload_time": "2025-01-07T15:04:46",
"upload_time_iso_8601": "2025-01-07T15:04:46.748048Z",
"url": "https://files.pythonhosted.org/packages/a4/71/ff587035a322a7e7f68d68783f7c0a213f26468bbb03d62ad6c162757f4f/goat_sdk-0.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1b8c25c7ae0a87104ad5f809ffba472ceb2f0d7e28199909563b94298e3db4d3",
"md5": "69251ef43d4530cf07fee0a8cffc1a6c",
"sha256": "1ef7925531c396d6b4b7b83a8281cfbb0b5a853ce7f01b1ec15918e8981ed0dd"
},
"downloads": -1,
"filename": "goat_sdk-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "69251ef43d4530cf07fee0a8cffc1a6c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.10",
"size": 7475,
"upload_time": "2025-01-07T15:04:49",
"upload_time_iso_8601": "2025-01-07T15:04:49.408251Z",
"url": "https://files.pythonhosted.org/packages/1b/8c/25c7ae0a87104ad5f809ffba472ceb2f0d7e28199909563b94298e3db4d3/goat_sdk-0.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-01-07 15:04:49",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "goat-sdk",
"github_project": "goat",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "goat-sdk"
}