daemon-start

Installation
SKILL.md

/asciinema-tools:daemon-start

Start the asciinema chunker daemon via launchd.

Self-Evolving Skill: This skill improves through use. If instructions are wrong, parameters drifted, or a workaround was needed — fix this file immediately, don't defer. Only update for real, reproducible issues.

Execution

Check if Already Running

/usr/bin/env bash << 'CHECK_EOF'
PLIST_PATH="$HOME/Library/LaunchAgents/com.cc-skills.asciinema-chunker.plist"

if ! [[ -f "$PLIST_PATH" ]]; then
  echo "ERROR: Daemon not installed. Run /asciinema-tools:daemon-setup first."
  exit 1
fi

if launchctl list 2>/dev/null | grep -q "asciinema-chunker"; then
  echo "ALREADY_RUNNING"
  cat ~/.asciinema/health.json 2>/dev/null | jq -r '"Status: \(.status) | PID: \(.pid) | Last push: \(.last_push)"' || true
  exit 0
fi

echo "NOT_RUNNING"
CHECK_EOF

Start Daemon

/usr/bin/env bash << 'START_EOF'
PLIST_PATH="$HOME/Library/LaunchAgents/com.cc-skills.asciinema-chunker.plist"

if launchctl load "$PLIST_PATH"; then
  echo "Daemon started"
  sleep 2

  if launchctl list 2>/dev/null | grep -q "asciinema-chunker"; then
    echo ""
    echo "Status:"
    cat ~/.asciinema/health.json 2>/dev/null | jq . || echo "Waiting for health file..."
  else
    echo "WARNING: Daemon may not have started correctly. Check logs:"
    echo "  /asciinema-tools:daemon-logs"
  fi
else
  echo "ERROR: Failed to start daemon"
  exit 1
fi
START_EOF

Output

On success:

Daemon started

Status:
{
  "status": "ok",
  "message": "Monitoring ~/.asciinema/active",
  "pid": 12345,
  ...
}

Troubleshooting

Issue Cause Solution
Daemon not installed Setup not run Run /asciinema-tools:daemon-setup first
Failed to start daemon Launchd configuration error Check launchctl error and re-run setup
Health file missing Daemon still initializing Wait 5 seconds, check /daemon-status
Daemon keeps stopping Script error or credentials Check /asciinema-tools:daemon-logs

Post-Execution Reflection

After this skill completes, check before closing:

  1. Did the command succeed? — If not, fix the instruction or error table that caused the failure.
  2. Did parameters or output change? — If the underlying tool's interface drifted, update Usage examples and Parameters table to match.
  3. Was a workaround needed? — If you had to improvise (different flags, extra steps), update this SKILL.md so the next invocation doesn't need the same workaround.

Only update if the issue is real and reproducible — not speculative.

Weekly Installs
53
GitHub Stars
37
First Seen
3 days ago