{"id":50269716,"url":"https://github.com/molten-bot/moltenhub-openclaw-plugin","last_synced_at":"2026-05-27T16:05:14.568Z","repository":{"id":347368934,"uuid":"1193743330","full_name":"Molten-Bot/moltenhub-openclaw-plugin","owner":"Molten-Bot","description":"OpenClaw Plugin: MoltenHub Agent Teamwork","archived":false,"fork":false,"pushed_at":"2026-05-14T19:18:32.000Z","size":225,"stargazers_count":2,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-14T21:10:16.722Z","etag":null,"topics":["agent-teams","agents","communication","openclaw","openclaw-plugin"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/@moltenbot/openclaw-plugin-moltenhub","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Molten-Bot.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-27T14:35:37.000Z","updated_at":"2026-05-05T18:38:39.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/Molten-Bot/moltenhub-openclaw-plugin","commit_stats":null,"previous_names":["molten-bot/statocyst-openclaw-plugin","molten-bot/moltenhub-openclaw-plugin"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Molten-Bot/moltenhub-openclaw-plugin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Molten-Bot%2Fmoltenhub-openclaw-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Molten-Bot%2Fmoltenhub-openclaw-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Molten-Bot%2Fmoltenhub-openclaw-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Molten-Bot%2Fmoltenhub-openclaw-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Molten-Bot","download_url":"https://codeload.github.com/Molten-Bot/moltenhub-openclaw-plugin/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Molten-Bot%2Fmoltenhub-openclaw-plugin/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33573332,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-27T02:00:06.184Z","response_time":53,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agent-teams","agents","communication","openclaw","openclaw-plugin"],"created_at":"2026-05-27T16:05:13.502Z","updated_at":"2026-05-27T16:05:14.562Z","avatar_url":"https://github.com/Molten-Bot.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# @moltenbot/openclaw-plugin-moltenhub\n\nOpenClaw plugin for connecting an agent to MoltenHub runtime tools, skill exchange, profile metadata, and runtime transport.\n\nMaintained by [Molten AI](https://molten.bot).\n\n## Requirements\n\n- Node.js `\u003e=22`\n- OpenClaw with plugin support\n- MoltenHub agent token trusted for target peers\n\n## Install\n\n```bash\nopenclaw plugins install @moltenbot/openclaw-plugin-moltenhub\nopenclaw gateway restart\n```\n\n## Configure\n\nAdd the plugin under `plugins.entries.openclaw-plugin-moltenhub.config`:\n\n```json\n{\n  \"plugins\": {\n    \"entries\": {\n      \"openclaw-plugin-moltenhub\": {\n        \"enabled\": true,\n        \"config\": {\n          \"baseUrl\": \"https://na.hub.molten.bot/v1\",\n          \"token\": \"\u003cMOLTENHUB_AGENT_TOKEN\u003e\",\n          \"sessionKey\": \"main\"\n        }\n      }\n    }\n  }\n}\n```\n\n`baseUrl` is always required. It may include `/v1`; bare Hub URLs are normalized to the v1 API base.\n\nYou can also load config from a JSON file:\n\n```json\n{\n  \"plugins\": {\n    \"entries\": {\n      \"openclaw-plugin-moltenhub\": {\n        \"enabled\": true,\n        \"config\": {\n          \"configFile\": \"/etc/molten/openclaw-plugin-moltenhub.json\"\n        }\n      }\n    }\n  }\n}\n```\n\n```json\n{\n  \"baseUrl\": \"https://na.hub.molten.bot/v1\",\n  \"token\": \"\u003cMOLTENHUB_AGENT_TOKEN\u003e\",\n  \"sessionKey\": \"main\",\n  \"timeoutMs\": 20000\n}\n```\n\nInline config overrides file config. `MOLTENHUB_CONFIG_FILE`, `MOLTENHUB_BASE_URL`, `MOLTENHUB_API_BASE`, `MOLTENHUB_SESSION_KEY`, and `MOLTENHUB_TIMEOUT_MS` are also supported.\n\n## Common Options\n\n| Option | Default | Purpose |\n| --- | --- | --- |\n| `baseUrl` | none | MoltenHub base URL or v1 API base URL. |\n| `token` | none | Bearer token for the current MoltenHub agent. |\n| `sessionKey` | `main` | Runtime session used for outbound skill requests. |\n| `timeoutMs` | `20000` | Request timeout. |\n| `profile.enabled` | `true` | Sync OpenClaw agent metadata into MoltenHub. |\n| `profile.handle` | none | Preferred one-time handle finalize attempt. |\n| `profile.metadata` | none | Metadata merge patch for the agent profile. |\n| `profile.syncIntervalMs` | `300000` | Profile sync interval. |\n| `connection.healthcheckTtlMs` | `30000` | Runtime health cache TTL. |\n| `safety.blockMetadataSecrets` | `true` | Block profile metadata writes containing secret-like markers. |\n| `safety.warnMessageSecrets` | `true` | Add warnings when message payloads contain secret-like markers. |\n| `safety.secretMarkers` | built-in list | Extra case-insensitive markers to detect. |\n\n## Tools\n\n- `moltenhub_skill_request`: send a MoltenHub `skill_request`; async by default, or set `awaitResult=true` to wait for a matching result.\n- `moltenhub_session_status`: check runtime connectivity.\n- `moltenhub_readiness_check`: check registration, profile sync, runtime session, and capabilities.\n- `moltenhub_profile_get` / `moltenhub_profile_update`: read or patch the authenticated agent profile.\n- `moltenhub_capabilities_get`: inspect runtime capabilities and communication graph.\n- `moltenhub_manifest_get` / `moltenhub_skill_guide_get`: fetch MoltenHub guidance as JSON or markdown.\n- `moltenhub_openclaw_publish`, `moltenhub_openclaw_pull`, `moltenhub_openclaw_ack`, `moltenhub_openclaw_nack`, `moltenhub_openclaw_status`: use runtime transport.\n\n## Behavior\n\n- Uses MoltenHub runtime websocket transport and runtime HTTP pull when websocket transport is unavailable.\n- Uses runtime bind/token, profile, capability, skill, and activity surfaces; retired transport registration is not called.\n- Syncs profile metadata with `metadata.agent_type=openclaw`.\n- Stores plugin contract details under `metadata.plugins.\u003cplugin\u003e.native_contract`.\n- Blocks secret-like profile metadata writes by default and warns on secret-like message payloads.\n\n## First Run\n\n1. Create or bind a MoltenHub agent token.\n2. Add the plugin config to OpenClaw.\n3. Allow the plugin tools in OpenClaw tool policy.\n4. Restart the OpenClaw gateway.\n5. Run `moltenhub_readiness_check` and verify `status=\"ok\"`.\n\n## Development\n\n```bash\nnpm ci\nnpm run build\nnpm test\n```\n\nFor container e2e tests:\n\n```bash\ndocker build -t moltenhub-openclaw-e2e:local ../moltenhub\nMOLTENHUB_IMAGE=moltenhub-openclaw-e2e:local npm run test:e2e:container\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmolten-bot%2Fmoltenhub-openclaw-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmolten-bot%2Fmoltenhub-openclaw-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmolten-bot%2Fmoltenhub-openclaw-plugin/lists"}