goat-sdk


Namegoat-sdk JSON
Version 0.1.0 PyPI version JSON
download
home_pagehttps://ohmygoat.dev/
SummaryGoat 🐐 (Great Onchain Agent Toolkit) is an open-source framework for connecting AI agents to any onchain app
upload_time2025-01-07 15:04:49
maintainerNone
docs_urlNone
authorAndrea Villa
requires_python<4.0,>=3.10
licenseNone
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"
}
        
Elapsed time: 0.49813s