1.1.11 • Published 1 month ago

ethernaut-ai v1.1.11

Weekly downloads
-
License
ISC
Repository
-
Last release
1 month ago

ethernaut-ai

AI assistant that interprets user input and executes hardhat tasks

Ai natural language interpretation

What

This plugin exposes all hardhat tasks to ChatGPT using the OpenAI assistants api, effectively producing an agent that knows how to use all the hardhat tasks in your project.

Additionally, the assistant can be used to explain why a particular natural language query was interpreted to a given command, or how the command itself works.

Explain commands

The assistant is automatically rebuilt whenever any of the task descriptions or parameters change.

Installation

npm install ethernaut-ai

Import the plugin in your hardhat.config.js:

require('ethernaut-ai')

Or if you are using TypeScript, in your hardhat.config.ts:

import 'ethernaut-ai'

Note: This plugin will look for an OPENAI_API_KEY in the current working directory's .env file. When required tho, the plugin will use a prompt to collect the key.

Required plugins

No other plugins are required.

Tasks

This plugin adds the following tasks to hardhat:

  • config Configures ai scope parameters
  • interpret Interprets natural language into CLI commands

Environment extensions

This plugin doesn't add any fields to the hre.

Configuration

This plugin extends the HardhatUserConfig's ProjectPathsUserConfig object with the following fields:

config.ethernaut.ai = {
  interpreter: {
    additionalInstructions: ['Always talk like a pirate']
  },
  explainer: {
    additionalInstructions: ['Dont be boring']
  },
}

Usage

The plugin pre-parses input, so you can just type what you need:

npx hardhat I need to compile this project

However, if you need more fine grained control, you can use the interpret task within the ai scope:

npx hardhat ai interpret "I need to compile this project" --new-thread --no-confirm
1.1.11

1 month ago

1.1.0

2 months ago

1.1.4

2 months ago

1.1.3

2 months ago

1.1.10

2 months ago

1.0.15

2 months ago

1.0.11

2 months ago

1.0.14

2 months ago

1.0.13

2 months ago

1.0.12

2 months ago

1.0.9

2 months ago

1.0.7

2 months ago

1.0.2

2 months ago

1.0.1

2 months ago

1.0.3

2 months ago

1.0.0-alpha.3

2 months ago

1.0.0-alpha.2

2 months ago

1.0.0-alpha.1

2 months ago