Skip to main content

cli-bob

cli-bob uses AI to generate command line code in case you can't remember the exact syntax.

Under the hood, it uses the Large Language Models (LLMs) to generate commands.

Disclaimer

cli-bob is a research project aiming at streamlining command line interaction. Under the hood it uses artificial intelligence / large language models to generate terminal commands fulfilling the user's requests. Users are responsible to verify the generated commands before executing them.

When using cli-bob you configure it to use an API key to access the AI models. You have to pay for the usage and must be careful in using the generated commands. Do not use this technology if you are not aware of the costs and consequences.

[!CAUTION] When using the Anthropic, OpenAI, DeepSeek or any other endpoint via cli-bob, you are bound to the terms of service of the respective companies or organizations. The text you enter is transferred to their servers and may be processed and stored there. Make sure to not submit any sensitive, confidential or personal data. Also using these services may cost money.

Installation

pip install cli-bob

Configuring which LLM to use

cli-bob uses the claude LLM for generating commands per default. You can configure other LLM-service providers by setting the environment variable CLI_BOB_LLM_NAME. Additionally, you need to set the respective API key for the LLM-service provider.

Model name API key
anthropic:claude-3-5-sonnet-20241022 ANTHROPIC_API_KEY (get here)
openai:gpt-4o-2024-08-06 OPENAI_API_KEY (get here)
github_models:gpt-4o (openai-compatible models only) GH_MODELS_API_KEY (get here)
deepseek:deepseek-chat DEEPSEEK_API_KEY (get here)
kisski:codestral-22b KISSKI_API_KEY (get here)
blablador:alias-code BLABLADOR_API_KEY (get here)
ollama:deepseek-coder-v2 no API key required, but model downloaded )

For quickly testing the models, you can set an environment variable in your terminal on Windows like this:

Usage

On the terminal start typing bob and afterwards specify what you want to do. cli-bob will then generate a command proposal for you and you can hit ENTER to run it. You can also modify the command before running it. Hit ESC to cancel execution.

Debugging

To make sure cli-bob uses the right LLM, you can activate the verbose mode by calling bob -v <your prompt>. It will then print its version, available prompt-handlers and the chosen prompt handler.

Acknowledgements

We acknowledge the financial support by the Federal Ministry of Education and Research of Germany and by Sächsische Staatsministerium für Wissenschaft, Kultur und Tourismus in the programme Center of Excellence for AI-research „Center for Scalable Data Analytics and Artificial Intelligence Dresden/Leipzig", project identification number: ScaDS.AI

Metadata

Release files for cli-bob 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cli-bob 0.2.1
File Size Uploaded
cli_bob-0.2.1.tar.gz 9.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for cli-bob 0.2.1
File Interpreter ABI Platform
cli_bob-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 18.2 kB

Release files / cli_bob-0.2.1.tar.gz

Download URL cli_bob-0.2.1.tar.gz
Size 9.9 kB
Tags Source
SHA-256 checksum
How to use checksums
8946b4dabf7196d1972ee4f617f70335554f90ce4f9dc0f9a889f1c1988ef7e2
BLAKE2b-256 checksum
How to use checksums
659fb4d82688e84348dca8040faebc70daf92c86104c4bbefae6944293ca3bf2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release files / cli_bob-0.2.1-py3-none-any.whl

Download URL cli_bob-0.2.1-py3-none-any.whl
Size 8.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fcc49c20f50038b2a9025dde38db608609edba9e5700c9b702e9348202b8b9fb
BLAKE2b-256 checksum
How to use checksums
8095b5b129e374bf310015c73702914e0cc69a22a47fa49a1ec77cfcf9ff78dc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page