Skip to content

Commit eef48c5

Browse files
committed
Merge remote-tracking branch 'refs/remotes/origin/main'
2 parents 0e02092 + e02ad95 commit eef48c5

File tree

309 files changed

+24230
-1820
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

309 files changed

+24230
-1820
lines changed

README.md

Lines changed: 43 additions & 80 deletions
Original file line numberDiff line numberDiff line change
@@ -1,91 +1,54 @@
11

22

33
<div align="center">
4-
Go out and eat some grass.
54

6-
[Docs](https://ohmygoat.dev) | [Examples](https://github.com/goat-sdk/goat/tree/main/typescript/examples) | [Chains](https://ohmygoat.dev/chains-wallets-plugins) | [Plugins](https://ohmygoat.dev/chains-wallets-plugins#plugins) | [Discord](https://discord.gg/goat-sdk)
5+
[Website](https://ohmygoat.dev) | [X](https://x.com/goat_sdk) | [Discord](https://discord.gg/goat-sdk)
76

87
GOAT is free software, MIT licensed, sponsored by [Crossmint](https://www.crossmint.com)
9-
</div>
10-
11-
## Goat 🐐
12-
GOAT 🐐 (Great Onchain Agent Toolkit) is an open-source framework for adding blockchain tools such as wallets, being able to hold or trade tokens, or interacting with blockchain smart contracts, to your AI agent.
13-
14-
**Problem**:
15-
16-
Making agents perform onchain actions is tedious. The ecosystem is heavily fragmented, spanning 5+ popular agent development frameworks, multiple programming languages, and dozens of different blockchains and wallet architectures.
17-
For developers without blockchain expertise, finding clear instructions to perform simple actions - like sending USDC payments or placing Polymarket bets - is nearly impossible.
18-
19-
**Solution**:
20-
21-
GOAT solves this by providing an open-source, provider-agnostic framework that abstracts away all these combinations.
22-
23-
- **For agent developers**: GOAT offers an always-growing catalog of ready made blockchain actions (sending tokens, using a DeFi protocol, ...) that can be imported as tools into your existing agent. It works with the most popular agent frameworks (Langchain, Vercel's AI SDK, Eliza, etc), Typescript and Python, 30+ blockchains (Solana, Base, Polygon, Mode, ...), and many wallet providers.
24-
25-
- **For dApp / smart contract developers**: develop a plug-in in GOAT, and allow agents built with any of the most popular agent development frameworks to access your service.
268

27-
### Key features
28-
1. **Works Everywhere**: Compatible with Langchain, Vercel’s AI SDK, Eliza, and more.
29-
2. **Wallet Agnostic**: Supports all wallets, from your own key pairs to [Crossmint Smart Wallets](https://docs.crossmint.com/wallets/smart-wallets/overview) and Coinbase.
30-
3. **Multi-Chain**: Supports EVM chains and Solana (more coming 👀).
31-
4. **Customizable**: Use or build plugins for any onchain functionality (sending tokens, checking wallet balance, etc) and protocol (Polymarket, Uniswap, etc).
9+
![NPM Downloads](https://img.shields.io/npm/dm/%40goat-sdk%2Fcore)
10+
![GitHub License](https://img.shields.io/github/license/goat-sdk/goat)
3211

33-
![goat](https://github.com/user-attachments/assets/f6aa46ce-5684-4136-be29-7867acab3f27)
12+
![Static Badge](https://img.shields.io/badge/v20.12.2-1?label=typescript&color=blue)
13+
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/goat-sdk)
3414

35-
### How it works
36-
GOAT plugs into your agents tool calling capabilities adding all the functions your agent needs to interact with the blockchain.
3715

38-
High-level, here's how it works:
39-
40-
#### Configure the wallet you want to use
41-
```typescript
42-
// ... Code to connect your wallet (e.g createWalletClient from viem)
43-
const wallet = ...
44-
45-
const tools = getOnChainTools({
46-
wallet: viem(wallet),
47-
})
48-
```
49-
50-
#### Add the plugins you need to interact with the protocols you want
51-
```typescript
52-
const wallet = ...
53-
54-
const tools = getOnChainTools({
55-
wallet: viem(wallet),
56-
plugins: [
57-
sendETH(),
58-
erc20({ tokens: [USDC, PEPE] }),
59-
faucet(),
60-
polymarket(),
61-
// ...
62-
],
63-
})
64-
```
65-
66-
#### Connect it to your agent framework of choice
67-
```typescript
68-
// ... Code to connect your wallet (e.g createWalletClient from viem)
69-
const wallet = ...
70-
71-
const tools = getOnChainTools({
72-
wallet: viem(wallet),
73-
plugins: [
74-
sendETH(),
75-
erc20({ tokens: [USDC, PEPE] }),
76-
faucet(),
77-
polymarket(),
78-
// ...
79-
],
80-
})
81-
82-
// Vercel's AI SDK
83-
const result = await generateText({
84-
model: openai("gpt-4o-mini"),
85-
tools: tools,
86-
maxSteps: 5,
87-
prompt: "Send 420 ETH to ohmygoat.eth",
88-
});
89-
```
16+
</div>
9017

91-
See [here](https://github.com/goat-sdk/goat/tree/main/typescript/examples) for more examples.
18+
# GOAT 🐐
19+
![X (formerly Twitter) Follow](https://img.shields.io/twitter/follow/goat-sdk)
20+
21+
22+
GOAT (Great Onchain Agent Toolkit) is a library that adds more than +200 onchain tools to your AI agent.
23+
24+
* **+200 tools**: DeFi (Uniswap, Jupiter, KIM, Orca, etc.), minting (OpenSea, MagicEden, etc.), betting (Polymarket, etc.), analytics (CoinGecko, BirdEye, Allora, etc.) and more
25+
* **Chains**: EVM (Base, Polygon, Mode, Sei, etc.), Solana, Aptos, Chromia, Fuel, Sui, Starknet, Zilliqa, etc.
26+
* **Wallets**: keypair, smart wallets (Crossmint, etc.), LIT, MPC (Coinbase, etc.)
27+
* **Agent Frameworks**: AI SDK, Langchain, Eliza, ZerePy, GAME, ElevenLabs, etc.
28+
29+
30+
## Table of Contens
31+
- [📘 Typescript](https://github.com/goat-sdk/goat/tree/main/typescript)
32+
- [See all plugins](https://github.com/goat-sdk/goat/tree/main/typescript#plugins)
33+
- [Installation](https://github.com/goat-sdk/goat/tree/main/typescript#installation)
34+
- [Usage](https://github.com/goat-sdk/goat/tree/main/typescript#usage)
35+
- [Examples](https://github.com/goat-sdk/goat/tree/main/typescript/examples)
36+
- [How to create a plugin](https://github.com/goat-sdk/goat/tree/main/typescript#how-to-create-a-plugin)
37+
- [How to add a chain](https://github.com/goat-sdk/goat/tree/main/typescript#how-to-add-a-chain)
38+
- [How to add a wallet provider](https://github.com/goat-sdk/goat/tree/main/typescript#how-to-add-a-wallet-provider)
39+
- [Packages](https://github.com/goat-sdk/goat/tree/main/typescript#packages)
40+
- [Plugins](https://github.com/goat-sdk/goat/tree/main/typescript#plugins)
41+
- [Wallets](https://github.com/goat-sdk/goat/tree/main/typescript#wallets)
42+
- [Adapters](https://github.com/goat-sdk/goat/tree/main/typescript#agent-framework-adapters)
43+
- [🐍 Python](https://github.com/goat-sdk/goat/tree/main/python)
44+
- [See all plugins](https://github.com/goat-sdk/goat/tree/main/python#plugins)
45+
- [Installation](https://github.com/goat-sdk/goat/tree/main/python#installation)
46+
- [Usage](https://github.com/goat-sdk/goat/tree/main/python#usage)
47+
- [Examples](https://github.com/goat-sdk/goat/tree/main/python/examples)
48+
- [How to create a plugin](https://github.com/goat-sdk/goat/tree/main/python#how-to-create-a-plugin)
49+
- [How to add a chain](https://github.com/goat-sdk/goat/tree/main/python#how-to-add-a-chain)
50+
- [How to add a wallet provider](https://github.com/goat-sdk/goat/tree/main/python#how-to-add-a-wallet-provider)
51+
- [Packages](https://github.com/goat-sdk/goat/tree/main/python#packages)
52+
- [Plugins](https://github.com/goat-sdk/goat/tree/main/python#plugins)
53+
- [Wallets](https://github.com/goat-sdk/goat/tree/main/python#wallets)
54+
- [Adapters](https://github.com/goat-sdk/goat/tree/main/python#agent-framework-adapters)

docs/chains-wallets-plugins.mdx

Lines changed: 0 additions & 94 deletions
This file was deleted.

docs/chains.mdx

Lines changed: 0 additions & 93 deletions
This file was deleted.

docs/examples.mdx

Lines changed: 0 additions & 15 deletions
This file was deleted.

0 commit comments

Comments
 (0)