Skip to content

docs(examples): add Hermes web provider - #83

Open
liuhao1024 wants to merge 1 commit into
chainbase-labs:mainfrom
liuhao1024:codex/hermes-web-provider-example
Open

docs(examples): add Hermes web provider#83
liuhao1024 wants to merge 1 commit into
chainbase-labs:mainfrom
liuhao1024:codex/hermes-web-provider-example

Conversation

@liuhao1024

Copy link
Copy Markdown

Change Type

  • New social platform
  • New service / provider
  • Bug fix / content correction
  • Routing logic change (SKILL.md)
  • Onboarding / setup change
  • Docs / README

Description

Adds a standalone Hermes web provider example under examples/hermes-web-provider/.

Hermes supports user-installed web provider plugins, but third-party product integrations are not expected to land in the Hermes core plugins/ tree. This example gives Hermes users an installable path for routing the built-in web_search and web_extract tools through AgentKey without changing Hermes core.

Scope:

  • registers an AgentKey-backed Hermes WebSearchProvider
  • maps Hermes web_search to AgentKey agentkey_search through the hosted MCP endpoint
  • maps Hermes web_extract to AgentKey agentkey_scrape
  • keeps auth explicit with AGENTKEY_API_KEY
  • documents installation under ~/.hermes/plugins/web/agentkey
  • keeps the full AgentKey MCP server as the preferred path for dynamic tool discovery and domain-specific tools

Fixes #82

Validation

  • PYTHONPATH=/tmp/hermes-agentkey-mcp.jls9fx /Users/liuhao/.hermes/hermes-agent/venv/bin/python -m pytest examples/hermes-web-provider/tests -q
    • Result: 5 passed
  • PYTHONPATH=/tmp/hermes-agentkey-mcp.jls9fx /Users/liuhao/.hermes/hermes-agent/venv/bin/python -m py_compile examples/hermes-web-provider/provider.py examples/hermes-web-provider/__init__.py examples/hermes-web-provider/tests/test_provider.py examples/hermes-web-provider/tests/agentkey_hermes_test_loader.py
    • Result: passed
  • PYTHONPATH=/tmp/hermes-agentkey-mcp.jls9fx /Users/liuhao/.hermes/hermes-agent/venv/bin/python -m ruff check examples/hermes-web-provider
    • Result: All checks passed!
  • Hermes plugin loader smoke test with a temporary HERMES_HOME
    • Result: web/agentkey backend agentkey AgentKey

Checklist

New social platform:

  • skills/agentkey/references/social/<platform>.md created
  • Routing table in social/overview.md updated
  • Coverage table + directory tree in README.md updated

New service / provider:

  • Reference guide created under references/<category>/
  • Category overview updated
  • SKILL.md Step 3 routing table updated (if new tool)
  • README.md updated

Any change:

  • No knowledge added to SKILL.md (routing logic only)
  • Reference guides follow the standard structure (see CONTRIBUTING.md) — N/A; example plugin docs only

Contributor Agreement

  • I confirm my contribution is licensed under the Apache License, Version 2.0 (see LICENSE).

@liuhao1024
liuhao1024 force-pushed the codex/hermes-web-provider-example branch from c535b98 to d31b479 Compare July 28, 2026 17:20
@liuhao1024

Copy link
Copy Markdown
Author

Follow-up update: I expanded examples/hermes-web-provider/README.md with reproducible verification steps.

The documented tests are intentionally offline contract checks:

  • provider unit tests monkeypatch the AgentKey call path, so they do not require a real AgentKey account or API key
  • the temporary HERMES_HOME smoke test verifies Hermes can discover the plugin as web/agentkey, load it as a backend, and register the agentkey web provider

No change to the example's runtime scope or AgentKey's default install path.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add a standalone Hermes web provider example

1 participant