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.
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
- 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.