{"_id":"@metaharness/host-openclaw","_rev":"6-50b72371743a3cff8c0c976c07890df0","name":"@metaharness/host-openclaw","dist-tags":{"latest":"0.1.5"},"versions":{"0.1.0":{"name":"@metaharness/host-openclaw","version":"0.1.0","keywords":["agent-harness","openclaw","personal-ai-assistant","mcp","host-adapter","ruflo"],"license":"MIT","_id":"@metaharness/host-openclaw@0.1.0","maintainers":[{"name":"ruvnet","email":"ruv@ruv.net"}],"homepage":"https://github.com/ruvnet/agent-harness-generator","bugs":{"url":"https://github.com/ruvnet/agent-harness-generator/issues"},"dist":{"shasum":"648ef21d7421c626f2352e8cef46cce937d6ad04","tarball":"https://registry.npmjs.org/@metaharness/host-openclaw/-/host-openclaw-0.1.0.tgz","fileCount":7,"integrity":"sha512-JMyuVEfEzzlNEeIxpMChwq7RYyT7ncOzpu0uZYDrUzGf+DE0eESchWnka0TJKOHPdGtxGE7DNptbiOq1JTPz+Q==","signatures":[{"sig":"MEUCIHrfN7t1d71GF6d9FBx8XDa7FxU1/ZMw3MTPdvWrSiWEAiEAxReW7ucCWZKhY2D7qcP4IlPoRuziPX3+9jOhw5fFrWs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16046},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"5b81b587a95a11537dac220392b949e14934e873","scripts":{"lint":"tsc --noEmit","test":"vitest run --passWithNoTests","build":"tsc"},"_npmUser":{"name":"ruvnet","email":"ruv@ruv.net"},"repository":{"url":"git+https://github.com/ruvnet/agent-harness-generator.git","type":"git","directory":"packages/host-openclaw"},"_npmVersion":"11.10.0","description":"OpenClaw (personal AI assistant) host adapter for agent-harness-generator (MCP via ~/.openclaw/openclaw.json + workspace skills)","directories":{},"_nodeVersion":"24.12.0","dependencies":{"@metaharness/kernel":"0.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.0.0","typescript":"^5.4.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/host-openclaw_0.1.0_1781486120124_0.3941801029547989","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@metaharness/host-openclaw","version":"0.1.1","keywords":["agent-harness","openclaw","personal-ai-assistant","mcp","host-adapter","ruflo"],"license":"MIT","_id":"@metaharness/host-openclaw@0.1.1","maintainers":[{"name":"ruvnet","email":"ruv@ruv.net"}],"homepage":"https://github.com/ruvnet/agent-harness-generator","bugs":{"url":"https://github.com/ruvnet/agent-harness-generator/issues"},"dist":{"shasum":"a1d31c2f6c0f9647dcebd22447dca6b1be33d1ff","tarball":"https://registry.npmjs.org/@metaharness/host-openclaw/-/host-openclaw-0.1.1.tgz","fileCount":7,"integrity":"sha512-oewCZXfEMTvE0tmIDzGSvX8dlELd1Z7RzZWD/tnSiNZplaZ3UE/mKhpXXi4zd81VVyfYK3aL/zIU6fP0ZQW0aA==","signatures":[{"sig":"MEQCIACN4+A/gPVj67TFnMw6VJnwSPGPyj4O+UxeTx5BC7ZOAiBc3ksnCQ20R/92KFkp/MryWfbfuAsAItcX6mM5ndYR4A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17085},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"db1af4134a9c8330bacaa1a53cba2a21d28b78ad","scripts":{"lint":"tsc --noEmit","test":"vitest run --passWithNoTests","build":"tsc"},"_npmUser":{"name":"ruvnet","email":"ruv@ruv.net"},"repository":{"url":"git+https://github.com/ruvnet/agent-harness-generator.git","type":"git","directory":"packages/host-openclaw"},"_npmVersion":"10.9.7","description":"OpenClaw (personal AI assistant) host adapter for agent-harness-generator (MCP via ~/.openclaw/openclaw.json + workspace skills)","directories":{},"_nodeVersion":"22.22.2","dependencies":{"@metaharness/kernel":"0.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.0.0","typescript":"^5.4.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/host-openclaw_0.1.1_1781637574501_0.3561497875960933","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@metaharness/host-openclaw","version":"0.1.2","keywords":["agent-harness","openclaw","personal-ai-assistant","mcp","host-adapter","ruflo"],"license":"MIT","_id":"@metaharness/host-openclaw@0.1.2","maintainers":[{"name":"ruvnet","email":"ruv@ruv.net"}],"homepage":"https://github.com/ruvnet/agent-harness-generator","bugs":{"url":"https://github.com/ruvnet/agent-harness-generator/issues"},"dist":{"shasum":"c7ad0214c4d01c49d0fb91548c95f39f764f8080","tarball":"https://registry.npmjs.org/@metaharness/host-openclaw/-/host-openclaw-0.1.2.tgz","fileCount":7,"integrity":"sha512-Rf3hs65sZwSaFJM/i+rll2191Zj1DXymQ1m0eDM6sU/GJfIgt1yfrAxHj0ZkfDs0XOxGeBn9IuDaseoFjzmvMw==","signatures":[{"sig":"MEUCIGX26o5HogchDwSQH8zgovYOaqgj0rBCv6m2k8mdcQrxAiEA9K00Jqqfjkmc+zUciHrEHifS01QpVwOO1EMiuPjxQaI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17086},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"82b3ce543ca7807e8bf95115563e81a601fc0738","scripts":{"lint":"tsc --noEmit","test":"vitest run --passWithNoTests","build":"tsc"},"_npmUser":{"name":"ruvnet","email":"ruv@ruv.net"},"repository":{"url":"git+https://github.com/ruvnet/agent-harness-generator.git","type":"git","directory":"packages/host-openclaw"},"_npmVersion":"10.9.7","description":"OpenClaw (personal AI assistant) host adapter for agent-harness-generator (MCP via ~/.openclaw/openclaw.json + workspace skills)","directories":{},"_nodeVersion":"22.22.2","dependencies":{"@metaharness/kernel":"^0.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.0.0","typescript":"^5.4.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/host-openclaw_0.1.2_1781736108767_0.35298406461554666","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@metaharness/host-openclaw","version":"0.1.3","keywords":["agent-harness","openclaw","personal-ai-assistant","mcp","host-adapter","ruflo"],"license":"MIT","_id":"@metaharness/host-openclaw@0.1.3","maintainers":[{"name":"ruvnet","email":"ruv@ruv.net"}],"homepage":"https://github.com/ruvnet/agent-harness-generator","bugs":{"url":"https://github.com/ruvnet/agent-harness-generator/issues"},"dist":{"shasum":"b3ecd258ac48863e6206a6eb65461c54d4897429","tarball":"https://registry.npmjs.org/@metaharness/host-openclaw/-/host-openclaw-0.1.3.tgz","fileCount":7,"integrity":"sha512-DlEogYeBAC+XVh5mPOsZu9gsGbNM+xsUJinCYTglHvMb3nAHZ+cmMQqT9tzLf9LTPCKeLz380Xc7Bh+Ysi4v0Q==","signatures":[{"sig":"MEUCIQCNAMy3v0kXtSDAGcKvHNoaQDrBZ91L25NSzcTzvtnUPQIgFeNY7TbWrcOhI8dnZhOGjYXxhyO3ZJ1uNzfxlJJxZ9k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":21001},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"lint":"tsc --noEmit","test":"vitest run --passWithNoTests","build":"tsc"},"_npmUser":{"name":"ruvnet","email":"ruv@ruv.net"},"repository":{"url":"git+https://github.com/ruvnet/agent-harness-generator.git","type":"git","directory":"packages/host-openclaw"},"_npmVersion":"10.9.8","description":"OpenClaw (personal AI assistant) host adapter for agent-harness-generator (MCP via ~/.openclaw/openclaw.json + workspace skills)","directories":{},"_nodeVersion":"22.23.2","dependencies":{"@metaharness/kernel":"^0.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.0.0","typescript":"^5.4.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/host-openclaw_0.1.3_1788294964448_0.35881124756613314","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@metaharness/host-openclaw","version":"0.1.4","keywords":["agent-harness","openclaw","personal-ai-assistant","mcp","host-adapter","ruflo"],"license":"MIT","_id":"@metaharness/host-openclaw@0.1.4","maintainers":[{"name":"ruvnet","email":"ruv@ruv.net"}],"homepage":"https://github.com/ruvnet/agent-harness-generator","bugs":{"url":"https://github.com/ruvnet/agent-harness-generator/issues"},"dist":{"shasum":"4229526b700061b07ec6204f136aabc53e1d58c4","tarball":"https://registry.npmjs.org/@metaharness/host-openclaw/-/host-openclaw-0.1.4.tgz","fileCount":7,"integrity":"sha512-6V5pwc0CgJxQjMDNbvxkNV/8ATX+bNOHnC4xfTOWb36DOvt4c/aU9UdvvnqppJtOj3wSLoqx/TzS26tQ4XaLRA==","signatures":[{"sig":"MEYCIQDXDtXNTHeB2myx89nPuZhxOWsfFf4beXmY50HNqiSmGAIhAIKPpZaNOpE5z2G4sonCHlmO54JXBKLpHEpBOLgQkpNc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCICZBKlyrTTfaH9KfO5+UULtVlmcuhL9bysvP17JEJi/bAiB/LEK5ENyEFuMB9utNc3ITcOhv/qVhpI5RygYfSrlLsA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":21770},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"lint":"tsc --noEmit","test":"vitest run --passWithNoTests","build":"tsc"},"_npmUser":{"name":"ruvnet","email":"ruv@ruv.net"},"repository":{"url":"git+https://github.com/ruvnet/agent-harness-generator.git","type":"git","directory":"packages/host-openclaw"},"_npmVersion":"10.9.8","description":"OpenClaw (personal AI assistant) host adapter for agent-harness-generator (MCP via ~/.openclaw/openclaw.json + workspace skills)","directories":{},"_nodeVersion":"22.23.2","dependencies":{"@metaharness/kernel":"^0.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.0.0","typescript":"^5.4.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/host-openclaw_0.1.4_1790437729726_0.15798100816739868","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"_id":"@metaharness/host-openclaw@0.1.5","bugs":{"url":"https://github.com/ruvnet/metaharness/issues"},"dist":{"shasum":"c38e14a56801815a591928945948c0ae5cbf9a82","tarball":"https://registry.npmjs.org/@metaharness/host-openclaw/-/host-openclaw-0.1.5.tgz","fileCount":7,"integrity":"sha512-I2YWFo02G9892JkqRbd1Q0F37zJmgQnky85AXQcAOOQTZzlO9/aJcV32Nb+1aTfVWYGQ6SyUay/3zMP8mj0GTA==","signatures":[{"sig":"MEYCIQDaHN9s6I1VUkuFK8QcXUvDKb2xs1NLWYpY2Cp/kbu+CQIhANni7YJ+gJe1owTuZc7morBaXCSln/f/FlNMRqxuCsfv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIGjK8cwnnDuwsE7piRPCEEXE6er1h6nAU6TaVIb1D7HhAiEAsdZEYIb8T5fRKGCmXpWUiltQgFoUMQhRjrQyv8R8ECo="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@metaharness%2fhost-openclaw@0.1.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":23376},"main":"./dist/index.js","name":"@metaharness/host-openclaw","type":"module","_from":"file:/home/runner/work/metaharness/metaharness/dist-release/metaharness-host-openclaw-0.1.5.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"license":"MIT","scripts":{"lint":"tsc --noEmit","test":"vitest run --passWithNoTests","build":"tsc"},"version":"0.1.5","_npmUser":{"name":"ruvnet","email":"ruv@ruv.net"},"homepage":"https://ruv.io","keywords":["metaharness","agent-harness","openclaw","personal-ai-assistant","mcp","model-context-protocol","host-adapter","skills"],"_resolved":"/home/runner/work/metaharness/metaharness/dist-release/metaharness-host-openclaw-0.1.5.tgz","_integrity":"sha512-I2YWFo02G9892JkqRbd1Q0F37zJmgQnky85AXQcAOOQTZzlO9/aJcV32Nb+1aTfVWYGQ6SyUay/3zMP8mj0GTA==","repository":{"url":"git+https://github.com/ruvnet/metaharness.git","type":"git","directory":"packages/host-openclaw"},"_npmVersion":"10.9.9","description":"OpenClaw host adapter for MetaHarness: MCP wiring via ~/.openclaw/openclaw.json plus workspace skills, from a harness spec.","directories":{},"maintainers":[{"name":"ruvnet","email":"ruv@ruv.net"}],"_nodeVersion":"22.23.4","dependencies":{"@metaharness/kernel":"^0.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.12","typescript":"^5.4.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/host-openclaw_0.1.5_1794227124070_0.8437609607580728"}}},"time":{"created":"2026-06-15T01:15:19.984Z","modified":"2026-11-09T12:25:24.484Z","0.1.0":"2026-06-15T01:15:20.254Z","0.1.1":"2026-06-16T19:19:34.663Z","0.1.2":"2026-06-17T22:41:48.938Z","0.1.3":"2026-09-01T20:36:04.589Z","0.1.4":"2026-09-26T15:48:49.815Z","0.1.5":"2026-11-09T12:25:24.151Z"},"bugs":{"url":"https://github.com/ruvnet/metaharness/issues"},"license":"MIT","homepage":"https://ruv.io","keywords":["metaharness","agent-harness","openclaw","personal-ai-assistant","mcp","model-context-protocol","host-adapter","skills"],"repository":{"url":"git+https://github.com/ruvnet/metaharness.git","type":"git","directory":"packages/host-openclaw"},"description":"OpenClaw host adapter for MetaHarness: MCP wiring via ~/.openclaw/openclaw.json plus workspace skills, from a harness spec.","maintainers":[{"name":"ruvnet","email":"ruv@ruv.net"}],"readme":"# @metaharness/host-openclaw\n\n<!-- ruv-seo:start (ADR-356) -->\nTurns a MetaHarness harness spec into the files OpenClaw reads: an `openclaw.json` MCP entry, a workspace `SKILL.md`, and an install script.\n\n**Supported environments:** Node.js 20+ on Linux, macOS and Windows. ESM only (`import`, not `require`). Pure JavaScript with no native build step; `@metaharness/kernel` is used only for its `HarnessSpec` and `HostAdapter` types.\n\n## Quickstart\n\n```bash\nnpm install @metaharness/host-openclaw\n```\n\nSave this as `quickstart.mjs` and run `node quickstart.mjs`:\n\n```js\nimport adapter from '@metaharness/host-openclaw';\n\nconst files = adapter.generateConfig({\n  name: 'my-bot',\n  description: 'demo harness',\n  mcpServers: [{ name: 'my-bot', command: ['node', './bin/mcp.js'] }],\n});\nconsole.log(`host: ${adapter.name}`);\nfor (const [path, body] of Object.entries(files)) {\n  console.log(`${path}  (${body.split('\\n').length} lines)`);\n}\n```\n\nExpected output:\n\n```text\nhost: openclaw\nopenclaw.json  (14 lines)\nSKILL.md  (9 lines)\ninstall-openclaw.sh  (21 lines)\n```\n\n**Next:** [`@metaharness/openclaw`](https://www.npmjs.com/package/@metaharness/openclaw) — scaffold a complete, doctor-checked harness for this host in one command (`npx @metaharness/openclaw my-bot`).\n\n**Where it fits:** `npx metaharness new <name> --host openclaw` adds this package as a dependency of the generated harness, and the generated `__tests__/smoke.test.ts` imports it, so `npm test` in that harness fails if the adapter is missing or broken.\n<!-- ruv-seo:end -->\n\n## Reference\n\n[OpenClaw](https://github.com/openclaw/openclaw) host adapter for the [agent-harness-generator](https://github.com/ruvnet/agent-harness-generator) project.\n\n> OpenClaw — Personal AI Assistant. Any OS. Any Platform. The lobster way. 🦞\n\nGenerates the per-harness files an OpenClaw-targeted harness needs:\n\n- `openclaw.json` — MCP server snippet to merge into `~/.openclaw/openclaw.json`\n- `SKILL.md` — workspace skill (placed at `~/.openclaw/workspace/skills/<name>/SKILL.md`)\n- `install-openclaw.sh` — runbook script (idempotent)\n\n## Usage\n\n```js\nimport adapter from '@metaharness/host-openclaw';\n\nconst config = adapter.generateConfig({\n  name: 'my-bot',\n  description: 'My personal lobster assistant',\n  systemPrompt: 'You are a helpful agent.',\n  mcpServers: [{ name: 'my-bot', command: ['npx', '-y', 'my-bot', 'mcp'] }],\n});\n// config['openclaw.json'] = '<JSON>'\n// config['SKILL.md'] = '<YAML+markdown>'\n// config['install-openclaw.sh'] = '<bash>'\n```\n\n## OpenClaw integration surface\n\n| Aspect | Value |\n|---|---|\n| Install | `npm install -g openclaw@latest` then `openclaw onboard --install-daemon` |\n| Main config | `~/.openclaw/openclaw.json` (JSON, not TOML/YAML) |\n| Skills | `~/.openclaw/workspace/skills/<name>/SKILL.md` (YAML frontmatter + markdown) |\n| First-class tools | browser, canvas, nodes, cron, sessions |\n| MCP servers | register under `mcp_servers` in `openclaw.json` |\n| Node version | ≥ 22.19 / 24 |\n| License | MIT |\n\n## What's different from the other host adapters\n\n| | OpenClaw | Claude Code | Codex | Hermes | pi.dev |\n|---|---|---|---|---|---|\n| Config format | **JSON** | JSON | TOML | YAML | TypeScript module |\n| Hooks system | (none documented) | rich, 5-handler | none | none | none |\n| MCP support | yes | yes | yes | yes | **no (by design)** |\n| Multi-platform messaging | **yes (built-in)** | no | no | no | no |\n\nOpenClaw is the only host with built-in multi-platform messaging (WhatsApp/Telegram/Slack/Discord). For a harness that needs to push notifications to the user across channels, OpenClaw is the natural fit.\n\n## License\n\nMIT\n","readmeFilename":"README.md"}