Overwolf app

Load the unpacked app

  1. Run task build:dev or task dev:overwolf.
  2. Enable Overwolf’s development options.
  3. In Settings > About > Development options, choose Load unpacked extension and select dist/overwolf.
  4. Launch Stream Pulse from Overwolf.
  5. Configure connections and rules before starting the game.

Build an OPK package

Run pnpm package:overwolf or task package:overwolf. This builds the production Overwolf app, then creates dist/stream-pulse.opk.

The OPK is a ZIP archive using normal compression (level 6), with manifest.json and all build files at its root, not inside an overwolf folder. It is written directly with the .opk extension; no manual rename is needed. pnpm build:overwolf still produces only the unpacked app.

How it runs

@overwolf/odk-ts creates the desktop configuration window. A hidden, persistent background controller owns GEP subscriptions and action routing. Closing the configuration window does not stop routing. Relaunch the app to reopen configuration; exiting the entire extension stops it.

The Overwolf app always runs live; there is no dry run.

The minimum Overwolf version is 0.311.0.6. On this version, setRequiredFeatures waits for provider readiness internally. Final registration failures, missing features, unavailable game providers, and late-start caveats are shown in status and activity. Events are never replayed from an earlier match. Subscriptions are refreshed after rule changes and game switches.

Moving configuration

The simulator and Overwolf have separate storage. Use Settings > Export JSON / Import JSON to move connections and rules between them. See Storage and privacy for what is exported.

Differences from the simulator

  • Streamer.bot HTTP and HTTP webhooks are called directly, without the local server relay. Webhook targets must allow CORS.
  • The Custom REST source is unavailable, because Overwolf cannot host an HTTP endpoint.