HIGH:
- Add openclaw-api.ts with gateway client
- Add useOpenClaw.ts hook with polling and cleanup
- Fix memory leak: replace repeat:Infinity with CSS animations
- Fix canvas: use ResizeObserver instead of hardcoded 800x600
- Fix AgentDetailPanel to receive events as prop
MEDIUM:
- SearchAndFilters: useEffect instead of useMemo
- Locale: use navigator.language instead of hardcoded es-CL
- StatusBar: timestamp updates every second with cleanup
LOW:
- Add CSS animations for node-pulse, node-glow, connection-line