Lookup CLI commands easily
Project description
Zev 🔍
Zev helps you remember (or discover) terminal commands using natural language.
🔧 Installation
pip install zev
- Note: This project runs on top of LLM APIs like OpenAI, Google's Gemini, or Ollama.
📦 Dependencies
For clipboard functionality (copying and pasting) to work properly, you may need to install:
- On Linux:
xcliporxsel(for X11) orwl-clipboard(for Wayland) - On macOS: No additional dependencies needed
- On Windows: No additional dependencies needed
🎮 Usage
Option 1: Interactive Mode
zev
Option 2: Direct Query
zev '<what you want to do>'
📝 Examples
# Find running processes
zev 'show all running python processes'
# File operations
zev 'find all .py files modified in the last 24 hours'
# System information
zev 'show disk usage for current directory'
# Network commands
zev 'check if google.com is reachable'
# Git operations
zev 'show uncommitted changes in git'
🛡️ Safety Considerations
⚠️ Commands are generated by LLMs. While the tool attempts to flag dangerous commands, it may not always do so. Use caution.
⚙️ Settings
Supported LLM Providers:
- OpenAI
- Google Gemini
- Ollama
- Azure OpenAI
You can update your API keys and provider settings by running:
zev --setup
OpenAI
To use OpenAI, you need an OpenAI account and a subscription. You can create an API key on this page.
Google Gemini (Free)
To use Google's Gemini models, you need a Google AI Studio account. You can create a Gemini API key in Google AI Studio.
🐪 Using with Ollama
You can use Zev with Ollama as an alternative to hosted providers, which lets you run all commands locally. To set this up:
-
Install and start Ollama with a model of your choice
-
Run
zev --setupand put in the proper settings. For example:
? Pick your LLM provider: Ollama
? Enter the Ollama URL: http://localhost:11434/v1
? Enter the model to use (e.g. llama3.2): llama3.2
Azure OpenAI
To use Azure OpenAI, you’ll need access to an Azure OpenAI resource in your Azure subscription.
-
Create a deployment of the model you want to use (e.g.,
gpt-4o,gpt-4o-minietc.). -
Install required Azure depedencies with
pip install zev[azure]. -
Run
zev --setupand put in the proper settings. For example:? Pick your LLM provider: Azure OpenAI ? Azure OpenAI account name (e.g. my-openai-resource): my-openai-resource ? Azure OpenAI API key (leave blank to use Entra ID / keyless auth): ? Azure OpenAI deployment name (e.g. gpt-4, gpt-4o, etc): gpt-4o ? Azure OpenAI API version: 2025-03-01-preview
Note: Model version must be 2024-08-06 or newer.
API version must be 2024-08-01-preview or newer.
Note that to switch backends, you can re-run zev --setup again at any time.
🤝 Contributing
Contributions are welcome! See CONTRIBUTING.md for details.
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file zev-0.8.1.tar.gz.
File metadata
- Download URL: zev-0.8.1.tar.gz
- Upload date:
- Size: 14.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a9027f16a34c2443b3dcc09f401ffebeae440881b57c6b686ff47ae6fb5ed92c
|
|
| MD5 |
cad8d5d3f62ed065fb4dd5c3a6ec2556
|
|
| BLAKE2b-256 |
c2bf17155d428149a2bb3b10a5e932038190b63d177d9e71768ff3ffeef8f459
|
Provenance
The following attestation bundles were made for zev-0.8.1.tar.gz:
Publisher:
publish.yml on dtnewman/zev
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
zev-0.8.1.tar.gz -
Subject digest:
a9027f16a34c2443b3dcc09f401ffebeae440881b57c6b686ff47ae6fb5ed92c - Sigstore transparency entry: 216097058
- Sigstore integration time:
-
Permalink:
dtnewman/zev@29a69a73ea001d7d995ed81e2b3c55f7a0264d63 -
Branch / Tag:
refs/tags/v0.8.1 - Owner: https://github.com/dtnewman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@29a69a73ea001d7d995ed81e2b3c55f7a0264d63 -
Trigger Event:
push
-
Statement type:
File details
Details for the file zev-0.8.1-py3-none-any.whl.
File metadata
- Download URL: zev-0.8.1-py3-none-any.whl
- Upload date:
- Size: 18.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b0c3dcfb2d6000ee0711e5f129e1e03f60ce04690fe7d942737ceeb590e7c228
|
|
| MD5 |
82f6c22e6708229f453e6bf0454e3c1c
|
|
| BLAKE2b-256 |
74db26ef40a45e1b2bb86970ad31bb34b5b72801c01be4ca00d9af0f637bbe8d
|
Provenance
The following attestation bundles were made for zev-0.8.1-py3-none-any.whl:
Publisher:
publish.yml on dtnewman/zev
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
zev-0.8.1-py3-none-any.whl -
Subject digest:
b0c3dcfb2d6000ee0711e5f129e1e03f60ce04690fe7d942737ceeb590e7c228 - Sigstore transparency entry: 216097059
- Sigstore integration time:
-
Permalink:
dtnewman/zev@29a69a73ea001d7d995ed81e2b3c55f7a0264d63 -
Branch / Tag:
refs/tags/v0.8.1 - Owner: https://github.com/dtnewman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@29a69a73ea001d7d995ed81e2b3c55f7a0264d63 -
Trigger Event:
push
-
Statement type: