Home / Subagents / ops-daemon-manager

ops-daemon-manager

Lifecycle-Innovations-Limited/claude-opsSubagent

OPS specialist: Manages the ops background daemon

ScannedSubagentSource: GitHub
547 stars +4 this week Updated 17d ago License MIT Context ≈17 tokens in your chat
63popular

Why this score

Stars10/35
Usage (forks)3/15
Upkeep25/25
License15/15
Owner history10/10

This repo hosts 21 subagents, so its 547 stars are split between them (about 26 each) for scoring.

Popularity score: 63/100 from public GitHub signals only. It shows how widely used and maintained this is, not how well it works. Not included yet: the fake-star check. The security scan is shown separately and doesn't change the score. How we rank

What it can use

  • Every tool, because it sets no tools list (it inherits all of yours, including shell and MCP tools)

This agent can act outside your files. Read it before installing, and narrow its tools: line if it needs less.

The agent file

---
name: ops-daemon-manager
description: "OPS specialist: Manages the ops background daemon"
effort: low
maxTurns: 10
memory: project
---

## Overview

The ops-daemon is a unified background process manager (`scripts/ops-daemon.sh`) that supervises
all claude-ops background services. It replaces per-service launchd agents with a single
`com.claude-ops.daemon` launchd unit.

Services are configured in `~/.claude/plugins/data/ops-ops-marketplace/daemon-services.json`.
Health is aggregated to `~/.claude/plugins/data/ops-ops-marketplace/daemon-health.json`.

## Commands

### Start daemon

```bash
launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/com.claude-ops.daemon.plist
```

### Stop daemon

```bash
launchctl bootout gui/$(id -u)/com.claude-ops.daemon
```

### Restart daemon

```bash
launchctl kickstart -k gui/$(id -u)/com.claude-ops.daemon
```

### Check overall health

```bash
cat ~/.claude/plugins/data/ops-ops-marketplace/daemon-health.json
```

### Check service statuses

```bash
cat ~/.claude/plugins/data/ops-ops-marketplace/daemon-health.json | jq '.services'
```

### Check for pending actions (e.g. reauth needed)

```bash
cat ~/.claude/plugins/data/ops-ops-marketplace/daemon-health.json | jq '.action_needed'
```

### Tail daemon log

```bash
tail -f ~/.claude/plugins/data/ops-ops-marketplace/logs/ops-daemon.log
```

### Tail a specific service log

```bash
tail -f ~/.claude/plugins/data/ops-ops-marketplace/logs/<service-name>.log
```

## Action Needed

When a service requires user intervention (e.g. whatsapp-bridge restart), `action_needed` is set:

```json
{
  "action_needed": { "service": "whatsapp-bridge", "action": "restart" }
}
```

Any ops skill that reads `daemon-health.json` should surface this to the user immediately.

## Health Output Format

```json
{
  "timestamp": "2026-04-13T15:00:00Z",
  "pid": 12345,
  "uptime_seconds": 3600,
  "services": {
    "whatsapp-bridge": { "status": "running", "pid": 67890, "last_health": "connected", "restarts": 0 },
    "memory-extractor": {
      "status": "scheduled",
      "next_run": "2026-04-13T15:30:00Z",
      "last_run": "2026-04-13T15:00:00Z"
    }
  },
  "action_needed": null
}
```

## Service Statuses

| Status                  | Meaning                                      |
| ----------------------- | -------------------------------------------- |
| `running`               | Process alive and healthy                    |
| `starting`              | Just launched, awaiting health confirmation  |
| `scheduled`             | Cron service, waiting for next run           |
| `dead`                  | Process exited unexpectedly                  |
| `needs_reauth`          | Service requires user re-authentication      |
| `stopped`               | Gracefully stopped                           |
| `max_restarts_exceeded` | Hit restart cap — manual intervention needed |

## Install / Uninstall

The `ops:setup` wizard installs the daemon plist automatically. Manual install:

```bash
# Copy and configure plist
SCRIPTS_DIR=~/Projects/claude-ops/claude-ops/scripts
LOG_DIR=~/.claude/plugins/data/ops-ops-marketplace/logs
sed \
  -e "s|__DAEMON_SCRIPT_PATH__|$SCRIPTS_DIR/ops-daemon.sh|g" \
  -e "s|__LOG_DIR__|$LOG_DIR|g" \
  -e "s|__HOME__|$HOME|g" \
  "$SCRIPTS_DIR/com.claude-ops.daemon.plist" \
  > ~/Library/LaunchAgents/com.claude-ops.daemon.plist

launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/com.claude-ops.daemon.plist
```

MIT license, from Lifecycle-Innovations-Limited/claude-ops at commit 6ac22376d988.

Security

Scanned Oct 21, 2026 at commit 6ac22376d988, with Cisco's open-source skill-scanner.

Results for this version aren't published yet.

A scan lists patterns in the code. It can't prove an add-on is harmless, and it can miss things, so read what you install. How we scan

Alternatives

Other makers' add-ons that do the same job, next to this one.

NameScoreStarsContextUpdated
This oneops-daemon-manager Lifecycle-Innovations-Limited/claude-ops · Subagent 63★ 547≈17 in chat17d ago
daemon-runtime kunchenguid/no-mistakes · Skill Both about daemon 80★ 8.9k≈43 always17d ago
glowroot-ops glowroot/glowroot · Skill Both about ops 80★ 1.4k≈22 always16d ago
worker-file-ops huytieu/COG-second-brain · Subagent Both about ops 62★ 1.3k≈25 in chat1mo ago
founder-ops Jakeschincariol/founder-skill · Skill Both about ops and manager 69★ 1.1k≈22 always29d ago
AynOps AynOps/AynOps · MCP server Both about ops 59★ 29not measuredtoday