关于 daemon-start
daemon-start 是通过 launchd 启动 asciinema chunker 守护进程并检查其运行状态的技能,适用于已完成守护进程安装的环境。
主要功能
- 01使用 launchctl 启动守护进程
- 02检查安装与运行状态
- 03报告守护进程健康信息
- 04提供故障排查指引
适用场景
- 01启动已安装的 asciinema chunker
- 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 |
执行后反思
此技能完成后,在结束前进行检查:
- 命令是否成功? — 如果没有,请修复导致失败的说明或错误表。
- 参数或输出是否发生变化? — 如果底层工具的接口发生变化,请更新用法示例和参数表,使其保持一致。
- 是否需要采用变通方法? — 如果你必须临时调整(使用不同的标志、增加额外步骤),请更新此 SKILL.md,确保下次调用时不必重复采用相同的变通方法。
仅在问题真实且可复现时进行更新,不要臆测。
评论
支持 Markdown