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.0.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.0-py3-none-any.whl (10.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: jha_cli-1.0.0.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.0.tar.gz
Algorithm Hash digest
SHA256 4141bb16ae02e35ab1050e4421560d05aaf98da3687bd59daea23659b48e2d89
MD5 a9339fb88d7d312d6354cde806def12f
BLAKE2b-256 92d38b983ddf2e0eaef95390dd86c41beed59887360217f7020855ba66529ee0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: jha_cli-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 10.4 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d3d43762b7ad94166fd9a90d165d4714362d7c51d6236ac601cf9dfa83f24f81
MD5 4ebe33a80f5c2521b5391c8f6f566b68
BLAKE2b-256 2d3b4c43839dc08e58a649af53ceaa61d5cdb3ae0ae1da2440a12754eada9c7f

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