Skills Plugins MCP Prompt Model 博客 我的中心

clean-vm

Safely clean the local loop VM by reporting and removing stale loop runs, inactive Next.js or Storybook servers, optional browser windows, and unused loop-created worktrees without disturbing active tmux-backed sessions.

DeepseekModel Curated skill Quality Excellent · 78 v1.0.0

Get

https://deepseekmodel.com/api/download.php?id=axeldelafosse-loop-agents-skills-clean-vm-skill-md&format=skill
Download .skill Standard format with system_prompt and model_config, ready for any agent framework
The actual content of the system_prompt field in the .skill file.
name clean-vm description Safely clean the local loop VM by reporting and removing stale loop runs, inactive Next.js or Storybook servers, optional browser windows, and unused loop-created worktrees without disturbing active tmux-backed sessions. Clean VM Use this skill when repeated loop, Claude, or Codex runs leave the machine in a bad state. Start with the bundled script. It does a dry run by default and only mutates the machine with --apply . Default Workflow Run a dry run first: python3 .agents/skills/clean-vm/scripts/clean_vm.py Review the report. The script only targets: loop manifests under ~/.loop/runs/<repoId> direct loop __bridge-mcp <runDir> <claude|codex> processes for stale runs loop helper processes tied to stale run dirs Next.js and Storybook servers running inside stale loop worktrees loop-created worktrees from git worktree list --porcelain Apply the cleanup once the plan looks safe: python3 .agents/skills/clean-vm/scripts/clean_vm.py --apply Only close browser windows when the user explicitly wants browser cleanup: python3 .agents/skills/clean-vm/scripts/clean_vm.py --apply --browsers Safety Rules Always inspect the dry run before using --apply . Treat loop manifests in ~/.loop/runs as the source of truth for paired runs. Keep any run whose manifest state is submitted , working , reviewing , or input-required and whose pid or tmuxSession is still live. Never mass-kill claude , codex , or node . Kill only per PID after the script proves the process belongs to stale loop state. Never remove the main worktree, the worktree containing the current pwd , or a dirty worktree. The script does not auto-force worktree removal. If a plain git worktree remove fails, it reports the failure and leaves escalation to a manual follow-up. Treat any live tmux session as in use even if the manifest looks stale. Browser cleanup is opt-in and macOS-only. What the Script Checks repo identity via git rev-parse --git-common-dir , using the same repo id scheme as loop run manifests under ~/.loop/runs tmux liveness with exact session targets like tmux has-session -t =<name> plus a live-pane check from tmux list-panes helper processes whose command line references a stale run dir direct loop bridge MCP server processes whose run dir is stale or orphaned dev servers matching next dev , next-server , storybook , or start-storybook worktrees from git worktree list --porcelain Manual Fallback If the script cannot classify something safely, leave it alone and inspect it manually: tmux ls 2>/dev/null tmux list-panes -a -F '#{session_name} #{pane_dead} #{pane_current_command} #{pane_current_path}' 2>/dev/null git worktree list --porcelain lsof -nP -iTCP -sTCP:LISTEN | grep -E 'next|storybook|node' ps -axo pid=, tty =, command = | grep -E 'claude|codex|next dev|storybook' Useful loop states: active: submitted , working , reviewing , input-required inactive: completed , failed , stopped If a manifest claims to be active but its pid is gone and its exact tmux session is missing or every pane in that exact session is dead, treat it as stale. Report End with a short cleanup report that includes: processes killed, with PID and reason dev servers stopped, with cwd and reason browser actions taken or skipped worktrees pruned or removed anything suspicious you left alone because it was active, dirty, or ambiguous If any item is ambiguous, prefer skipped over cleaned .
Keywords that activate this skill. Click one to copy it.

This skill does not provide trigger words.

The downloaded .skill package contains the following fields.
Field Description
formatFormat tag (skill/v1)
skill_idUnique skill ID
nameSkill name
versionVersion
descriptionDescription
categoryCategories (array)
trigger_wordsTrigger words
tagsTags
sourceSource
source_urlSource URL (this page)
exported_atExported at (set per download)
system_promptSystem prompt body
model_configModel config: provider / model / temperature / max_tokens / top_p
examplesExamples
install_guideImport guide for Coze / Dify / Claude / custom frameworks
The same skill can be exported in different platform formats.
.skill Standard format with system_prompt and model_config, ready for any agent framework Download
.skillpro Enhanced format with scripts, tools, dependencies and hooks Download
.json Plain JSON export with system_prompt and model parameters only Download
Coze Markdown with frontmatter, for Coze platform import Download
Dify Dify DSL, import directly after creating an app Download

每日精选 Skill 推荐,免费送到你邮箱

输入邮箱,每天接收一个精选 AI Agent 技能推荐。完全免费,持续更新。

提交后我们会发送一封确认邮件,点击邮件里的链接才会开始收信。

完全免费,取消任意时间。我们不会发送垃圾邮件。