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.47.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.47-py3-none-any.whl (261.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: skillery_cli-0.5.47.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.47.tar.gz
Algorithm Hash digest
SHA256 b307ae9b30faf5d69a1acb51ffb16b2d0f53da980a5bdcb32b811f6011c63d6f
MD5 3f94ecba9445e39daaec3162a8ad4615
BLAKE2b-256 30599553a44070f86b0b6272275753c4c0e328d1cf85ba57160fcbdfca9aea10

See more details on using hashes here.

File details

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

File metadata

  • Download URL: skillery_cli-0.5.47-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.47-py3-none-any.whl
Algorithm Hash digest
SHA256 6a820325e972f48fe5f3ea98b0bb10d8f15ca63be3f2c34a950b991fa013fcc9
MD5 8b3dc235a10306a926a34161f881bb9a
BLAKE2b-256 edfe969414ac27e1a6bafc07e8b55622372842af9d4ec6404fee409e93df4f94

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

This release

0.5.47 This release

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

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