feat: add POST /openclaw endpoint and enrich heartbeats with OpenClaw metadata

- Bridge server now accepts POST /openclaw from OpenClaw plugin
- OpenClawMeta struct stores version, plugin_version, and agents
- Heartbeat sendOnce() enriches payload with plugin metadata when available
- Telemetry Payload adds optional openclaw_version field
- README updated to document /openclaw endpoint and metadata enrichment
- All communication remains optional — Monitor functions without plugin data
This commit is contained in:
zhi
2026-03-22 01:37:15 +00:00
parent 360743ba6b
commit dc05fa01d1
4 changed files with 88 additions and 3 deletions

View File

@@ -35,6 +35,10 @@ type Payload struct {
SwapPct float64 `json:"swap_pct,omitempty"`
LoadAvg []float64 `json:"load_avg,omitempty"`
UptimeSeconds uint64 `json:"uptime_seconds,omitempty"`
// Optional OpenClaw metadata, enriched from plugin bridge.
// These fields are omitted if no plugin data is available.
OpenClawVersion string `json:"openclaw_version,omitempty"`
}
func BuildPayload(ctx context.Context, cfg config.Config) (Payload, error) {