Skip to main content

YoooClaw tools and APP messaging platform adapter for Hermes Agent

Project description

hermes-plugin

YoooClaw integration for Hermes Agent.

This repository is the Python plugin boundary between Hermes and YoooClaw. The existing @yoooclaw/cli daemon remains responsible for the shared data plane: phone notification ingest, recordings, images, Relay tunnels, credentials, light-rule storage, and one-shot light control. The Hermes plugin owns the APP conversation transport and the host-side light-rule trigger runtime.

Production plugin artifacts bundle the platform-specific yoooclaw executable itself. Users do not need a preinstalled CLI, and the plugin does not download the CLI on first run. The embedded executable is verified and installed into a plugin-managed path before use.

The release workflow downloads the four verified native assets from the pinned cli-v* release in YoooClaw/openclaw-plugin, then creates one Python wheel per platform. Each wheel carries only its own executable and a SHA-256 manifest:

darwin-arm64
darwin-x64
linux-arm64
linux-x64

The wheels and cli-wheel-index.json are attached to the matching YoooClaw/hermes-plugin GitHub Release. This keeps the Git repository small while giving Hermes a package artifact that already contains the CLI.

Stable plugin releases also publish the platform wheels to PyPI. Hermes can then discover both entry-point plugins after a normal package install:

pip install yoooclaw-hermes-plugin
hermes plugins enable yoooclaw
hermes plugins enable yoooclaw_app

Initial Scope

  • General Hermes plugin: tools, hooks, slash commands, CLI subcommands, skills.
  • yoooclaw_app platform adapter: APP messages into Hermes and Hermes replies back to the APP.
  • Tool bridge: call yc --format json and the daemon localhost HTTP API.
  • Embedded CLI: ship the target platform's yoooclaw executable in the plugin artifact and use PATH lookup only as a local development fallback.
  • APP transport: connect the Hermes platform adapter directly to the existing APP conversation channel without routing messages through the CLI daemon.
  • Notification watcher: use OS file notifications on the active CLI profile's notifications/ directory to feed newly persisted items into the host-side light-rule runtime without adding a daemon event API.

The initial commit exposes one working tool, daemon_status. The APP platform adapter is a scaffold until its plugin-side AppTransport is implemented against the existing APP / OpenClaw conversation contract.

Layout

yoooclaw_hermes/   # General Hermes plugin
yoooclaw_app/      # Hermes platform adapter for YoooClaw APP chat
tests/

Development

Install uv first, then:

uv sync --dev
uv run pytest
uv build

For local Hermes discovery, link the plugin directories into ~/.hermes/plugins/ and enable them:

ln -s "$PWD/yoooclaw_hermes" ~/.hermes/plugins/yoooclaw
ln -s "$PWD/yoooclaw_app" ~/.hermes/plugins/yoooclaw_app
hermes plugins enable yoooclaw
hermes plugins enable yoooclaw_app
hermes plugins list

References

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

yoooclaw_hermes_plugin-0.1.1-py3-none-manylinux_2_17_x86_64.whl (36.1 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

yoooclaw_hermes_plugin-0.1.1-py3-none-manylinux_2_17_aarch64.whl (35.8 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

yoooclaw_hermes_plugin-0.1.1-py3-none-macosx_11_0_x86_64.whl (26.6 MB view details)

Uploaded Python 3macOS 11.0+ x86-64

yoooclaw_hermes_plugin-0.1.1-py3-none-macosx_11_0_arm64.whl (24.1 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

File details

Details for the file yoooclaw_hermes_plugin-0.1.1-py3-none-manylinux_2_17_x86_64.whl.

File metadata

  • Download URL: yoooclaw_hermes_plugin-0.1.1-py3-none-manylinux_2_17_x86_64.whl
  • Upload date:
  • Size: 36.1 MB
  • Tags: Python 3, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","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 yoooclaw_hermes_plugin-0.1.1-py3-none-manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 71c88c969c2781b206f562fb9fb152e3a16fd41deec9fdae49b3b399bc742a3e
MD5 ae03ca07dee023d52a313ad1c85e086a
BLAKE2b-256 1a1e08f02865e8508c9021615684fd02c069039105cd6573784163fdd428dc91

See more details on using hashes here.

File details

Details for the file yoooclaw_hermes_plugin-0.1.1-py3-none-manylinux_2_17_aarch64.whl.

File metadata

  • Download URL: yoooclaw_hermes_plugin-0.1.1-py3-none-manylinux_2_17_aarch64.whl
  • Upload date:
  • Size: 35.8 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","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 yoooclaw_hermes_plugin-0.1.1-py3-none-manylinux_2_17_aarch64.whl
Algorithm Hash digest
SHA256 eba8528e42d79bceb5e79df73e067aa603f3de6553b1904da732e0a610e9d19a
MD5 904c71c2fd4e8e0d5f9b08c6b094ab16
BLAKE2b-256 f23c5b2c13e44e3d82d3ec1d76a49da4a85818fff375f1a5926b912df91ab27e

See more details on using hashes here.

File details

Details for the file yoooclaw_hermes_plugin-0.1.1-py3-none-macosx_11_0_x86_64.whl.

File metadata

  • Download URL: yoooclaw_hermes_plugin-0.1.1-py3-none-macosx_11_0_x86_64.whl
  • Upload date:
  • Size: 26.6 MB
  • Tags: Python 3, macOS 11.0+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","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 yoooclaw_hermes_plugin-0.1.1-py3-none-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 a7c94664cbcf4fee1923ca53542221fb0c30ff79b1997d4db2258917fe7d3dcc
MD5 0a21127987820a6623c92c1ffdd8fb5d
BLAKE2b-256 cb693f1999bbb35a12e71a23b50c7b1a3416aaa49a3e47b9505fa692c926fe89

See more details on using hashes here.

File details

Details for the file yoooclaw_hermes_plugin-0.1.1-py3-none-macosx_11_0_arm64.whl.

File metadata

  • Download URL: yoooclaw_hermes_plugin-0.1.1-py3-none-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 24.1 MB
  • Tags: Python 3, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","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 yoooclaw_hermes_plugin-0.1.1-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ed3a30598828629231afb82cb58ce2e2a62458f37a4a29db87386f38e8147f6e
MD5 d862087a63ad39299495b2939e16fb03
BLAKE2b-256 c34e195d81470444717de7cace31616c209dc2acb212bec19dd62448ddbb7825

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