# Участие в проекте `dsh-agent-tool-filter` English version: see [CONTRIBUTING.en.md](). Спасибо за интерес к проекту! Это руководство описывает, как предложить изменения. ## Требования - Node.js, поддержка JavaScript ESM и встроенных модулей `node:test` и `node:assert`. - Внешние зависимости для тестов не требуются. - Ядро `@deepseek-ai/*` предоставляет хост DeepSeek Harness: не импортируйте и не копируйте его в проект. ## Начало работы ~~~text node --test test/ ~~~ Зависимости проекта для запуска тестов устанавливать не требуется. Перед началом разработки проверьте синтаксис изменённых файлов командой `node --check <путь-к-файлу>`. ## Структура репозитория | Каталог / файл | Назначение | |---|---| | `plugin.mjs` | Тонкая точка входа плагина. | | `lib/` | Модули с одной ответственностью каждый. | | `test/` | Тесты проекта; при публичном релизе здесь также размещается отчёт финального теста. | | `client/` | Исходники UI. | | `locale/` | Локализации интерфейса (RU/EN). | | `scripts/` | Сборка клиентского бандла (`build.mjs`). | | `docs/` | Руководства. | | `dist/` | Сборки тарбола пакета (`npm pack`). | | `cordis.patch.yml` | Bundle-патч платформы. | Код написан на JavaScript ESM. Файлы сохраняются в UTF-8 без BOM. Общую логику размещайте в общих модулях, не дублируя её. ## Процесс разработки - Проверки: выполните `node --check` для всех файлов проекта, затем `node --test test/`; перед вкладом тесты должны завершиться с кодом 0. Также выполните изолированный прогон плагина через `test_drive`. - Стиль кода: ориентир — около 400 строк на файл и около 80 строк на функцию. Это рекомендации, а не жёсткие лимиты. - Формат сообщений коммитов проектом не установлен; используйте ясные сообщения, описывающие изменение. - Для публичного релиза приложите отчёт финального теста в `test/`. ## Правила pull request 01. Сосредоточьте pull request на одном изменении или одной связанной теме. 02. Опишите, что меняется и почему, и перечислите выполненные проверки. 03. Проверьте синтаксис и запустите тесты; для изменений поведения добавьте или обновите соответствующие тесты. ## Сообщение об ошибках - Сообщения об ошибках и уязвимостях направляйте правообладателю Kiol согласно инструкциям в `SECURITY.md`. ## Лицензия Внося вклад, вы соглашаетесь, что ваши вклады распространяются на условиях той же лицензии, что и проект (см. `LICENSE`, MIT; Copyright (c) 2026 Kiol).