Daytona Sandbox Operations
different-ai/openwork
Covers Daytona CLI setup, sandbox debugging, keeping a sandbox alive and which credentials the CLI uses, for when Daytona itself is the problem rather than the tests.
Reclaim idle Daytona SNAPSHOTS org-wide to free space under the 60-snapshot cap, using scripts/daytona/daytonasnapshotmanager.py.
$ npx skills add open-thoughts/OpenThoughts-Agent --skill utils-reclaim-stale-snapshots -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install open-thoughts/OpenThoughts-Agent utils-reclaim-stale-snapshots --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/open-thoughts/OpenThoughts-Agent.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/utils-reclaim-stale-snapshots .claude/skills/utils-reclaim-stale-snapshots && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "utils-reclaim-stale-snapshots" agent skill from https://github.com/open-thoughts/OpenThoughts-Agent/tree/main/.agents/skills/utils-reclaim-stale-snapshots into .claude/skills/utils-reclaim-stale-snapshots/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "utils-reclaim-stale-snapshots", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/open-thoughts/OpenThoughts-Agent/tree/main/.agents/skills/utils-reclaim-stale-snapshotsType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add open-thoughts/OpenThoughts-Agent --skill utils-reclaim-stale-snapshots -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install open-thoughts/OpenThoughts-Agent utils-reclaim-stale-snapshots --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/open-thoughts/OpenThoughts-Agent.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/utils-reclaim-stale-snapshots .agents/skills/utils-reclaim-stale-snapshots && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "utils-reclaim-stale-snapshots" agent skill from https://github.com/open-thoughts/OpenThoughts-Agent/tree/main/.agents/skills/utils-reclaim-stale-snapshots into .agents/skills/utils-reclaim-stale-snapshots/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "utils-reclaim-stale-snapshots", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add open-thoughts/OpenThoughts-Agent --skill utils-reclaim-stale-snapshots -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install open-thoughts/OpenThoughts-Agent utils-reclaim-stale-snapshots --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/open-thoughts/OpenThoughts-Agent.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/utils-reclaim-stale-snapshots .cursor/skills/utils-reclaim-stale-snapshots && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "utils-reclaim-stale-snapshots" agent skill from https://github.com/open-thoughts/OpenThoughts-Agent/tree/main/.agents/skills/utils-reclaim-stale-snapshots into .cursor/skills/utils-reclaim-stale-snapshots/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "utils-reclaim-stale-snapshots", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/open-thoughts/OpenThoughts-Agent.git --path .agents/skills/utils-reclaim-stale-snapshots--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add open-thoughts/OpenThoughts-Agent --skill utils-reclaim-stale-snapshots -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install open-thoughts/OpenThoughts-Agent utils-reclaim-stale-snapshots --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/open-thoughts/OpenThoughts-Agent.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/utils-reclaim-stale-snapshots .gemini/skills/utils-reclaim-stale-snapshots && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "utils-reclaim-stale-snapshots" agent skill from https://github.com/open-thoughts/OpenThoughts-Agent/tree/main/.agents/skills/utils-reclaim-stale-snapshots into .gemini/skills/utils-reclaim-stale-snapshots/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "utils-reclaim-stale-snapshots", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install open-thoughts/OpenThoughts-Agent utils-reclaim-stale-snapshotsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add open-thoughts/OpenThoughts-Agent --skill utils-reclaim-stale-snapshots -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/open-thoughts/OpenThoughts-Agent.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/utils-reclaim-stale-snapshots .github/skills/utils-reclaim-stale-snapshots && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "utils-reclaim-stale-snapshots" agent skill from https://github.com/open-thoughts/OpenThoughts-Agent/tree/main/.agents/skills/utils-reclaim-stale-snapshots into .github/skills/utils-reclaim-stale-snapshots/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "utils-reclaim-stale-snapshots", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add open-thoughts/OpenThoughts-Agent --skill utils-reclaim-stale-snapshots -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install open-thoughts/OpenThoughts-Agent utils-reclaim-stale-snapshots --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/open-thoughts/OpenThoughts-Agent.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/utils-reclaim-stale-snapshots .opencode/skills/utils-reclaim-stale-snapshots && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "utils-reclaim-stale-snapshots" agent skill from https://github.com/open-thoughts/OpenThoughts-Agent/tree/main/.agents/skills/utils-reclaim-stale-snapshots into .opencode/skills/utils-reclaim-stale-snapshots/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "utils-reclaim-stale-snapshots", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
utils-reclaim-stale-snapshotsReclaim idle Daytona SNAPSHOTS org-wide to free space under the 60-snapshot cap, using scripts/daytona/daytonasnapshotmanager.py.
Utils Reclaim Stale Snapshots is an agent skill from open-thoughts/OpenThoughts-Agent. Reclaim idle Daytona SNAPSHOTS org-wide to free space under the 60-snapshot cap, using scripts/daytona/daytonasnapshotmanager.py. Deletes only harbor per- environment snapshots idle past the standing threshold GT'd in .agents/projects/daytona/daytona.md — NEVER the shared base/template images (daytonaio/sandbox:, daytona-, windows-), which do not rebuild-on-demand. Use when a datagen/eval launch hits SnapshotCapExceeded, when a monitor sweep finds the cap full, or as routine cap hygiene. This is the org-wide…
Its SKILL.md is about 970 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
The repository describes itself as: Data recipes and robust infrastructure for training AI agents. The licence is Apache-2.0.
Read from SKILL.md and the folder at commit 3bd1917. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
condapythonFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
DAYTONA_API_KEYDAYTONA_RL_API_KEYDAYTONA_DATA_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Utils Reclaim Stale Snapshots loads about 969 tokens when it runs. Until then it costs about 193 tokens; SKILL.md has 289 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from open-thoughts/OpenThoughts-Agent at commit 3bd1917, republished under its Apache-2.0 licence (© open-thoughts). 289 words, ~969 tokens.
.claude/skills/utils-reclaim-stale-snapshots/SKILL.md (or your agent's skills folder).Free Daytona snapshot quota by deleting idle harbor__<hash>__snapshot environments under the hard cap of 60.
Harbor builds one snapshot per task-environment hash (harbor__<hash>__snapshot). auto_snapshot rebuilds a
deleted idle snapshot on demand.
The base/template images (daytonaio/sandbox:*, daytona-gpu, daytona-medium/large/small, windows-*) are
shared and do not rebuild on demand. Keep --name-prefix harbor__ so only Harbor snapshots are eligible.
For snapshots, state=active means built and available. Staleness uses last_used_at, falling back to
created_at; live-job environments remain below the idle threshold.
Datagen/eval pre-build uses the cli org and DAYTONA_API_KEY. RL uses the separate DAYTONA_RL_API_KEY org.
Always audit (read-only) first, then delete.
cd /Users/benjaminfeuer/Documents/OpenThoughts-Agent
source /Users/benjaminfeuer/miniconda3/etc/profile.d/conda.sh && conda activate otagent
source "${DC_AGENT_SECRET_ENV:?set DC_AGENT_SECRET_ENV to the secrets file first}"
PY=/Users/benjaminfeuer/miniconda3/envs/otagent/bin/python
SCRIPT=scripts/daytona/daytona_snapshot_manager.py
# 1. AUDIT — read-only, see what WOULD be reclaimed (at the stale threshold — see below)
$PY $SCRIPT --api-key-env DAYTONA_API_KEY --stale-days <threshold>
# 2. RECLAIM — actually delete the stale harbor__ snapshots
$PY $SCRIPT --api-key-env DAYTONA_API_KEY --stale-days <threshold> --delete-stale --yes--stale-days accepts floats; use minutes/1440 for sub-day thresholds. The standing threshold is in
.agents/projects/daytona/daytona.md § "How to clean stale snapshots". Raise it for more conservative cleanup.
| Flag | Default | Purpose |
|---|---|---|
--api-key-env | DAYTONA_DATA_API_KEY | Org key env var. Use DAYTONA_API_KEY for the cli/datagen org. |
--stale-days | 14 | Idle-days threshold (float). Standing value GT'd in .agents/projects/daytona/daytona.md § "How to clean stale snapshots" — don't restate it here. |
--name-prefix | harbor__ | Only names starting with this are deletable. Do not widen it — the default guards base images. |
--delete-stale | off (dry-run) | Actually delete. |
--yes | off | Skip the confirm prompt (for scripted/cron use). |
--json | off | Machine-readable output. |
$DC_AGENT_SECRET_ENV + otagent env — the daytona SDK lives in the otagent
conda env; use the full interpreter path.--name-prefix '' with --delete-stale — that would make base
images deletable. The tool is safe only with the harbor__ default.harbor__ snapshots are reclaimable.The every-3-hours Iris sweep audits each tick and reclaims for blocked datagen refills or cap ≥ ~58/60. See monitor-cron-sweep-iris §5.
© open-thoughts, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/utils-reclaim-stale-snapshots of open-thoughts/OpenThoughts-Agent.
Open the folder on GitHubat commit 3bd1917
Utils Reclaim Stale Snapshots next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Utils Reclaim Stale Snapshots this skillopen-thoughts/OpenThoughts-Agent | 301 | — | ~969 | Automated safety check: Pass | Apache-2.0 | |
| Daytona Sandbox Operationsdifferent-ai/openwork | 24k | — | ~917 | Automated safety check: Pass | Custom licence | |
| Maintain Spaceasgeirtj/system_prompts_leaks | 69k | — | ~1.6k | Automated safety check: Pass | CC0-1.0 | |
| Organize Spaceasgeirtj/system_prompts_leaks | 69k | — | ~1.6k | Automated safety check: Pass | CC0-1.0 | |
| Huggingface Spacessickn33/agentic-awesome-skills | 47k | 1 repos | ~3.9k | Automated safety check: Pass | Apache-2.0 | |
| Copilot Spacesgithub/awesome-copilot | 40k | 1 repos | ~2.2k | Automated safety check: Pass | MIT |
different-ai/openwork
Covers Daytona CLI setup, sandbox debugging, keeping a sandbox alive and which credentials the CLI uses, for when Daytona itself is the problem rather than the tests.
asgeirtj/system_prompts_leaks
Reconcile new evidence into existing ChatGPT Pages or a Space when the user requests upkeep.
asgeirtj/system_prompts_leaks
Organize existing ChatGPT Pages and Space structure when the user requests changes to that structure.
sickn33/agentic-awesome-skills
Build, deploy, and maintain applications on Hugging Face Spaces — Gradio / Docker / Static SDKs, ZeroGPU and dedicated hardware, model loading, debugging, buckets, inference providers, community…
github/awesome-copilot
Use Copilot Spaces to provide project-specific context to conversations.
oxc-project/oxc
Reviews and accepts Insta snapshot changes in the Oxc repo from the command line, one reviewed snapshot at a time, instead of using the interactive UI.
open-thoughts/OpenThoughts-Agent
Analyze the token length of an OT-Agent conversation-format (ShareGPT-style) dataset — the per-trace distribution (median/p90/max) and/or counts under a token threshold + a metadata predicate (e.g.
open-thoughts/OpenThoughts-Agent
Given a list of models (HF name stubs) that have valid agentic ID eval scores in Supabase, build a ranking table: raw per-benchmark accuracy on the 3 ID benchmarks (SWE-Bench-100…
open-thoughts/OpenThoughts-Agent
Run the Iris harbor job-history analyzer (scripts/iris/analyzeirisharborjob.py) on a datagen/eval job and read its JSON sidecar for trustworthy throughput / preemption / productive-trial stats.
open-thoughts/OpenThoughts-Agent
Run the full RL behavioral-analysis pipeline (scripts/analysis/analyzerlbehavior.py) on a trained RL model to understand WHAT changed vs its pre-RL baseline, WHY, whether it PERSISTS, and its EVAL…
open-thoughts/OpenThoughts-Agent
Detailed health check for a Levanter/executor TRAINING run on the marin Iris cluster (e.g.
open-thoughts/OpenThoughts-Agent
DESIGN a non-trivial codebase change (Harbor / MarinSkyRL / vLLM / OT-Agent / LLaMA-Factory) as a dependency-ordered STAGED PLAN before writing code — a feature port, a multi-step fix with parity…
Reclaim idle Daytona SNAPSHOTS org-wide to free space under the 60-snapshot cap, using scripts/daytona/daytonasnapshotmanager.py. Utils Reclaim Stale Snapshots is an agent skill from open-thoughts/OpenThoughts-Agent.py.
Utils Reclaim Stale Snapshots fits situations like: A datagen/eval launch hits SnapshotCapExceeded; A monitor sweep finds the cap full; as routine cap hygiene.
Run `npx skills add open-thoughts/OpenThoughts-Agent --skill utils-reclaim-stale-snapshots -a claude-code`. Or copy the skill folder (.agents/skills/utils-reclaim-stale-snapshots in open-thoughts/OpenThoughts-Agent) into .claude/skills/utils-reclaim-stale-snapshots in your project. Claude Code loads it when a task matches its description.
Run `npx skills add open-thoughts/OpenThoughts-Agent --skill utils-reclaim-stale-snapshots -a codex`. Or copy the skill folder (.agents/skills/utils-reclaim-stale-snapshots in open-thoughts/OpenThoughts-Agent) into .agents/skills/utils-reclaim-stale-snapshots in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add open-thoughts/OpenThoughts-Agent --skill utils-reclaim-stale-snapshots -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/utils-reclaim-stale-snapshots, .gemini/skills/utils-reclaim-stale-snapshots, .github/skills/utils-reclaim-stale-snapshots and .opencode/skills/utils-reclaim-stale-snapshots in your project.
Going by SKILL.md and its folder, Utils Reclaim Stale Snapshots needs the command-line tools its instructions call (conda and python) and credentials named DAYTONA_API_KEY, DAYTONA_RL_API_KEY and DAYTONA_DATA_API_KEY. Our summary lists: Python 3; A credential in DAYTONA_API_KEY; A credential in DAYTONA_RL_API_KEY.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Utils Reclaim Stale Snapshots is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 969 tokens (SKILL.md is roughly 3.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Utils Reclaim Stale Snapshots: Daytona Sandbox Operations (different-ai/openwork, 24k stars), Maintain Space (asgeirtj/system_prompts_leaks, 69k stars), Organize Space (asgeirtj/system_prompts_leaks, 69k stars) and Huggingface Spaces (sickn33/agentic-awesome-skills, 47k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
open-thoughts (a GitHub organization) maintains it in open-thoughts/OpenThoughts-Agent, which has 301 GitHub stars. The repository holds 44 skills in this directory. The repository was last updated on September 28, 2026.
Source: open-thoughts/OpenThoughts-Agent on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.