Skip to main content

How to add your own tool

Enhancing the Sui Agent Kit with custom tools enables you to incorporate specialized functionalities designed to meet your specific requirements. This guide provides step-by-step instructions for creating and integrating a new tool into the existing framework.

Overview

  1. Create a new tool file
  2. Export the new tool
  3. Add supporting functions in SuiAgentKit
  4. Implement the Langchain tool class
  5. Export the Langchain tool
  6. Export your protocol’s langchain tools (if not already exported)
  7. Define Action class for given tool
  8. Export Action
  9. Use the custom tool

Step-by-Step

1. Create a New Tool File

Create a new TypeScript file in the src/tools/your_protocol directory for your tool (e.g., custom_tool.ts). If the src/tools/your_protocol directory does not exist, create it.

2. Export the Tool (if not already exported)

src/tools/index.ts

3. Add Supporting Functions to SuiAgentKit

src/agent/index.ts

4. Implement the Langchain Tool Class

src/langchain/your_protocol/custom_tool.ts

5. Export Langchain Tool

src/langchain/your_protocol/index.ts

6. Export your protocol’s langchain tools (if not already exported)

src/langchain/index.ts

7. Define Action class for given tool

src/actions/your_protocol/custom_action.ts

8. Export Action

src/actions/index.ts

9. Usage Example

Add a code example in the README.md file.

Best Practices

  • Implement robust error handling
  • Add security checks for sensitive operations
  • Document your tool’s purpose and usage
  • Write tests for reliability
  • Keep tools focused on single responsibilities

Need Help?

If you face any challenges while implementing your custom tool, you can:
  • Open an issue in the repository.
  • Reach out to the maintainer for assistance.
  • Review existing tools for implementation examples.