Skip to content

GPT-3 powered Zsh completion script

License

Notifications You must be signed in to change notification settings

Austinito/lazyshell

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LazyShell

LazyShell is a GPT-3 powered utility for Zsh that helps you write and modify console commands using natural language. Perfect for those times when you can't remember the command line arguments for tar and ffmpeg, or when you just want to save time by having AI do the heavy lifting. The tool uses your current command line content (if any) as a base for your query, so you can issue modification requests for it. Invoke the completion with ALT+G hotkey; you still have to manually press enter to execute the suggested command.

Screenshot

LazyShell is currently in alpha stage and may have bugs. Currently only Zsh is supported.

Query examples:

Unpack download.tar.gz

Start nginx server in docker
    Mount current dir

Speed up the video 2x using ffmpeg
    Remove audio track

Installation

Get OpenAI API key from OpenAI dashboard.

# install prerequisites
brew install curl jq

# Download the script
curl -o ~/.lazyshell.zsh https://raw.githubusercontent.com/not-poma/lazyshell/master/lazyshell.zsh

# Add the following lines to your .zshrc
export OPENAI_API_KEY=<your_api_key>
[ -f ~/.lazyshell.zsh ] && source ~/.lazyshell.zsh

After that restart your shell. You can invoke the completion with ALT+G hotkey.

Contributing

This script is a crude hack, so any help is appreciated, especially if you can write zsh completion scripts. Feel free to open an issue or a pull request.

Inspired by https://github.com/TheR1D/shell_gpt

TODO

  • support for other shells
  • support keyboard interrupts
  • token streaming
  • companion tool that explains the current command line contents
  • allow query editing while the previous one is in progress
  • make some kind of preview before replacing the buffer
  • better json escaping
  • better error handling
  • query history
  • create brew package
  • maybe choose a better default shortcut?

About

GPT-3 powered Zsh completion script

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 100.0%