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.28.tar.gz (466.5 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.28-py3-none-any.whl (247.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: skillery_cli-0.5.28.tar.gz
  • Upload date:
  • Size: 466.5 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.28.tar.gz
Algorithm Hash digest
SHA256 661bfc35feabf94fd015f83c6bac066a89d4414ecd2efbeec008ce29733e90bc
MD5 8a2c8cd89d44ba708912944c42704eaf
BLAKE2b-256 c2cfe42795ccf942d5f6cfbf6148a5d693c9624ee9f2f21f21f139db05374d9a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: skillery_cli-0.5.28-py3-none-any.whl
  • Upload date:
  • Size: 247.1 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.28-py3-none-any.whl
Algorithm Hash digest
SHA256 9de308c0273ee49100676243f8db5c9e7fe771673f6fb2c29b5b2584d1dbb7e3
MD5 e72aa0b4036f0cf29fcf3c7563d549ea
BLAKE2b-256 b4c8f9db8d6289ecf64f7472b902d8d8fb561da3431ec3a0a835097d0f7df4dc

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

This release

0.5.28 This release

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