db-load-git — скилл для Claude Code: что делает и как установить
Загружает изменения конфигурации из Git в базу 1С без полной перегрузки. Находит изменённые файлы в рабочей копии или коммитах и обновляет только их.
/plugin marketplace add Nikolay-Shirokov/cc-1c-skills
/plugin install 1c-skills@cc-1c-skillsЧто делает db-load-git
Скилл автоматизирует частичную загрузку XML-выгрузки конфигурации в информационную базу 1С. Подключение определяется через файл .v8-project.json в корне репозитория: агент сопоставляет имя базы или текущую ветку Git с настройками проекта. Затем Claude запускает скрипт scripts/db-load-git.ps1 через PowerShell с нужными параметрами.
Загружать можно все незафиксированные правки, только staged-индекс или диапазон коммитов через параметр -CommitRange. Скрипт поддерживает файловые и клиент-серверные базы, а также загрузку в расширения. Если среди изменённых файлов оказывается Configuration.xml, платформа 1С автоматически выполнит полную загрузку конфигурации вместо частичной.
Удаление модулей и файлов из подкаталогов Ext/ частичной загрузкой не поддерживается. Если других изменений нет, скрипт завершится с ошибкой. Чтобы убрать код такого модуля, придётся оставить файл пустым или выполнить полную загрузку.
Какие задачи решает
- загрузить изменённые объекты конфигурации из Git в базу 1С
- накатить только staged-файлы перед созданием коммита
- перенести изменения из диапазона коммитов без ручной выгрузки
- проверить список затрагиваемых файлов перед импортом через
-DryRun
Примеры запросов агенту
- /db-load-git dev
- /db-load-git dev -Source Staged
- /db-load-git dev -Source Commit -CommitRange "HEAD~3..HEAD"
Как установить db-load-git
1Через маркетплейс плагинов
/plugin marketplace add Nikolay-Shirokov/cc-1c-skills/plugin install 1c-skills@cc-1c-skillsКоманда ставит плагин 1c-skills целиком, со всеми его скиллами
2Через Skills CLI (Vercel)
npx skills add Nikolay-Shirokov/cc-1c-skills --skill db-load-git -a claude-code3Вручную: положить файлы
~/.claude/skills/db-load-git/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/db-load-git/
1Через Skills CLI (Vercel)
npx skills add Nikolay-Shirokov/cc-1c-skills --skill db-load-git -a codex2Вручную: положить файлы
.agents/skills/db-load-git/SKILL.mdДля всех проектов — ~/.agents/skills/
Вручную: положить файлы
.cursor/skills/db-load-git/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install Nikolay-Shirokov/cc-1c-skills db-load-git2Вручную: положить файлы
.github/skills/db-load-git/SKILL.mdКомандой платформы
gemini skills install https://github.com/Nikolay-Shirokov/cc-1c-skills --path .claude/skills/db-load-gitВручную: положить файлы
.devin/skills/db-load-git/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Claude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о db-load-git
Как установить db-load-git в Claude Code?
Выполните обе команды каталога по очереди: сначала /plugin marketplace add Nikolay-Shirokov/cc-1c-skills, затем /plugin install 1c-skills@cc-1c-skills. Также доступна установка через npx skills add Nikolay-Shirokov/cc-1c-skills --skill db-load-git -a claude-code.
Что делает db-load-git?
Определяет список изменённых файлов конфигурации через Git и запускает PowerShell-скрипт частичной загрузки в файловую или серверную базу 1С.
Удаляются ли файлы модулей при частичной загрузке?
Нет, частичная загрузка платформы не удаляет отдельные файлы модулей и каталоги Ext/. Для очистки кода оставьте файл пустым либо запускайте полную загрузку конфигурации.
Исходный текст
SKILL.md · MIT
---
name: db-load-git
description: Загрузка изменений из Git в базу 1С. Используй когда нужно загрузить изменения из гита, обновить базу из репозитория, partial load из коммита
argument-hint: "[database] [source]"
allowed-tools:
- Bash
- Read
- Glob
- AskUserQuestion
---
# /db-load-git — Загрузка изменений из Git
Определяет изменённые файлы конфигурации по данным Git и выполняет частичную загрузку в информационную базу.
> Если в изменениях есть `Configuration.xml`, платформа выполнит **полную загрузку конфигурации**, а не только изменённых объектов.
> Удалённый объект уйдёт из базы, только если удалён и из состава владельца (`ChildObjects` объекта или `Configuration.xml`). Удалённый файл-часть объекта (модуль, файлы `Ext/`) загрузкой частями не удаляется: скрипт перечислит такие удаления в `[ВНИМАНИЕ]`, а если кроме них загружать нечего, завершится ошибкой. Применить их можно только полной загрузкой (`/db-load-xml -Mode Full`); чтобы убрать код модуля, достаточно оставить файл пустым.
## Usage
```
/db-load-git [database]
/db-load-git dev — все незафиксированные изменения
/db-load-git dev -Source Staged — только staged
/db-load-git dev -Source Commit -CommitRange "HEAD~3..HEAD"
/db-load-git dev -DryRun — только показать что будет загружено
```
## Параметры подключения
Прочитай `.v8-project.json` из корня проекта и разреши базу:
1. Если пользователь указал параметры подключения (путь, сервер) — используй напрямую
2. Если указал базу по имени — ищи по id / alias / name в `.v8-project.json`
3. Если не указал — сопоставь текущую ветку Git с `databases[].branches`
4. Если ветка не совпала — используй `default`
Платформа — `v8path` найденной записи базы, иначе корневой `v8path`. Не задан ни там, ни там — `-V8Path` не передавай.
Если файла нет — предложи `/db-list add`.
Если использованная база не зарегистрирована — после выполнения предложи добавить через `/db-list add`.
Если в записи базы указан `configSrc` — используй как каталог конфигурации.
## Команда
```powershell
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-load-git.ps1" <параметры>
```
### Параметры скрипта
| Параметр | Обязательный | Описание |
|----------|:------------:|----------|
| `-V8Path <путь>` | нет | Каталог bin платформы, или полный путь к `1cv8.exe` / `ibcmd.exe` |
| `-InfoBasePath <путь>` | * | Файловая база |
| `-InfoBaseServer <сервер>` | * | Сервер 1С (для серверной базы) |
| `-InfoBaseRef <имя>` | * | Имя базы на сервере |
| `-UserName <имя>` | нет | Имя пользователя |
| `-Password <пароль>` | нет | Пароль |
| `-ConfigDir <путь>` | да | Каталог XML-выгрузки (git-репозиторий) |
| `-Source <источник>` | нет | `All` (по умолч.) / `Staged` / `Unstaged` / `Commit` |
| `-CommitRange <range>` | для Commit | Диапазон коммитов (напр. `HEAD~3..HEAD`) |
| `-Extension <имя>` | нет | Загрузить в расширение |
| `-NoApplyCheck` | нет | Не проверять применимость расширения после загрузки |
| `-Format <формат>` | нет | `Hierarchical` (по умолч.) / `Plain` |
| `-DryRun` | нет | Только показать что будет загружено (без загрузки) |
| `-UpdateDB` | нет | После загрузки сразу обновить конфигурацию БД (`/UpdateDBCfg`) |
| `-AdditionalV8Arguments <список>` | нет | Доп. аргументы запуска `1cv8.exe` через запятую, напр. `/UseHwLicenses+` |
| `-AdditionalIbcmdArguments <список>` | нет | Доп. аргументы `ibcmd` через запятую, в форме `--ключ=значение` |
> `*` — нужен либо `-InfoBasePath`, либо пара `-InfoBaseServer` + `-InfoBaseRef`
## После выполнения
Если `-UpdateDB` не был указан — **предложить `/db-update`** для применения изменений к БД
## Примеры
```powershell
# Все незафиксированные изменения
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-load-git.ps1" -V8Path "C:\Program Files\1cv8\8.3.25.1257\bin" -InfoBasePath "C:\Bases\MyDB" -ConfigDir "C:\WS\cfsrc" -Source All -UpdateDB
# Из диапазона коммитов
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-load-git.ps1" -InfoBasePath "C:\Bases\MyDB" -ConfigDir "C:\WS\cfsrc" -Source Commit -CommitRange "HEAD~3..HEAD"
```
© Nikolay Shirokov · MIT · Nikolay-Shirokov/cc-1c-skills