claude-skill
На этой странице представлена загружаемая skill для Claude Code, которая автоматизирует установку Spck CLI (spck) в качестве службы systemd на Linux. После установки skill вы можете попросить Claude Code «запустить spck как службу», и он проверит вашу среду, сгенерирует правильный unit-файл с вашими абсолютными путями, установит его и убедится, что он запущен — без необходимости копировать команды из списка.
Skill кодирует ту же настройку systemd, описанную в Использование Tmux → Альтернатива: Linux-служба, плюс предварительные проверки и диагностику сбоев, которые легко упустить при ручном написании unit-файла.
Загрузка
Загрузите файл skill и сохраните его в локальный каталог skills Claude Code:
mkdir -p ~/.claude/skills/spck-cli-service
curl -fsSL https://docs.spck.io/assets/skills/spck-cli-service/SKILL.md \
-o ~/.claude/skills/spck-cli-service/SKILL.md
Или загрузите вручную: SKILL.md — поместите файл в ~/.claude/skills/spck-cli-service/SKILL.md.
Что делает skill
При вызове skill проводит Claude Code через полную установку:
- Проверяет, что хост работает на Linux с
systemd. - Определяет абсолютный путь к
spck(избегает несоответствияPATH, которое ломаетExecStart). - Предупреждает, если
nodeустановлен черезnvm— эти пути меняются при каждом обновлении Node и незаметно ломают unit. - Подтверждает, что
~/.spck-editor/.credentials.jsonсуществует (CLI должна быть запущена в интерактивном режиме хотя бы один раз до запуска в качестве службы). - Выбирает между пользовательской службой (
systemctl --user, безsudo) и системной службой в зависимости от ваших потребностей. - Записывает unit-файл с заполненными реальными путями — без заполнителей.
- Выполняет
daemon-reload,enable --now, затем отслеживает журнал, чтобы убедиться, что CLI подключилась к relay-серверу.
Skill также документирует семь наиболее распространённых режимов сбоя (неверный путь ExecStart, отсутствующие учётные данные, ошибки прав доступа в каталоге проекта, циклы перезапуска при достижении start-limit-hit, устаревшие пути nvm после обновления npm и т.д.), чтобы Claude Code мог диагностировать неисправную службу, а не просто регенерировать unit-файл.
Установка
Шаг 1 — Загрузите файл skill:
mkdir -p ~/.claude/skills/spck-cli-service
curl -fsSL https://docs.spck.io/assets/skills/spck-cli-service/SKILL.md \
-o ~/.claude/skills/spck-cli-service/SKILL.md
Шаг 2 — Убедитесь, что Claude Code обнаружил skill:
claude /skills
В списке должен появиться spck-cli-service. Если нет, перезапустите Claude Code, чтобы он пересканировал каталог skills.
Claude Desktop загружает skills из того же каталога ~/.claude/skills/ на macOS и Linux. В Windows путь — %USERPROFILE%\.claude\skills\, но сама skill работает только на Linux-хостах, поэтому устанавливайте её на машину, где вы хотите запускать spck, а не на машину с Claude Desktop.
Если вы управляете удалённым Linux-сервером, запустите Claude Code по SSH на этом сервере (или через терминал Spck CLI, который предоставляет полный доступ к оболочке сервера). Установка skill на локальный Mac не поможет настроить удалённую Linux-службу.
Использование
После установки вызывайте skill, обращаясь к Claude Code на естественном языке. Примеры запросов, которые запустят skill:
- «Установи spck как службу systemd»
- «Сделай так, чтобы Spck CLI запускалась при загрузке»
- «Мой spck-cli.service постоянно перезапускается, можешь это отладить?»
- «Запусти spck как демон, чтобы он продолжал работать после разрыва SSH»
Claude Code прочитает skill, выполнит предварительные проверки (с запросом одобрения каждой команды), а затем сгенерирует и установит unit-файл. Просматривайте каждую команду перед одобрением — особенно те, что пишут в /etc/systemd/system/ под sudo.
Что устанавливается
Skill устанавливает один unit-файл. Для пользовательской службы:
~/.config/systemd/user/spck-cli.service
С содержимым вида:
[Unit]
Description=Spck CLI Server
After=network-online.target
Wants=network-online.target
[Service]
Type=simple
WorkingDirectory=%h/your-project
ExecStart=/usr/local/bin/spck
Restart=on-failure
RestartSec=5
StartLimitIntervalSec=60
StartLimitBurst=5
[Install]
WantedBy=default.target
Для системной службы файл размещается в /etc/systemd/system/spck-cli.service и содержит дополнительные директивы User= и Group=. Skill выбирает подходящий вариант в зависимости от вашей среды и записывает реальные абсолютные пути в файл.
Почему skill, а не копировать-вставить?
Unit-файл в документации tmux — это лишь отправная точка, но для работы службы нужно правильно настроить несколько вещей:
ExecStartдолжен быть абсолютным путём кspck.which spckвнутри login shell разрешает манипуляции PATH из.bashrc, которые systemd не видит.- Если
spckустановлен подnvm, путь содержит версию Node — обновление Node незаметно ломает службу до следующей перезагрузки. - CLI должна быть запущена в интерактивном режиме хотя бы один раз для создания
~/.spck-editor/.credentials.json. Новый запуск службы без учётных данных завершается корректно без очевидной ошибки. User=должен быть владельцемWorkingDirectory, иначе мониторинг файлов получаетEACCESи CLI входит в цикл перезапусков.- Пользовательские службы требуют
loginctl enable-lingerна headless-серверах, иначе они работают только при активной сессии входа.
Skill кодирует всё это, чтобы вам не нужно было это запоминать.
Удаление
Отключить и удалить службу:
systemctl --user disable --now spck-cli
rm ~/.config/systemd/user/spck-cli.service
systemctl --user daemon-reload
Для системной службы:
sudo systemctl disable --now spck-cli
sudo rm /etc/systemd/system/spck-cli.service
sudo systemctl daemon-reload
Чтобы удалить саму skill из Claude Code:
rm -rf ~/.claude/skills/spck-cli-service
Смотрите также
- ИИ-агенты для кода на мобильных устройствах (ACP) — после того, как CLI запущена как служба, это открывает возможность управлять Claude Code (а также Codex / Gemini) с телефона, с оплатой через вашу собственную подписку Anthropic, а не через квоту Spck Editor.
- Использование Tmux — альтернативный подход с использованием
tmuxдля поддержания работы CLI при разрывах SSH. - Расширенное использование — полный справочник команд CLI, переопределения конфигурации и настройки нескольких проектов.
- Конфигурация — настройки терминала, файловой системы, безопасности и аутентификации, не охватываемые unit-файлом.