rts-diagnostics-telemetry

Implements smoothed engine telemetry pipelines with EMA filtering and gated HUD updates.

Updated Jul 13, 2026
One-click install
npx skills add https://github.com/Ohmnia/site-build --skill rts-diagnostics-telemetry-ohmnia
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: rts-diagnostics-telemetry
Source: https://github.com/Ohmnia/site-build/tree/main/.opencode/skills/rts-diagnostics-telemetry
Command: npx skills add https://github.com/Ohmnia/site-build --skill rts-diagnostics-telemetry-ohmnia

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Raw engine diagnostics like frame times, pathfinding queue lengths, and physics ticks are too noisy and fast-changing to display directly, causing flickering HUDs, misleading zero readings, and per-frame DOM write overhead. This Skill enforces a decoupled telemetry architecture that stabilizes signals before they reach the UI. ## Core Features & Use Cases - Dual Schema Separation: Splits volatile raw metrics from stabilized display values using a PerformanceMonitor with clamped exponential moving average smoothing. - Cumulative Pathfinding Counters: Tracks totalJobsCreated, jobsPerSecond, and avgSolveTimeMs alongside instantaneous queue lengths so resolved jobs remain visible. - Gated UI Refresh: Restricts all DOM writes, string formatting, and spike warnings to a 250ms throttled update block, eliminating per-frame layout thrashing. - Spike Warning Cache: Routes values exceeding 2x the rolling average or 33ms frame-time thresholds out of the EMA and displays them for 2000ms. - Use Case: When building an RTS profiler HUD, generate a telemetry layer where FPS uses a 0.05 smoothing factor, frameTime uses 0.08, and all text updates occur exactly four times per second. ## Quick Start Ask the AI to generate a TypeScript performance monitor for your game engine that smooths FPS and frame time metrics with EMA filters and updates the HUD only every 250ms.

Frequently Asked Questions about rts-diagnostics-telemetry

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
What happens to telemetry when a subsystem stops producing data?

When no new raw ticks arrive for a full 1-second window, set jobsPerSecond to 0 and freeze avgSolveTimeMs at its last known value. Do not continue applying the EMA with zero inputs, which would distort the average.