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.41.tar.gz (485.3 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.41-py3-none-any.whl (259.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: skillery_cli-0.5.41.tar.gz
  • Upload date:
  • Size: 485.3 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.41.tar.gz
Algorithm Hash digest
SHA256 bdc8b64c26ae808568ac8d0cb463fe99c2e9e4f5de8f9f337174cc00aed826de
MD5 34095cfc69f5b97975953549c34e4c97
BLAKE2b-256 2db6fbb529ac7ee5dde84247b7d58b4d917301861bd1fae34aba17fddbc706da

See more details on using hashes here.

File details

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

File metadata

  • Download URL: skillery_cli-0.5.41-py3-none-any.whl
  • Upload date:
  • Size: 259.7 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.41-py3-none-any.whl
Algorithm Hash digest
SHA256 04b47c524e22930b42bc79eb7b08392db32b4b98892ebe8c3d91041327d3b5fe
MD5 6eeb99625b4de7e98760e5edc9423e5a
BLAKE2b-256 f83890ee583f0267279a7967228c8102a15f084cee799b5b15be152dacbffe9d

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

This release

0.5.41 This release

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