Skip to main content

Hermes Python ADK

Hermes SDK for Python

Python 3.10–3.14 Typed API Source version 0.35.0 License: MIT CI Documentation

Build applications that provision and control Hermes runtimes, or connect to an existing Hermes deployment. The SDK provides typed control-plane resources, native RPC access, and separate bindings for Hermes Desktop HTTP routes.

Documentation · Getting started · Runtimes · Native chat · Examples · Source

Install

Python 3.10–3.14 is supported. Install a published release from PyPI:

python -m pip install edith-hermes-sdk
python -m pip install "edith-hermes-sdk[control-plane]"  # Local control plane
python -m pip install "edith-hermes-sdk[streaming]"      # Remote WebSocket and event streaming

For development or an unpublished version, install from a checkout:

git clone https://github.com/AnasMaar/edith-hermes-sdk.git
cd edith-hermes-sdk
python -m pip install .
python -m pip install ".[control-plane]"  # Local control plane
python -m pip install ".[streaming]"      # Remote WebSocket and event streaming

Quickstart: a tool without a server

This example validates and invokes a Python tool locally. It requires no Docker, credentials, Hermes server, or model:

import asyncio
from edith_hermes import Agent, tool

@tool
def word_count(text: str) -> int:
    """Count whitespace-separated words."""
    return len(text.split())

async def main() -> None:
    agent = Agent("Example", tools=[word_count])
    print(agent.tools[0].definition())
    print(await agent.tools[0].invoke({"text": "hello Hermes"}))  # 2

asyncio.run(main())

Run the complete version with python examples/local_tool.py. To send a prompt to a configured runtime, follow first chat. To provision a new runtime, see runtimes.

Choose a client

Need Entry point Backend
Provision runtimes and agents; use resource handles Hermes.local() / Hermes.remote() EDITH control plane
Use generated HTTP operations directly AsyncEdithHermes.remote() / .local() EDITH control plane
Receive native events and answer server requests profile.connect() Control-plane gateway WebSocket and compatible native runtime
Work with native Desktop schedules, files, Git and skills AsyncHermesDesktop.remote() Hermes Desktop HTTP server

A native Desktop URL is not a control-plane URL. Connecting to an existing Hermes installation through the control plane requires a registered instance and profile. A generated method reflects the pinned contract, not a guarantee that a particular server supports it. See transport selection.

Documentation

Development

Install the development dependencies in pyproject.toml, then run python -m pytest. Live runtime tests require their own services and credentials; client installation alone does not provide a model or Hermes server.

License

The SDK is licensed under the MIT License. The vendored Hermes Agent contract is accompanied by the upstream MIT license; see contract sources for provenance.

Metadata

Release files for edith-hermes-sdk 0.35.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for edith-hermes-sdk 0.35.0
File Size Uploaded Provenance Actions
edith_hermes_sdk-0.35.0.tar.gz 604.0 kB With provenance Details for edith_hermes_sdk-0.35.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for edith-hermes-sdk 0.35.0
File Interpreter ABI Platform Actions
edith_hermes_sdk-0.35.0-py3-none-any.whl Python 3 none any Details for edith_hermes_sdk-0.35.0-py3-none-any.whl

Total release size: 809.1 kB

Release files / edith_hermes_sdk-0.35.0.tar.gz

Download URL edith_hermes_sdk-0.35.0.tar.gz
Size 604.0 kB
Tags Source
SHA-256 checksum
How to use checksums
95235cdf64d8e335f2d254fc5b6fdd36c7d7b97bb9ab297b05fbb59c06d18c68
BLAKE2b-256 checksum
How to use checksums
b91c495520a23d472a500e46c601ee4598a4f517f10b7d2e332423edf8ff165d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.

Transparency log

Release files / edith_hermes_sdk-0.35.0-py3-none-any.whl

Download URL edith_hermes_sdk-0.35.0-py3-none-any.whl
Size 205.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b68141aa2e3ff49d621b11ced73771ddb5003e9e6546518d528457c56d3e1419
BLAKE2b-256 checksum
How to use checksums
9dd3b004abe6a0c7e17d05395588b3a7a0aef7bbabd747ab11dd9a9e621ad2a9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.

Transparency log

Security for edith-hermes-sdk 0.35.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for edith_hermes_sdk-0.35.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.35.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page