Stop and remove the ClaudeClaw background service and agents for this instance
Install via CLI
openskills install sbusso/claudeclaw---
name: uninstall
description: Stop and remove the ClaudeClaw background service and agents for this instance
trigger: /uninstall
---
# Uninstall Service
Stop and remove the ClaudeClaw background service for the current instance. Data (store/, groups/, .env) is preserved — only the service unit is removed.
## Flow
### 1. Detect OS and find service
**macOS:**
```bash
DIRNAME=$(basename "$(pwd)")
PLIST_NAME="com.claudeclaw.${DIRNAME}"
PLIST_PATH="$HOME/Library/LaunchAgents/${PLIST_NAME}.plist"
```
**Linux:**
```bash
DIRNAME=$(basename "$(pwd)")
SERVICE_NAME="claudeclaw-${DIRNAME}"
SERVICE_PATH="$HOME/.config/systemd/user/${SERVICE_NAME}.service"
```
### 2. Check if service exists
```bash
# macOS
[ ! -f "$PLIST_PATH" ] && echo "No service found at $PLIST_PATH" && exit 0
# Linux
[ ! -f "$SERVICE_PATH" ] && echo "No service found at $SERVICE_PATH" && exit 0
```
If no service file found, also check for running processes:
```bash
# macOS — check if loaded even without plist
launchctl list | grep claudeclaw
# Linux
systemctl --user list-units | grep claudeclaw
```
### 3. Confirm with user
AskUserQuestion: "Remove ClaudeClaw service for this instance? This will stop the background process. Your data (groups, messages, .env) is preserved."
### 4. Stop and unload
**macOS:**
```bash
launchctl bootout "gui/$(id -u)/${PLIST_NAME}" 2>/dev/null || true
rm -f "$PLIST_PATH"
```
**Linux:**
```bash
systemctl --user stop "$SERVICE_NAME" 2>/dev/null || true
systemctl --user disable "$SERVICE_NAME" 2>/dev/null || true
rm -f "$SERVICE_PATH"
systemctl --user daemon-reload
```
### 5. Verify stopped
```bash
# macOS
launchctl list | grep "$PLIST_NAME" && echo "WARNING: service still loaded" || echo "Service removed"
# Linux
systemctl --user is-active "$SERVICE_NAME" 2>/dev/null && echo "WARNING: service still running" || echo "Service removed"
```
### 6. Kill any orphan processes
```bash
pkill -f "dist/service.js" 2>/dev/null || true
```
Only kill processes whose cwd matches the current directory to avoid killing other instances.
### 7. Confirm
Print:
```
ClaudeClaw service removed for this instance.
- Service file: deleted
- Process: stopped
- Data: preserved (store/, groups/, .env still in place)
- To reinstall: run /setup
```
No comments yet. Be the first to comment!