Skip to main content

Agent Orchestrator plugin for Hermes — spawn and manage parallel AI coding agents from chat

Project description

hermes-ao

Agent Orchestrator (AO) plugin for Hermes. Gives your Hermes bot 17 tools to spawn, monitor, and manage parallel AI coding agents from chat.

What it does

Once installed, your Hermes bot (Discord, Slack, CLI, etc.) can:

  • Spawn agents on GitHub/Linear issues (ao_spawn)
  • List active sessions and their status (ao_sessions)
  • Send messages to running agents (ao_send)
  • Kill sessions (ao_kill)
  • Check health of the AO server (ao_doctor)
  • Review and verify agent work (ao_review_check, ao_verify)
  • Manage issues — create, list backlog (ao_create_issue, ao_backlog)
  • Merge PRs created by agents (ao_merge_pr)
  • Monitor system observability (ao_observability)
  • ...and more (17 tools total)

It also includes a pre_llm_call hook that automatically injects live AO context (active sessions, open issues) into conversations when the user mentions work-related topics.

Prerequisites

Install

pip install hermes-ao

Configuration

Set these environment variables before starting Hermes:

Required

Variable Description Example
AO_CWD Path to your project directory (where agent-orchestrator.yaml lives) /home/user/my-project

Optional

Variable Default Description
AO_API_URL http://127.0.0.1:3000 AO server URL
AO_PUBLIC_URL (empty) Public URL for dashboard links shown to users (e.g. http://your-server:3000)
AO_PATH ao Path to the ao CLI binary
GH_PATH gh Path to the gh CLI binary
AO_API_TIMEOUT 10 API request timeout (seconds)
AO_SPAWN_TIMEOUT 30 Agent spawn timeout (seconds)
AO_CLI_TIMEOUT 15 CLI command timeout (seconds)

Example setup

# Add to your shell profile (~/.bashrc, ~/.zshrc) or systemd service file
export AO_CWD=/home/user/my-project
export AO_API_URL=http://localhost:3000
export AO_PUBLIC_URL=http://your-server:3000

Then restart Hermes:

hermes restart
# or start a new session

Verify it works

hermes chat -q "What AO sessions are running?"

Or in Discord, ask your bot: "What agents are running?"

Alternative install: directory-based

If you prefer not to use pip, copy the plugin directly:

mkdir -p ~/.hermes/plugins/
cp -r hermes_ao ~/.hermes/plugins/hermes-ao

Set the environment variables and restart Hermes.

Tools reference

Tool Description
ao_sessions List active agent sessions
ao_issues List open issues from the tracker
ao_spawn Spawn a new coding agent (single, batch, or orchestrator mode)
ao_send Send a message to a running agent session
ao_kill Terminate an agent session
ao_doctor Run AO health diagnostics
ao_review_check Check for PRs needing review
ao_verify Verify agent work on an issue
ao_session_cleanup Clean up sessions with merged/closed PRs
ao_session_restore Restore a stopped session
ao_session_claim_pr Link a PR to a session
ao_create_issue Create a new issue in the tracker
ao_list_projects List configured AO projects
ao_backlog Show the issue backlog
ao_merge_pr Merge a PR
ao_observability Get system metrics and health data
ao_session_output Get recent output from a session

Architecture

Discord/Slack/CLI → Hermes → LLM → ao_* tools → AO HTTP API → coding agents

The plugin talks to AO's REST API. If the API is unreachable, it falls back to shelling out to the ao CLI. A circuit breaker prevents hammering a down server.

License

MIT

Project details


Download files

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

Source Distribution

hermes_ao-1.0.0.tar.gz (21.5 kB view details)

Uploaded Source

Built Distribution

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

hermes_ao-1.0.0-py3-none-any.whl (18.5 kB view details)

Uploaded Python 3

File details

Details for the file hermes_ao-1.0.0.tar.gz.

File metadata

  • Download URL: hermes_ao-1.0.0.tar.gz
  • Upload date:
  • Size: 21.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.0

File hashes

Hashes for hermes_ao-1.0.0.tar.gz
Algorithm Hash digest
SHA256 331a81bb653fde93b15f10dd7cde2079e15a44d05f6c82285443fcf2c633ce49
MD5 31fa316742ac7ffcdb44efea7ae777f5
BLAKE2b-256 7a179bd202b4e12e2e5ca1c05b1df5be70d9f258dce18623c3fd45a600794c3c

See more details on using hashes here.

File details

Details for the file hermes_ao-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: hermes_ao-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 18.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.0

File hashes

Hashes for hermes_ao-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 22990c51be3dd0436812a40fa88945b90d2fad7b5c0108f6e81174631f75110f
MD5 b36047a5eedac3de47630fd0f497a0f0
BLAKE2b-256 98d3e2d8daf717d34398b6a50556d21cc4e57f42e52e30668470cfa604da2ec7

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