1.5.2 • Published 9 months ago

@suiware/ai-tools v1.5.2

Weekly downloads
-
License
Apache-2.0
Repository
github
Last release
9 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

11 months ago

1.1.0

11 months ago

1.0.0

11 months ago

1.5.2

9 months ago

1.5.1

9 months ago

1.5.0

9 months ago

1.4.0

10 months ago

1.3.0

11 months ago

0.3.0

12 months ago

0.4.0

11 months ago

0.2.0

1 year ago

0.1.3

1 year ago

0.1.2

1 year ago

0.1.1

1 year ago

0.1.0

1 year ago