Commit Graph
58 Commits
Author SHA1 Message Date
ddadminandClaude Opus 4.6 3c690bdb12 fix(skills): ужесточены permissions и добавлен TODO для codex-review
- Зачем:
  - Codex-ревью выявило permission bypass через Bash(timeout *) и
    сохраняющиеся safety prompts на $() и > в bash-командах.
- Что:
  - permission сужен до Bash(timeout 600 codex exec *), rm-паттерны конкретизированы.
  - REVIEW_ID использует $RANDOM для энтропии, resume пишет в файл вместо pipe.
  - добавлен TODO в AGENTS.md: план замены bash-паттернов на нативные инструменты.
- Проверка:
  - /codex-review при следующем использовании.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-31 10:59:26 +03:00
ddadminandClaude Opus 4.6 6190fbaf08 fix(skills): улучшена надёжность и UX скилла codex-review
- Зачем:
  - скилл генерировал множество промежуточных bash-команд, каждая из которых
    требовала ручного подтверждения пользователя.
  - poll-loop (while/sleep) мог зависнуть навсегда при сбое Codex.
- Что:
  - добавлены permissions для типовых команд скилла (timeout, rm/Write для /tmp).
  - uuidgen заменён на date +%s (меньше промптов).
  - codex exec обёрнут в timeout 600 (10 мин) вместо poll-loop.
  - resume оставлен как primary, свежий exec — fallback.
  - добавлен захват session ID в Шаг 4.
- Проверка:
  - /codex-review при следующем использовании.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-31 10:38:07 +03:00
ddadminandClaude Opus 4.6 9341853479 refactor(claude): settings.json отдан Claude Code, базовые настройки в settings.local.json
- Зачем:
  - Claude Code перезаписывает settings.json при каждом «always allow», что создавало
    конфликт с managed-копией из dotfiles при повторном запуске install.sh.
- Что:
  - settings.json удалён из репозитория, Claude Code владеет им полностью.
  - создан settings.local.json (базовые permissions + statusLine), деплоится через симлинк.
  - install.sh: копирование + шаблон заменены на ln -sf с бэкапом и guard для edge cases.
  - check.sh: проверка обновлена под симлинк вместо «файл + chmod 444».
  - тесты: старый тест копирования заменён на 4 новых (симлинк, бэкап, директория, stow-миграция).
- Проверка:
  - bash tests/test_install.sh (15 тестов).
  - bash agents/.agents/skills/dotfiles-check/check.sh.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-31 10:28:41 +03:00
ddadminandClaude Opus 4.6 bdccd889fe refactor(skills): переработан скилл codex-review
- Зачем:
  - скилл работал только с планами; нужна поддержка ревью кода и автодетект режима.
- Что:
  - добавлен автодетект режима: plan, code, code-vs-plan.
  - три отдельных промпта для каждого режима ревью.
  - модель обновлена на gpt-5.4, reasoning effort = high.
  - исправлен сбор diff (условный, не перезаписывающий).
  - инструкции переведены на русский, промпты к Codex оставлены на английском.
  - добавлен вывод пути к файлу плана для открытия в IDE.
  - явные правила парсинга аргументов (model:..., reasoning level, путь к файлу).
- Проверка:
  - /codex-review в Claude Code.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-31 09:40:41 +03:00
ddadmin 9b05b4ab82 chore(skills): добавлен скилл codex-review
- Зачем:
  - нужен инструмент для итеративного ревью планов реализации через OpenAI Codex CLI.
- Что:
  - добавлен SKILL.md для скилла codex-review: цикл до 5 раундов, Claude отправляет план → Codex рецензирует → Claude правит → повторяет до VERDICT: APPROVED.
- Проверка:
  - вызвать `/codex-review` во время или после plan mode.
2026-03-30 23:42:22 +03:00
ddadminandClaude Opus 4.6 77adaad441 chore(skills): добавлены скиллы docstring и security-audit
- Зачем:
  - напоминание моделям про Google-style docstring'ы и Ruff-конфиг.
  - чеклист безопасности для ревью кода и зависимостей.
- Что:
  - добавлен docstring (DeerHide): вычищены мёртвые ссылки, добавлен Ruff select, правило языка проекта.
  - добавлен security-audit: чеклист OWASP, severity-уровни, формат отчёта.
  - убраны test-generator (Node.js стек) и api-docs (избыточен).
- Проверка:
  - ls agents/.agents/skills/{docstring,security-audit}/SKILL.md.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-29 19:44:37 +03:00
ddadminandClaude Opus 4.6 168b40ddd7 feat(docker): добавлен локальный SearXNG для веб-поиска из opencode
- Зачем:
  - модели в opencode не имели доступа к поиску без платных API.
- Что:
  - добавлен docker-compose для SearXNG (localhost:57458, без valkey).
  - секрет подставляется из .env через generate-config.sh при старте.
  - добавлен MCP-сервер searxng в конфиг opencode.
  - env_file с fallback: .env.sample работает из коробки, .env опционален.
- Проверка:
  - cd docker/searxng && docker compose up -d.
  - curl http://localhost:57458/search?q=test&format=json.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-29 19:09:41 +03:00
ddadminandClaude Opus 4.6 d3a91bea95 fix(opencode): заменён DuckDuckGo MCP с npx/bun на uvx
- Зачем:
  - duckduckgo-mcp (npx) требует bun, которого нет в системе.
- Что:
  - убран websearch из permissions (инструмент не существует в opencode).
  - команда заменена на uvx duckduckgo-mcp-server (Python, работает без bun).
- Проверка:
  - перезапустить opencode, убедиться что инструменты duckduckgo доступны.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-29 18:11:22 +03:00
ddadminandClaude Opus 4.6 1b675ab34a feat(opencode): включён встроенный websearch в permissions
- Зачем:
  - доступ к поиску в интернете для моделей без внешних MCP-серверов.
- Что:
  - добавлен "websearch": "ask" в секцию permission.
- Проверка:
  - открыть opencode, убедиться что websearch доступен как инструмент.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-29 17:42:29 +03:00
ddadminandClaude Opus 4.6 35b49e697d docs(readme): добавлена ссылка на репозиторий Opencode
- Зачем:
  - существует два проекта opencode, ссылка устраняет путаницу.
- Что:
  - название Opencode в таблице AI-инструментов обёрнуто в ссылку на anomalyco/opencode.
- Проверка:
  - открыть README.md, убедиться что ссылка ведёт на правильный репозиторий.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-29 17:21:59 +03:00
ddadminandClaude Opus 4.6 ffc794a219 feat(opencode): добавлен провайдер GLM-5.1 (Coding Plan) и TODO.md
- Зачем:
  - подключение модели glm-5.1 через подписку GLM Coding Plan Lite.
- Что:
  - добавлен кастомный провайдер zai с OpenAI-compatible адаптером.
  - создан TODO.md с планом миграции на config.d + stow (anomalyco/opencode#9062).
- Проверка:
  - открыть opencode, выполнить /models, убедиться что zai/glm-5.1 доступен.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-29 17:17:01 +03:00
ddadmin 9ce545d0bd chore(zed): добавлена конфигурация прокси для AI агентов
- Зачем:
  - требуется обеспечение работы Claude, Codex и Gemini через корпоративный прокси.
- Что:
  - добавлен глобальный параметр proxy.
  - настроены переменные окружения для claude-acp, codex-acp и gemini.
  - определены исключения для локальных адресов в NO_PROXY.
- Проверка:
  - запуск Zed с проверкой подключения к AI агентам.
2026-03-27 23:42:13 +03:00
ddadminandClaude Opus 4.6 cb0d09370a docs: добавлено предупреждение о перезапуске терминала в Windows quickstart
- Зачем:
  - winget install не обновляет PATH текущей сессии; без перезапуска
    chezmoi не находит pwsh и запускает скрипты через PS 5.1.
- Что:
  - добавлен комментарий между установкой пакетов и chezmoi apply.
- Проверка:
  - визуальная проверка README.md

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 20:19:31 +03:00
ddadminandClaude Opus 4.6 6c183356aa fix(chezmoi): utf8BOM не поддерживается в PS 5.1
- Зачем:
  - chezmoi запускает скрипт через PS 5.1, где допустимы только
    UTF8/Unicode/ASCII и т.д., но не utf8BOM (появился в PS 7).
- Что:
  - заменено -Encoding utf8BOM на -Encoding UTF8 (в PS 5.1 пишет с BOM).
- Проверка:
  - chezmoi -S "$HOME\dotfiles\chezmoi" apply (на Windows с PS 5.1)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 20:13:52 +03:00
ddadminandClaude Opus 4.6 21a6494cc4 fix(chezmoi): кириллица в PS-скриптах ломала парсер на Windows
- Зачем:
  - PS 5.1 читает UTF-8 без BOM как системную кодовую страницу;
    байт 0x91 из «Бэкап» интерпретировался как кавычка, ломая парсер.
- Что:
  - заменена кириллица в Write-Host/Write-Warning на английский текст
    в run_20-configure-windows-terminal.ps1 и run_before_10-migrate-gitconfig.ps1.
  - комментарии на русском оставлены (парсер их не обрабатывает).
- Проверка:
  - chezmoi -S "$HOME\dotfiles\chezmoi" apply (на Windows)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 20:11:32 +03:00
ddadminandClaude Opus 4.6 8567b2262c refactor(install): причёсан стиль и структура install.sh
- Зачем:
  - скрипт, написанный Codex, отличался по стилю от остального репозитория,
    трудно читался из-за вложенных условий и отсутствия визуальной структуры.
- Что:
  - добавлены секционные заголовки в стиле profile.ps1 (# ── Name ──────).
  - извлечён ask_yes_no() — убрано дублирование промптов.
  - WSL-логика вынесена в setup_wsl_hproxy() с flat early returns.
  - миграция stow-симлинка вынесена в migrate_claude_stow_symlink().
  - добавлены однострочные комментарии к хелперам и нетривиальным веткам.
- Проверка:
  - bash tests/test_install.sh
  - ./install.sh (идемпотентный повторный прогон)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 20:03:12 +03:00
ddadminandClaude Opus 4.6 877dd6cc4d chore(agents): удалён скилл differential-review
- Зачем:
  - скилл ухудшал работу Codex при ревью, добавляя избыточный контекст.
- Что:
  - удалены 5 файлов из agents/.agents/skills/differential-review/.
  - через симлинки скилл автоматически пропал из Claude и Opencode.
- Проверка:
  - grep -r differential-review agents/

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 19:47:30 +03:00
ddadminandClaude Opus 4.6 898db1098d refactor(wsl): унифицирована логика hproxy.local и добавлена миграция legacy boot command
- Зачем:
  - setup-hproxy.sh удалял запись из hosts до проверки gateway — при ошибке hosts ломался.
  - update_hproxy() дублировала логику скрипта с багами и не тестировалась.
  - legacy inline boot command в wsl.conf не мигрировался автоматически.
- Что:
  - setup-hproxy.sh: безопасный порядок (gateway → hosts), set -e, экранированная точка в sed.
  - update_hproxy() заменена на thin wrapper с проверкой wsl.conf и ошибок sudo.
  - install.sh: интерактивная замена legacy boot command, детекция существующих [boot] command,
    принимает русскую «у» наравне с «y».
  - README.md: описаны три сценария (WSL NAT, WSL mirrored — host-side resolution, native Linux).
  - добавлены тесты: existing boot command preserved, legacy command migration hint.
- Проверка:
  - bash tests/test_install.sh
  - ./install.sh (интерактивно, ответить «y» на миграцию legacy command)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 19:42:50 +03:00
ddadmin 22d38f80e5 fix(install): устранены конфликты stow в WSL и opencode
- Зачем:
  - нужно было убрать падение install.sh на абсолютных WSL-симлинках и существующей runtime-директории opencode.
- Что:
  - убран `--restow` из вызова stow, чтобы install не падал на ссылках `~/.aws` и `~/.azure`.
  - настройка `~/.config/opencode` переведена на ручную установку с backup существующего `opencode.json` и сохранением runtime-файлов.
  - в tests/test_install.sh добавлены сценарии для WSL-симлинков и существующей директории opencode.
- Проверка:
  - bash -n install.sh
  - bash -n tests/test_install.sh
  - ./tests/test_install.sh
2026-03-22 01:37:54 +03:00
ddadmin edeb8da3c2 fix(install): исправлена установка dotfiles и добавлены тесты
- Зачем:
  - нужно было убрать баги install.sh и сделать регрессии воспроизводимыми.
- Что:
  - исправлена установка через stow в HOME, миграция ~/.claude и копирование settings.json без разрушения рабочей директории.
  - стабилизирована WSL-логика через проверки интерактивности и защиту от дублирования boot command.
  - добавлен tests/test_install.sh с regression-сценариями для install.sh.
- Проверка:
  - bash -n install.sh
  - bash -n tests/test_install.sh
  - ./tests/test_install.sh
2026-03-22 01:21:56 +03:00
ddadminandClaude Opus 4.6 98484ad220 feat(wsl): добавлен boot-скрипт для автоматического резолва hproxy.local
- Зачем:
  - старая команда в wsl.conf дублировала записи в /etc/hosts при каждом ребуте.
  - настройка hproxy.local не была задокументирована в репозитории.
- Что:
  - создан идемпотентный скрипт scripts/setup-hproxy.sh (sed + append).
  - в install.sh добавлен интерактивный вопрос о подключении скрипта в wsl.conf.
  - в README.md добавлена документация по настройке hproxy.local (NAT и Mirror).
- Проверка:
  - cat /etc/wsl.conf, wsl --shutdown, getent hosts hproxy.local.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-18 11:11:03 +03:00
ddadmin 5eafb99639 feat(agents): добавлены скиллы для ревью, GitHub, диагностики и менторинга
- Зачем:
  - расширить набор переиспользуемых скиллов для повседневных задач: ревью PR, работа с GitHub, проверка dotfiles, диагностика сети, ревью кода менти.
- Что:
  - добавлен differential-review (Trail of Bits) — security-focused ревью PR.
  - добавлен github (Callstack) — workflow через gh CLI, stacked PRs.
  - создан dotfiles-check — bash-скрипт проверки целостности stow-симлинков.
  - создан proxy-debug — диагностика сети и прокси hproxy.local.
  - создан review-homework — ревью кода менти в обучающем формате.
- Проверка:
  - bash ~/.agents/skills/dotfiles-check/check.sh ~/dotfiles
2026-03-14 13:40:19 +03:00
ddadmin 984db1b6d7 feat(dotfiles): улучшена установка и управление конфигурацией
- Зачем:
  - нужен воспроизводимый способ установки на новую машину и защита от перезаписи tracked-файлов ИИ-инструментами.
- Что:
  - добавлен install.sh: stow всех пакетов, создание settings.local.json, chmod 444 на settings.json, автопатч .bashrc.
  - claude/settings.json разделён на базовый (permissions, statusLine) и локальный (model, effortLevel в settings.local.json).
  - добавлен .concept-software.ru в NO_PROXY в server-env-setup и bash_functions.
  - README переработан: install.sh как рекомендуемый способ, документация двухуровневых настроек Claude, Developer Mode hint, расширенное описание VS Code прокси.
- Проверка:
  - git clone + ./install.sh на чистой машине.
2026-03-14 11:31:10 +03:00
ddadmin 0009270c6e feat(agents): добавлены skills для PDF, docs, slides, jupyter и spreadsheet
- Зачем:
  - расширены возможности AI-ассистентов для работы с документами и презентациями
- Что:
  - добавлен skill pdf для работы с PDF файлами
  - добавлен skill doc для работы с Word документами
  - добавлен skill slides для создания презентаций PowerPoint
  - добавлен skill jupyter-notebook для работы с Jupyter ноутбуками
  - добавлен skill spreadsheet для работы с таблицами (Excel/CSV)
  - изменена модель Claude с sonnet на opus
- Проверка:
  - проверка доступности skills в AI-ассистентах
2026-03-13 23:35:45 +03:00
ddadmin bd06d5734c docs(root): добавлен AGENTS.md с описанием структуры проекта и правил для ИИ
- Зачем:
  - предоставить ИИ-агентам контекст по структуре репозитория (Bash, Tmux, Vim, VS Code, AI skills) и принятым в нем стандартам.
- Что:
  - создан файл `AGENTS.md` с описанием ключевых компонентов, способов развертывания (`stow`/`chezmoi`) и правил взаимодействия с Git.
- Проверка:
  - файл успешно добавлен в репозиторий и доступен для чтения агентами.
2026-03-11 15:16:19 +03:00
ddadmin 14b14596ec feat(gemini): добавлены git-команды в список разрешенных политик
- Зачем:
  - позволить агенту выполнять базовые операции анализа репозитория без лишних подтверждений.
- Что:
  - в `readonly-commands.toml` добавлены правила `allow` для `git status`, `git diff` и `git add`.
- Проверка:
  - запуск `git status` не должен вызывать диалог подтверждения (если политики применены).
2026-03-11 15:15:35 +03:00
ddadmin 1909d476b9 fix(claude): исправлен захардкоженный путь и модель в settings.json
- Зачем:
  - путь /home/dementev/ не работал на других машинах; модель была устаревшей.
- Что:
  - команда statusline переведена на переносимый путь ~/.claude/statusline-command.sh.
  - модель изменена с opus на sonnet.
- Проверка:
  - stow claude && claude — статусбар должен отображаться корректно.
2026-03-11 13:08:31 +03:00
ddadmin da3467b189 feat(gemini): расширен список разрешенных команд и разрешена автоактивация навыков
- Зачем:
  - ускорение работы агента за счет уменьшения количества запросов на подтверждение безопасных операций.
- Что:
  - в `readonly-commands.toml` добавлены разрешения для утилит: `getent`, `ip`, `which`, `command -v`, `stat`, `realpath`, `readlink`, `sort`, `uniq`, `wc`.
  - разрешена автоматическая активация навыков (`activate_skill`).
- Проверка:
  - выполнение команд из списка без появления диалога подтверждения.
2026-03-11 10:44:22 +03:00
ddadmin c4484b8ce3 feat(vscode): добавлена автоматическая настройка прокси в WSL
- Зачем:
  - обеспечить корректную работу расширений VS Code через прокси-сервер без ручной правки переменных окружения.
- Что:
  - обновлен скрипт `server-env-setup`: добавлена проверка доступности `hproxy.local` через `getent`.
  - реализован автоматический экспорт переменных `HTTP_PROXY`, `HTTPS_PROXY`, `ALL_PROXY` и `NO_PROXY` (в обоих регистрах).
  - комментарии в скрипте переведены на русский язык.
  - в политики Gemini (`readonly-commands.toml`) добавлены разрешения для команд `ls`, `echo` и `[`.
- Проверка:
  - запуск `env | grep -i proxy` в терминале VS Code после перезагрузки окна.
2026-03-11 10:41:35 +03:00
ddadmin 2cefb484f6 refactor(claude): реорганизована структура файла settings.json
- Зачем:
  - улучшена читаемость конфигурации за счет логического упорядочивания полей.
- Что:
  - поля model, statusLine и effortLevel перемещены в конец файла.
  - удалены лишние пустые строки между элементами массива permissions.allow.
- Проверка:
  - git diff HEAD~1 -- claude/.claude/settings.json.
2026-03-10 22:55:25 +03:00
ddadmin 328f70f16c feat(claude): добавлена глобальная конфигурация разрешений
- Зачем:
  - сократить количество запросов подтверждения при рутинных операциях
    (чтение файлов, git status/log/diff, docker ps/logs, сборка/тесты).
- Что:
  - создан claude/.claude/settings.json с секцией permissions.allow —
    авторазрешены безопасные bash-команды: чтение файлов, текстовая
    обработка, git read-only + git add, docker read-only, curl/wget,
    файловые операции (mkdir/cp/mv/touch), dev-инструменты (npm/bun/go/...).
  - опасные операции (git commit/push/rm/docker stop) остаются на запрос.
  - обновлён .gitignore stow-пакета: settings.json добавлен в исключения.
- Проверка:
  - cat ~/.claude/settings.json — должен быть симлинк на файл в dotfiles.
  - ls -la ~/.claude/settings.json — проверить, что это symlink.
2026-03-10 22:03:08 +03:00
ddadmin 063736fed5 fix(gemini): перемещены политики в поддиректорию policies для корректной работы
- Зачем:
  - Gemini CLI ожидает конфигурационные файлы политик в ~/.gemini/policies/.
- Что:
  - файлы builtin-readonly.toml и readonly-commands.toml перенесены в новую директорию policies.
- Проверка:
  - проверка структуры директорий ~/.gemini/policies/.
2026-03-10 16:09:43 +03:00
ddadmin d6483850cd chore(opencode): очищен конфиг opencode.json от комментариев
- Зачем:
  - конфигурационный файл содержит лишние комментарии, которые можно удалить.
- Что:
  - удалены комментарии с пояснениями в opencode.json.
  - удалены лишние пустые строки для компактности.
  - добавлен перевод строки в конце файла.
- Проверка:
  - валидация JSON: cat opencode/.config/opencode/opencode.json | jq empty.
2026-03-10 15:39:31 +03:00
ddadmin ff11dee4a1 docs(skill): уточнено описание способа B в инструкции conventional-commits
- Зачем:
  - сделать текст более понятным и акцентировать внимание на поведении в Gemini.
- Что:
  - переформулировано примечание для Gemini в описании способа B.
- Проверка:
  - просмотр изменений через git diff.
2026-03-10 15:20:35 +03:00
ddadmin 82a54d0541 feat(opencode): добавлены безопасные агенты и настройки разрешений
- Зачем:
  - необходим дополнительный уровень безопасности для предотвращения случайных изменений в репозитории
- Что:
  - создан агент safe-plan для безопасного планирования (read-only)
  - создан агент safe-build с защищенным доступом к shell
  - установлен default_agent: "safe-plan"
  - обновлены глобальные permissions: все операции требуют подтверждения, git push запрещен
  - добавлен share: "manual"
- Проверка:
  - проверка конфигурации через OpenCode UI
2026-03-08 22:49:42 +03:00
ddadmin d357e743fa feat(vscode): добавлен server-env-setup для WSL и загрузки секретов
- Зачем:
  - требуется передавать переменные из ~/.env.secrets в окружение VS Code Server в WSL.
- Что:
  - добавлен stow-пакет vscode с файлом ~/.vscode-server/server-env-setup.
  - реализована загрузка ~/.env.secrets через source в режиме fail-open с warning в stderr.
  - обновлен README: раздел VS Code (WSL), установка через stow/вручную, reconnect и обработка конфликтов.
- Проверка:
  - bash -n vscode/.vscode-server/server-env-setup.
  - stow -nvt ~ vscode.
  - запуск скрипта с валидным, отсутствующим и битым ~/.env.secrets в изолированном HOME.
2026-03-06 20:28:13 +03:00
ddadmin 245b69d992 chore(opencode): отключены MCP серверы web-reader, web-search-prime, zread
- Зачем:
  - отключение неиспользуемых MCP серверов для оптимизации конфигурации.
- Что:
  - добавлено поле enabled: false для web-reader.
  - добавлено поле enabled: false для web-search-prime.
  - добавлено поле enabled: false для zread.
- Проверка:
  - проверка конфигурации opencode.
2026-03-04 21:48:37 +03:00
ddadmin 0907e0f31e chore(gemini): обновлена конфигурация из JSON в TOML
- Зачем:
  - формат TOML более читабелен и удобен для редактирования.
- Что:
  - удалён файл settings.json.
  - добавлен builtin-readonly.toml.
  - добавлен readonly-commands.toml.
- Проверка:
  - проверка структуры новой конфигурации.
2026-03-04 21:43:33 +03:00
ddadmin efd8bccba7 chore(opencode): удалена символическая ссылка на skills
- Зачем:
  - рефакторинг структуры директорий проекта.
- Что:
  - удалена символическая ссылка opencode/.config/opencode/skills.
- Проверка:
  - проверка отсутствия ссылки и обновлённого статуса git.
2026-03-04 21:29:18 +03:00
ddadmin 07ec5a3830 docs(skills): добавлены варианты коммита для совместимости Gemini
- Зачем:
  - Heredoc может ломать некоторых агентов (например Gemini), нужен фолбэк.
- Что:
  - добавлены 3 способа выполнения git commit (Heredoc / tmp-файл / stdin одной командой).
  - уточнены правила переносов строк и запрета -m.
- Проверка:
  - git diff --cached -- agents/.agents/skills/conventional-commits/SKILL.md
2026-03-01 20:42:53 +03:00
ddadmin 6cac374180 config(opencode): обновлены настройки разрешений и MCP-серверов
- Зачем:
  - упрощение правил разрешений и отключение неиспользуемого MCP-сервера.
- Что:
  - удалено правило "*" с режимом ask из секции permission.
  - отключен MCP-сервер playwright (enabled: false).
- Проверка:
  - проверка файла opencode/.config/opencode/opencode.json.
2026-02-28 19:52:34 +03:00
ddadmin 08873ebbe2 config(opencode): добавлены настройки разрешений для git-команд
- Зачем:
  - требуется контроль выполнения опасных git-операций (commit, branch, switch).
- Что:
  - добавлена секция permission в конфигурацию OpenCode.
  - настроен режим ask для git commit, git commit --amend, git branch, git switch.
  - разрешены все остальные git-команды.
- Проверка:
  - проверка файла opencode/.config/opencode/opencode.json.
2026-02-28 18:08:07 +03:00
ddadmin 71a44da9b1 fix(claude): добавлен .gitignore для исключения runtime-файлов
- Зачем:
  - runtime-файлы Claude Code (cache, credentials, history) попадали в Git через симлинк Stow.
- Что:
  - создан файл claude/.claude/.gitignore с исключением всех файлов кроме skills и .gitignore.
  - создан симлинк claude/.claude/skills → agents/.agents/skills.
- Проверка:
  - git status показывает только claude/.claude/.gitignore как untracked.
2026-02-28 14:20:04 +03:00
ddadmin 5f736667ad docs(agents): добавлены правила amend в инструкцию conventional-commits
- Зачем:
  - необходимость корректной обработки amend-операций при коммитах.
- Что:
  - добавлен шаг чтения текущего сообщения коммита перед amend.
  - добавлен раздел "Специфические правила для Amend" с детальными инструкциями.
  - добавлен пример 4 с логикой amend.
- Проверка:
  - git log -1 --pretty=%B для проверки формата сообщения.
2026-02-28 14:03:07 +03:00
ddadmin 6d5ac4fb57 Add Windows support via chezmoi
- Add .chezmoiroot to preserve stow structure
- Add .chezmoiignore to exclude Linux-only packages on Windows
- Add PowerShell scripts for path conversion and skills symlinks
- Update README with Windows installation instructions
- Tested: vim, agents, codex, claude, opencode configs work on Windows
2026-02-28 00:20:30 +03:00
ddadmin 39d1d8636e refactor(wsl): добавлена поддержка режима Mirror для WSL2
- Зачем:
  - новый режим networkingMode=mirror в WSL2 требует другого подхода к определению IP-адреса хоста.
- Что:
  - добавлено определение режима WSL через проверку .wslconfig.
  - при режиме mirror IP берется из Windows hosts файла.
  - при режиме NAT IP вычисляется через маршрут по умолчанию.
  - добавлена очистка символов \r при чтении Windows файлов.
  - улучшены информативные сообщения для пользователя.
- Проверка:
  - вызов функции update_hproxy в обоих режимах WSL2.
2026-02-24 10:29:49 +03:00
ddadmin f865bea0ee feat(wsl): добавлена функция update_hproxy для обновления IP хоста
- Зачем:
  - необходимо автоматически обновлять IP-адрес хоста при перезагрузке WSL или изменении сети.
- Что:
  - добавлена функция update_hproxy в bash/.bash_functions.
  - функция получает IP хоста через ip route.
  - обновляет запись hproxy.local в /etc/hosts.
- Проверка:
  - выполнить update_hproxy и проверить /etc/hosts.
2026-02-24 09:28:31 +03:00
ddadmin f34e638084 docs(skills): обновлен шаблон conventional-commits под markdown-список
- Зачем:
  - привести формат commit body к виду, который используется в репозитории и ожидается в UI.
- Что:
  - заменен плоский шаблон `Зачем/Что/Проверка` на markdown-список с подпунктами.
  - добавлены явные требования к структуре тела коммита и количеству пунктов.
  - обновлены примеры и heredoc-шаблон под новый формат.
- Проверка:
  - git log -1 --pretty=format:'%s%n%n%b'.
  - проверить, что секции выводятся как list в UI.
2026-02-21 21:12:44 +03:00
ddadmin 410e543ade fix(bash): закомментирована изоляция git от proxy
- Зачем:
  - функция git с очисткой переменных прокси больше не нужна и усложняет поведение shell.
- Что:
  - закомментирован блок функции git() в bash-конфигурации.
  - отключена принудительная очистка HTTP_PROXY/HTTPS_PROXY/ALL_PROXY для вызовов git.
- Проверка:
  - source ~/.bashrc.
  - type git.
2026-02-21 21:11:37 +03:00
ddadmin d23c69ba6f fix(claude): добавлена загрузка общих skills через bridge
Зачем: Claude загружает user skills из ~/.claude/skills и не видел общий каталог ~/.agents/skills.
Что: добавлен пакет claude с symlink ~/.claude/skills на общие skills, исправлен YAML frontmatter skill conventional-commits, обновлен README с новой схемой и stow командой.
Проверка: stow -nvv claude и проверка лога rg "Loaded 1 unique skills" /tmp/claude-skills-check-2.log.
2026-02-21 19:28:38 +03:00
ddadmin 7cd55ac988 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.
2026-02-21 19:22:10 +03:00
ddadmin c94bcc19de refactor(bash): реорганизована структура bash-конфигурации
Зачем: улучшение читаемости и модульности конфигурации bash.
Что: удалён монолитный .bashrc, создан модульный .bash_custom с секциями (настройки, PATH, алиасы, функции, модули), добавлена функция git для изоляции от прокси, оптимизирован порядок загрузки модулей.
Проверка: source ~/.bash_custom, проверить git, алиасы (ll, la), prompt.
2026-02-21 18:53:53 +03:00
ddadmin 1ee049db4a feat(bash): добавлен кастомный двухстрочный prompt
Зачем: улучшение визуального опыта работы в терминале с отображением git-ветки, venv и статуса последней команды.
Что: создан файл .bash_prompt с цветным двухстрочным prompt, индикацией git-ветки, активного venv и статуса exit code.
Проверка: source ~/.bashrc, проверить отображение в git-репозитории и с активированным venv.
2026-02-21 18:47:49 +03:00
ddadmin 30ba8b6ac6 refactor(bash): переименован .custom_env в .bash_functions
Зачем: имя файла не отражало его содержимое (функции bash), что вводило в заблуждение.
Что: переименован файл, обновлены все ссылки в .bashrc, README.md, .env.example.
Проверка: ln -s dotfiles/bash/.bash_functions ~/.bash_functions, source ~/.bashrc, proxy_on.
2026-02-21 18:43:42 +03:00
ddadmin 26be464f2b feat(bash): добавлена поддержка приватных переменных окружения
Зачем: разделение публичных и приватных переменных окружения для безопасного хранения API ключей.
Что: создан шаблон .env.secrets.example, обновлен .bashrc для загрузки ~/.env.secrets, добавлено исключение в .gitignore, обновлена документация.
Проверка: cp bash/.env.secrets.example ~/.env.secrets, source ~/.bashrc, echo $CONTEXT7_API_KEY.
2026-02-21 18:40:52 +03:00
ddadmin 938dfe15e7 refactor(opencode): реструктурирован скилл conventional-commits
Зачем: переход на новый формат хранения скиллов для лучшей организации и расширяемости.
Что: удалён .skill.md файл, создана директория skills/conventional-commits/ с новой структурой.
Проверка: ls -la opencode/.config/opencode/skills/
2026-02-21 18:31:29 +03:00
ddadmin ab53f2501e feat(opencode): добавлена конфигурация с gitignore, bashrc и скриптами
Зачем: настройка рабочего окружения для инструмента opencode с поддержкой conventional commits.
Что: созданы конфигурационные файлы, добавлен bashrc, gitignore, документация и skill для коммитов.
Проверка: git status, проверка наличия файлов в opencode/.config/.
2026-02-21 18:28:21 +03:00
ddadmin 8a6e6a1923 chore(configs): инициализирован репозиторий для dot-файлов
- Зачем:
  - нужен централизованный контроль, версионирование и бэкап настроек окружения
- Что:
  - создана модульная структура директорий под GNU Stow
  - перенесены текущие конфигурации для bash, tmux, vim и zed
- Проверка:
  - cd ~/dotfiles && stow -n -S tmux vim bash
2026-02-21 18:05:52 +03:00