hermes-platform-molecule-a2a/pyproject.toml
Hongming Wang 8c4f2b7569 Initial: hermes-platform-molecule-a2a v0.1.0
Hermes-agent platform adapter that delivers Molecule A2A peer-agent
messages to a running hermes daemon over HTTP, and POSTs agent replies
back to the molecule-runtime callback URL.

Closes the MCP-style push parity gap for hermes workspaces:
- Single long-lived adapter session (no subprocess per message)
- MessageEvent(internal=True) bypasses per-platform user allowlist
  for trusted A2A peer messages
- Optional shared-secret HMAC enforcement
- Per-chat callback URL learned from inbound payload

Requires hermes-agent ≥ the upstream PR
NousResearch/hermes-agent#18775 (PluginContext.register_platform_adapter
+ GatewayConfig plugin_platforms wiring + PluginPlatformIdentifier
helper + resolve_platform_id deserialization).
2026-05-02 03:06:56 -07:00

38 lines
1.0 KiB
TOML

[build-system]
requires = ["setuptools>=68", "wheel"]
build-backend = "setuptools.build_meta"
[project]
name = "hermes-platform-molecule-a2a"
version = "0.1.0"
description = "Hermes platform adapter for Molecule A2A peer-agent messaging"
readme = "README.md"
requires-python = ">=3.10"
license = { text = "MIT" }
authors = [{ name = "Molecule AI" }]
dependencies = [
"aiohttp>=3.9",
]
[project.optional-dependencies]
test = [
"pytest>=8",
"pytest-asyncio>=0.23",
"aiohttp>=3.9",
]
# Hermes plugin discovery loads this entry point at startup.
# Hermes resolves the value as a module and then calls its top-level
# ``register(ctx)`` function. Pointing at the package (no colon) makes
# ep.load() return the module so getattr(module, "register") succeeds.
[project.entry-points."hermes_agent.plugins"]
molecule_a2a = "hermes_platform_molecule_a2a"
[tool.setuptools.packages.find]
include = ["hermes_platform_molecule_a2a*"]
exclude = ["tests*"]
[tool.pytest.ini_options]
asyncio_mode = "auto"
testpaths = ["tests"]