Dota Draft AI

Collector Hub

One central control point for distributed OpenDota collection. Workers fetch from their own machines. The hub owns task assignment, deduplication, and storage.

Not connected.

Active Workers - Total sessions: -
Queued Tasks - Claimed: -
Stored Matches - Public matches: -
Worker API Calls - Task submissions: -

Live Workers

Connected Helpers

Worker Status Current Task Completed Failed Last Heartbeat
Connect with an admin token to load worker state.

Recent Tasks

Queue Activity

Type Target Status Worker Attempts Updated
No task data loaded yet.

Helper Setup

What You Send To Other People

Important: The browser page is not the scraper. Helpers still need a small local worker app. The worker calls OpenDota directly from their own PC and sends results back here.

Configured Worker IDs

Connect to load configured workers

Helper Steps

  1. Connect to load onboarding instructions.

Production Command

collector-worker init --hub-url "https://collector.example.com" --worker-token "<worker-token>" --worker-label "helper-pc-01"
collector-worker run

Repo Dev Command

dotnet run --project apps/collector-worker/collector-worker.csproj -- init --hub-url "https://collector.example.com" --worker-token "<worker-token>" --worker-label "helper-pc-01"
dotnet run --project apps/collector-worker/collector-worker.csproj -- run

Next Steps

What Still Needs To Happen

  • Move the hub onto your real PostgreSQL instead of temporary local smoke databases.
  • Put the hub behind Caddy with HTTPS and keep PostgreSQL private.
  • Store worker tokens in Infisical instead of environment variables on your machine.
  • Publish the worker as a simple Windows `.exe` so helpers do not need the repo.
  • Add `player-history` task support after the basic collection loop is stable.