Releases: Guitaricet/howto
Howto 2.0.2
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
The first major update to howto!

New features
-
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. -
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...
- 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.
- 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.
-
Secure API key storage (MacOS only)
Howto 2.0 is now using MacOS keychain to the API key in a secure way. -
Simpler installation
Howto now includes a simple two-line installation script that automatically picks up the latest binaries for your system.
Breaking changes
- Howto 2.0 does not support davinchi and codex models. They and soon to be disabled in OpenAI API.
- 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
Adds --env argument for simplifying bug reports.
Howto v1.0.2
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
Improved "OPENAI_API_KEY not set" message
Howto v1.0
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.6Forgot 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=dQw4w9WgXcQIt 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
v0.1.2 improve error handling, update readme
Initial release
v0.1.1 update readme and release action