Skip to main content

Bots

Each bot has its own page covering its trigger, message schema, ESPN reads and writes, verification and failure modes. Find yours in the table.

Which bot handles what?​

BotStarts fromFileWrites to ESPN?
Lineuplineup_updateslineup_bot.jsYes
Waiver sniperwaiver_actionswaiver_sniper.jsYes
Draft clickerdraft_targetsdraft_clicker.jsYes
Draft syncA Job the core API createsdraft_sync.jsNo
Trade evaluation and negotiationtrade_evaluations, trade_negotiationstrade_bot.jsStaging only
Trade proposal and scantrade_proposals, trade-scan CronJobtrade_proposal.js, trade_scan.jsStaging only
Trade buildertrade_submissionstrade_builder.jsYes, with approval
Trade inboxtrade-inbox CronJobtrade_inbox.jsNo
Trade responsetrade_responsestrade_response.jsYes, with approval
Rumor digestrumor-digest-bot CronJobrumor_digest_bot.jsNo
Async LLM requestsllm_requestsllm_async_queue.jsNo
Session health checkespn-session-healthcheck CronJobcheck_espn_session.jsNo
Mock draft helperCalled by draft syncmock_draft.jsNo

How do the trade bots fit together?​

Offers move from generation through human approval to ESPN. No LLM output reaches ESPN without a person approving the exact offer.

Tools that are not bots​

These files are run by hand and are not part of the production pipeline.

FilePurpose
draft_recon.js, lineup_recon.js, waiver_recon.js, trade_recon.jsCapture what ESPN actually sends so request shapes and selectors can be verified. trade_recon.js blocks every ESPN write. See Recon tools.
remote_login.jsInteractive ESPN login over VNC, run in a Kubernetes Job. See Session and auth.
debug_capture.jsSaves the latest page HTML and screenshot for any bot that holds a page.