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.45.tar.gz (487.0 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.45-py3-none-any.whl (261.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: skillery_cli-0.5.45.tar.gz
  • Upload date:
  • Size: 487.0 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.45.tar.gz
Algorithm Hash digest
SHA256 ec11fa7ddb3ba1840cb35d7a758355cef314053bff213ca0dda571dcd18c2019
MD5 9eb80f4c88a56acb4aa7682837b597ea
BLAKE2b-256 0272e46b12b687609d40a2e1692d410d2e7b3ba6e1b7760da51023245755a4d7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: skillery_cli-0.5.45-py3-none-any.whl
  • Upload date:
  • Size: 261.0 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.45-py3-none-any.whl
Algorithm Hash digest
SHA256 7169d2e3c0435297f691930baebfbc8f25b9fed4a0be08a5cfacd2534cd6226a
MD5 259c47a5706e1ce01b320b8f19b7eebc
BLAKE2b-256 28ee92c28185d1095fa790656a67391127c99e01128755ee0d75379e634d937b

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

This release

0.5.45 This release

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

0.5.25

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