Skip to content
Back to skills

Odata1c Setup

ASecurity

Подключает новую базу 1С к шлюзу odata1c-gate вместе с пользователем: выясняет, какую базу он хочет подключить, даёт ему одну готовую команду для терминала, а после неё сам строит индекс, проверяет, что база отвечает, и показывает, что в ней защищено. Применяй, когда пользователь просит «подключи базу 1С», «добавь базу», «настрой шлюз», «хочу работать с ещё одной базой», когда `odata1c_bases` отвечает пустым перечнем, и сразу после установки плагина, если баз ещё нет. Пароль 1С модель не спра...

  • 5 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 18, 2026
ai-agents

Works with

  • mcp

Security analysis

A100/100

Scanned October 18, 2026

npx -y skills add Romandredan/odata1c-gate --skill odata1c-setup --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Odata1c Setup?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Odata1c Setup
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/romandredan-odata1c-setup/badge)](https://www.skillsdirectory.com/skills/romandredan-odata1c-setup)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: odata1c-setup
description: >-
  Подключает новую базу 1С к шлюзу odata1c-gate вместе с пользователем: выясняет, какую базу он
  хочет подключить, даёт ему одну готовую команду для терминала, а после неё сам строит индекс,
  проверяет, что база отвечает, и показывает, что в ней защищено. Применяй, когда пользователь
  просит «подключи базу 1С», «добавь базу», «настрой шлюз», «хочу работать с ещё одной базой»,
  когда `odata1c_bases` отвечает пустым перечнем, и сразу после установки плагина, если баз ещё
  нет. Пароль 1С модель не спрашивает, не видит и не передаёт — его вводит человек в своём
  терминале.
---

# odata1c-setup

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

## Правило

Пароль 1С не спрашивай и не принимай — ни в чате, ни в команде, которую запускаешь сам. Если
пользователь всё же прислал пароль в сообщении, не используй его, скажи, что пароль вводится
только в терминале, и посоветуй сменить его в 1С. Файлы домашнего каталога шлюза
(`~/.claude/odata1c/`, в первую очередь `bases.yaml`) не читай и не правь; команду
`odata1c base add` сам не запускай — она спрашивает пароль и без терминала человека не работает.

## Шаги

1. **Проверь, что уже есть.** Вызови `odata1c_bases`. Если нужная база уже в перечне — подключать
   нечего, переходи к шагу 5. Если инструмента `odata1c_bases` нет вовсе, плагин не подключён:
   попроси пользователя выполнить `/mcp` и переподключить `odata1c`.

2. **Выясни три вещи одним сообщением.**
   - Короткое имя базы латиницей: строчные буквы, цифры, подчёркивание (`ut_prod`, `bp_test`).
     Этим именем базу будешь называть ты в каждом вызове.
   - Роль. Предложи сам по описанию базы и объясни одной фразой: `prod` — рабочая база: реквизиты,
     названия организаций и ФИО ты видишь токенами, записи нет; `test` — копия или тестовая:
     токенами только реквизиты, запись разрешена; `dev` — база разработки без защиты. Сомневаешься
     — предлагай `prod`: защиту потом легко ослабить, а вернуть уже показанные данные нельзя.
     Уровень защиты задаётся для каждой базы отдельно. Если пользователь сам просит уровень, не
     совпадающий с ролью (например, тестовая база с записью, но названия и ФИО токенами), добавь
     в команду `--gate identifiers+names` (уровни: `off`, `identifiers`, `identifiers+names`).
     Ослаблять защиту по своей инициативе не предлагай.
   - Конфигурация 1С, если это типовая: `ut` (Управление торговлей), `bp` (Бухгалтерия), `zup`
     (Зарплата и управление персоналом). От неё зависит стартовый набор рецептов. Другая
     конфигурация — ключ `--recipes` в команде не нужен.

   Адрес публикации, пользователя 1С и пароль НЕ спрашивай: их запросит сама команда.

3. **Дай одну команду** — в блоке кода, готовую к копированию, и предупреди, о чём она спросит:

   ```text
   odata1c base add <имя> --role <роль> --recipes <конфигурация>
   ```

   Команда спросит: адрес публикации 1С — тот же, по которому открывается веб-клиент, например
   `https://server/base` (окончание `/odata/standard.odata/` шлюз допишет сам), подпись базы
   (её увидишь ты — пусть будет понятной: «УТ 11, рабочая»), пользователя 1С и пароль (на экране
   не отображается). Посоветуй
   отдельного пользователя 1С с правами только на нужные данные. Если команда `odata1c` не
   найдена — сначала `uv tool install odata1c-gate`. Попроси написать «готово», когда команда
   отработает, и больше ничего не делай, пока он не ответит.

4. **Построй индекс.** После «готово» вызови `odata1c_bases` — новая база появляется в перечне
   без перезапуска шлюза. Затем `odata1c_reindex` с `base=<имя>`: шлюз скачает описание
   метаданных и построит индекс. На типовой конфигурации это одна-две минуты — предупреди об этом
   до вызова. Отказы на этом шаге: `auth_failed` — неверный пользователь или пароль;
   `odata_error` с сетевым сбоем — неверный адрес или недоступен сервер (VPN); в обоих случаях
   запись базы нужно поправить — попроси пользователя открыть `bases.yaml` в домашнем каталоге
   шлюза своим редактором либо удалить запись и повторить шаг 3. Сам файл не открывай.

5. **Покажи, что получилось.** Коротко, без технических подробностей: сколько объектов в базе
   (`entity_count` из ответа реиндекса), какой уровень защиты действует и что это значит для
   пользователя («названия клиентов и ИНН я вижу токенами вида `[[org:16]]`; настоящее значение
   покажет команда `odata1c reveal` в вашем терминале»), разрешена ли запись. Если реиндекс
   вернул `new_sensitive_fields`, скажи, сколько полей шлюз закрыл сам, и что состав защиты
   меняется командами `odata1c policy` (навык `odata1c-policy`).

6. **Предложи первый вопрос** по этой базе — из тех, что удобно проверить глазами: «показать пять
   последних документов», «найти контрагента по ИНН», для `ut` — «остатки по складу» (рецепт).
   Дальше работай по навыку `odata1c`.

## Если что-то пошло не так

- База в перечне есть, но `indexed: false` и реиндекс отвечает ошибкой — причина в соединении,
  см. отказы шага 4. Для диагностики окружения у пользователя есть команда `odata1c doctor`; сам
  её не запускай, попроси показать вывод.
- Пользователь хочет сменить роль, разрешить запись или поменять уровень защиты уже подключённой
  базы — это поля `role`, `write`, `gate.mode` её записи в `bases.yaml`; правит их он сам,
  изменения действуют без перезапуска.
- Пользователь просит удалить базу — это тоже правка `bases.yaml` его руками; инструмента для
  этого у тебя нет намеренно.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.