db-update — Claude Code skill: apply 1C database configuration
Applies changes from the main 1C configuration to the database configuration. Useful when loading XML or a Git branch and applying the update are separate steps.
/plugin marketplace add Nikolay-Shirokov/cc-1c-skills
/plugin install 1c-skills@cc-1c-skillsWhat db-update does
The skill runs /UpdateDBCfg through the PowerShell script scripts/db-update.ps1. /db-load-xml and /db-load-git do the same thing with the -UpdateDB flag, so this skill is for when you want the update on its own.
It resolves the database from .v8-project.json in the project root: explicit connection parameters first, then a match by id, alias or name, then the current Git branch against databases[].branches, and finally the default entry. The platform path comes from v8path on the matched database record, or the root v8path. No file at all — the skill suggests /db-list add.
A file infobase needs -InfoBasePath; a server one needs -InfoBaseServer plus -InfoBaseRef. -Dynamic on updates without exclusive access to the database, -Extension and -AllExtensions cover extensions, and server infobases get background modes: -BackgroundStart, -BackgroundFinish, -BackgroundCancel, -BackgroundSuspend, -BackgroundResume. Worth knowing: -Dynamic on will not help where the update demands exclusive access.
What it helps with
- apply configuration changes to a 1C database after loading XML
- update a database without exclusive access using dynamic mode
- update a single extension or all of them at once
- start a background update on a server infobase and wait for it to finish
- match the current Git branch to the right database in
.v8-project.json
Example prompts for the agent
- /db-update dev
- /db-update dev -Dynamic on
- update the 1C database configuration for the dev database
How to install db-update
1Plugin marketplace
/plugin marketplace add Nikolay-Shirokov/cc-1c-skills/plugin install 1c-skills@cc-1c-skillsThis installs the whole 1c-skills plugin with all its skills
2Skills CLI (Vercel)
npx skills add Nikolay-Shirokov/cc-1c-skills --skill db-update -a claude-code3Manually: put the files in place
~/.claude/skills/db-update/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/db-update/
1Skills CLI (Vercel)
npx skills add Nikolay-Shirokov/cc-1c-skills --skill db-update -a codex2Manually: put the files in place
.agents/skills/db-update/SKILL.mdFor all projects use ~/.agents/skills/
Manually: put the files in place
.cursor/skills/db-update/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install Nikolay-Shirokov/cc-1c-skills db-update2Manually: put the files in place
.github/skills/db-update/SKILL.mdPlatform CLI
gemini skills install https://github.com/Nikolay-Shirokov/cc-1c-skills --path .claude/skills/db-updateManually: put the files in place
.devin/skills/db-update/SKILL.mdThe legacy .windsurf/skills/ path still works
Claude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about db-update
How do I install db-update in Claude?
Through the marketplace: run /plugin marketplace add Nikolay-Shirokov/cc-1c-skills, then /plugin install 1c-skills@cc-1c-skills. Alternatively, run npx skills add Nikolay-Shirokov/cc-1c-skills --skill db-update -a claude-code.
What does db-update do?
It applies changes from the main 1C configuration to the database configuration via /UpdateDBCfg. It runs as a separate step after loading the configuration.
What does the skill need to find a database?
A .v8-project.json file in the project root. The skill resolves the database from explicit parameters, by id, alias or name, from the current Git branch, or from the default entry. Without the file it suggests /db-list add.
Source text
SKILL.md · MIT
---
name: db-update
description: Обновление конфигурации базы данных 1С. Используй когда нужно обновить БД, применить конфигурацию, UpdateDBCfg
argument-hint: "[database]"
allowed-tools:
- Bash
- Read
- Glob
- AskUserQuestion
---
# /db-update — Обновление конфигурации БД
Применяет изменения основной конфигурации к конфигурации базы данных (`/UpdateDBCfg`) —
отдельным шагом после загрузки. У `/db-load-xml` и `/db-load-git` то же самое делает
ключ `-UpdateDB`.
## Usage
```
/db-update [database]
/db-update dev
/db-update dev -Dynamic on
```
## Параметры подключения
Прочитай `.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`.
## Команда
```powershell
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-update.ps1" <параметры>
```
### Параметры скрипта
| Параметр | Обязательный | Описание |
|----------|:------------:|----------|
| `-V8Path <путь>` | нет | Каталог bin платформы, или полный путь к `1cv8.exe` / `ibcmd.exe` |
| `-InfoBasePath <путь>` | * | Файловая база |
| `-InfoBaseServer <сервер>` | * | Сервер 1С (для серверной базы) |
| `-InfoBaseRef <имя>` | * | Имя базы на сервере |
| `-UserName <имя>` | нет | Имя пользователя |
| `-Password <пароль>` | нет | Пароль |
| `-Extension <имя>` | нет | Обновить расширение |
| `-AllExtensions` | нет | Обновить все расширения |
| `-NoApplyCheck` | нет | Не проверять применимость расширения после обновления |
| `-Dynamic <on/off>` | нет | `on` — динамическое обновление, без монопольного доступа к базе; `off` — отключить |
| `-Server` | нет | Обновление на стороне сервера |
| `-WarningsAsErrors` | нет | Предупреждения считать ошибками |
| `-AdditionalV8Arguments <список>` | нет | Доп. аргументы запуска `1cv8.exe` через запятую, напр. `/UseHwLicenses+` |
| `-AdditionalIbcmdArguments <список>` | нет | Доп. аргументы `ibcmd` через запятую, в форме `--ключ=значение` |
> `*` — нужен либо `-InfoBasePath`, либо пара `-InfoBaseServer` + `-InfoBaseRef`
### Фоновое обновление (серверная база)
| Параметр | Описание |
|----------|----------|
| `-BackgroundStart` | Начать фоновое обновление |
| `-BackgroundFinish` | Дождаться окончания |
| `-BackgroundCancel` | Отменить |
| `-BackgroundSuspend` | Приостановить |
| `-BackgroundResume` | Возобновить |
## Примеры
```powershell
# Обычное обновление (файловая база)
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-update.ps1" -InfoBasePath "C:\Bases\MyDB" -UserName "Admin"
# Динамическое обновление
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-update.ps1" -InfoBaseServer "srv01" -InfoBaseRef "MyDB" -UserName "Admin" -Password "secret" -Dynamic on
# Обновление расширения
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-update.ps1" -InfoBasePath "C:\Bases\MyDB" -UserName "Admin" -Extension "МоёРасширение"
```
© Nikolay Shirokov · MIT · Nikolay-Shirokov/cc-1c-skills