From lazycortex-observe
Tear down the lazycortex-observe shipper on this host: unload the launchd agent or systemd user unit, remove rendered configs and the WAL dir. Operator-private state under `${XDG_CONFIG_HOME:-~/.config}/lazycortex/` is preserved by default — re-installing later picks it up. Idempotent — re-running on an already-clean host is a no-op.
How this skill is triggered — by the user, by Claude, or both
Slash command
/lazycortex-observe:lazy-observe.uninstallThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Symmetric undo for `/lazy-observe.install`. Removes the running service and the rendered configs. Leaves operator-private answers (URL, auth choice) intact unless the operator opts in to wiping them.
Symmetric undo for /lazy-observe.install. Removes the running service and the rendered configs. Leaves operator-private answers (URL, auth choice) intact unless the operator opts in to wiping them.
This skill has 6 ordered steps. The executing agent MUST NOT skip, merge, reorder, or silently omit any step. To make dropped steps structurally impossible:
TaskCreate with exactly one task per step below — no merging, no abbreviation, no renaming. The canonical list (use these titles verbatim):
Step 1 — Detect hostStep 2 — Unload serviceStep 3 — Remove rendered configsStep 4 — Remove WAL + log directoriesStep 5 — Offer to wipe answer file + tokenStep 6 — Reportin_progress on enter and completed on exit. No-ops count only with an explicit outcome word (removed, absent, kept-per-user-choice, …).TaskList shows every prior task completed or skipped with an outcome.Same logic as /lazy-observe.install Step 1. Map darwin → launchd, linux → systemd user.
Outcome: darwin / linux / unsupported-platform.
claude/lazycortex-observe/bin/install.unload_service_macos(<plist_path>). Plist path is ~/Library/LaunchAgents/com.lazycortex.observe.plist.install.unload_service_linux().Both helpers tolerate "not loaded" exit codes and return a (ok, stderr) tuple. Treat "not loaded" as absent, not as an error.
Outcome: unloaded / absent.
Delete (if present):
${XDG_DATA_HOME:-~/.local/share}/lazycortex/observe/agent.river${XDG_DATA_HOME:-~/.local/share}/lazycortex/observe/agent.yaml~/Library/LaunchAgents/com.lazycortex.observe.plist (darwin only)~/.config/systemd/user/lazycortex-observe.service (linux only)Outcome: removed (with file count) / absent.
Ask via AskUserQuestion: keep or delete the WAL directory at ${XDG_DATA_HOME:-~/.local/share}/lazycortex/observe/wal/? Default keep — WAL preserves not-yet-shipped samples, and reinstalling the same agent will pick them up.
Same for log directory (~/Library/Logs/lazycortex-observe/ on darwin, ${XDG_STATE_HOME:-~/.local/state}/lazycortex/observe/logs/ on linux).
Outcome: removed / kept-per-user-choice / absent.
AskUserQuestion — keep or delete the operator-private state at ${XDG_CONFIG_HOME:-~/.config}/lazycortex/observe.toml and ${XDG_CONFIG_HOME:-~/.config}/lazycortex/observe.token? Default keep — these are the only place URL/auth choices live, and a future install picks them up automatically.
If the operator chooses to delete the token file, do it via rm -f (the file may already be 0600).
Outcome: kept-per-user-choice / wiped.
Render a markdown report. One line per Step 1–5 with its outcome word.
Outcome: reported.
Per the project's lazy-log.logging rule, log this run to ./.logs/claude/lazy-observe.uninstall/<UTC timestamp>.md.
launchctl bootout returns 5 ("Input/output error") — symptom: bootout fails on macOS after a system update → cause: stale plist label registration → fix: launchctl remove com.lazycortex.observe, then rerun.systemctl --user disable returns "Unit lazycortex-observe.service does not exist" — symptom: unit file already gone → cause: prior partial uninstall → fix: systemctl --user daemon-reload, then rerun. The skill treats this as absent, not an error.npx claudepluginhub mebius-san/lazy-cortex --plugin lazycortex-observeCreates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.