feat: implement HarborForge Monitor OpenClaw Plugin

Architecture:
- openclaw.plugin.json: Plugin manifest with config schema
- index.mjs: Plugin entry, lifecycle hooks (gateway:start/stop)
- sidecar/server.mjs: Independent Node process for telemetry

Features:
- Collects system metrics (CPU, memory, disk, load, uptime)
- Collects OpenClaw status (version, agents)
- HTTP heartbeat to HarborForge Monitor
- Config via ~/.openclaw/openclaw.json
- Sidecar auto-starts/stops with Gateway

Config options:
- enabled, backendUrl, identifier
- challengeUuid (required, from Monitor registration)
- reportIntervalSec, httpFallbackIntervalSec
- logLevel

Provides tool: harborforge_monitor_status
This commit is contained in:
zhi
2026-03-19 13:37:11 +00:00
parent c8681af0ac
commit a148c11e50
5 changed files with 698 additions and 0 deletions

16
package.json Normal file
View File

@@ -0,0 +1,16 @@
{
"name": "harborforge-openclaw-plugin",
"version": "0.1.0",
"description": "OpenClaw plugin for HarborForge Monitor - streams server telemetry",
"type": "module",
"main": "index.mjs",
"scripts": {
"start": "node index.mjs",
"sidecar": "node sidecar/server.mjs"
},
"keywords": ["openclaw", "plugin", "monitoring", "harborforge"],
"license": "MIT",
"engines": {
"node": ">=18.0.0"
}
}