Skip to content

kibash is a bash extension that rewrites natural language from your input buffer into the corresponding shell command instantly

License

Notifications You must be signed in to change notification settings

waveplate/kibash

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

kibash (0.1.1)

kibash

kibash is a bash extension that rewrites natural language from your input buffer into the corresponding shell command instantly*

*between 200-500ms, using groq + gpt-oss-20b

Dependencies

kibash depends on cai to query LLMs, as well as jq to parse the structured output

You can install cai a few ways:

  • cargo: cargo install cai
  • brew brew install cai
  • (future: static musl build of cai?)

Installation

Option 1: One-line install

curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/waveplate/kibash/develop/install.sh | sh

Option 2: Clone & Install

  1. Clone this repository:

    git clone https://github.com/waveplate/kibash.git
    cd kibash
  2. Run the installer:

    ./install.sh
  3. Restart your shell or run source ~/.bashrc.

Usage

Type a natural language request in your terminal.

scale cats.mp4 to 720x400 and flip it horizontally

Press Ctrl + Space (default).

The text will be replaced by the corresponding shell command.

ffmpeg -i cats.mp4 -vf "scale=720:400,hflip" cats720.mp4

CLI & Configuration

Commands

kibash config

Shows the current configuration (Provider, Model, System Prompt).

kibash use <provider> <model>

Selects the LLM provider and model.

  • Example: kibash use openai gpt-4o

You can use tab-completion to see the providers supported (openai, cerebras, deepseek, google, anthropic, xai, groq)

The model corresponds to the model string used by the provider's API, or a list of shortened model aliases which you can select via tab-completion.

kibash system "<message>"

Sets the system prompt.

  • Example: kibash system "Generate a linux shell command which corresponds to the prompt, never use output codeblocks"

These commands all support tab-completion

API Keys

The standard naming convention of {PROVIDER}_API_KEY is observed:

  • ANTHROPIC_API_KEY
  • GOOGLE_API_KEY
  • GROQ_API_KEY
  • OPENAI_API_KEY
  • CEREBRAS_API_KEY
  • DEEPSEEK_API_KEY
  • XAI_API_KEY

Or if you want to use cai-specific keys, prepend CAI_ to the variable name, e.g,.

CAI_ANTHROPIC_API_KEY

Or if you prefer YAML, edit ~/.config/cai/secrets.yaml

The key names are the same as in the first section, but but lowercase (e.g., anthropic_api_key, etc)

About

kibash is a bash extension that rewrites natural language from your input buffer into the corresponding shell command instantly

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages