paseo-agent-cleanup · git:20261013.f99602a · 2026-10-13 · sha256 7d38ddccd7e7c6b3
paseo-agent-cleanup git:20261013.f99602aA
Immutable. This exact content never changes and is served at /api/v1/blob/7d38ddccd7e7c6b3.
--- name: paseo-agent-cleanup description: >- Safely inspect and archive explicitly selected or clearly disposable Paseo agents and test workspaces. Use when the user asks to preview cleanup candidates, reduce agent-list clutter, or archive explicit test, validation, fixture, or temporary sessions. Ordinary idle agents are resumable and are never auto-archived based on status alone. Bare invocation is dry-run; active agents and unapproved workspaces remain protected, and delete, stop, kill, restart, history, timeline, and resume are never used for cleanup. --- # Paseo Agent Cleanup Preview first; archive only user-selected inactive agents or clearly disposable sessions. Ordinary idle agents remain resumable. A bare invocation changes nothing. Run the bundled helper from this skill's installed directory, or use its absolute path from another project: ```bash node "<skill-dir>/scripts/agent-cleanup.js" --json node "<skill-dir>/scripts/agent-cleanup.js" --dry-run --pattern 'cleanup-validation|fixture' node "<skill-dir>/scripts/agent-cleanup.js" --agent <full-id> --archive --yes node "<skill-dir>/scripts/agent-cleanup.js" --auto --pattern 'cleanup-validation|fixture' node "<skill-dir>/scripts/agent-cleanup.js" --workspace <full-id> --archive --yes ``` ## Guards - Only confirmed `idle`, `error` or `closed` states can be selected. Running, initializing, missing and unknown states stay protected, even with an exact ID. - Pending permissions, unknown permission counts and unfinished attention block cleanup. `finished` attention alone does not block a deliberately selected inactive agent. - `--auto` selects only exact IDs, a user-supplied pattern, or clear disposable markers. It never selects agents merely because they are idle. - A workspace needs an exact ID and `--archive --yes`. Its active/unknown or permission-pending children block archive. Ownership comes from `workspaceId`, never cwd. A workspace-only request does not select unrelated agents. - Ambiguous short IDs are refused; use full IDs. - Never use delete, stop, kill, restart, history, timeline or resume for cleanup. ## Complete state before and after The helper reads complete, paginated snapshots from the installed Paseo client, including ownership and permission metadata. CLI `ls --json` is a display projection and is insufficient for these guards. No SDK package is downloaded. The current adapter contract is Paseo 0.11.2; a changed/missing internal client, invalid page, repeated cursor, timeout or changed daemon identity fails closed. Every archive gets a fresh precheck and immediate postcheck. Success requires an acknowledgement for the full ID with `status: "archived"` and `archivedAt`, plus removal from a new complete snapshot. A failed acknowledgement or uncertain postcondition stops the remaining mutations and reports partial effects. Never retry an uncertain archive blindly. Archive dispatch uses the same installed client with a full ID and repeats the protection/identity checks inside that connection. It avoids CLI list-prefix resolution and Windows command-shell dispatch. No arbitrary client operation is admitted by this adapter. The server does not expose an atomic inactive-only archive condition. These checks reduce the read-to-action gap; they cannot lock out a concurrent new run. Do not describe the guard as an atomic guarantee. ## Runtime and report Require Node and an installed Paseo desktop/CLI client. Bundled Electron is used for app ASAR modules. A standalone npm CLI can also be discovered. For a trusted custom installation, set both `PASEO_CLEANUP_CLIENT_MODULE` and `PASEO_CLEANUP_NODE` to its actual files; do not guess an alternate SDK. macOS live read-only snapshots were verified. Windows runtime discovery and the JSON dispatch path have fixture/source coverage; a fresh Windows live run remains unverified. Preserve unrelated agents, workspaces and private state. Report selection sources, skipped protection reasons, each command/acknowledgement/ postcheck result, partial effects and remaining unverified work. Use JSON for machine-readable evidence. For limitations and an MCP/manual alternative, read [references/cleanup.md](references/cleanup.md).