Skip to content
alyn
Nikolay-Shirokov

Db Repo skill

Работа с хранилищем конфигурации 1С. Используй когда нужно захватить объекты, поместить изменения в хранилище конфигурации, получить изменения из него, подключить базу к хранилищу

$npx skills add Nikolay-Shirokov/cc-1c-skills --skill db-repo
View this skill on GitHubNikolay-Shirokov/cc-1c-skills/.claude/skills/db-repo/SKILL.md
Pack stars
774
Pack installs
4.4k
Alyn Score
61/99
Updated
7 h ago
License
MIT
– views – installs via Alyn

Nikolay-Shirokov

Db Repo

Install Db Repo

Pick your agent. Every command is ready to paste.

$npx skills add Nikolay-Shirokov/cc-1c-skills --skill db-repo

The open skills CLI detects your agents (Claude Code, Cursor, Codex and 70+ more) and installs to the right folder. Add -g to install globally.

01

Install it

Run the command above, or upload the folder in Claude.

02

Ask naturally

Describe the task. Your agent loads db-repo when the request matches its description.

03

Name it if needed

If it does not trigger, say “use the db-repo skill”. In Codex, type $db-repo.

The skill itself

SKILL.md

FolderGitHub

/db-repo — Хранилище конфигурации 1С

Захват и помещение объектов, получение изменений, подключение базы, история версий, администрирование хранилища.

Хранилище конфигурации 1С, а не Git-репозиторий.

Usage

/db-repo lock   [database] -Objects "Справочник.Номенклатура"
/db-repo commit [database] -Objects "Справочник.Номенклатура" -Comment "Добавлен Артикул"
/db-repo unlock [database] -Objects "Справочник.Номенклатура"
/db-repo update [database]

Порядок работы

В базу, подключённую к хранилищу, исходники грузятся только частично и только по захваченным объектам. Выполняй строго по шагам:

0. /db-repo update <база>                      — начать с актуального состояния
1. /db-repo lock <база> -Objects "Справочник.Номенклатура"
2. если шаг 0 или 1 напечатал «локальная конфигурация изменена, получено объектов из хранилища: N» —
   выгрузи названные объекты: /db-dump-xml <база> <каталог> -Mode Partial -ObjectsFile "<файл из вывода>"
3. правки в исходниках: /meta-edit, /form-edit, /skd-edit, /meta-compile и т. д.
4. /db-load-xml <каталог> <база> -Mode Partial -Files "Catalogs/Номенклатура.xml,…" -UpdateDB
5. /db-repo commit <база> -Objects "Справочник.Номенклатура" -Comment "…"

Шаг 0 стоит делать всегда, когда работа не продолжается сразу после предыдущего цикла: правки должны опираться на актуальное состояние — в том числе тех объектов, которые ты не меняешь, но используешь.

Шаг 2 пропускать нельзя: захват и обновление подтягивают из хранилища свежие версии, и загрузка исходников, снятых раньше, откатит чужие изменения — молча, без ошибки.

Что вообще захватывается. Отдельные объекты хранилища — сам объект, а также его формы, макеты и команды. Реквизиты, табличные части, измерения и ресурсы отдельными объектами не являются: они правятся в составе владельца.

Что правишь Что захватывать
Реквизит, табличную часть, измерение, ресурс, модуль объекта сам объект: Справочник.Контрагенты
Существующую форму, макет, команду её саму: Справочник.Контрагенты.Форма.ФормаЭлемента
Добавляешь новую форму, макет, команду объект-владельца; при помещении назови и новый объект
Добавляешь новый объект конфигурации только корень: Конфигурация. Самого объекта ещё нет — захватить его нельзя; при помещении назови и его

Захватывай минимум того, что правишь: чем шире захват, тем больше конфликтов с коллегами. Захват объекта его формы и макеты не захватывает — для этого есть -WithChildren.

Параметры подключения

Прочитай .v8-project.json из корня проекта и разреши базу:

  1. Если пользователь указал параметры подключения — используй напрямую
  2. Если указал базу по имени — ищи по id / alias / name
  3. Если не указал — сопоставь текущую ветку Git с databases[].branches
  4. Если ветка не совпала — используй default

Платформа — v8path найденной записи базы, иначе корневой v8path. Не задан ни там, ни там — -V8Path не передавай.

Реквизиты хранилища передавать не нужно: запись базы находится по переданным параметрам соединения (-InfoBasePath либо -InfoBaseServer + -InfoBaseRef), реквизиты берутся из её repository. Задать их явно можно параметрами -Repository*.

Команда

powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-repo.ps1" -Command <подкоманда> <параметры>

Рабочий цикл

Подкоманда Что делает
lock Захватить объекты
unlock Отменить захват
commit Поместить изменения в хранилище
update Получить изменения из хранилища

Параметры

Параметр Обязательный Описание
-InfoBasePath <путь> * Файловая база
-InfoBaseServer <сервер> * Сервер 1С
-InfoBaseRef <имя> * Имя базы на сервере
-UserName <имя> нет Пользователь базы
-Password <пароль> нет Пароль пользователя базы
-Objects <список> усл. Объекты через запятую. Для lock, unlock, commit обязателен, если не задан -All
-ObjectsFile <путь> нет Файл со списком объектов, одно имя на строку
-All нет Операция над всей конфигурацией — вместо -Objects, а не вместе с ним
-WithChildren нет Вместе с подчинёнными объектами на полную глубину
-Comment <текст> нет Комментарий к помещению (commit). Многострочный — как есть, с переводами строк
-KeepLocked нет Оставить объекты захваченными после помещения
-Revised нет Получать захваченные объекты, если потребуется
-Force нет Разное по подкомандам — см. ниже
-Extension <имя> нет Работать с хранилищем расширения
-RepositoryPath <путь> нет Хранилище явно, вместо реестра
-RepositoryUser <имя> нет Пользователь хранилища явно
-RepositoryPassword <пароль> нет Пароль пользователя хранилища явно
-AdditionalV8Arguments <список> нет Доп. аргументы 1cv8.exe через запятую

* — нужен либо -InfoBasePath, либо пара -InfoBaseServer + -InfoBaseRef

-Force

Подкоманда Что делает
unlock Теряет локальные правки: объекты перезаписываются версией из хранилища
commit Пытается очистить ссылки на удалённые объекты вместо ошибки
update Подтверждает добавление и удаление объектов конфигурации

Имена объектов

Объект — Справочник.Номенклатура. Форма, макет, команда — полным путём: Документ.ЗаказПокупателя.Форма.ФормаДокумента, Справочник.Номенклатура.Макет.Печать. Корень конфигурации — Конфигурация.

Если объект «не найден», это не всегда опечатка: он мог появиться в хранилище позже, чем обновлялась база (/db-repo update), либо это вовсе не объект хранилища — реквизит или табличная часть.

Результат

Нулевой код не означает, что что-то изменилось. Под нулём приходят «уже захвачено», «обновлять нечего», «помещать нечего» и частичный захват — когда часть объектов занята другими, а остальное захвачено и его можно править.

Читай текст вывода, а не только код. Там же приходит список полученных из хранилища объектов, который требует перевыгрузки перед правкой.

Требуют подтверждения пользователя

Перед этими операциями спроси подтверждение:

Операция Почему
lock -All Захватывает всю конфигурацию: на большой базе идёт долго и блокирует работу всей команде
unlock -Force Теряются локальные правки захваченных объектов
disconnect Теряется подключение базы к хранилищу, в том числе на стороне хранилища
connect -ForceReplaceCfg Конфигурация базы заменяется конфигурацией из хранилища

update не выполнится, если у базы в реестре не объявлено repository, а реквизиты не заданы явно: на неподключённой к хранилищу базе эта команда заменяет всю конфигурацию его содержимым и рапортует успех.

Расширения

У расширения своё хранилище со своим путём. Укажи -Extension "<Имя>" — реквизиты возьмутся из extensions[].repository записи базы. Подкоманды работают одинаково для основной конфигурации и для расширения.

Остальные задачи

Файл Про что
connect.md Подключение и отключение базы от хранилища
history.md История версий, отчёт, выгрузка версии в CF
admin.md Создание хранилища, пользователи и права
service.md Метки версий, оптимизация, очистка кеша

Примеры

# Захватить справочник вместе с подчинёнными объектами
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-repo.ps1" -Command lock -InfoBasePath "C:\Bases\MyDB" -Objects "Справочник.Номенклатура" -WithChildren

# Захватить корень — он нужен, чтобы добавить или удалить объект конфигурации
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-repo.ps1" -Command lock -InfoBasePath "C:\Bases\MyDB" -Objects "Конфигурация"

# Поместить новый объект: он уже существует, поэтому называется вместе с корнем
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-repo.ps1" -Command commit -InfoBasePath "C:\Bases\MyDB" -Objects "Конфигурация,Справочник.Склады" -Comment "Добавлен справочник Склады"

# Поместить с комментарием, оставив захват
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-repo.ps1" -Command commit -InfoBasePath "C:\Bases\MyDB" -Objects "Справочник.Номенклатура" -Comment "Добавлен реквизит Артикул" -KeepLocked

# Получить изменения из хранилища
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-repo.ps1" -Command update -InfoBasePath "C:\Bases\MyDB"

# Серверная база, расширение
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-repo.ps1" -Command lock -InfoBaseServer "srv01" -InfoBaseRef "MyApp_Dev" -UserName "Admin" -Extension "МоёРасширение" -Objects "Справочник.Номенклатура"

После выполнения

  • lock или update сообщил о полученных объектах — выполни /db-dump-xml -Mode Partial с указанным в выводе файлом, и только потом правь исходники
  • после lock правки идут через /db-load-xml -Mode Partial и /db-update
  • изменения готовы — предложи /db-repo commit с комментарием

Tips for Db Repo

  • • Start a fresh session after installing so your agent picks up the new skill.
  • • This skill ships scripts. Read them before the first run, and run it in a project without secrets first.
  • • It bundles reference files. The agent reads them only when needed, so they cost no context until then.
  • • It is part of a pack with 30 skills. Install only the ones you need with --skill to keep triggers precise.
  • • If two skills overlap, mention the one you want by name.

Questions about Db Repo

What does the Db Repo skill do?

Работа с хранилищем конфигурации 1С. Используй когда нужно захватить объекты, поместить изменения в хранилище конфигурации, получить изменения из него, подключить базу к хранилищу

How do I install Db Repo?

Run "npx skills add Nikolay-Shirokov/cc-1c-skills --skill db-repo" in your project. The skills CLI installs it for Claude Code, Cursor, Codex and 70+ other agents. In Claude on the web, upload the skill folder as a ZIP under Customize > Skills.

Does Db Repo work in Cursor and Codex?

Yes. Db Repo uses the open SKILL.md format, so it works in Claude Code, Claude, Cursor, OpenAI Codex, Gemini CLI, GitHub Copilot and other agents that support agent skills.

Is Db Repo free?

Db Repo is open source on GitHub under the MIT license. It is free to install; check the license before commercial use.

Who made Db Repo?

Db Repo is published by Nikolay-Shirokov in the Nikolay-Shirokov/cc-1c-skills repository, together with 29 other skills.

Similar skills. From other creators.