sandbox-toolchains
Skill9 starsChanged 4 months agoMITView on GitHub
How readme2demo handles TARGET-repo languages and toolchains (Go, Node, Python, Rust, Terraform, etc.) inside the sandbox — version currency, install patterns, and the agent rules that keep runs honest. Use when a run fails on a toolchain install/version, or when extending language support in the base image or agent prompt.
- Installs packages
In this repository9 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- docs/llms.txtllms.txt
- add-engineSkill
- add-failure-classSkill
- debug-runSkill
- docker-sandboxSkill
- git-github-operatorSkill
- python-standardsSkill
- vhs-videoSkill
The file
We split this skill into the rules it gives an agent
1 rule. About 0 are common, 0 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈0
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 48
Add a toolchain to images/base/Dockerfile only if it's common across target repos (keep the image lean.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Target-repo toolchains in the sandbox
readme2demo runs OTHER projects' quickstarts. The base image ships common toolchains; the agent installs anything else. Two recurring hazards, both with agent-prompt rules AND code defenses.
Version currency (failure class 2)
The agent's training data is STALE — languages/tools newer than it remembers
almost certainly exist. prompts/agent.md rule 4: never declare a version
"unreleased"; CHECK the official source
(curl -sL 'https://go.dev/VERSION?m=text', pyenv install --list,
npm view <pkg> version) then download it. Keep the base image's Go current
(built from the official tarball) so the common case needs no download.
Install patterns the agent uses (and that must survive verify)
- Python externally-managed sandbox →
pip install --break-system-packages(and--no-input). Editable installs (pip install -e .) are cwd-sensitive — see below. - Go:
go buildwith a current toolchain; GOTOOLCHAIN pitfalls handled by shipping a new-enough Go. - Binaries fetched by curl+unzip go to
~/.local/binor~/binon PATH.
cwd drift (failure class 6)
cd persists across script lines. The classic bug: cd /tmp to unpack a
binary, then pip install -e . editable-installs /tmp instead of the repo.
prompts/distill.md rule 5b requires a cd on/before any relative-path line;
verify.cwd_hints runs a static cwd simulation of a failing script and injects
precise hints into the distiller retry. The repo is always at /work.
Findings tools (failure class 4)
Linters, drift detectors, scanners (tfdrift, etc.) exit NONZERO when they find
what the demo exists to show. The assertion block uses set +e +
pattern-as-criterion; normalize.mark_findings_success reclassifies such
entries as successful so they count for grounding, the tape, and the payoff
step. When adding language support, remember success ≠ exit 0 for this class.
Extending support
Add a toolchain to images/base/Dockerfile only if it's common across target
repos (keep the image lean; the agent can install niche tools). Per-ecosystem
slim images are a known future optimization, not the MVP.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

