walrusquant/sports-analytic-skills/environment-setup

Claude Code and agent skill by walrusquant/sports-analytic-skills

Trust tier 2
  • community
LLM review pending
Source check pending

Checking that the SKILL.md file is still in the repository.

Create and verify a portable Python environment for sports analysis. Use for machine setup, onboarding, dependency diagnosis, or reproducibility checks.

Install

npx vskill@latest install walrusquant/sports-analytic-skills/environment-setup

SKILL.md

Environment Setup

Outcome

Produce an isolated environment, explicit dependency record, and machine-readable verification report for the selected analysis. Install only the public scientific libraries and loaders the work actually requires.

Read the verification checklist while verifying a new environment and the troubleshooting guide when an install, import, output, or loader probe fails.

When to Use This Skill

Use when:

  • onboarding a new machine or project for sports analysis;
  • diagnosing broken imports, wrong interpreters, or conflicting packages;
  • locking a reproducible environment before serious modeling;
  • verifying that selected skill helpers and loaders work offline at --help.

Do not use this skill to:

  • install the optional repository toolkit / bridge path → sports-ds-bridge;
  • choose a public data source → data-sources;
  • run EDA or modeling once the environment already works.
NeedGo instead
Optional toolkit bridgesports-ds-bridge
Source selectiondata-sources
Analysis after setupthe relevant modeling skill

Plan before installing

Record operating system/architecture, Python version and executable, analysis tasks, named loaders, required file/plot formats, CPU/memory/storage constraints, network/proxy constraints, and whether exact reproduction or flexible minimum versions are needed. Separate core packages from optional loaders and dev tools.

Create an isolated environment

bash
python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install numpy pandas scipy scikit-learn statsmodels matplotlib pyarrow

On Windows PowerShell use .venv\Scripts\Activate.ps1. Use python -m pip so the installer follows the active interpreter. Do not modify the system Python.

Install public loaders only when the source plan requires them:

bash
python -m pip install nflreadpy
python -m pip install pybaseball
python -m pip install sportsdataverse

Do not install every loader “just in case”; optional native/transitive dependencies add conflicts and weaken reproducibility.

Verification ladder

Work from cheapest/local to bounded/networked. Stop at the first unexplained failure; later successes do not erase it.

  1. Record python --version, executable path, platform, and python -m pip --version.
  2. Confirm Python and pip resolve inside the same environment.
  3. Import the minimum scientific packages and record resolved versions.
  4. Run every selected helper or loader's --help; help must not make a network call.
  5. Test required local outputs: JSON, Parquet, and images as applicable.
  6. If network is authorized, run one small bounded public-data sample.
  7. Save the verification report; freeze dependencies only after success.
  8. Recreate from the lock in a clean environment for high-stakes reproducibility.
bash
python /path/to/environment-setup/scripts/verify_install.py
python /path/to/environment-setup/scripts/verify_install.py \
--packages numpy,pandas,sklearn --out data/environment.json
python -m pip freeze > requirements-lock.txt

The portable verifier accepts comma-separated import names through --packages. Import names can differ from distribution names (sklearn versus scikit-learn); document both when that matters.

The verifier checks the current interpreter, python -m pip, and the requested imports only. Its JSON lists helper, output, network, and lock-recreation checks as not run; OK is therefore not full environment sign-off. A standard-library venv is detected from Python prefixes, but other environment managers may not be. Run and document the remaining ladder steps separately. On a completed probe, stdout is exactly one JSON document; package import output is captured inside the relevant package result. With --out, the same JSON is also written to that path, and no human status line is mixed into stdout.

Verification matrix

LayerProbePass evidence
Interpreterversion, executable, prefixesintended environment path/version
Installerpython -m pip --versionpip invoked by that exact interpreter
Core importsminimal package listimport + resolved versions (covered by verifier)
Skill helpers--helpusage text, status 0, no network
File formatstiny round tripreadable output in user-owned path
Loader importlightweight importmodule/version recorded
Network samplebounded queryplausible rows + provenance
Reproductionclean reinstallsame checks pass from lock

Troubleshooting by layer

SymptomDiagnoseRemediation
ModuleNotFoundErroractive executable and exact import nameinstall named distribution in venv
install succeeds, import failscompare Python/pip paths and architecturereactivate; use python -m pip
Parquet write failsengine and output permissionsinstall pyarrow; test bounded path
loader request failsnetwork, provider, rate limit, requested coverageretry bounded documented probe
native-library errorOS/CPU, wheel, native runtimechoose compatible version/install prerequisite
stale notebook importkernel executable and process stateselect venv kernel; restart
resolver conflictincompatible constraintsisolate optional loader or revise pins explicitly
empty loadseason/status/filter semanticsinspect request and provider coverage

Capture the complete error, command, interpreter, package versions, and minimal reproduction before changing dependencies. Never silently substitute a package or broaden versions until something happens to install.

Reproducibility policy

Keep a human-edited dependency specification separate from a resolved lock. Record Python minor version, OS/architecture, package versions, loader versions, and relevant environment variables without secrets. Treat caches as performance artifacts, not provenance; data snapshots need their own source metadata.

Lock files are platform-sensitive. For multiple supported platforms, maintain and test explicit platform locks or a reproducible resolver workflow. A freeze from a contaminated environment is not a dependency design.

Worked example

For a new NFL analysis: create .venv; install scientific packages and nflreadpy; run the verifier for numpy,pandas,sklearn,nflreadpy; run every selected helper's --help; perform a one-season or smaller authorized sample; write environment.json; inspect it; freeze dependencies; then repeat the local checks in a clean environment before claiming setup is reproducible.

Output contract and integrity rules

The complete sign-off should report Python version/executable, platform, requested distributions and import names, resolved versions, helper/loader probes, skipped network checks, output round trips, exact failures/remediations, and paths to report and lock. The portable verifier emits only the subset stated above and enumerates the checks it did not run.

  1. Use an isolated environment and python -m pip.
  2. Never hide failed imports, skipped checks, or platform limitations.
  3. --help must remain offline; network samples must be bounded and authorized.
  4. Freeze only after verification; verify the lock by recreation when required.
  5. Use verify_checklist.md for sign-off and troubleshooting.md for failure routing.

Security

  • Security scanPassed, 100 of 100Pattern checks on the skill's files.
  • Model reviewNot runA model review is scheduled for the next rescan.

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
51
Repository forks
4
7-day trend score
0

Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/walrusquant/sports-analytic-skills/environment-setup/badge)](https://verified-skill.com/skills/walrusquant/sports-analytic-skills/environment-setup)

Something wrong with this skill or its page? Tell us.