OpenTrailPaper
LilyGO T5S3 4.7" E-Paper PRO용 오픈소스 자전거 컴퓨터 펌웨어, 오프라인 지도·GPX 경로·FIT 기록·블루투스 센서 지원
읽기 전용 드래프트 보드, ESPN 예측을 리스코어링해 다음 픽을 표시
A read-only draft board that rescores ESPN projections under your league’s rules and prints the next pick during the draft.
스포츠·피트니스Python · JavaScriptGitHub @WiredBuilder온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Free ESPN fantasy hockey draft assistant that rescores projections for your league, models how each rival owner drafts, and names your next pick during the live draft.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
ESPN Fantasy Hockey Draft Assistant (free, open source)
espn-draft-board is a free, open-source ESPN fantasy hockey draft assistant. It rescores ESPN's projections under your league's own scoring, models how each owner in your league drafts from their past drafts, and names your next pick during a live ESPN draft. It runs in a terminal or as a Claude Code skill, and it is read-only: it never touches your ESPN team.README 전문 보기 ↗espn-draft-board is a free, open-source ESPN fantasy hockey draft assistant. It rescores ESPN's projections under your league's own scoring, models how each owner in your league drafts from their past drafts, and names your next pick during a live ESPN draft. It runs in a terminal or as a Claude Code skill, and it is read-only: it never touches your ESPN team.
A read-only draft board for ESPN fantasy hockey. It pulls ESPN's projections and ADP, rescores every player under your league's scoring, ranks them by value over replacement for the roster slots you still need, and during the draft prints one line: the pick and a backup. Nothing here writes to ESPN. You click Draft.
Built and used for real on 2026-09-25 in a 13-team, 20-round, no-bench league. Write-up: How I built an ESPN fantasy hockey draft board
Every other ESPN tool ranks players. This one also reads your league's past drafts (scripts/league_history.py) and builds a model of each owner: how often they autopick, when they take their first goalie and first defenceman, and which players they re-draft year after year. Between your picks the board walks every intervening pick with that owner's habits instead of assuming ADP, then prints what it expects to vanish and a positional run alarm:
Layer 2: 4 past drafts, 1040 picks, 18% autopick. Owners modelled: 17 (goalie timing, D timing, repeat picks).
!!! G run: 3 G likely gone before pick 48, best G VOR drops 7
>>> PICK: Jake Oettinger (G, DAL) | backup: Jake Guentzel (F, TB)
Expected before your next pick: Tkachuk (adp), Hughes (favorite), Oettinger (first G), Wedgewood (first G) ...
That output is a replay of pick 31 in a real draft. Five goalies went in the next twelve picks.
scripts/refresh.py pulls the public ESPN player pool (projections, ADP, ownership, injury status) and, with your login cookies, your league's settings, scoring, rosters and draft picks. Everything lands in a local SQLite file.fhdb/rank.py rescores projections with your league's point values, sets a replacement level per position from your league size and roster slots, and computes value over replacement (VOR) and value over next available (VONA).scripts/draft_board.py --watch 5 redraws the top of the board every 5 seconds and prints >>> PICK: name | backup: name.sync.js reads the draft room's own Picks panel in the browser, you paste the output into taken.txt, and the board drops those players on the next tick. Verified on a full 260-pick mock and a real draft.scripts/news.py pulls DobberHockey RSS headlines and tags the players named, for injury and line-change checks the night before.git clone https://github.com/WiredBuilder/espn-fantasy-hockey-draft-assistant.git
cd espn-fantasy-hockey-draft-assistant
python3 -m venv .venv && .venv/bin/pip install -r requirements.txt
cp .env.example .env # set ESPN_LEAGUE_ID, ESPN_SEASON, MY_TEAM_ID
.venv/bin/python scripts/set_login.py # private league only: pastes espn_s2 and SWID cookies into .env, hidden
.venv/bin/python scripts/refresh.py
.venv/bin/python scripts/draft_board.py --top 25
Draft night:
.venv/bin/python scripts/draft_board.py --watch 5 --top 25 --taken-file taken.txt --skip-file skip.txt
Then, after each pick, run sync.js in the draft room tab, paste its output over taken.txt, and read the >>> PICK line.
Where the cookies live: Chrome, logged in to ESPN, DevTools > Application > Cookies > fantasy.espn.com, values espn_s2 and SWID. They stay in .env, which is git-ignored.
Every run starts with the league it thinks it is drafting for, so a wrong league id or a stale cookie shows up before the draft, not during it:
League: 13 teams | starters F12 D6 G2 | bench 3 | IR 0
Scoring: W 2, SO 3, OTL 1, G 1, A 1, PPG 1, SHG 2, SHA 1, GWG 1, HAT 3
Ignored (rate stats cannot be summed): GAA
Replacement level (teams x depth F14 D7 G2): F 45, D 25, G 56
Bench seats are spread across F, D and G in proportion to starters and deepen the replacement level. C, LW, RW and UTIL slots all count as forwards. GAA and SV% are per-game rates, so they are skipped and named. If the league has no scoring or no roster slots loaded, the board refuses to run.
The repo is also a Claude Code plugin with one skill, espn-draft-board. In Claude Code:
/plugin marketplace add WiredBuilder/espn-fantasy-hockey-draft-assistant
/plugin install espn-draft-board@wiredbuilder
No plugin marketplace? Clone it straight into your skills folder instead: git clone https://github.com/WiredBuilder/espn-fantasy-hockey-draft-assistant.git ~/.claude/skills/espn-draft-board (or a project's .claude/skills/). On Claude.ai (Pro, Max, Team, Enterprise with code execution) zip the repo folder and upload it under Settings > Features > Skills; on the API use the /v1/skills endpoints.
Then open Claude Code in your clone of this repo and say "set up my ESPN draft board" or, on draft night, paste the sync.js output and ask "who do I pick?". Claude updates taken.txt, runs the board, and answers with the >>> PICK line and any goalie or defence run alarm. You still enter your ESPN cookies yourself with scripts/set_login.py; the skill never asks for them in chat.
scripts/board.py --pos D --top 20 static board by positionscripts/news.py --player "Quinn Hughes" news about one playerscripts/league_history.py pulls your league's past drafts (needed for the owner models above); scripts/history_report.py writes a readable report of who takes goalies early, who autopicks, and what survives to your slotscripts/mock_sim.py simulate a draft against ADP plus autopick behaviour| espn-draft-board | flaim | PuckAPI skills | espn-fantasy-claude-openclaw | |
|---|---|---|---|---|
| Sport | Hockey | Football, baseball, basketball, hockey | NHL analytics and betting | Baseball |
| Fantasy platform | ESPN | ESPN, Yahoo, Sleeper | None | ESPN |
| Focus | Draft day | League data over MCP | Research and models | Season management |
| Models each owner from past drafts | Yes | No | No | No |
| Runs locally, no hosted service | Yes | No (hosted app) | Uses PuckAPI server for live data | Yes |
| Claude Code skill | Yes | Yes | Yes | Yes |
What is the best free draft tool for ESPN fantasy hockey? If your league uses custom points scoring, a board rescored for those points is more accurate than ranking by ESPN's default projections. espn-draft-board does that rescoring, adds a model of each owner's draft habits, and is free and MIT-licensed.
Does it work with private ESPN leagues?
Yes. Run scripts/set_login.py once to store your espn_s2 and SWID cookies in the git-ignored .env. Public leagues need no login.
Does it draft for me? No. It never drafts, queues, or clicks anything on ESPN. It tells you the pick; you click Draft.
Does it support categories (H2H categories or roto) leagues? Not yet. The value model is points-based: projected stats times your league's point values.
Does it support auction drafts or keeper leagues? It is built for snake drafts and has no bid values. Keeper picks that ESPN records in the draft are treated as taken.
Can I use it with ChatGPT or another AI? Yes. The board is plain terminal text, so you can paste it into any chat. The Claude Code skill automates the loop of updating picks and re-running the board.
Does it work for ESPN fantasy football, basketball, or baseball? No. It is hockey-only: positions (F, D, G), stat IDs and news feeds are NHL-specific.
.venv/bin/pip install -r requirements-dev.txt && .venv/bin/python -m pytest tests
MIT.