Project Deep Dive

Agent Support

Agent Support extends the GestureKit engine with production-grade features: a Global Cooldown manager that emulates SWTOR's 1.275s GCD timing, a Discord bot for remote control and notifications, a hardware-calibration system for latency tuning, and Omega profile support for high-complexity rotation sequences.

Node.jsTypeScriptDiscord.jsSupabaseRobotJS

Project Vlog

What It Is

Agent Support is the production evolution of GestureKit. It keeps the same per-key gesture detection core but layers in several systems that are necessary for sustained real-world use in a game like SWTOR — where timing, cooldown management, and sequence correctness have real consequences.

Core Additions

Global Cooldown (GCD) Manager

SWTOR has a 1.275-second global cooldown after any GCD ability. Agent Support emulates this in software:

  • Tracks the GCD timer independently of macro execution
  • Queues the most recently requested GCD ability and fires it the moment the cooldown expires
  • Handles per-ability cooldowns separately from the GCD
  • Falls back gracefully when a long/super-long gesture variant has no binding
  • This means you can queue abilities ahead of the GCD and the system will execute them at exactly the right moment — no manual timing required.

    Discord Integration

    A Discord bot that connects to your server and allows:

  • Remote status checks — query the agent's current state from your phone
  • Macro notifications — get a message when a macro fires or an error occurs
  • Profile switching — change active macro profiles without touching the terminal
  • Calibration System

    Input latency varies by system, and a 5ms miscalibration can cause an ability to fire a GCD too early. The calibration system:

  • Runs a series of timed test sequences and measures actual vs. expected timing
  • Generates a calibrated profile that compensates for measured latency
  • Stores calibration results as named JSON profiles for reuse
  • Omega Profiles

    Omega profiles are a higher-order configuration format that express complex SWTOR rotations as priority-ordered ability lists rather than flat macro sequences. The Omega Gesture Detector resolves which ability to fire based on cooldown state, GCD availability, and priority rank — essentially turning static macros into a dynamic rotation engine.

    Architecture

  • Gesture engine — same per-key isolator as GestureKit, extended with GCD awareness
  • Traffic controller — prevents modifier key collisions when concurrent sequences are executing
  • Profile compiler — precomputes conundrum key sets at load time so the traffic controller has zero runtime overhead
  • Discord controller — WebSocket connection to Discord Gateway, responds to slash commands
  • Calibration server — local HTTP server that accepts timing measurements from a test harness
  • Use Case

    This is the full toolkit for someone running a complex SWTOR rotation who needs more than a simple macro — they need a system that understands game timing, manages ability priority, and can be controlled remotely. The Discord integration in particular was motivated by wanting to adjust profiles mid-session without alt-tabbing.