🚨 Shai-Hulud Strikes Again:834 Packages Compromised.Technical Analysis →
Socket
Book a DemoInstallSign in
Socket

@lit-protocol/aw-tool

Package Overview
Dependencies
Maintainers
8
Versions
21
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@lit-protocol/aw-tool

This guide will walk you through the process of creating a new Agent Wallet tool package for the Lit Agent Wallet system.

latest
npmnpm
Version
0.1.0-23
Version published
Maintainers
8
Created
Source

Creating a New Agent Wallet Tool Package

This guide will walk you through the process of creating a new Agent Wallet tool package for the Lit Agent Wallet system.

Initial Setup

  • Generate the package scaffold using Nx:
npx nx g @nx/js:lib packages/aw-tool-TOOL_NAME --publishable --importPath=@lit-protocol/aw-tool-TOOL_NAME
  • When prompted for project configuration options, select:
    • TypeScript for the compiler
    • ESLint for linting
    • Jest for testing

Copy Required Configuration Files

Copy the following files from an existing tool package (e.g., aw-tool-sign-ecdsa) to your new package:

  • Configuration files:

    • tsconfig.lib.json
    • tsconfig.json
    • package.json (remember to update the tool name)
    • jest.config.ts
    • eslint.config.js
    • .gitignore
  • Copy the entire tools directory

  • Source files:

    • src/lib/ipfs.ts

Implement Tool Logic

Source Files Structure

Your tool package should have the following structure in the src directory:

src/
├── index.ts
└── lib/
    ├── ipfs.ts
    ├── lit-action.ts
    ├── policy.ts
    └── tool.ts

Required Modifications

  • src/lib/lit-action.ts:

    • Write your custom Lit Action code that will run on Lit nodes
    • This is where your tool's core validation and execution logic goes
    • Examples can be found in the other tool packages
  • src/lib/policy.ts:

    • Define your tool's conditions for when execution should be allowed
    • Implement the validation functions for your conditions
    • Examples can be found in the other tool packages
  • src/lib/tool.ts:

    • This file needs to be almost completely rewritten for your tool
    • Implement your tool's specific functionality and logic
    • Examples can be found in the other tool packages
  • src/index.ts:

    • Edit this file to export your tool
    • Examples can be found in the other tool packages

Register Your Tool

In the aw-tool-registry package:

  • Import your tool in registry.ts and call registerTool with your tool name and class
  • Add your tool package as a dependency in package.json using the workspace syntax

FAQs

Package last updated on 18 Feb 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts