Skip to content

Upstream: first-class Hermes ACP runtime in Buzz #2

Description

@100yenadmin

Parent: #1

Outcome

Buzz detects and launches Hermes as a first-class ACP runtime without any
Electric Sheep-specific behavior.

Implementation contract

  • Base a fresh branch on block/buzz:main.
  • Add Hermes to the Rust KNOWN_ACP_RUNTIMES catalog in
    desktop/src-tauri/src/managed_agents/discovery.rs.
  • Recognize hermes and hermes-acp.
  • Launch hermes with acp; do not duplicate the argument for hermes-acp.
  • Treat hermes acp --check as binary/ACP dependency readiness only.
  • Do not use --check or another invented CLI command to claim provider
    authentication.
  • Set no command-level authentication probe for Hermes. Provider
    authentication and setup are discovered through the existing bounded ACP
    initialize/auth-method handshake when the runtime launches.
  • Hermes's advertised terminal setup method may offer hermes acp --setup
    only after explicit user action.
  • The runtime catalog may report Hermes as available and state that provider
    setup is checked on launch; it must not report authenticated based on
    --check.
  • Keep runtime metadata in Rust and use the existing catalog/config pipeline.
  • Use current Hermes source/docs for skill and configuration metadata.

Acceptance

  • Catalog entry appears through the existing managed-agent API.
  • Both supported binary names are discovered on normal macOS/Linux paths.
  • Command construction is correct for each binary.
  • Dependency-ready, dependency-check failure/unavailable, and invalid
    runtime states are tested without converting readiness into an
    authentication claim.
  • Hermes has no command-level auth probe; the catalog truthfully represents
    provider authentication as handled by the ACP launch handshake.
  • Existing Goose, Claude, Codex, and Buzz runtime tests remain green.
  • just ci passes on the exact head.

Non-goals

No Hermes CLI auth probe, Supabase, evaOS, VM provisioning, branding,
credential copying, or managed business policy.

Stop

Stop if current Hermes ACP requires an incompatible protocol or if the change
cannot remain generic. Record the exact contract mismatch before broadening.

Delivery

Stage the generic upstream candidate as a draft PR to
electricsheephq/buzz:main. Do not submit it to block/buzz without separate
authority.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestupstream-candidateGeneric change intended for a fresh upstream PR

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions