Repository navigation
Releases
Releases · mojomast/bundlebees
v0.1.1
bundlebees v0.1.1
Fixes from the Hermes catalog review of 0.1.0 (NousResearch/hermes-agent#153888). Tested against real Hermes 0.23.0.
Fixed
- The launcher token is read with
agent.secret_scope.get_secret("BUNDLEBEES_LAUNCHER_TOKEN")directly. 0.1.0 expected anagenton the plugin context or handler kwargs, which Hermes never passes, so the token was never found. - Settings are read per key with
ctx.get_config(key)(tools and CLI) and withhermes_cli.config.load_config_readonly()in the dashboard API. 0.1.0 read actx.configattribute that does not exist. desktop/plugin.jsnow default-exports{ id: "bundlebees", name, register(ctx) }and contributes the pane withctx.register({ id, area: "panes", render }), as the Desktop runtime loader requires. React comes fromimport * as React from "react"(the SDK does not export React).dashboard/manifest.jsondeclares"api": "plugin_api.py", so Hermes mounts the routes at/api/plugins/bundlebees/. The backend is built lazily per request from the current settings; nothing has to callconfigure_backend.hermes bundlebees doctorprintedtoken: [redacted] configuredbecause its own scrubber masked the word aftertoken:. The fixed status line now readstoken: configuredortoken: not configured.- CLI and dashboard state live in
plugins.plugin_storage.plugin_data_dir("bundlebees"). The XDG fallback is gone; with no Hermes host the CLI asks for--state-dir.
Security
- Cross-origin launcher redirects (any change of scheme, host, or port) are refused with
unsafe_redirectbefore a request is sent, andAuthorizationis stripped from any non-origin URL as defence in depth. bundlebees_attemptwithopcancel or review now goes through apre_tool_callapproval (provides_hooks: [pre_tool_call]), not only the model-setconfirm=trueargument.child_env()keeps the user'sHOME,PATH,USER,LOGNAME,LANG,TZ, andTMPDIR(exact names) so a user-rungit pushfinds its config and credential helper. Nothing else is inherited.
Tool schemas are unchanged: 4 tools, 571 o200k tokens.
Install pinned to this release: hermes plugins install mojomast/bundlebees --ref f251c069d8360607dee10301b6cdad7fae90d24b
v0.1.0
First public release of the bundlebees Hermes plugin.
Orchestrate CUA bees from Hermes: check launcher health, dispatch leased briefs, watch attempts, and leave verify and deploy to a user-run CLI.
- Four tools (
bundlebees_status,bundlebees_dispatch,bundlebees_attempt,bundlebees_host_prompt) measuring 571 tokens ono200k_base(under a 900 budget). - User-run CLI:
hermes bundlebees verify,deploy, anddoctor. The model does not apply patches, run the suite, push a branch, or SSH. - Desktop pane on Hermes 0.23 or newer, talking only through
ctx.rest. - Bundled skill
bundlebees:bundlebees-operator. - Catalog-bar controls: secrets only through
get_secret, exact-namechild_env, path confinement, public-address / loopback URL policy with connection pinning, and honest disclosure inplugin.yaml. Private or LAN launcher URLs requireallow_private=true(defaultfalse). - 150 tests passed.
hermes plugins validate --install-depsandhermes plugins doctor --ciare green.
Install a pinned copy (--ref takes a 40-character commit SHA, not a tag name):
hermes plugins install mojomast/bundlebees --ref 57a6f12cdcfa789c5aba5f22f3f46efd2b8b3d5c
hermes plugins enable bundlebeesThis is not a Hermes catalog listing yet. A YAML-only catalog PR pinned to this SHA still needs an explicit approval.