A CLI tool connected to GPT-3 to help find the right terminal command

Overview

Command Recall

A CLI tool connected to GPT-3 to help find the right terminal command

Install

to install the cli: cargo install --git https://github.com/CamilleMo/command_recall

Configure token

To use this project, an openai token is needed.
Get one at https://platform.openai.com/account/api-keys

then configure the cli with your token:
command_recall configure --token <token>
or if you don't want to input your token in the terminal:
command_recall configure
It will create the config file without token
then input your token manually in the config file.

Usage

Optionally create an alias: alias cr='command_recall ask -n 5 --task'

command_recall ask --task "find my raspberry on my LAN"
┌────────┬──────────────┬─────────────────────────────────────────────┐
│ number │ command      │ description                                 │
├────────┼──────────────┼─────────────────────────────────────────────┤
│ 1.     │ nmap -sn     │ Network Mapper - Ping Scan                  │
│ 2.     │ arp-scan     │ ARP Scanner                                 │
│ 3.     │ avahi-browse │ Browse for mDNS/DNS-SD services             │
│ 4.     │ nbtscan      │ NetBIOS Name Service Scanner                │
│ 5.     │ nmap -sP     │ Network Mapper - Ping Scan                  │
│ 6.     │ nmap -sL     │ Network Mapper - List Scan                  │
│ 7.     │ nmap -sU     │ Network Mapper - UDP Scan                   │
│ 8.     │ nmap -sV     │ Network Mapper - Version Detection          │
│ 9.     │ nmap -O      │ Network Mapper - Operating System Detection │
│ 10.    │ nmap -A      │ Network Mapper - Aggressive Scan            │
└────────┴──────────────┴─────────────────────────────────────────────┘

command_recall ask --task "mount my hard drive"
┌────────┬────────────┬──────────────────────────────────────────┐
│ number │ command    │ description                              │
├────────┼────────────┼──────────────────────────────────────────┤
│ 1.     │ mount      │ Mount a filesystem                       │
│ 2.     │ fdisk      │ Manipulate disk partition table          │
│ 3.     │ blkid      │ Locate/print block device attributes     │
│ 4.     │ lsblk      │ List information about block devices     │
│ 5.     │ mkfs       │ Create a filesystem                      │
│ 6.     │ parted     │ Partition table manipulator              │
│ 7.     │ mountpoint │ Determine if a directory is a mountpoint │
│ 8.     │ df         │ Report file system disk space usage      │
│ 9.     │ umount     │ Unmount file systems                     │
│ 10.    │ fsck       │ Check and repair a Linux filesystem      │
└────────┴────────────┴──────────────────────────────────────────┘

command_recall ask -n 5 --task "mount my hard drive using mount"
┌────────┬─────────────────────────────────────────────────────┬──────────────────────────┐
│ number │ command                                             │ description              │
├────────┼─────────────────────────────────────────────────────┼──────────────────────────┤
│ 1.     │ mount -t auto /dev/sda1 /mnt/mydrive                │ Mount a filesystem       │
│ 2.     │ mount -o remount,rw /dev/sda1 /mnt/mydrive          │ Remount a filesystem     │
│ 3.     │ mount -o loop /mnt/mydrive/myimage.iso /mnt/mydrive │ Mount a loopback device  │
│ 4.     │ mount -t ntfs-3g /dev/sda1 /mnt/mydrive             │ Mount an NTFS filesystem │
│ 5.     │ mount -t ext4 /dev/sda1 /mnt/mydrive                │ Mount an ext4 filesystem │
└────────┴─────────────────────────────────────────────────────┴──────────────────────────┘

-n will limit the number of results to a number between 1 and 10.

Notes

  • Even if the temperature is set to 0 the model is not determinist. Response can change.
  • Timeouts happen frequently.
You might also like...
A CLI tool to get help with CLI tools 🐙
A CLI tool to get help with CLI tools 🐙

A CLI tool to get help with CLI tools 🐙 halp aims to help find the correct arguments for command-line tools by checking the predefined list of common

fd is a program to find entries in your filesystem. It is a simple, fast and user-friendly alternative to find
fd is a program to find entries in your filesystem. It is a simple, fast and user-friendly alternative to find

fd is a program to find entries in your filesystem. It is a simple, fast and user-friendly alternative to find. While it does not aim to support all of find's powerful functionality, it provides sensible (opinionated) defaults for a majority of use cases.

Help Skelly to find bones, combine them to build his body back
Help Skelly to find bones, combine them to build his body back

Bones Collector Help Skelly to find bones, combine them to build his body back! Game made for the bevy Jam#2. Play it here in your browser: itch.io! R

Pathfinding on grids using jumping point search and connected components.

grid_pathfinding A grid-based pathfinding system. Implements Jump Point Search with improved pruning rules for speedy pathfinding. Pre-computes connec

A cross-platform library for retrieving information about connected devices.

Devices devices is a cross-platform library for retrieving information about connected devices. Combined with a library like sysinfo, a more or less c

Yet another command-line chat GPT frontend written in Rust.
Yet another command-line chat GPT frontend written in Rust.

gpterm Yet another command-line chat GPT frontend written in Rust. Features Stream output with typing effect Store chat messages/history Context aware

A CLI tool to find the dominant colours in an image 🎨
A CLI tool to find the dominant colours in an image 🎨

dominant_colours This is a command-line tool for finding the dominant colours of an image. It prints their hex codes to the terminal, along with a pre

CLI tool to find duplicate files based on their hashes.

Dupper Dupper is a CLI tool that helps you identify duplicate files based on their hashes (using the Seahash hashing algorithm). Installation You can

Owner
Camille Moatti
Machine Learning Engineer. Constantly exploring new tools and technologies.
Camille Moatti
Run the right version of python, in the right environment, for your project

rpy Do you deal with lots of virtual python environments? rpy is for you! Before rpy: ~/dev/prj$ env PYTHONPATH=src/py path/to/my/interpreter src/py/m

Aquatic Capital Management 2 Dec 8, 2022
All in One AI Chat Tool( GPT-4 / GPT-3.5 /OpenAI API/Azure OpenAI)

WeChatAI Create All in One personal AI chat assistant English | 中文介绍 This project is not for reward and profit, only used for personal Screenshot Supp

null 38 Apr 25, 2023
GPT-3 powered CLI tool to help you remember bash commands.

Rusty: GPT-3 Powered CLI Tool Convert natural language into executable commands directly from the terminal! Open source CLI tool powered by OpenAI (br

Zahid Khawaja 287 Apr 19, 2023
A simple and efficient terminal UI implementation with ratatui.rs for getting quick insights from csv files right on the terminal

CSV-GREP csv-grep is an intuitive TUI application writting with ratatui.rs for reading, viewing and quickly analysing csv files right on the terminal.

Anthony Ezeabasili 16 Mar 10, 2024
fas stand for Find all stuff and it's a go app that simplify the find command and allow you to easily search everything you nedd

fas fas stands for Find all stuff and it's a rust app that simplify the find command and allow you to easily search everything you need. Note: current

M4jrT0m 1 Dec 24, 2021
lemmy-help is a emmylua parser as well as a CLI which takes that parsed tree and converts it into vim help docs.

lemmy-help is a emmylua parser as well as a CLI which takes that parsed tree and converts it into vim help docs.

Vikas Raj 117 Jan 3, 2023
Send emails right from the terminal using Rust!

Send emails right from the terminal using Rust!

Dhravya Shah 7 Dec 21, 2022
Browse and listen to thousands of radio stations across the globe right from your terminal 🌎 📻 🎵✨

TuneIn CLI A command line interface for TuneIn Radio. You can search for stations, play them, and see what's currently playing. ?? Installation Compil

Tsiry Sandratraina 8 Mar 2, 2023
🍥 Access the rust playground right in your terminal

rustycli — ?? Access the rust playground right in your terminal ?? rustycli is a tool, allowing you to access the rust playground right in the termina

Nabeen Tiwaree 29 Jul 31, 2023
Get your github contributions right in your terminal, blazingly fast!

GitColorScripts Get your github contributions right in your terminal! Installation Install via yay yay -S gitcolorscripts Install manually Download t

VoidCupboard 56 Jul 12, 2023