1.5.2 • Published 2 months ago

@suiware/ai-tools v1.5.2

Weekly downloads
-
License
Apache-2.0
Repository
github
Last release
2 months ago

@suiware/ai-tools

Pluggable tools for Vercel AI SDK which allow AI assistants to interact with Sui Network and perform various actions.

Installation

pnpm add @suiware/ai-tools

Configuration

To use the tools, you need to add a few environment variables to your .env file, such as SUI_PRIVATE_KEY and SUI_NETWORK as well as ANTHROPIC_API_KEY and OPENAI_API_KEY for Anthropic and OpenAI respectively.

Usage

// Source: https://github.com/suiware/ai-tools/blob/main/packages/examples/src/anthropic-simple-balance.ts
import { anthropic } from '@ai-sdk/anthropic'
import { suiWalletBalanceTool } from '@suiware/ai-tools'
import { generateText } from 'ai'
import { configDotenv } from 'dotenv'

configDotenv()

async function main() {
  const { text } = await generateText({
    model: anthropic('claude-3-5-sonnet-latest'),
    prompt: 'get my sui wallet balance',
    tools: {
      // Plug a tool this way:
      balance: suiWalletBalanceTool,
    },
    maxSteps: 5,
  })

  console.log(text)
}

main().catch(console.error)

See more usage examples.

Available tools

suiAddressTool

Gets user address.

Examples:

  • get my address

suiWalletBalanceTool

Gets non-zero wallet balances.

Please note if you have Staked SUI, it will be included in the results.

Examples:

  • get my wallet balances
  • my balances

suiTransferTool

Transfer the amount of the specified coin to the specified address.

Examples:

  • transfer 1 sui to 0x1234567890abcdef
  • send 10 wal to 0x1234567890abcdef
  • donate 1 sui to @abcdef1234567890
  • throw 1 sui to abcdef1234567890.sui

Supported coins are listed here

suiSwapTool (mainnet only)

Performs coin swap. Supported coins are listed here

Examples:

  • swap 1 sui for usdc
  • convert 10 usdc to sui
  • swap 1 sui for weth

suiStakeTool

Stakes SUI natively on the Mysten-1 validator.

Please note if the staked amount less than 1 SUI, it might not work.

Examples:

  • stake 1 sui

suiUnstakeTool

Unstake all SUI.

Examples:

  • unstake
  • unstake sui

To get all available tools, use getSuiwareAiTools().

Check the source code of the tools.

Changelog

Find the detailed changelog in the package root.

Links

1.2.0

3 months ago

1.1.0

3 months ago

1.0.0

3 months ago

1.5.2

2 months ago

1.5.1

2 months ago

1.5.0

2 months ago

1.4.0

2 months ago

1.3.0

3 months ago

0.3.0

4 months ago

0.4.0

3 months ago

0.2.0

5 months ago

0.1.3

5 months ago

0.1.2

5 months ago

0.1.1

5 months ago

0.1.0

5 months ago