Metadata-Version: 2.1
Name: haillo
Version: 1.0.0
Summary: Haillo is a pseudo-terminal multiplexer for hai (hcli_hai), the HCLI command line AI chat and agent application.
Author-email: Jeff Michaud <cometaj2@proton.me>
License: Copyright (c) 2024 Jeff Michaud
        
        Permission is hereby granted, free of charge, to any person obtaining a copy of
        this software and associated documentation files (the "Software"), to deal in
        the Software without restriction, including without limitation the rights to
        use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
        of the Software, and to permit persons to whom the Software is furnished to do
        so, subject to the following conditions:
        
        The above copyright notice and this permission notice shall be included in all
        copies or substantial portions of the Software.
        
        THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
        IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
        FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
        AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
        LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
        OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
        SOFTWARE.
        
Project-URL: Homepage, https://github.com/cometaj2/haillo
Keywords: bash,terminal,agent,ai,llm,web,ui,cli,client,server,connector,hypermedia,rest,generic,development
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Description-Content-Type: text/x-rst
License-File: LICENSE.txt
Requires-Dist: huckle<6.0.0,>=5.9.0
Requires-Dist: hcli_hai<5.0.0,>=4.0.0
Requires-Dist: bashlex==0.18

|pypi| |pyver| |hclicore| |huckle| |hai|

Haillo
======

Haillo is a pseudo-terminal multiplexer for hai (hcli_hai), the HCLI command line AI chat and agent application.

----

Haillo expects to work with the hai HCLI application (hcli_hai + hcli_core + huckle) to interact with locally (or remotely) stored ai conversation contexts.

Note that a valid Ollama or xAI API key has to be setup for hcli_hai to be usable. See hai help after hooking to it with huckle (see installation instructions below).

Help shape HCLI and it's ecosystem by raising issues on github!

[1] http://hcli.io

Related HCLI Projects
---------------------

- hcli_core, an HCLI Connector that can be used to expose a REST API that behaves as a CLI [2]

- huckle is a CLI, and python library, that can act as an impostor for any CLI expressed via hypertext command line interface (HCLI) semantics [3]

- hcli_hai is a python package wrapper that contains an HCLI sample application (hai); hai is an HCLI for interacting with Ollama (GGUF) or xAI (Grok) service provider models via terminal input and output streams."

[2] https://github.com/cometaj2/hcli_core

[3] https://github.com/cometaj2/huckle

[4] https://github.com/cometaj2/hcli_hai


Installation
------------

haillo requires a supported version of Python and pip.

You'll need an WSGI compliant application server to run haillo. For example, you can use Green Unicorn (https://gunicorn.org/).

.. code-block:: console

    pip install haillo
    pip install huckle
    pip install hcli_hai
    pip install hcli_core
    pip install gunicorn
    hcli_core cli install `hcli_hai path`
    huckle cli install localhost:8000
    hcli_core cli run hai | bash
    haillo

Usage
-----

.. code-block:: console

    haillo help
    hcli_hai help
    hcli_core help
    huckle help
    hai help

Versioning
----------

This project makes use of semantic versioning (http://semver.org) and may make use of the "devx",
"prealphax", "alphax" "betax", and "rcx" extensions where x is a number (e.g. 0.3.0-prealpha1)
on github. Only full major.minor.patch releases will be pushed to pip from now on.

Supports
--------

- Interacting with an hcli_hai (hai HCLI application) backend via the huckle hcli client.

To Do
-----

- TBD

Bugs
----

- TBD

.. |pypi| image:: https://img.shields.io/pypi/v/haillo?label=haillo
   :target: https://pypi.org/project/haillo
.. |pyver| image:: https://img.shields.io/pypi/pyversions/haillo.svg
   :target: https://pypi.org/project/haillo
.. |hclicore| image:: https://img.shields.io/pypi/v/hcli-core?label=hcli-core
   :target: https://pypi.org/project/hcli-core
.. |huckle| image:: https://img.shields.io/pypi/v/huckle?label=huckle
   :target: https://pypi.org/project/huckle
.. |hai| image:: https://img.shields.io/pypi/v/hcli-hc?label=hcli-hai
   :target: https://pypi.org/project/hcli-hai
