Skip to content

Список установленных навыков

Что вы сможете сделать после изучения

  • Использовать openskills list для просмотра всех установленных навыков
  • Понимать различия между тегами местоположения (project) и (global)
  • Быстро подсчитывать количество навыков проекта и глобальных навыков
  • Определять, успешно ли установлен навык

Ваша текущая проблема

После установки нескольких навыков вы можете столкнуться со следующими проблемами:

  • "Какие навыки я только что установил? Я забыл"
  • "Этот навык установлен в проект или глобально?"
  • "Почему некоторые навыки видны в проекте A, но не видны в проекте B?"
  • "Я хочу удалить неиспользуемые навыки, но не знаю их точных названий"

Команда openskills list создана для решения этих сомнений — она работает как "каталог" навыков, позволяя вам увидеть все установленные навыки и их местоположение с первого взгляда.

Когда использовать этот приём

СитуацияДействие
Подтверждение успешности установки навыкаВыполните openskills list, чтобы увидеть, появился ли навык
Переключение на новый проект, проверка доступных навыковВыполните openskills list, чтобы увидеть, какие project-навыки есть
Инвентаризация перед очисткой навыковВыполните openskills list, чтобы перечислить все навыки, затем удалите ненужные
Отладка проблем загрузки навыковПодтвердите правильность названия навыка и места установки

Основная идея

OpenSkills поддерживает установку навыков в 4 местоположения (в порядке приоритета поиска):

  1. project .agent/skills — каталог общих навыков уровня проекта (многоагентная среда)
  2. global .agent/skills — каталог общих навыков глобального уровня (многоагентная среда)
  3. project .claude/skills — каталог навыков Claude Code уровня проекта
  4. global .claude/skills — каталог навыков Claude Code глобального уровня

openskills list выполнит следующие действия:

  1. Просканирует эти 4 каталога для поиска всех навыков
  2. Удалит дубликаты: одно и то же название навыка будет отображено только один раз (с приоритетом project версии)
  3. Сортирует: project-навыки первыми, global-навыки следом; в пределах одного местоположения — по алфавиту
  4. Пометит местоположение: с помощью тегов (project) и (global)
  5. Обобщит статистику: отобразит количество project-навыков, global-навыков и общее количество

Зачем нужно удаление дубликатов?

Если вы установили один и тот же навык (например, pdf) и в project, и в global, OpenSkills будет приоритетно использовать project-версию. Команда list отображает его только один раз, чтобы избежать путаницы.

Следуйте за мной

Шаг 1: Список всех установленных навыков

Зачем Быстро просмотреть, какие навыки доступны в текущей среде

Выполните следующую команду:

bash
npx openskills list

Что вы должны увидеть

Если не установлено ни одного навыка, будет отображено:

Available Skills:

No skills installed.

Install skills:
  npx openskills install anthropics/skills         # Project (default)
  npx openskills install owner/skill --global     # Global (advanced)

Если навыки уже установлены, вы увидите примерно следующее:

Available Skills:

  pdf                         (project)
    Comprehensive PDF manipulation toolkit for extracting text and tables...

  code-analyzer                (project)
    Static code analysis tool for identifying security vulnerabilities...

  email-reader                 (global)
    Read email content and attachments via IMAP protocol...

Summary: 2 project, 1 global (3 total)

Шаг 2: Понимание формата вывода

Зачем Чтобы быстро найти нужную информацию, нужно понимать значение каждой строки

Объяснение формата вывода:

ЧастьОписание
pdfНазвание навыка (извлекается из поля name в SKILL.md)
(project)Тег местоположения: синий цвет указывает на project-навык, серый — на global-навык
Comprehensive PDF...Описание навыка (извлекается из поля description в SKILL.md)
Summary: 2 project, 1 global (3 total)Статистическая сводка: количество project-навыков, global-навыков, общее количество

Шаг 3: Проверка тегов местоположения

Зачем Подтвердить, что навык установлен в ожидаемое местоположение, чтобы избежать сомнений "почему этот навык не виден в этом проекте"

Попробуйте следующие операции, чтобы понять теги местоположения:

bash
# 1. Установите project-навык
npx openskills install anthropics/skills -y

# 2. Посмотрите список (должен отображаться тег project)
npx openskills list

# 3. Установите global-навык
npx openskills install anthropics/skills --global -y

# 4. Снова посмотрите список (два навыка pdf, отображается только один раз, тег project)
npx openskills list

Что вы должны увидеть

Available Skills:

  pdf                         (project)
    Comprehensive PDF manipulation toolkit for extracting text...

Summary: 1 project, 0 global (1 total)

Даже если один и тот же навык установлен и глобально, и в проекте, команда list отобразит его только один раз, так как project-версия имеет более высокий приоритет.

Контрольная точка ✅

Подтвердите следующее:

  • [ ] Выполнение openskills list позволяет увидеть список установленных навыков
  • [ ] Можно различать теги (project) и (global) (разные цвета: синий vs серый)
  • [ ] Числа статистики Summary правильные (project-навыки + global-навыки = общее количество)
  • [ ] Понимание правила, что одно и то же название навыка отображается только один раз

Предупреждение о проблемах

Распространённая проблема 1: Не удаётся найти только что установленный навык

Симптом: Команда install выполнена успешно, но list ничего не показывает

Шаги по устранению:

  1. Проверьте, находитесь ли вы в правильном каталоге проекта (project-навыки видны только для текущего проекта)
  2. Подтвердите, установлен ли навык глобально (с флагом --global)
  3. Проверьте место установки:
bash
# Проверьте каталог проекта
ls -la .claude/skills/

# Проверьте глобальный каталог
ls -la ~/.claude/skills/

Распространённая проблема 2: Видите странные названия навыков

Симптом: Название навыка отличается от ожидаемого (например, название папки vs name в SKILL.md)

Причина: OpenSkills использует поле name из SKILL.md как название навыка, а не название папки

Решение: Проверьте frontmatter в SKILL.md:

yaml
---
name: pdf  # Это название, которое отображает команда list
description: Comprehensive PDF manipulation toolkit...
---

Распространённая проблема 3: Описание отображается не полностью

Симптом: Описание навыка обрезано

Причина: Это ограничение ширины терминала, не влияет на содержимое навыка

Решение: Просмотрите файл SKILL.md напрямую для получения полного описания

Итог урока

openskills list — это команда "каталог" для управления навыками, которая помогает вам:

  • 📋 Просматривать все навыки: увидеть установленные навыки с первого взгляда
  • 🏷️ Различать теги местоположения: (project) указывает на уровень проекта, (global) — на глобальный уровень
  • 📊 Статистическая сводка: быстро узнать количество project- и global-навыков
  • 🔍 Диагностика проблем: подтвердить успешную установку навыка, определить местоположение навыка

Основные правила:

  1. Навыки с одинаковым названием отображаются только один раз (приоритет project)
  2. Project-навыки первыми, global-навыки следом
  3. В пределах одного местоположения — по алфавиту

Предпросмотр следующего урока

В следующем уроке мы изучим Обновление навыков.

Вы узнаете:

  • Как обновить установленные навыки из исходного репозитория
  • Массовое обновление всех навыков
  • Обработка старых навыков без метаданных

Приложение: Ссылки на исходный код

Нажмите, чтобы раскрыть местоположение исходного кода

Обновлено: 2026-01-24

ФункцияПуть к файлуСтрока
Реализация команды listsrc/commands/list.ts7-43
Поиск всех навыковsrc/utils/skills.ts30-64
Конфигурация каталогов поискаsrc/utils/dirs.ts18-25
Определение типа Skillsrc/types.ts1-6

Ключевые функции:

  • listSkills(): выводит список всех установленных навыков, форматированный вывод
  • findAllSkills(): сканирует 4 каталога поиска, собирает все навыки
  • getSearchDirs(): возвращает пути к 4 каталогам поиска (в порядке приоритета)

Ключевые константы:

  • отсутствуют (пути каталогов поиска вычисляются динамически)

Основная логика:

  1. Механизм удаления дубликатов: использует Set для записи обработанных названий навыков (skills.ts:32-33, 43, 57)
  2. Определение местоположения: проверка project-каталога через dir.includes(process.cwd()) (skills.ts:48)
  3. Правила сортировки: приоритет project, в пределах одного местоположения — по алфавиту (list.ts:21-26)