Skip to main content

Command Line AI Assistant that converts natural language to Unix commands using Groq AI

Project description

Borabora - Command Line AI Assistant

🤖 Borabora is a command-line tool that converts natural language descriptions into Unix/Linux commands using Groq's lightning-fast AI models. Never forget terminal commands again!

✨ Features

  • 🗣️ Natural Language to Commands: Convert plain English to Unix commands
  • 🚀 Instant Execution: Option to execute commands immediately
  • 🔧 Easy Configuration: Simple API key setup
  • 💡 Smart Suggestions: Powered by Groq's ultra-fast AI
  • 🛡️ Safe by Default: Shows command before execution

📦 Installation

Install Borabora directly from PyPI:

pip install borabora

Or install from source:

git clone https://github.com/invisible-hand/borabora.git
cd borabora
pip install -e .

🔑 Setup

Before using Borabora, you need to configure your Groq API key:

  1. Get your API key from Groq Console
  2. Run the configuration command:
borabora --config
  1. Enter your API key when prompted

Alternatively, you can set the environment variable:

export GROQ_API_KEY="your-api-key-here"

🚀 Usage

Basic Usage

Convert natural language to commands:

borabora list all files in the current folder as a list
# Output: 💡 Suggested command: ls -al

borabora push code  
# Output: 💡 Suggested command: git push origin main

borabora show disk usage
# Output: 💡 Suggested command: df -h

borabora find all python files
# Output: 💡 Suggested command: find . -name "*.py"

Execute Commands (Default Behavior)

Borabora will prompt you to execute commands by default:

borabora show current directory
# Output: 💡 Suggested command: pwd
# Execute this command? (y/N): y
# 🚀 Executing: pwd
# /Users/username/current/path

Dry-Run Mode

Use the --dry-run or -d flag to only show commands without executing:

borabora -d show current directory
# Output: 💡 Suggested command: pwd
# 🔍 Dry-run mode: Command not executed.

Examples

Here are some example natural language inputs and their corresponding commands:

Natural Language Generated Command
"list all files in current folder as a list" ls -al
"push code" git push origin main
"show disk usage" df -h
"find all python files" find . -name "*.py"
"show running processes" ps aux
"create a new directory called test" mkdir test
"download file from url" wget [url] or curl -O [url]
"show git status" git status
"compress folder into zip" zip -r folder.zip folder/
"show network connections" netstat -an

🛠️ Command Line Options

borabora [OPTIONS] [COMMAND...]

Options:
  --config          Configure API key and settings
  --dry-run, -d     Show command without executing (default is to execute)
  --version, -v     Show version information
  --help, -h        Show help message

🔧 Configuration

Borabora stores its configuration in ~/.clai/config.json. You can:

  • Set API key: borabora --config
  • Use environment variable: GROQ_API_KEY

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository at https://github.com/invisible-hand/borabora
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

⚠️ Disclaimer

  • Always review generated commands before execution
  • Borabora is powered by Groq AI and may occasionally generate incorrect commands
  • Borabora executes commands by default after confirmation - use --dry-run for safety
  • The tool is designed for common Unix/Linux commands and may not cover all edge cases

🙋‍♂️ Support

If you encounter any issues or have questions:

  1. Check the Issues page
  2. Create a new issue if your problem isn't already reported
  3. Provide as much detail as possible about your environment and the issue

🎯 Roadmap

  • Support for more AI models
  • Command history and favorites
  • Interactive mode
  • Plugin system for custom commands
  • Shell integration (bash/zsh completions)
  • Command explanation mode

Made with ❤️ by AndreyZ

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

borabora-0.1.1.tar.gz (12.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

borabora-0.1.1-py3-none-any.whl (9.5 kB view details)

Uploaded Python 3

File details

Details for the file borabora-0.1.1.tar.gz.

File metadata

  • Download URL: borabora-0.1.1.tar.gz
  • Upload date:
  • Size: 12.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for borabora-0.1.1.tar.gz
Algorithm Hash digest
SHA256 55b576e1f28d99a719cfb49b5c46b52227a44d07778fc9b655eb238350d2f817
MD5 9146302f9051efcc2ba766fdb4b88a97
BLAKE2b-256 b81d17a1c217bd034f8135408583c24ac158cdadde0d86e60f26329b21a355e7

See more details on using hashes here.

File details

Details for the file borabora-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: borabora-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 9.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for borabora-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d32b1cf42e8d93cdef683e90b1cfc01d4c67e71de099331b0c911b9271843382
MD5 242d67985525bb3254adc1f4b4bb5504
BLAKE2b-256 2c1195dadff7ef837bd3c2e1cdc7e2f929ac7cfbce26ed395e4c0367e4d31508

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page