Skip to main content

HCLI - Hex-Rays CLI Utility

Project description

IDA HCLI

PyPI version License: MIT Python 3.10+

A modern command-line interface for managing IDA Pro licenses, downloads, ...

Documentation

See https://hcli.docs.hex-rays.com/

Contributing

HCLI is under heavy active development by our team. We are not accepting external contributions at this time due to:

  • Rapid development and frequent breaking changes
  • Tight integration requirements with our proprietary IDA Pro workflows
  • Internal roadmap priorities and architectural decisions

However feel free to report bugs or suggest features via Issues

For our internal team, please see our Contributing Guidelines for development setup and workflow.

License

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

Issues and Support

Development

Prerequisites

  • Python 3.10 or higher
  • uv package manager

Setup

# Clone the repository
git clone https://github.com/HexRaysSA/ida-hcli.git
cd ida-hcli

# Install dependencies
uv sync

# Run in development mode
uv run hcli --help

Build System

# Install with development dependencies
uv sync --extra dev 

# Build package
uv build 

# Run development tools
uvx ruff format
uvx ruff check --fix
uvx ruff check --select I --fix
uvx mypy --check-untyped-defs src/ tests/ --exclude tests/data/ --disable-error-code=import-untyped --disable-error-code=import-not-found

Documentation

Documentation is automatically generated from source code:

# Build documentation
uv run mkdocs build

# Serve documentation locally
uv run mkdocs serve

# Documentation includes:
# - CLI commands (from Click help text)
# - API reference (from Python docstrings)
# - Usage examples (auto-generated)

Testing

# Run tests
uv run pytest

# Test CLI commands
uv run hcli whoami
uv run hcli plugin list

See CONTRIBUTING.md for detailed development guidelines.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

ida_hcli-0.17.2.tar.gz (133.8 kB view details)

Uploaded Source

Built Distribution

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

ida_hcli-0.17.2-py3-none-any.whl (175.0 kB view details)

Uploaded Python 3

File details

Details for the file ida_hcli-0.17.2.tar.gz.

File metadata

  • Download URL: ida_hcli-0.17.2.tar.gz
  • Upload date:
  • Size: 133.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ida_hcli-0.17.2.tar.gz
Algorithm Hash digest
SHA256 4f930c7118bccc5eee526a5abdf50ebe3e9e192c9f265648b12609341636dc71
MD5 b2dd968a95f1257106a1cf9ba0a0c2ce
BLAKE2b-256 1d188e13fe85fc0222f6f27edf13edb4a5cd26e7ec5ce3c1d7fcde60fec82a3c

See more details on using hashes here.

File details

Details for the file ida_hcli-0.17.2-py3-none-any.whl.

File metadata

  • Download URL: ida_hcli-0.17.2-py3-none-any.whl
  • Upload date:
  • Size: 175.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ida_hcli-0.17.2-py3-none-any.whl
Algorithm Hash digest
SHA256 8faf9dc361db8f48444397ecadb62982852d4f6f29b3875d90938d18bc2743f4
MD5 179ac44bb890677884e7c9bef8c9f330
BLAKE2b-256 9722a8500758109a5855ee1be6c61493ff4d76e988ab8c163a1c21f15cd8c3e7

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