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

Uploaded Python 3

File details

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

File metadata

  • Download URL: jha_cli-1.0.2.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.2.tar.gz
Algorithm Hash digest
SHA256 cabcffed534152efd4cff250a32db1b9090c6c83576b48e26e15f4eaba020623
MD5 e0490ae7f669304108a42ebedc5ce78e
BLAKE2b-256 33540a61cc00420bac0a143c83c0e91f8c99f36c94f3c28004e1c98acb3b48b0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: jha_cli-1.0.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 bcb0fbdd6c0ca48b9d2ff0ff56d4dc4360ae45e47e03a8aa709a0b74548bec90
MD5 b9b7aac82e81c023f8bef6cfbc55558d
BLAKE2b-256 bd3403f40b22924c947482547a7ec4bb4323f4244768d2ed92ca4adea1c84ea8

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