Open-source MTG Arena companion
Descriptive tracking during the game.
Coaching after it ends.
DeckLogic shows you where the game stands — win expectancy, draw odds, lethal indicators — without prescribing your play. After the match, it grades your decisions, replays your games with Film Room, and builds practice drills from your recorded mistakes. All running locally, on your machine.
Win expectancy
63.4%
Mana
BEATDOWN
Clock: 3 turns
Deck
14 of 24 lands · 36% next draw
Descriptive in-match tracking
A 24-feature XGBoost win-expectancy model scores every game state live. Draw odds, lethal indicators, revealed cards, and aggregate match luck — all factual, none prescriptive. Your decisions belong to you.
Post-game coaching
Film Room cinematic replay, graded decisions on your own calibrated scale, match thesis, "Am I unlucky?" land residual, and practice drills generated from your recorded mistakes. All after the match concludes.
Local-first by design
Your log is parsed on your machine, your games live in a local database, and inference runs on-device. No telemetry, no sign-up, nothing phoning home. See exactly what it fetches.
And it goes deeper.
Practice drills
Daily Puzzle, Mulligan Gym, Race Math, and Hand-Reading Gym — spaced-repetition drills generated from your own concluded matches. Concepts recurring across your games drive drill selection.
Limited assistant
Pick scores on the real pack, deck builder with consistency lab, post-draft recap, and offline practice drafts. Everything outside active matches.
Playable Magic sim
A real rules engine — zones, stack, London mulligan, keyword-aware combat — kept deliberately small and honest about what it models. Practice against curated decks or mine trophy pools.
Mastery shelf
Twelve badges in three classes — Craft, Discipline, Saga — each with a receipt that opens the film at the frame that earned it. Your existing archive is read in the background.
AI announcer
Esports-style commentary composed locally — with optional Ollama/LM Studio generative lines and Kokoro neural speech.
Fair play boundary
During a live match, DeckLogic describes the game but never chooses your play. The boundary is enumerated field by field and enforced at the Rust dispatch layer. [The Live Boundary](boundary/) states exactly what is shown and what is refused.
Built on the shoulders of great data.
DeckLogic's Limited intelligence is built from the public aggregate data the community already trusts: 17Lands draft telemetry, Scryfall card data, and MTGJSON structural pack blueprints. If DeckLogic is useful to you, consider supporting 17Lands — none of this exists without them.