Metadata-Version: 2.4
Name: hmz
Version: 0.2.0b3
Summary: The agent flow system for token maxxing.
Keywords: agents,ai,claude-code,codex,coding-agents,llm,tui,workflow
Author: Zijian Zhang
Author-email: Zijian Zhang <35801754+futrime@users.noreply.github.com>
License-Expression: Apache-2.0
License-File: LICENSE
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Operating System :: MacOS
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Software Development
Classifier: Typing :: Typed
Requires-Dist: dateparser>=1.4.3
Requires-Dist: json5>=0.12
Requires-Dist: packaging>=26.2
Requires-Dist: psutil>=7.2.2
Requires-Dist: pydantic>=2.13.5
Requires-Dist: pyfiglet>=1.0
Requires-Dist: pyinstrument>=5.1.3
Requires-Dist: pyyaml>=6.0.3
Requires-Dist: rich>=15
Requires-Dist: semver>=3.0.4
Requires-Dist: sentry-sdk>=2.71.0
Requires-Dist: textual>=8.2.8
Requires-Dist: tomlkit>=0.15.1
Requires-Dist: typing-extensions>=4.13
Requires-Dist: hmz[dsh,kimi,litellm] ; extra == 'all'
Requires-Dist: deepseek-harness-sdk>=0.1.5rc1,<0.1.6 ; extra == 'dsh'
Requires-Dist: python-dotenv>=1.2.3 ; extra == 'dsh'
Requires-Dist: websockets>=15,<18 ; extra == 'kimi'
Requires-Dist: litellm>=1.105 ; extra == 'litellm'
Requires-Dist: apscheduler>=3.11.2,<4 ; extra == 'litellm'
Requires-Dist: azure-identity>=1.25.2,<2 ; extra == 'litellm'
Requires-Dist: azure-storage-blob>=12.28,<13 ; extra == 'litellm'
Requires-Dist: backoff>=2.2.1,<3 ; extra == 'litellm'
Requires-Dist: boto3>=1.43.1,<2 ; extra == 'litellm'
Requires-Dist: cryptography>=49,<51 ; extra == 'litellm'
Requires-Dist: expression>=5.6,<6 ; extra == 'litellm'
Requires-Dist: fastapi>=0.136.3,<1 ; extra == 'litellm'
Requires-Dist: fastapi-sso>=0.19,<1 ; extra == 'litellm'
Requires-Dist: granian>=2.7.4,<3 ; extra == 'litellm'
Requires-Dist: gunicorn>=23,<24 ; extra == 'litellm'
Requires-Dist: hiredis>=3,<4 ; extra == 'litellm'
Requires-Dist: httpx2>=2.5,<3 ; extra == 'litellm'
Requires-Dist: litellm-enterprise>=0.1.73 ; extra == 'litellm'
Requires-Dist: litellm-proxy-extras>=0.4.105 ; extra == 'litellm'
Requires-Dist: mcp>=2.2,<3 ; extra == 'litellm'
Requires-Dist: orjson>=3.11.6,<4 ; extra == 'litellm'
Requires-Dist: polars>=1.38.1,<2 ; extra == 'litellm'
Requires-Dist: pyjwt>=2.13,<3 ; extra == 'litellm'
Requires-Dist: pynacl>=1.6.2,<2 ; extra == 'litellm'
Requires-Dist: pyroscope-io>=0.8.16,<1 ; sys_platform != 'win32' and extra == 'litellm'
Requires-Dist: python-multipart>=0.0.27,<1 ; extra == 'litellm'
Requires-Dist: pyyaml>=6.0.3,<7 ; extra == 'litellm'
Requires-Dist: restrictedpython>=8.5,<9 ; extra == 'litellm'
Requires-Dist: rq>=2.7,<3 ; extra == 'litellm'
Requires-Dist: soundfile>=0.12.1,<1 ; extra == 'litellm'
Requires-Dist: starlette>=1.0.1,<2 ; extra == 'litellm'
Requires-Dist: tomlkit>=0.13.3,<1 ; extra == 'litellm'
Requires-Dist: uvicorn>=0.33,<1 ; extra == 'litellm'
Requires-Dist: uvloop>=0.22.1,<1 ; sys_platform != 'win32' and extra == 'litellm'
Requires-Python: >=3.12
Project-URL: Homepage, https://github.com/humanfia/humanize
Project-URL: Documentation, https://docs.humanfia.ai/humanize/
Project-URL: Changelog, https://github.com/humanfia/humanize/releases
Project-URL: Source, https://github.com/humanfia/humanize
Project-URL: Issues, https://github.com/humanfia/humanize/issues
Provides-Extra: all
Provides-Extra: dsh
Provides-Extra: kimi
Provides-Extra: litellm
Description-Content-Type: text/markdown

# humanize _(hmz)_

![humanize](https://socialify.git.ci/humanfia/humanize/image?description=1&font=Raleway&forks=1&issues=1&logo=https%3A%2F%2Fraw.githubusercontent.com%2Fhumanfia%2Fhumanize%2Frefs%2Fheads%2Fmain%2Fdocs%2Fpublic%2Flogo.svg&name=1&owner=1&pattern=Circuit+Board&pulls=1&stargazers=1&theme=Auto)

The agent flow system for token maxxing.

## Install

Needs Python 3.12 or newer, [uv](https://docs.astral.sh/uv/), and a coding agent CLI you are
signed in to, such as Claude Code or Codex.

```sh
uv tool install hmz
```

Three backends need a package of their own: `[dsh]` for DeepSeek Harness, `[kimi]` for Kimi
Code, `[litellm]` for a model called directly -- or most CLIs run through litellm, as any
account it can reach -- `[all]` for all three.

```sh
uv tool install 'hmz[all]'
```

`hmz update` moves it to the newest release, keeping the extras it was installed with.

### Desktop app

On macOS, `humanize-<version>-macos-universal.dmg` from the
[latest release](https://github.com/humanfia/humanize/releases/latest) puts `hmz web` in a
window of its own: drag humanize to Applications. It runs the `hmz` installed above. The
[guide](https://docs.humanfia.ai/humanize/user/desktop) says how to open it the first time.

## Usage

Open the terminal interface in a repository:

```sh
hmz
```

Or open every epic on this machine in a browser:

```sh
hmz web
```

Or run a flow from your shell:

```sh
hmz exec -f chat -a assistant=claude/claude-opus-5:high "What does this repository do?"
```

Agents run with approvals bypassed, so start in a scratch repository. The
[documentation](https://docs.humanfia.ai/humanize/) opens with a quickstart.

## Contributing

Pull requests are welcome:
[CONTRIBUTING.md](https://github.com/humanfia/humanize/blob/main/CONTRIBUTING.md) says how to
propose one. Report a bug or request a feature through the
[issue forms](https://github.com/humanfia/humanize/issues/new/choose), and report a
vulnerability privately, as [SECURITY.md](https://github.com/humanfia/humanize/blob/main/SECURITY.md)
says. Everyone taking part follows the
[Code of Conduct](https://github.com/humanfia/.github/blob/main/CODE_OF_CONDUCT.md).

## License

Apache-2.0 &copy; Humanfia
