Продуктивность

1618/run-skill-generator

Создаёт и устанавливает новые навыки для автоматизации повторяющихся задач или новых рабочих процессов по запросу пользователя прямо из чата. Полезен, когда нужно быстро разработать и внедрить специализированное решение под конкретную задачу.

Оцените навык первым

SKILL.md

Перевод инструкции, которую получает агент при подключении навыка. Агент всегда использует оригинал.

Генератор навыков

Ты создаёшь новый CoWork-навык: папку со SKILL.md (инструкции для агента) и, при необходимости, Python-скриптами. Готовый навык упаковывается в zip и устанавливается в ~/.n1618/skills инструментом install_skill_from_workspace — пользователь подтверждает установку в чате.

Процесс

1. Пойми задачу

Выясни у пользователя (коротко, не допрашивай):

  • Какую повторяющуюся задачу должен решать навык? Попроси 1–2 конкретных примера «вход → желаемый результат».
  • Есть ли жёсткие требования: форматы файлов, шаблоны, стиль, источники данных?

Если задача ясна из контекста разговора — не переспрашивай, предложи своё понимание одной фразой и работай.

2. Спроектируй

  • folder_name: латиница в нижнем регистре, цифры, дефисы (например report-builder). Это же будет slash-команда /folder_name.
  • Реши, что попадает в SKILL.md (инструкции), что в scripts/*.py (детерминированный код), что в references/*.md (справка, которую агент читает по необходимости). Код лучше инструкций для всего, что должно работать одинаково каждый раз.

3. Напиши SKILL.md

Обязательный frontmatter:

---
name: <folder_name>
description: <одно предложение: что делает навык и когда его использовать — по description агент решает, применять ли навык>
---

Дальше — тело в markdown. Принципы:

  • Пиши для будущего агента: повелительное наклонение, конкретные шаги, без воды.
  • Только неочевидное. Не объясняй, как пользоваться Python или что такое markdown.
  • Приводи примеры «вход → выход», если формат результата важен.
  • Если есть скрипты — опиши каждый: назначение, аргументы, пример запуска через run_skill_script.
  • Язык — русский (как у остальных навыков), если пользователь не просил иначе.

4. Скрипты (если нужны)

  • Клади в scripts/*.py. Запускаются в песочнице: run_skill_script(skill_folder, script, args), cwd = папка навыка.
  • Доступные env: N1618_WORKSPACE (корень песочницы), N1618_SCRATCH, N1618_SKILLS.
  • Пиши файлы результатов в $N1618_SCRATCH, не в папку навыка.
  • Сторонние пакеты не гарантированы — проверяй импорт и подсказывай pip_install.
  • Прогони каждый скрипт через run_python на тестовых данных ДО упаковки.

5. Собери и упакуй

Создай файлы навыка в песочнице:

scratch/<folder_name>/
├── SKILL.md
├── scripts/          # опционально
└── references/       # опционально

Затем упакуй скриптом этого навыка:

run_skill_script(skill_folder="run-skill-generator", script="package_skill.py", args=["scratch/<folder_name>"])

Скрипт валидирует структуру (SKILL.md в корне, frontmatter name/description, корректное имя папки) и создаёт scratch/<folder_name>.zip. Ошибки валидации исправь и повтори.

6. Установи

install_skill_from_workspace(folder_name="<folder_name>", zip_path="scratch/<folder_name>.zip")

Пользователь увидит запрос подтверждения — не сообщай об установке как о свершившейся, пока он не согласился. После установки навык включён, доступен как /<folder_name>, а его SKILL.md вернётся в результате — можешь сразу применить.

7. Проверь

Прогони навык на примере из шага 1: следуй собственному SKILL.md как написано. Если пришлось импровизировать — значит, инструкции неполные: исправь файлы, переупакуй и переустанови (установка поверх заменяет папку).

Чек-лист перед установкой

  • [ ] frontmatter: name совпадает с folder_name, description отвечает на «что и когда»
  • [ ] инструкции проверены на реальном примере, скрипты прогнаны через run_python
  • [ ] в SKILL.md нет секретов, личных данных и абсолютных путей с машины пользователя