CLI orchestration tool for agentic workflows - coordinate tasks with claude-code and other AI agents
Project description
hyh
A CLI orchestration tool for agentic workflows. Coordinate tasks with AI agents through a daemon-based task management system.
hyh (hold your horses) provides DAG-based task orchestration with atomic state transitions, designed for coordinating claude-code and other AI agents in development workflows.
Highlights
- DAG-based orchestration - Dependency resolution with cycle detection and topological validation
- Thread-safe operations - Concurrent task claiming with atomic state transitions via mutex protection
- Client-daemon architecture - Unix socket RPC for fast, reliable inter-process communication
- Pull-based task claiming - Workers claim tasks atomically, preventing race conditions
- Command execution - Run commands with mutex protection (local or Docker runtimes)
- Git integration - Safe git operations with dangerous option validation
- Python 3.13+ / 3.14 freethreaded - Modern Python with full type annotations
Getting started
Run hyh with uvx to get started quickly:
uvx hyh status
Or start a workflow from a plan file:
uvx hyh plan import --file plan.md
uvx hyh status
Installation
Install hyh as a persistent tool:
uv tool install hyh
Or with pip:
pip install hyh
For development installation, see Contributing.
Usage
# Check daemon status
hyh ping
# Import and manage plans
hyh plan import --file plan.md
hyh status
# Claim and complete tasks
hyh task claim
hyh task complete --id task-1
# Execute commands with mutex protection
hyh exec -- make test
# Safe git operations
hyh git -- status
Requirements
- Python 3.13+ (3.14 freethreaded supported)
- macOS or Linux
- uv (recommended) or pip
Getting help
If you have questions or want to report a bug, please open an issue in this repository.
Contributing
We welcome contributions! To get started:
git clone https://github.com/pproenca/hyh.git
cd hyh
make install
make test
See CONTRIBUTING.md for guidelines.
License
MIT License - see LICENSE for details.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file hyh-0.1.0a2.tar.gz.
File metadata
- Download URL: hyh-0.1.0a2.tar.gz
- Upload date:
- Size: 177.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f4fd86ca9cfdf4bfa744a4541a55629daae5833557916811120970b468c4b54f
|
|
| MD5 |
c030abd511da6b12b14978d0684bc0cf
|
|
| BLAKE2b-256 |
67a46f274fe3e10cb141e191865b15ac933b97e96b0049de21488b28c6b820cf
|
File details
Details for the file hyh-0.1.0a2-py3-none-any.whl.
File metadata
- Download URL: hyh-0.1.0a2-py3-none-any.whl
- Upload date:
- Size: 34.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
211f47f2db67fdd60389129d668260dfc58339c1ed4c8ba9f0e2d5471714e2ef
|
|
| MD5 |
0a7f6aa34b7bfa566af897aeb6cd0cc8
|
|
| BLAKE2b-256 |
0999dcebe1b3e81d166e52c9fd6e09220eff72899aeed3490749703b42176d95
|