|
## CLI Documentation |
|
|
|
This document describes how to interact with the project's CLI (Command Line Interface). It includes the types of outputs you can expect from each command. Note that the `agents stop` command will terminate any process running on port 8000. |
|
|
|
### 1. Entry Point for the CLI |
|
|
|
Running the `./run` command without any parameters will display the help message, which provides a list of available commands and options. Additionally, you can append `--help` to any command to view help information specific to that command. |
|
|
|
```sh |
|
./run |
|
``` |
|
|
|
**Output**: |
|
|
|
``` |
|
Usage: cli.py [OPTIONS] COMMAND [ARGS]... |
|
|
|
Options: |
|
--help Show this message and exit. |
|
|
|
Commands: |
|
agent Commands to create, start and stop agents |
|
benchmark Commands to start the benchmark and list tests and categories |
|
setup Installs dependencies needed for your system. |
|
``` |
|
|
|
If you need assistance with any command, simply add the `--help` parameter to the end of your command, like so: |
|
|
|
```sh |
|
./run COMMAND --help |
|
``` |
|
|
|
This will display a detailed help message regarding that specific command, including a list of any additional options and arguments it accepts. |
|
|
|
### 2. Setup Command |
|
|
|
```sh |
|
./run setup |
|
``` |
|
|
|
**Output**: |
|
|
|
``` |
|
Setup initiated |
|
Installation has been completed. |
|
``` |
|
|
|
This command initializes the setup of the project. |
|
|
|
### 3. Agents Commands |
|
|
|
**a. List All Agents** |
|
|
|
```sh |
|
./run agent list |
|
``` |
|
|
|
**Output**: |
|
|
|
``` |
|
Available agents: π€ |
|
π forge |
|
π autogpt |
|
``` |
|
|
|
Lists all the available agents. |
|
|
|
**b. Create a New Agent** |
|
|
|
```sh |
|
./run agent create my_agent |
|
``` |
|
|
|
**Output**: |
|
|
|
``` |
|
π New agent 'my_agent' created and switched to the new directory in agents folder. |
|
``` |
|
|
|
Creates a new agent named 'my_agent'. |
|
|
|
**c. Start an Agent** |
|
|
|
```sh |
|
./run agent start my_agent |
|
``` |
|
|
|
**Output**: |
|
|
|
``` |
|
... (ASCII Art representing the agent startup) |
|
[Date and Time] [forge.sdk.db] [DEBUG] π Initializing AgentDB with database_string: sqlite:///agent.db |
|
[Date and Time] [forge.sdk.agent] [INFO] π Agent server starting on http://0.0.0.0:8000 |
|
``` |
|
|
|
Starts the 'my_agent' and displays startup ASCII art and logs. |
|
|
|
**d. Stop an Agent** |
|
|
|
```sh |
|
./run agent stop |
|
``` |
|
|
|
**Output**: |
|
|
|
``` |
|
Agent stopped |
|
``` |
|
|
|
Stops the running agent. |
|
|
|
### 4. Benchmark Commands |
|
|
|
**a. List Benchmark Categories** |
|
|
|
```sh |
|
./run benchmark categories list |
|
``` |
|
|
|
**Output**: |
|
|
|
``` |
|
Available categories: π |
|
π code |
|
π safety |
|
π memory |
|
... (and so on) |
|
``` |
|
|
|
Lists all available benchmark categories. |
|
|
|
**b. List Benchmark Tests** |
|
|
|
```sh |
|
./run benchmark tests list |
|
``` |
|
|
|
**Output**: |
|
|
|
``` |
|
Available tests: π |
|
π interface |
|
π¬ Search - TestSearch |
|
π¬ Write File - TestWriteFile |
|
... (and so on) |
|
``` |
|
|
|
Lists all available benchmark tests. |
|
|
|
**c. Show Details of a Benchmark Test** |
|
|
|
```sh |
|
./run benchmark tests details TestWriteFile |
|
``` |
|
|
|
**Output**: |
|
|
|
``` |
|
TestWriteFile |
|
------------- |
|
|
|
Category: interface |
|
Task: Write the word 'Washington' to a .txt file |
|
... (and other details) |
|
``` |
|
|
|
Displays the details of the 'TestWriteFile' benchmark test. |
|
|
|
**d. Start Benchmark for the Agent** |
|
|
|
```sh |
|
./run benchmark start my_agent |
|
``` |
|
|
|
**Output**: |
|
|
|
``` |
|
(more details about the testing process shown whilst the test are running) |
|
============= 13 failed, 1 passed in 0.97s ============... |
|
``` |
|
|
|
Displays the results of the benchmark tests on 'my_agent'. |
|
|