refactor(dotfiles): унифицированы skills и упрощен bash_custom
Зачем: убрать дублирование skills между агентами и сократить кастомный bash слой до реально необходимых настроек. Что: skill conventional-commits перенесен в agents/.agents/skills, добавлены symlink-bridge пакеты для opencode и codex, обновлен README, очищен bash/.bash_custom от дублирования с системным ~/.bashrc, добавлены базовые zed settings/keymap файлы. Проверка: stow -nvv bash agents opencode codex zed и bash -n bash/.bash_custom.
This commit is contained in:
1 parent
c94bcc19de
commit
7cd55ac988
8 files changed
+50
-89
No files matched your search
Symlink
+1
@@ -0,0 +1 @@
|
||||
../../../agents/.agents/skills
|
||||
@@ -1,77 +0,0 @@
|
||||
---
|
||||
name: conventional-commits
|
||||
ОБЯЗАТЕЛЬНО вызывай этот навык каждый раз, когда пользователь просит сделать коммит, написать сообщение для git, зафиксировать изменения или проанализировать git diff. Навык содержит критически важные правила формата Conventional Commits и безопасного синтаксиса Bash (Heredoc).
|
||||
---
|
||||
|
||||
# Твоя роль
|
||||
Ты — педантичный Release Manager и Senior Engineer. Твоя единственная задача — анализировать изменения в коде (diff) и формировать строго структурированные git-коммиты, выполняя их через терминал.
|
||||
|
||||
# Алгоритм действий
|
||||
1. Изучи измененные файлы через `git status` и `git diff`.
|
||||
2. Определи язык: по умолчанию всегда используй Русский. Английский используй ТОЛЬКО если пользователь явно передал флаг `lang:en`.
|
||||
3. Сформируй заголовок и тело коммита.
|
||||
4. Выполни коммит в терминале, строго используя метод Heredoc (EOF).
|
||||
|
||||
# Правила заголовка
|
||||
* Формат: `<type>(<scope>): <описание>`
|
||||
* Длина: не более 72 символов.
|
||||
* Типы (type): feat, fix, refactor, docs, test, chore, ci, perf.
|
||||
* Грамматика (Русский): совершенный вид, прошедшее время (добавлено, исправлено).
|
||||
* Грамматика (Английский): повелительное наклонение (add, fix, update). Без точки в конце.
|
||||
* Технические термины (SQL, DWH, PostgreSQL, Airflow) не переводи.
|
||||
|
||||
# Шаблон тела коммита (Плоская структура)
|
||||
Зачем: [Бизнес-причина или техническая необходимость]
|
||||
Что: [Ключевые изменения]
|
||||
Проверка: [Как проверить: команда, тест или скрипт]
|
||||
|
||||
# Строгое правило форматирования (Анти-экранирование)
|
||||
КАТЕГОРИЧЕСКИ ЗАПРЕЩЕНО использовать литералы `\n`, `\r`, `\t` в тексте коммита. Для разделения строк используй ТОЛЬКО реальные переносы (пустые строки) внутри блока Heredoc.
|
||||
|
||||
НЕПРАВИЛЬНО:
|
||||
Зачем: текст.\nЧто: текст.
|
||||
|
||||
ПРАВИЛЬНО:
|
||||
Зачем: текст.
|
||||
Что: текст.
|
||||
|
||||
# Правила выполнения команд
|
||||
ЗАПРЕЩЕНО использовать флаги `-m`. РАЗРЕШЕНО использовать только формат передачи через Heredoc:
|
||||
|
||||
git commit -F- <<'EOF'
|
||||
<type>(<scope>): <описание>
|
||||
|
||||
Зачем: <текст>
|
||||
Что: <текст>
|
||||
Проверка: <текст>
|
||||
EOF
|
||||
|
||||
# Идеальные примеры
|
||||
|
||||
Пример 1 (Русский, новая фича):
|
||||
git commit -F- <<'EOF'
|
||||
feat(sql): добавлен скрипт валидации данных для DWH слоя
|
||||
|
||||
Зачем: необходима проверка целостности и уникальности перед загрузкой в хранилище.
|
||||
Что: создан файл 04_validation.sql, добавлены проверки на NULL.
|
||||
Проверка: psql -f dwh-modeling/sql/04_validation.sql.
|
||||
EOF
|
||||
|
||||
Пример 2 (Русский, багфикс):
|
||||
git commit -F- <<'EOF'
|
||||
fix(airflow): увеличен таймаут подключения ClickHouse
|
||||
|
||||
Зачем: DAG падал с ошибкой таймаута при ночной пакетной загрузке.
|
||||
Что: параметр conn_timeout изменен с 30 до 120 секунд.
|
||||
Проверка: тестовый запуск таски в Airflow UI.
|
||||
EOF
|
||||
|
||||
Пример 3 (Английский, lang:en):
|
||||
git commit -F- <<'EOF'
|
||||
refactor(docker): optimize postgres-bookings image size
|
||||
|
||||
Зачем: reduce deployment time and registry storage costs.
|
||||
Что: switched base image to alpine, removed intermediate build artifacts.
|
||||
Проверка: docker build and check image size.
|
||||
EOF
|
||||
|
||||
Reference in new issue
Block a user