Skip to main content

JHA - Just Help Assistant. LLM-powered CLI command discovery.

Project description

JHA - Just Help Assistant

For those - who still are not friend with CLI.

A powerful LLM-based CLI tool that helps you find and execute the right commands for your development workflows.

Features

LLM-Powered Command Discovery

  • Query for suitable commands using natural language
  • Get explanations for complex commands
  • Support for multiple shells (bash, zsh, cmd, powershell)
  • Command history tracking for quick re-execution or recall

🔧 Configuration Management

  • Simple config command to set OpenAI API key
  • Choose your preferred LLM model
  • Specify your shell
  • Persistent configuration storage

📋 Usage Examples

# Check Installation
jha version
jha --help

# Setup your API key, MODEL & Shell
jha config set OPENAI_KEY=sk-xxx-yyy-zzz #Acquire & Set your OpenAI Key
jha config set MODEL=gpt-4o-mini # Set your preferred model
jha config set SHELL=bash # Set the bash you are working on

# Find a command
jha "Move a folder with all its children to another location"

# Get explanation for last command
jhax

# Get explanation for any command
jha explain "<command-goes-here>"

# See all historical commands
jha history 
jha history clear

Installation

Prerequisites

  • Python 3.8+
  • pip or poetry

Development Setup

  1. Clone/Download the project

  2. Create virtual environment:

python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
  1. Install dependencies:
pip install -r requirements.txt
  1. Install as CLI command:
pip install -e .

Configuration

Configuration is stored in ~/.jha/config.json

Architecture

  • Typer: CLI framework for argument parsing and command routing
  • OpenAI Python SDK: LLM integration
  • Click: Terminal formatting and colors
  • JSONSchema: Configuration management

Project Structure

jha-cli/
├── src/
│   ├── __init__.py
│   ├── __main__.py           # Entry point
│   ├── cli.py                # Main CLI commands
│   ├── config.py             # Configuration management
│   ├── llm.py                # LLM integration
│   ├── history.py            # Command history tracking
│   └── utils.py              # Utility functions
├── setup.py
├── requirements.txt
└── README.md

Contributing

Feel free to submit issues and enhancement requests!

License

MIT

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

jha_cli-1.0.1.tar.gz (8.9 kB view details)

Uploaded Source

Built Distribution

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

jha_cli-1.0.1-py3-none-any.whl (10.3 kB view details)

Uploaded Python 3

File details

Details for the file jha_cli-1.0.1.tar.gz.

File metadata

  • Download URL: jha_cli-1.0.1.tar.gz
  • Upload date:
  • Size: 8.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for jha_cli-1.0.1.tar.gz
Algorithm Hash digest
SHA256 bd67060b753a2ebfbb75a756f7b3a39a82ada5bf0e27780b7c27718f85a69c9b
MD5 ed932ddc6cd62979471cc0b0a70602ac
BLAKE2b-256 87ef67308a19487214d72c4e057a915c6ed966580f9485794f9e0897a2f9e29d

See more details on using hashes here.

File details

Details for the file jha_cli-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: jha_cli-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 10.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for jha_cli-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 de09c9fe17ea3e209b817a642a4889016dd9874a27ff82cdccc9be4a4af26526
MD5 0effe16796a14a56a57920d95190c6e2
BLAKE2b-256 0def8e3ca046eb4097da5e1040680d7bcfd98c44dba1ad8d30969711cccf1905

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