Skip to content

Releases: Guitaricet/howto

Howto 2.0.2

03 Aug 16:46

Choose a tag to compare

Fixes the error when keyring exists on linux. This is a temporary fix that uses env variable even if keyring is set up. Will fix it properly when I figure out how keyring works on linux.

Howto 2.0

23 Jul 02:19

Choose a tag to compare

The first major update to howto!

Screenshot 2023-07-22 at 9 26 08 PM

New features

  1. OpenAI Completions API.
    You can now choose between gpt-3.5-turbo and gpt-4 models.
gpt-3.5-turbo is better, faster, and cheaper than davinchi now becomes the new default.
    If you feel like GPT-3.5 is not good enough for you, you can upgrade to a more powerful GPT-4` by modifying the config.

  2. Configuration file.
    
Now, howto is more configurable via a config file located at ~/.howto/config.json).

  "model": "gpt-3.5-turbo",
  "shell": "zsh",
  "max_tokens": 512,

You can select your favorite shell, the maximum length of the generated command, and...

  1. Custom system messages.
    You can modify the AI behavior by providing it with a custom system message.

    The system message used in howto 2.0 by default is
You are a CLI tool that converts user requests to shell commands or short scripts. E.g., for `bash command to tar file without compression:`, you should reply `tar -cf file.tar file`. Avoid natural language. If you have to use it, be extremely concise. Less than 5 words.

You are free to modify it any way you want.

  1. Follow-up questions.
    
If howto did not generate the right command, you can try to guide it with follow-up messages. This should not significantly affect the performance or costs but should make howto experience more fluid.

    For example:
❯❯❯ howto create a bucket
gsutil mb gs://bucket-name
❯❯❯ howto in aws
aws s3api create-bucket --bucket bucket-name

All requests generated at the last minute are considered follow-up.

  1. Secure API key storage (MacOS only)
    
Howto 2.0 is now using MacOS keychain to the API key in a secure way.

  2. Simpler installation
    
Howto now includes a simple two-line installation script that automatically picks up the latest binaries for your system.

Breaking changes

  1. Howto 2.0 does not support davinchi and codex models. They and soon to be disabled in OpenAI API.
  2. Environment variable HOWTO_OPENAI_MODEL is deprecated in favor of the config file.

Plans for 2.X

Caching will be the next feature in howto. I don't know when it will be implemented, but I hope soon.
In the more distant future, I am planning to give howto more information about the files in the current open directory and to support alternative AI-engines (LLMs), including opensource LLMs.

Final thoughts

While I keep developing howto, I am not planning to significantly alter its functionality or add many new features. Howto has been an extremely simple tool without bells and whistles and it always will be. Just type howto do a thing, and howto will reply with plain text. No extra screens or fancy TUI decorations, no dialogue choice options — howto is dedicated to reducing a single interaction length to a minimum.

Howto v1.0.3

28 Oct 18:47

Choose a tag to compare

Adds --env argument for simplifying bug reports.

Howto v1.0.2

23 Oct 12:35
095b33b

Choose a tag to compare

Minor code improvements - removed manual bash command concatenating, removed some useless byte-string/string-byte conversions, added os.Exit(1) in error handlers (this is possibly a bug fix).

Contributors: @fakefloordiv

Howto v1.0.1

22 Oct 20:40

Choose a tag to compare

Improved "OPENAI_API_KEY not set" message

Howto v1.0

22 Oct 20:10

Choose a tag to compare

Howto v1.0

Howto is a GPT-3/Codex-powered shell tool that allows you to talk with your shell in natural language.

Forgot how to create a conda environment?

% howto create conda env
conda create -n <env_name> python=3.6

Forgot how to add a new env to Jupyter?

% howto add kernel to jupyter
python -m ipykernel install --user --name=

Want to download the biggest Rick Astley's hit?

% howto download youtube video for never give you up
youtube-dl -f 18 https://www.youtube.com/watch?v=dQw4w9WgXcQ

It can also suggest how to be a nicer person

 % howto be a nicer person
alias please='sudo'

It works by sending requests to OpenAI API and requires you to setup your own OPENAI_API_TOKEN.

Improved error handling

22 Oct 19:32

Choose a tag to compare

Pre-release
v0.1.2

improve error handling, update readme

Initial release

22 Oct 19:20

Choose a tag to compare

Initial release Pre-release
Pre-release
v0.1.1

update readme and release action