- Report remote OpenClaw CLI version as openclaw_version - Report harborforge-monitor plugin version as plugin_version - Pass plugin version from plugin runtime to sidecar - Read live config via api.pluginConfig/api.config helper
- Update openclaw.plugin.json: replace challengeUuid with apiKey (optional) - Fix tsconfig: use CommonJS module to avoid import.meta.url issues - Fix plugin/index.ts: remove ESM-specific code, use __dirname - Fix telemetry.mjs: - Add loadavg to os imports, remove require() call - Replace challengeUuid with apiKey in config - Update endpoint to heartbeat-v2 - Add X-API-Key header when apiKey is configured - Fix payload field names: agents, load_avg (array), uptime_seconds - Change missing apiKey from error to warning
New structure: ├── package.json # Root package ├── README.md # Documentation ├── plugin/ # OpenClaw plugin │ ├── openclaw.plugin.json # Plugin manifest │ ├── index.ts # Plugin entry (TypeScript) │ ├── package.json │ └── tsconfig.json ├── server/ # Telemetry sidecar │ └── telemetry.mjs ├── skills/ # OpenClaw skills └── scripts/ └── install.mjs # Installation script Matches PaddedCell project structure. Provides install.mjs with build/install/configure/uninstall commands.