mcpField
D
daemon-start

daemon-start

github.com/terrylica云与 DevOps193 次安装今天更新
代码仓库

关于 daemon-start

daemon-start 是通过 launchd 启动 asciinema chunker 守护进程并检查其运行状态的技能,适用于已完成守护进程安装的环境。

主要功能

  1. 01使用 launchctl 启动守护进程
  2. 02检查安装与运行状态
  3. 03报告守护进程健康信息
  4. 04提供故障排查指引

适用场景

  1. 01启动已安装的 asciinema chunker
  2. 02确认守护进程是否启动成功

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/terrylica/cc-skills --skill daemon-start

安装后在 Claude Code 中输入/daemon-start确认已加载。

附带文件references/evolution-log.md

详细介绍

/asciinema-tools:daemon-start

通过 launchd 启动 asciinema 分块守护进程。

自我演进技能:此技能会在使用过程中不断改进。如果说明有误、参数发生变化或需要采用变通方法,请立即修复此文件,不要拖延。仅针对真实、可复现的问题进行更新。

执行

检查是否已在运行
/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
启动守护进程
/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

输出

成功时:

Daemon started

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

故障排除

问题原因解决方案
未安装守护进程尚未运行设置先运行 /asciinema-tools:daemon-setup
守护进程启动失败Launchd 配置错误检查 launchctl error 并重新运行设置
缺少健康状态文件守护进程仍在初始化等待 5 秒,然后检查 /daemon-status
守护进程不断停止脚本错误或凭据问题检查 /asciinema-tools:daemon-logs

执行后反思

此技能完成后,在结束前进行检查:

  1. 命令是否成功? — 如果没有,请修复导致失败的说明或错误表。
  2. 参数或输出是否发生变化? — 如果底层工具的接口发生变化,请更新用法示例和参数表,使其保持一致。
  3. 是否需要采用变通方法? — 如果你必须临时调整(使用不同的标志、增加额外步骤),请更新此 SKILL.md,确保下次调用时不必重复采用相同的变通方法。

仅在问题真实且可复现时进行更新,不要臆测。

评论

支持 Markdown