Skip to main content
GOAT 是面向 AI 代理的金融工具包。

概述

创建能够执行以下操作的代理:
  • 发送和接收支付
  • 购买实体和数字商品与服务
  • 参与各种投资策略:
    • 赚取收益
    • 在预测市场下注
  • 购买加密资产
  • 将任何资产代币化
  • 获取金融洞察

工作原理

GOAT 利用区块链、加密货币(如稳定币)和钱包作为基础设施,使代理能够成为经济行为者:
  1. 为你的代理提供一个钱包
  2. 允许它在任何地方进行交易
  3. 使用超过 200 种工具
查看 GOAT 支持的所有内容 轻量且可扩展 与其他工具包不同,GOAT 设计为轻量且可扩展,保持其核心最小化,并允许你仅安装所需的工具。 如果你在我们超过 200 个集成中找不到所需内容,你可以轻松地:
  • 创建你自己的插件
  • 集成新的链
  • 集成新的钱包
  • 集成新的代理框架
查看如何贡献

快速入门

最好的入门方式是使用下面的快速入门。了解如何配置 GOAT 以实现以下任何用例。

设置

  1. 安装核心包和 langchain 适配器:
pip install goat-sdk goat-sdk-adapter-langchain
  1. 安装你要使用的钱包类型(例如 solana):
pip install goat-sdk-wallet-solana
  1. 安装你要在该链上使用的插件:
pip install goat-sdk-plugin-spl-token

实例化

现在我们可以实例化我们的工具包:
from goat_adapters.langchain import get_on_chain_tools
from goat_wallets.solana import solana, send_solana
from goat_plugins.spl_token import spl_token, SplTokenPluginOptions
from goat_plugins.spl_token.tokens import SPL_TOKENS

# 初始化 Solana 客户端
client = SolanaClient(os.getenv("SOLANA_RPC_ENDPOINT"))

# 初始化常规 Solana 钱包
keypair = Keypair.from_base58_string(os.getenv("SOLANA_WALLET_SEED") or "")
wallet = solana(client, keypair)

tools = get_on_chain_tools(
        wallet=wallet,
        plugins=[
            send_solana(),
            spl_token(SplTokenPluginOptions(
                network="mainnet",  # 使用 .env 中指定的 devnet
                tokens=SPL_TOKENS
            )),
        ],
    )

调用

tools["get_balance"].invoke({ "address": "0x1234567890123456789012345678901234567890" })

在代理中使用

import os
import asyncio
from dotenv import load_dotenv

# 加载环境变量
load_dotenv()

from solana.rpc.api import Client as SolanaClient
from solders.keypair import Keypair

from goat_adapters.langchain import get_on_chain_tools
from goat_wallets.solana import solana, send_solana
from goat_plugins.spl_token import spl_token, SplTokenPluginOptions
from goat_plugins.spl_token.tokens import SPL_TOKENS

# 初始化 Solana 客户端
client = SolanaClient(os.getenv("SOLANA_RPC_ENDPOINT"))

# 初始化常规 Solana 钱包
keypair = Keypair.from_base58_string(os.getenv("SOLANA_WALLET_SEED") or "")
wallet = solana(client, keypair)

# 初始化 LLM
llm = ChatOpenAI(model="gpt-5.4-mini")

def main():
    # 使用 Solana 钱包初始化工具
    tools = get_on_chain_tools(
        wallet=wallet,
        plugins=[
            send_solana(),
            spl_token(SplTokenPluginOptions(
                network="mainnet",  # 使用 .env 中指定的 devnet
                tokens=SPL_TOKENS
            )),
        ],
    )

    # 初始化代理
    # 你的代理代码在这里


if __name__ == "__main__":
    main()

API 参考