Skip to content

Dedicated dual-mode repo: hermes plugins install + pip#1

Merged
eskp merged 1 commit into
mainfrom
refactor/dedicated-dual-mode-repo
Jun 17, 2026
Merged

Dedicated dual-mode repo: hermes plugins install + pip#1
eskp merged 1 commit into
mainfrom
refactor/dedicated-dual-mode-repo

Conversation

@eskp

@eskp eskp commented Jun 17, 2026

Copy link
Copy Markdown
Contributor

Restructures the repo (renamed from agent-plugins) so the KeeperHub Hermes plugin installs via both Hermes-supported paths:

  • Hermes CLI (no pip): hermes plugins install KeeperHub/hermes-plugin-keeperhub --enable — git-clones the repo root into ~/.hermes/plugins/ and directory-loads it. Plugin moved to repo root (manifest at root) + intra-package imports converted to relative so the no-pip load resolves.
  • PyPI: pip install hermes-plugin-keeperhub via the keeperhub_plugin.entry entry point.

Both paths verified in clean venvs; wheel builds; 11 tests pass. Read-only-by-default gate intact (18 read tools, 10 write/exec withheld unless KEEPERHUB_ENABLE_WRITES=true). Single env var KH_API_KEY.

Root __init__.py uses relative import (Hermes namespace) with absolute fallback for test-collector safety; root conftest excludes it; pytest importlib mode. CI/release simplified to repo root + v* tags.

Restructure agent-plugins -> hermes-plugin-keeperhub so the plugin installs via
BOTH supported Hermes paths:

- Hermes CLI (no pip): 'hermes plugins install KeeperHub/hermes-plugin-keeperhub'
  git-clones the repo root into ~/.hermes/plugins/ and directory-loads it. Moved
  the plugin to the repo root (manifest at root) and converted intra-package
  imports to relative so the no-pip directory load resolves (verified).
- PyPI: 'pip install hermes-plugin-keeperhub' via the keeperhub_plugin.entry
  entry point (verified: wheel builds, entry point + getattr(register) resolve).

Root __init__.py: relative import (Hermes namespace) + absolute fallback so it's
import-safe under test collectors. Root conftest excludes it; pytest importlib
mode. CI/release simplified to repo root + v* tags. 11 tests pass.
@eskp eskp merged commit c4ed4b2 into main Jun 17, 2026
2 checks passed
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.

1 participant