diff --git a/README.md b/README.md index 5fd7629..22bdc24 100644 --- a/README.md +++ b/README.md @@ -207,37 +207,22 @@ const price = await agent.pythFetchPrice( console.log("Price in BTC/USD:", price); ``` -### Add to your Vercel AI Agent +## Examples -```typescript -import {createVercelAITools, SolanaAgentKit} from 'solana-agent-sdk' -import {createOpenAI} from '@ai-sdk/openai' -import {streamText} from 'ai' +### LangGraph Multi-Agent System -const openai = createOpenAI({ - apiKey: process.env.OPENAI_API_KEY! -}) +The repository includes an advanced example of building a multi-agent system using LangGraph and Solana Agent Kit. Located in `examples/agent-kit-langgraph`, this example demonstrates: -const solanaAgent = new SolanaAgentKit( - process.env.SOLANA_PRIVATE_KEY!, - process.env.RPC_URL, - process.env.OPENAI_API_KEY!, -); +- Multi-agent architecture using LangGraph's StateGraph +- Specialized agents for different tasks: + - General purpose agent for basic queries + - Transfer/Swap agent for transaction operations + - Read agent for blockchain data queries + - Manager agent for routing and orchestration +- Fully typed TypeScript implementation +- Environment-based configuration -const tools = createVercelAITools(solanaAgent) - -const response = streamText({ - tools, - model: openai("gpt-4o-mini"), - prompt: "What's my SOL balance", - maxSteps: 10 -}) - -for await (const textPart of response.textStream) { - process.stdout.write(textPart); -} -console.log(); -``` +Check out the [LangGraph example](examples/agent-kit-langgraph) for a complete implementation of an advanced Solana agent system. ## Dependencies diff --git a/docs/assets/navigation.js b/docs/assets/navigation.js index cce3849..54693ba 100644 --- a/docs/assets/navigation.js +++ b/docs/assets/navigation.js @@ -1 +1 @@ -window.navigationData = "data:application/octet-stream;base64,H4sIAAAAAAAAE43TQU+DMBQH8O/S8+LioovZjUgw6tRlEi/GQ1ffpKG0TfsaXYzf3cqMEykPLxzov78/PMrjO0N4Q7Zg90ZxzbMX0HgtkU2Y5VjF+0Jx78FPu+tHFTYqhmqpn9nieHb2MfmRzo1SIFAanYNVZtfELQdPagS35SKSqWAXnp3Ok/Cd/br6EfU7RZIOOBqXhvZr1PYCUFQrJwWswdvYBUmpH6PQC7l5Na5u66Hkvl7DMD0UpgqugpURKE0NOufIk/DfEAUugzKZECZozAG5VJ4cx3CcKrmJwuHb3hYl2TGYpipWobHboJc8aFGRfDI5RhdBt+OkTm8iR7I7rP55CNNRChftodr/+KUx6tcTx3dvB+unvVBXnJ/0wAdwAlR2OUJ2Yj306ROld4uPugQAAA==" \ No newline at end of file +window.navigationData = "data:application/octet-stream;base64,H4sIAAAAAAAAE42TwU7DMAyG3yXniooJJtTbRFUkGDCN3hCHEFwaNXWixBFMaO+O6BCsLPW45OIv3x/ZzuOHIHgnUYgHayTKxSsg3WgSmXCSWlEIZWQIEPJx/aSl3ohMdBpfRHE6u9hmP6ZLawwo0hZLcMZuesA9n0YC30gFIU+BY/HsfJ4U37uvMxyxflOs0oMk69OiXY27XgGpduW1gjUEZzFA0nSIcdIr/fxmfTfEQy1Dt4Zp9RTMBVxHpwl8bTvAUpJMiv9CnHAZjV0oZSNSCSS1CWw7pnEu5FYj/c72rqrZjEmai1jF3jURlzKiall9kjymriIO7eS2N8Gx2g21/1zCNMrJ1bBUu49fW2v2XtxEHBob8gNobJyfbZ8+AWWuiIJlBAAA" \ No newline at end of file diff --git a/docs/assets/search.js b/docs/assets/search.js index 26b312e..b56bd96 100644 --- a/docs/assets/search.js +++ b/docs/assets/search.js @@ -1 +1 @@ -window.searchData = "data:application/octet-stream;base64,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"; \ No newline at end of file +window.searchData = "data:application/octet-stream;base64,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"; diff --git a/docs/classes/SolanaAgentKit.html b/docs/classes/SolanaAgentKit.html index 1e9f3b9..e510d32 100644 --- a/docs/classes/SolanaAgentKit.html +++ b/docs/classes/SolanaAgentKit.html @@ -1,13 +1,14 @@ SolanaAgentKit | solana-agent-kit

Class SolanaAgentKit

Main class for interacting with Solana blockchain Provides a unified interface for token operations, NFT management, trading and more

SolanaAgentKit

-

Constructors

Constructors

  • Parameters

    • private_key: string
    • rpc_url: string = "https://api.mainnet-beta.solana.com"
    • openai_api_key: string

    Returns SolanaAgentKit

Properties

connection: Connection

Solana RPC connection

-
openai_api_key: string
wallet: Keypair

Wallet keypair for signing transactions

-
wallet_address: PublicKey

Public key of the wallet

-

Methods

  • Parameters

    • title: string
    • content: string
    • requirements: string
    • tags: string[]
    • tokenMintAddress: string
    • tokenAmount: number
    • Optionalpayer: string

    Returns Promise<GibworkCreateTaskReponse>

  • Parameters

    • depositTokenAmount: BN
    • depositTokenMint: PublicKey
    • otherTokenMint: PublicKey
    • initialPrice: Decimal
    • maxPrice: Decimal
    • feeTier:
          | 0.01
          | 0.02
          | 0.04
          | 0.05
          | 0.16
          | 0.3
          | 0.65
          | 1
          | 2

    Returns Promise<string>

  • Parameters

    • name: string
    • uri: string
    • symbol: string
    • decimals: number = DEFAULT_OPTIONS.TOKEN_DECIMALS
    • OptionalinitialSupply: number

    Returns Promise<{
        mint: PublicKey;
    }>

  • Parameters

    • mint: string

    Returns Promise<string>

  • Returns Promise<String[]>

  • Returns Promise<string[]>

  • Parameters

    • Optionaltoken_address: PublicKey

    Returns Promise<number>

  • Parameters

    • owner: PublicKey

    Returns Promise<null | string>

  • Parameters

    • owner: PublicKey

    Returns Promise<string[]>

  • Parameters

    • tld: string

    Returns Promise<string[]>

  • Parameters

    • account: PublicKey

    Returns Promise<string>

  • Parameters

    • amount: number

    Returns Promise<string>

  • Parameters

    • collectionMint: PublicKey
    • metadata: {
          creators?: {
              address: string;
              share: number;
          }[];
          name: string;
          sellerFeeBasisPoints?: number;
          uri: string;
      }
      • Optionalcreators?: {
            address: string;
            share: number;
        }[]
      • name: string
      • OptionalsellerFeeBasisPoints?: number
      • uri: string
    • Optionalrecipient: PublicKey

    Returns Promise<MintCollectionNFTResponse>

  • Parameters

    • baseMint: PublicKey
    • quoteMint: PublicKey
    • lotSize: number = 1
    • tickSize: number = 0.01

    Returns Promise<string[]>

  • Parameters

    • priceFeedID: string

    Returns Promise<string>

  • Parameters

    • marketId: PublicKey
    • baseAmount: BN
    • quoteAmount: BN
    • startTime: BN

    Returns Promise<string>

  • Parameters

    • mint1: PublicKey
    • mint2: PublicKey
    • configId: PublicKey
    • initialPrice: Decimal
    • startTime: BN

    Returns Promise<string>

  • Parameters

    • mint1: PublicKey
    • mint2: PublicKey
    • configId: PublicKey
    • mintAAmount: BN
    • mintBAmount: BN
    • startTime: BN

    Returns Promise<string>

  • Parameters

    • name: string
    • OptionalspaceKB: number

    Returns Promise<string>

  • Returns Promise<string>

  • Parameters

    • domain: string

    Returns Promise<undefined | PublicKey>

  • Parameters

    • domain: string

    Returns Promise<PublicKey>

  • Parameters

    • mintAddress: string
    • amount: number
    • decimals: number
    • recipients: string[]
    • priorityFeeInLamports: number
    • shouldLog: boolean

    Returns Promise<string[]>

  • Parameters

    • amount: number

    Returns Promise<string>

  • Parameters

    • outputMint: PublicKey
    • inputAmount: number
    • OptionalinputMint: PublicKey
    • slippageBps: number = DEFAULT_OPTIONS.SLIPPAGE_BPS

    Returns Promise<string>

  • Parameters

    • to: PublicKey
    • amount: number
    • Optionalmint: PublicKey

    Returns Promise<string>

+

Constructors

  • Parameters

    • private_key: string
    • rpc_url: string = "https://api.mainnet-beta.solana.com"
    • openai_api_key: string

    Returns SolanaAgentKit

Properties

connection: Connection

Solana RPC connection

+
openai_api_key: string
wallet: Keypair

Wallet keypair for signing transactions

+
wallet_address: PublicKey

Public key of the wallet

+

Methods

  • Parameters

    • title: string
    • content: string
    • requirements: string
    • tags: string[]
    • tokenMintAddress: string
    • tokenAmount: number
    • Optionalpayer: string

    Returns Promise<GibworkCreateTaskReponse>

  • Parameters

    • depositTokenAmount: BN
    • depositTokenMint: PublicKey
    • otherTokenMint: PublicKey
    • initialPrice: Decimal
    • maxPrice: Decimal
    • feeTier:
          | 0.01
          | 0.02
          | 0.04
          | 0.05
          | 0.16
          | 0.3
          | 0.65
          | 1
          | 2

    Returns Promise<string>

  • Parameters

    • amount: number
    • OptionalsplmintAddress: PublicKey

    Returns Promise<{
        signature: string;
        url: string;
    }>

  • Parameters

    • name: string
    • uri: string
    • symbol: string
    • decimals: number = DEFAULT_OPTIONS.TOKEN_DECIMALS
    • OptionalinitialSupply: number

    Returns Promise<{
        mint: PublicKey;
    }>

  • Parameters

    • mint: string

    Returns Promise<string>

  • Returns Promise<String[]>

  • Returns Promise<string[]>

  • Parameters

    • Optionaltoken_address: PublicKey

    Returns Promise<number>

  • Parameters

    • owner: PublicKey

    Returns Promise<null | string>

  • Parameters

    • owner: PublicKey

    Returns Promise<string[]>

  • Parameters

    • tld: string

    Returns Promise<string[]>

  • Parameters

    • account: PublicKey

    Returns Promise<string>

  • Parameters

    • amount: number

    Returns Promise<string>

  • Parameters

    • collectionMint: PublicKey
    • metadata: {
          creators?: {
              address: string;
              share: number;
          }[];
          name: string;
          sellerFeeBasisPoints?: number;
          uri: string;
      }
      • Optionalcreators?: {
            address: string;
            share: number;
        }[]
      • name: string
      • OptionalsellerFeeBasisPoints?: number
      • uri: string
    • Optionalrecipient: PublicKey

    Returns Promise<MintCollectionNFTResponse>

  • Parameters

    • baseMint: PublicKey
    • quoteMint: PublicKey
    • lotSize: number = 1
    • tickSize: number = 0.01

    Returns Promise<string[]>

  • Parameters

    • priceFeedID: string

    Returns Promise<string>

  • Parameters

    • marketId: PublicKey
    • baseAmount: BN
    • quoteAmount: BN
    • startTime: BN

    Returns Promise<string>

  • Parameters

    • mint1: PublicKey
    • mint2: PublicKey
    • configId: PublicKey
    • initialPrice: Decimal
    • startTime: BN

    Returns Promise<string>

  • Parameters

    • mint1: PublicKey
    • mint2: PublicKey
    • configId: PublicKey
    • mintAAmount: BN
    • mintBAmount: BN
    • startTime: BN

    Returns Promise<string>

  • Parameters

    • name: string
    • OptionalspaceKB: number

    Returns Promise<string>

  • Returns Promise<string>

  • Parameters

    • domain: string

    Returns Promise<undefined | PublicKey>

  • Parameters

    • domain: string

    Returns Promise<PublicKey>

  • Parameters

    • amount: number
    • choice: "rock" | "paper" | "scissors"

    Returns Promise<string>

  • Parameters

    • mintAddress: string
    • amount: number
    • decimals: number
    • recipients: string[]
    • priorityFeeInLamports: number
    • shouldLog: boolean

    Returns Promise<string[]>

  • Parameters

    • amount: number

    Returns Promise<string>

  • Parameters

    • outputMint: PublicKey
    • inputAmount: number
    • OptionalinputMint: PublicKey
    • slippageBps: number = DEFAULT_OPTIONS.SLIPPAGE_BPS

    Returns Promise<string>

  • Parameters

    • to: PublicKey
    • amount: number
    • Optionalmint: PublicKey

    Returns Promise<string>

diff --git a/docs/functions/createSolanaTools.html b/docs/functions/createSolanaTools.html index 522c832..8527902 100644 --- a/docs/functions/createSolanaTools.html +++ b/docs/functions/createSolanaTools.html @@ -1 +1 @@ -createSolanaTools | solana-agent-kit

Function createSolanaTools

  • Parameters

    Returns (
        | SolanaBalanceTool
        | SolanaTransferTool
        | SolanaDeployTokenTool
        | SolanaDeployCollectionTool
        | SolanaMintNFTTool
        | SolanaTradeTool
        | SolanaRequestFundsTool
        | SolanaRegisterDomainTool
        | SolanaResolveDomainTool
        | SolanaGetDomainTool
        | SolanaGetWalletAddressTool
        | SolanaPumpfunTokenLaunchTool
        | SolanaCreateImageTool
        | SolanaLendAssetTool
        | SolanaTPSCalculatorTool
        | SolanaStakeTool
        | SolanaFetchPriceTool
        | SolanaTokenDataTool
        | SolanaTokenDataByTickerTool
        | SolanaCompressedAirdropTool
        | SolanaCreateSingleSidedWhirlpoolTool
        | SolanaRaydiumCreateAmmV4
        | SolanaRaydiumCreateClmm
        | SolanaRaydiumCreateCpmm
        | SolanaOpenbookCreateMarket
        | SolanaPythFetchPrice
        | SolanaResolveAllDomainsTool
        | SolanaGetOwnedDomains
        | SolanaGetOwnedTldDomains
        | SolanaGetAllTlds
        | SolanaGetMainDomain
        | SolanaCreateGibworkTask)[]

+createSolanaTools | solana-agent-kit

Function createSolanaTools

  • Parameters

    Returns (
        | SolanaBalanceTool
        | SolanaTransferTool
        | SolanaDeployTokenTool
        | SolanaDeployCollectionTool
        | SolanaMintNFTTool
        | SolanaTradeTool
        | SolanaRequestFundsTool
        | SolanaRegisterDomainTool
        | SolanaResolveDomainTool
        | SolanaGetDomainTool
        | SolanaGetWalletAddressTool
        | SolanaPumpfunTokenLaunchTool
        | SolanaCreateImageTool
        | SolanaLendAssetTool
        | SolanaTPSCalculatorTool
        | SolanaStakeTool
        | SolanaFetchPriceTool
        | SolanaTokenDataTool
        | SolanaTokenDataByTickerTool
        | SolanaCompressedAirdropTool
        | SolanaCreateSingleSidedWhirlpoolTool
        | SolanaRaydiumCreateAmmV4
        | SolanaRaydiumCreateClmm
        | SolanaRaydiumCreateCpmm
        | SolanaOpenbookCreateMarket
        | SolanaPythFetchPrice
        | SolanaResolveAllDomainsTool
        | SolanaGetOwnedDomains
        | SolanaGetOwnedTldDomains
        | SolanaGetAllTlds
        | SolanaGetMainDomain
        | SolanaCreateGibworkTask
        | SolanaRockPaperScissorsTool
        | SolanaTipLinkTool)[]

diff --git a/docs/index.html b/docs/index.html index f76a141..103722a 100644 --- a/docs/index.html +++ b/docs/index.html @@ -121,6 +121,21 @@

const price = await agent.pythFetchPrice(
"0xe62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43"
);

console.log("Price in BTC/USD:", price);
+

The repository includes an advanced example of building a multi-agent system using LangGraph and Solana Agent Kit. Located in examples/agent-kit-langgraph, this example demonstrates:

+ +

Check out the LangGraph example for a complete implementation of an advanced Solana agent system.

The toolkit relies on several key Solana and Metaplex libraries: