Files
HarborForge.OpenclawPlugin/plugin/openclaw.plugin.json
zhi 0dc824549a feat: fix API Key authentication and payload alignment
- 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
2026-03-19 18:20:29 +00:00

48 lines
1.4 KiB
JSON

{
"id": "harborforge-monitor",
"name": "HarborForge Monitor",
"version": "0.1.0",
"description": "Server monitoring plugin for HarborForge - streams telemetry to Monitor",
"entry": "./index.js",
"configSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"enabled": {
"type": "boolean",
"default": true,
"description": "Enable the monitor plugin"
},
"backendUrl": {
"type": "string",
"default": "https://monitor.hangman-lab.top",
"description": "HarborForge Monitor backend URL"
},
"identifier": {
"type": "string",
"description": "Server identifier (auto-detected from hostname if not set)"
},
"apiKey": {
"type": "string",
"description": "API Key from HarborForge Monitor admin panel (optional but required for authentication)"
},
"reportIntervalSec": {
"type": "number",
"default": 30,
"description": "How often to report metrics (seconds)"
},
"httpFallbackIntervalSec": {
"type": "number",
"default": 60,
"description": "HTTP heartbeat interval when WS unavailable"
},
"logLevel": {
"type": "string",
"enum": ["debug", "info", "warn", "error"],
"default": "info",
"description": "Logging level"
}
}
}
}