sonder-build-and-env

Recreate the Sonder Runtime Python environment and run its verification gates from a bare checkout.

6|3|Updated Jul 3, 2026
One-click install
npx skills add https://github.com/Krilliac/Sonder-runtime --skill sonder-build-and-env-krilliac
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: sonder-build-and-env
Source: https://github.com/Krilliac/Sonder-runtime/tree/main/.claude/skills/sonder-build-and-env
Command: npx skills add https://github.com/Krilliac/Sonder-runtime --skill sonder-build-and-env-krilliac

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Setting up the Sonder Runtime from a fresh checkout is error-prone: there is no pyproject.toml or installed package, tests only run from the repo root, the mcp==2.0.0 pin is load-bearing, and four different requirements files serve different purposes. This Skill guides you from a bare worktree to green tests without hitting the documented traps. ## Core Features & Use Cases - Environment bootstrap: Create the venv, install the correct requirements file (dev, runtime, train, or update), and verify with the MCP import probe and compileall gate. - Test execution guidance: Run pytest with the correct invocation (repo root, hermetic conftest, opt-in network/model flags, CI's parallel form) and interpret wrapper exit codes 3 and 4. - Gate and trap reference: Know which gates exist (compile, MCP probe, pytest, architecture ratchets), which do not (no ruff/mypy lint gate), and how to fix the twelve documented failure symptoms. - Use Case: You clone the repo into a fresh worktree and pytest fails to collect. The Skill explains that tests must run from the repo root because the root conftest.py inserts it into sys.path, then walks you through venv creation and the full pre-PR gate. ## Quick Start Ask the assistant to set up the Sonder development environment from this bare checkout and run the full test suite to confirm everything is green.

Frequently Asked Questions about sonder-build-and-env

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up the Sonder Runtime dev environment from a fresh checkout?

Create a venv at the repo root with python -m venv venv, install requirements-dev.txt using the explicit interpreter path, then run python -m pytest -q from the repo root. Fresh worktrees ship no venv because venv/ is gitignored.

Which requirements file should I install for Sonder development?

Install requirements-dev.txt for any dev or test work; it pulls in requirements-runtime.txt plus pytest and pytest-xdist. The train and update files are only for QLoRA training or TUF signed-update work, never by default.

Why does pytest fail to collect with ModuleNotFoundError in this repo?

Collection fails when pytest is launched outside the repo root, because the root conftest.py inserts the repo root into sys.path at import time. It also fails if MCP 1.x is installed instead of the pinned mcp==2.0.0, which renamed the server modules.

Does the Sonder repo have a ruff or mypy lint gate?

No lint or typecheck gate exists; there is no ruff, mypy, pyproject, or tox configuration anywhere in the repo. The required syntax gate is py_compile via compileall, and ruff wrappers in the codebase are runtime verifiers for model-generated artifacts, not project linting.

Why do network or model tests pass instantly without running?

They self-skip because network- and model-marked tests require explicit opt-in flags. Re-run with --run-network or --run-model; a skip is not a pass, and bare CI only ever collects a skip for these tests.

What do exit codes 3 and 4 from run-tests.cmd mean?

Exit code 3 means no interpreter exists at venv\Scripts\python.exe, so the venv is missing. Exit code 4 means the interpreter exists but will not start because the base Python in pyvenv.cfg is gone. Both are fixed by recreating the venv and reinstalling requirements-dev.txt.