Help us improve
Share bugs, ideas, or general feedback.
From aweek
Removes aweek heartbeat (launchd on macOS or crontab on Linux) and/or .aweek/ data directory from projects, with mandatory user confirmations for destructive actions.
npx claudepluginhub runbear-io/aweek --plugin aweekHow this skill is triggered — by the user, by Claude, or both
Slash command
/aweek:teardownThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Remove aweek from a project. Two operations are available:
Initializes aweek projects by creating the .aweek data directory and optionally installing a 10-minute heartbeat scheduler via launchd on macOS or crontab on Linux/POSIX.
Creates macOS launchd cleanup agents with dry-run verification. Writes cleanup script and plist installer, verifies with --dry-run, then installs and runs live.
Stops and removes ClaudeClaw background service and agents for the current instance on macOS/Linux, preserving data (store/, groups/, .env). Trigger: /uninstall.
Share bugs, ideas, or general feedback.
Remove aweek from a project. Two operations are available:
Remove heartbeat only — uninstalls the launchd user agent (macOS) or
crontab line (Linux) without touching agent data. Agents pause until the
heartbeat is re-installed via /aweek:setup.
Full uninstall (heartbeat + data) — removes the heartbeat AND deletes
the .aweek/ data directory. This is irreversible — all agent configs,
weekly plans, activity logs, and budget history are deleted permanently.
Both operations are destructive and require explicit AskUserQuestion
confirmation before the dispatcher will run them.
This skill is a thin UX wrapper on top of src/skills/teardown.ts. Never
remove .aweek/ or the heartbeat directly — always go through this skill so
the confirmation gate is enforced.
Per project policy, every destructive operation requires explicit user
confirmation before confirmed: true is passed to the adapter.
| Operation | Destructive | Confirmation required |
|---|---|---|
| Remove heartbeat | Yes — stops automated agent execution | Yes |
Remove .aweek/ data dir | Yes — permanent data loss | Yes |
You MUST follow this exact workflow. Use AskUserQuestion for every
interactive prompt.
Ask the user which teardown operation to perform:
AskUserQuestion:
"What would you like to remove?"
options:
- value: heartbeat
label: "Remove heartbeat only"
description: "Uninstall the launchd user agent (macOS) or crontab line. Agent data stays on disk."
- value: full
label: "Full uninstall (heartbeat + .aweek/ data)"
description: "Remove the heartbeat AND delete .aweek/. All agent configs, plans, and logs are permanently deleted."
- value: cancel
label: "Cancel"
description: "Do nothing."
If the user picks cancel, stop here.
Show the user a clear preview of what will be deleted, then ask for
explicit confirmation via AskUserQuestion:
Heartbeat-only path:
This will uninstall the 10-minute heartbeat for this project.
Agents will stop auto-executing until the heartbeat is re-installed
via /aweek:setup.
Confirm?
- yes — remove the heartbeat
- no — cancel
Full uninstall path:
This will:
1. Uninstall the 10-minute heartbeat.
2. Delete .aweek/ and all its contents — agent configs, weekly plans,
activity logs, budget history — permanently.
This CANNOT be undone.
Confirm?
- yes — full uninstall
- no — cancel
Only proceed when the user explicitly answers yes.
Heartbeat only:
echo '{"confirmed":true}' \
| aweek exec teardown removeHeartbeat --input-json -
Full uninstall:
echo '{"confirmed":true}' \
| aweek exec teardown teardown --input-json -
The response has this shape:
{
"ok": true,
"backend": "launchd",
"outcome": "removed",
"projectDir": "/path/to/project"
}
For the full teardown the response includes both heartbeat and project
sub-objects:
{
"ok": true,
"heartbeat": { "ok": true, "backend": "launchd", "outcome": "removed", "projectDir": "..." },
"project": { "ok": true, "removed": "/path/to/.aweek", "existed": true }
}
Print a final summary:
Heartbeat only:
=== aweek teardown ===
Heartbeat : removed (launchd)
Agents will no longer run automatically. To re-install the heartbeat,
run /aweek:setup.
Full uninstall:
=== aweek teardown ===
Heartbeat : removed (launchd)
Data dir : deleted (.aweek/)
aweek has been removed from this project. Run /aweek:setup to start
fresh.
outcome: "absent"
— this is not an error. Report "Heartbeat was not installed" and continue..aweek/ does not exist, removeProject returns existed: false —
report "Data directory was not present" and continue.