Functional Skill Creator
Скилл fskill-creator разбивает длинный SKILL.md на функции с входами и выходами, тестами и журналом запусков
- 256 ★ репозитория
- Последний коммит
- MIT
Расширенный доступ
Почему такой уровень
- Скилл записывает файлы нового скилла в выбранную папку и запускает собственные скрипты на Node.js
- Журнал запусков хранит входы и выходы функций, в них могут оказаться ваши рабочие данные
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add skills/functional-skill-creatorОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Скилл записывает файлы нового скилла в выбранную папку и запускает собственные скрипты на Node.js
- Журнал запусков хранит входы и выходы функций, в них могут оказаться ваши рабочие данные
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
`fskill-creator` решает две задачи: создает новый скилл по описанию процесса и переносит в новую структуру уже написанный. В этой структуре каждый шаг становится функцией с явным входом и выходом и лежит в своем файле папки `functions/`. Сам `SKILL.md` только задает порядок вызова функций. Общие правила для нескольких функций живут в `references/`, а детерминированная работа вроде разбора и проверки формата лежит в `scripts/` и выполняется кодом. Для каждой функции скилл может добавить журнал запусков с входом, выходом, оценкой числа токенов по длине текста и временем, а также файлы проверочных сценариев. При включенной локальной записи журнал хранится в `logs/runs/`, сценарии проверок берутся из `testcases/`. Файлы журнала и проверок генерируются по умолчанию, отказаться от них позволяют параметры `include_report` и `include_unittest`. Сама запись журнала изначально выключена. Режим миграции читает всю папку старого скилла: `SKILL.md`, `references/`, `scripts/` и соседние файлы. Он предлагает границы функций и выносит наружу несоответствия входов и выходов, которые раньше прятались в тексте.
Для кого. Для авторов разросшихся скиллов, которым нужно разделить инструкции по задачам и хранить примеры для проверки изменений.
Подходит, если
- Скилл разросся, правила и частные случаи копятся в `SKILL.md` и `references/`, и править его вслепую страшно
- Разбор, форматирование и проверку нужно вынести из промпта в скрипты, которые отрабатывают одинаково при каждом запуске
- После неудачного запуска надо найти функцию, на которой все сломалось, по записи входа, выхода и времени
- Реальные удачные и неудачные прогоны хочется превратить в набор тестов, чтобы правка одной функции не ломала остальные
- Старый скилл нужно перенести в модульную структуру командой `/fskill-creator migrate <путь>`
Не подходит, если
- Скилл короткий или уже аккуратно разбит на модули: структура из функций добавит только лишние файлы
- В тестах нужен прогон агента или вызов модели: встроенный запуск тестов сверяет выход функций с ожидаемым
- Нужен готовый скилл под конкретную задачу: `fskill-creator` создает и переносит скиллы, но рабочих процессов с собой не несет
- Нужны стабильные форматы файлов: версия 0.1.0 ранняя, и соглашения для скриптов могут поменяться до выхода 1.0
Пример запроса к агенту
Перенеси скилл `./skills/release-notes` в функциональную структуру через `/fskill-creator migrate` и покажи разбиение на функцииОграничения
Скриптам нужен Node.js 20 или новее. Как вызывать слэш-команду, зависит от клиента. Лицензия MIT.
Проверяющий скрипт сравнивает записанный `actual_output` или `mock_output` с ожидаемым результатом и не запускает модель. Если оба поля отсутствуют, он сравнивает ожидаемый результат с самим собой. Такая успешная проверка не подтверждает работу скилла. Для регрессий нужны реальные результаты запусков.
Режим `report_mode=remote` отправляет входы и выходы на заданный адрес. Маскировка именованных полей не гарантирует удаления секретов из произвольного текста, поэтому просмотрите содержимое журналов перед сохранением и отправкой.
Как отключить. Удалите папку `fskill-creator` из каталога скиллов агента: при установке без `-g` это папка проекта, с `-g` — домашний каталог агента. Скиллы, которые вы создали с ее помощью, лежат отдельно и продолжают работать.
Частые вопросы
Как установить `fskill-creator` в Claude Code?
Команда `npx skills add AGI-comming/functional-skill-creator --skill fskill-creator -y` ставит скилл через `skills.sh`. Флаг `-a <агент>` выбирает одного агента, а `-g` включает глобальную установку, если агент ее поддерживает.
Что такое функциональный скилл?
Это скилл, где каждый шаг оформлен как функция с входом и выходом, а `SKILL.md` управляет только порядком. Общие правила лежат в `references/`, детерминированная логика в `scripts/`, проверочные сценарии в `testcases/`.
Как перенести старый скилл в такую структуру?
Вызовите `/fskill-creator migrate <путь к папке скилла>`. Скилл прочитает все файлы папки, предложит разбиение на функции и покажет найденные несостыковки входов и выходов. Дальше вы правите контракты, добавляете тесты с фактическими результатами запусков и проверяете их.
Что записывает журнал запусков?
В режиме `report_mode=local` каждая функция пишет в `logs/runs/` строку JSONL со входом, выходом, оценкой токенов по длине текста и длительностью. Режимы `off`, `local` и `remote` переключают запись.
Нужно ли переписывать короткий скилл?
Нет. Если скилл краткий или уже аккуратно разбит на модули, функциональная структура ему ни к чему: ее стоит применять к скиллам, которые долго развиваются и обрастают правилами.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
СкиллыСкилл, который помогает агенту писать другие скиллы по спецификации agentskills.io: структура, метаданные, прогрессивная подача и проверка
Мета-скилл ведет от размытой идеи к готовому скиллу: проектирует, пишет файлы, проверяет и дорабатывает по результатам
Скилл-врач для скиллов: выбирает архитектуру, проверяет по чек-листу с 21 красной линией и выдает отчет со ссылками на строки
Метаскилл превращает разрозненные правила в AGENTS.md, CLAUDE.md и Cursor в один проверяемый скилл проекта с маршрутами задач.
Мета-скилл, который превращает рабочий процесс в скилл для агента: поиск аналогов, проверка запуска по фразам и публикация на GitHub
Скилл для создания скиллов, который проверяет их работой: замер до и после, регрессионные тесты и аудит экосистемы
Коротко о README
Кроме самого скилла, в репозитории есть шаблон `basic-skill` и пример превращения заметок встречи в задачи. Изучите их как образец структуры до переноса собственного скилла.
Бейдж для README
Исходный SKILL.md
--- name: fskill-creator description: Create, maintain, or migrate functional skills; supports creating from a requirement brief and migrating an existing legacy skill directory into a functional skill structure. --- # fskill-creator ## Goal Unify the create and migrate lanes to produce a self-contained, reviewable, testable functional agent skill directory. The main skill handles routing, blueprint normalization, shared artifact generation, runtime capability provisioning, file writing, and validation; sub-skills only handle pre-analysis for their respective input forms. Use this skill when the user wants to "generate a functional skill", "create a functional skill", "add functions to an existing functional skill", or "migrate an existing legacy skill directory into a functional skill". ## Principles - The main `SKILL.md` only orchestrates the shared create / migrate / enhance / validate workflow. - Create and migrate are two pre-lanes; they must first converge into a unified `skill_blueprint`. - Function-specific behavior lives in `functions/*.md`; create / migrate specific pre-behavior lives in `sub-skills/*/functions/*.md`. - Shared vocabulary, policies, and schemas live in `references/*.md`. - Deterministic parsing, formatting, validation, and mechanical transforms live in `scripts/`. - Report, unit test, viewer, and testcase capabilities are maintained only once in the main skill, and vendored into the target skill by `add_runtime_capabilities`. - Preserve user-provided domain constraints; the migrate lane must also preserve legacy behavior evidence. - When the user has not approved direct modification, generated files should be treated as proposals. ## Sub-Skills | Sub-skill | When | Responsibility | Output | |---|---|---|---| | `sub-skills/create` | User provides a new skill brief or wants to enhance an existing functional skill | Normalize requirements, target path, inputs/outputs, constraints, and viewer choices | `create_context` | | `sub-skills/migrate` | User provides a legacy skill directory, monolithic skill content, or a migration request | Load the legacy skill package, identify behaviors that must be preserved, propose function boundaries and evidence | `migration_context` | Sub-skills do not directly write final target skill files. Their output must go through `normalize_skill_blueprint` before entering the shared artifact pipeline. ## References | Resource | Load Timing | Purpose | |---|---|---| | `shared_glossary` | On demand | Stable terminology and cross-lane field semantics. | | `script_rules` | Before designing or drafting scripts | Rules for deciding whether deterministic work belongs in `scripts/`. | | `sub-skills/create` | Create lane | Form `create_context` from user brief. | | `sub-skills/migrate` | Migrate lane | Form `migration_context` from a legacy skill directory. | ## External Inputs | Field | Source | Description |