You signed in with another tab or window.Reload to refresh your session.You signed out in another tab or window.Reload to refresh your session.You switched accounts on another tab or window.Reload to refresh your session.Dismiss alert
You just need to write a comment or variable name and the AI will write the corresponding code.
What is it?
This is a ZSH plugin that enables you to use AI powered code completion in the command line. It now supports both OpenAI's Codex and Google's Generative AI (Gemini). OpenAI Codex is the AI that also powers GitHub Copilot, while Gemini is Google's advanced language model.
How do I install it?
Manual Installation
Install the OpenAI package, the Google package, or boto3.
# in your/custom/path you need to have a "plugins" folder and in there you clone the repository as zsh_codexexport ZSH_CUSTOM="your/custom/path"source"$ZSH_CUSTOM/plugins/zsh_codex/zsh_codex.plugin.zsh" bindkey'^X' create_completion
Create a file calledzsh_codex.ini in~/.config.Example:
; Primary service configuration; Set 'service' to match one of the defined sections below.[service]service = groq_service; Example configuration for a self-hosted Ollama service.[my_ollama]api_type = openaiapi_key = dummy_keymodel = llama3.1base_url = http://localhost:11434/v1; OpenAI service configuration; Provide the 'api_key' and specify a 'model' if needed.[openai_service]api_type = openaiapi_key = <openai_apikey>; Groq service configuration; Provide the 'api_key'.[groq_service]api_type = groqapi_key = <groq_apikey>model = gemma2-9b-it; Mistral service configuration; Provide the 'api_key'.[mistral_service]api_type = mistralapi_key = <mistral_apikey>model = mistral-small-latest
In this configuration file, you can define multiple services with their own configurations. The required and optional parameters of theapi_type are specified inservices/sevices.py. Choose which service to use in the[service] section.
Runzsh, start typing and complete it using^X!
If you use virtual environments you can setZSH_CODEX_PYTHON to python executable whereopenai orgoogle-generativeai is installed.e.g. forminiconda you can use:
zsh-syntax-highlighting: unhandled ZLE widget 'create_completion'zsh-syntax-highlighting: (This is sometimes caused by doing `bindkey <keys> create_completion` without creating the 'create_completion' widget with `zle -N` or `zle -C`.)
Add the line
zle -N create_completion
before you callbindkey but after loading the plugin (plugins=(zsh_codex)).