Skip to main content

skillery-cli

CLI-клиент для Skillery — маркетплейса AI-навыков (skills) для агентов (Claude Code, Codex и совместимых). Ставит навыки в центральный стор, линкует их в проект или глобально, синхронизирует и обновляет.

Установка

# Изолированно через pipx (рекомендуется):
pipx install skillery-cli

# либо в текущее окружение:
pip install skillery-cli

После установки доступна команда skillery:

skillery --help

Прежнее имя команды skills-hub оставлено как совместимость и лишь подсказывает перейти на skillery.

Quickstart

# Онбординг: зарегистрироваться самому либо принять инвайт-ссылку/токен.
skillery register
skillery join <ссылка-или-токен>
# либо, если уже есть учётка:
skillery login --email me@example.com --password ...

# Посмотреть доступные навыки (доступ фильтруется правами):
skillery list
skillery collections                 # кураторские подборки

# Навыки ставятся в центральный стор (~/.skillery/store) и линкуются junction/
# symlink. Дефолтный scope — project (текущая папка).
skillery install bitrix24                 # → стор + ссылка в ./.claude/skills
skillery install bitrix24 --scope global  # → стор + ссылка в ~/.claude/skills

# Автономно — без хаба, из локальной папки или git (логин не нужен):
skillery install --path ./my-skill
skillery install --from-git <url> --ref v1.0.0

# Динамический набор проекта:
skillery enable wb-api           # включить в текущем проекте
skillery disable wb-api          # выключить (стор цел)
skillery sync                    # применить манифест проекта
skillery store list              # что в сторе

# Обновить установленные навыки:
skillery update --all

Установка под всех агентов

CLI автодетектит установленного агента (Claude Code / Codex) по наличию ~/.claude или ~/.codex и кладёт навыки в правильный каталог. Можно форсировать конкретного агента или поставить сразу под всех:

skillery install bitrix24 --agent codex
skillery install bitrix24 --all-agents

Оценки, комментарии, тикеты, коллекции

После логина (по правам) доступны:

# Оценить навык (1..5) и посмотреть сводку:
skillery rate bitrix24 5
skillery rating-summary bitrix24

# Комментарий (с необязательным скриншотом):
skillery comment bitrix24 "работает в облаке" --screenshot ~/proof.png
skillery comments bitrix24 --limit 25

# Тикеты в поддержку:
skillery ticket create "OAuth ломается" --skill bitrix24 --kind bug
skillery tickets list --status open

# Коллекции (просмотр из CLI):
skillery collections list --type dynamic
skillery collection show popular

Автообновления навыка из git (webhook)

Чтобы новая версия навыка приезжала на хаб сама (push в репо → синк), у навыка должен быть webhook. Команда делает обе половины: регистрирует его на хабе И создаёт hook у провайдера локальным gh / glab (те же права, что у вас в терминале — account-wide PAT не нужен).

# Включить автообновления (идемпотентно: повтор обновляет, а не дублирует hook):
skillery webhook register my-skill

# Состояние: настроен ли, какой провайдер, куда шлёт.
# --probe дополнительно спросит провайдера: есть ли hook и когда была доставка.
skillery webhook status my-skill --probe

# Отключить: снять запись на хабе и hook у провайдера.
skillery webhook revoke my-skill

Если gh/glab не установлен или не авторизован, команда не падает: она печатает точные ручные шаги (URL приёмника, тип событий) и ОДИН раз — секрет webhook'а для вставки в настройки репозитория. В --json секрет не выводится никогда (только отпечаток sha256:…).

Монорепо (несколько навыков в одном репозитории) поддержано: у каждого навыка СВОЙ hook — адрес приёмника один, но в нём стоит маркер навыка (…/webhooks/git/github?skillery_skill=<id>). Секрет хаб выдаёт на каждый навык отдельно, поэтому общий hook на репо ломал бы всех соседей: он хранит один секрет, и доставки остальных навыков молча отбивались бы 401. Регистрация навыка чужие hook'и не трогает — ни при register, ни при revoke.

Права: у GitHub нужен доступ admin к репо (scope repo у gh его покрывает), у GitLab — роль Maintainer/Owner в проекте.

Онбординг проекта

# Детект стека (python / nodejs / nextjs / react / docker / terraform / go /
# rust / claude-code) → подбор навыков → включение в проект.
skillery onboard --yes

Event tracking + daemon

CLI не шлёт события синхронно: он кладёт их в локальную очередь (~/.skillery/events.queue.json) — сбой записи никогда не ломает команду. Отдельный демон периодически берёт batch и отправляет его на бэкенд.

skillery event queue --show      # что в локальной очереди
skillery daemon start            # запустить фоновый sender
skillery daemon status           # alive + последний цикл + размер очереди
skillery daemon install          # сгенерировать autostart-юнит (launchd / systemd / Task Scheduler)

daemon install не трогает system-wide настройки — он лишь пишет unit-файл в user-scope и печатает инструкцию по активации. Это безопасно для CI и разделяемых окружений. Отправка событий работает и анонимно: протухшая сессия не глушит телеметрию автономного CLI.

Конфиг

~/.skillery/config.toml:

base_url   = "https://hub.example.com"
web_ui_url = "https://hub.example.com/app"
output_format = "text"                # text | json
auto_update = false                   # true → тихо обновляет навыки при следующей команде
default_install_scope = "project"     # project | global
# store_dir = "~/.skillery/store"     # центральный стор (env: SKILLS_HUB_STORE_DIR)

Токены (access + refresh) хранятся в OS keyring:

  • Windows — Credential Manager;
  • macOS — Keychain;
  • Linux — Secret Service (GNOME Keyring, KWallet, …).

Установки со старым каталогом ~/.skills-hub подхватываются автоматически и мигрируются в ~/.skillery при первой записи.

Профили

~/.skillery/profiles/staging.toml + --profile staging — отдельный backend и отдельные токены для другой среды.

Вывод: text | json

По умолчанию команды печатают человекочитаемый текст. Флаг --json (или output_format = "json" в конфиге) переключает вывод в JSON Lines — удобно для скриптов и агентов: результат идёт в stdout, сообщения и ошибки — в stderr.

Лицензия

MIT — см. LICENSE.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

skillery_cli-0.5.25.tar.gz (460.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

skillery_cli-0.5.25-py3-none-any.whl (243.3 kB view details)

Uploaded Python 3

File details

Details for the file skillery_cli-0.5.25.tar.gz.

File metadata

  • Download URL: skillery_cli-0.5.25.tar.gz
  • Upload date:
  • Size: 460.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for skillery_cli-0.5.25.tar.gz
Algorithm Hash digest
SHA256 08100600485a65635f0359b28e282c2f81fdf5689fea7e2e2cc6de910073adf3
MD5 45731f245ed39ec8a64afe38ea65a243
BLAKE2b-256 93e310dffae95e48c0f4a57758feb1a4e32522da0e22689c7454ebcbe100a58e

See more details on using hashes here.

File details

Details for the file skillery_cli-0.5.25-py3-none-any.whl.

File metadata

  • Download URL: skillery_cli-0.5.25-py3-none-any.whl
  • Upload date:
  • Size: 243.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for skillery_cli-0.5.25-py3-none-any.whl
Algorithm Hash digest
SHA256 553df8a8a6150e5de4b7c5ad25fb3fad721f1c57f663a06d2115c9fbbc6a448d
MD5 baee063d39f45fa01c57eb2f3095f863
BLAKE2b-256 ec03ec54da8baf7e265c7538c7fa74bf084b538f353a9f272c1e5b6e73a09b1f

See more details on using hashes here.

Release history Release notifications | RSS feed

0.5.87

2 files

0.5.86

2 files

0.5.85

2 files

0.5.84

2 files

0.5.83

2 files

0.5.82

2 files

0.5.81

2 files

0.5.80

2 files

0.5.79

2 files

0.5.78

2 files

0.5.77

2 files

0.5.76

2 files

0.5.75

2 files

0.5.74

2 files

0.5.73

2 files

0.5.72

2 files

0.5.71

2 files

0.5.70

2 files

0.5.69

2 files

0.5.68

2 files

0.5.67

2 files

0.5.66

2 files

0.5.65

2 files

0.5.64

2 files

0.5.63

2 files

0.5.62

2 files

0.5.61

2 files

0.5.60

2 files

0.5.59

2 files

0.5.58

2 files

0.5.57

2 files

0.5.56

2 files

0.5.55

2 files

0.5.54

2 files

0.5.53

2 files

0.5.52

2 files

0.5.51

2 files

0.5.50

2 files

0.5.49

2 files

0.5.48

2 files

0.5.47

2 files

0.5.46

2 files

0.5.45

2 files

0.5.44

2 files

0.5.43

2 files

0.5.42

2 files

0.5.41

2 files

0.5.40

2 files

0.5.39

2 files

0.5.38

2 files

0.5.37

2 files

0.5.36

2 files

0.5.35

2 files

0.5.34

2 files

0.5.33

2 files

0.5.32

2 files

0.5.31

2 files

0.5.30

2 files

0.5.29

2 files

0.5.28

2 files

0.5.27

2 files

0.5.26

2 files

This release

0.5.25 This release

2 files

0.5.24

2 files

0.5.23

2 files

0.5.22

2 files

0.5.21

2 files

0.5.20

2 files

0.5.19

2 files

0.5.18

2 files

0.5.17

2 files

0.5.16

2 files

0.5.15

2 files

0.5.14

2 files

0.5.13

2 files

0.5.12

2 files

0.5.11

2 files

0.5.10

2 files

0.5.9

2 files

0.5.8

2 files

0.5.7

2 files

0.5.6

2 files

0.5.5

2 files

0.5.4

2 files

0.5.3

2 files

0.5.2

2 files

0.5.1

2 files

0.5.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page