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.3.tar.gz (8.8 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.3-py3-none-any.whl (10.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: jha_cli-1.0.3.tar.gz
  • Upload date:
  • Size: 8.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for jha_cli-1.0.3.tar.gz
Algorithm Hash digest
SHA256 f1b723b416a023208a5f3c83de93084faa11c462e230f3df2f2f710bc5725c5a
MD5 7ebbf037301464d789596605a2c8131e
BLAKE2b-256 a22bf0fe43dce85be301dd107b2bc204cc78683eaa54dba8829991367f06484e

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for jha_cli-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 9797a2e92f561dcf86ce3073a8b5f5c5fa6944e8ee43124ec243e49a12fbd39f
MD5 0bf6cdad06859ee5aee70bad0c42fac9
BLAKE2b-256 3277d2f7641cfe9de31bdd7a5adbcd0216efa27e7ee07af2776567877badef38

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