Skip to content

comol/cursor_rules_1c

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Правила и конфигурации Cursor для разработки на 1С

Набор правил, агентов, навыков и команд для эффективной разработки на платформе 1С:Предприятие 8.3 с использованием Cursor IDE и MCP-серверов.

Содержание

Назначение

Данный репозиторий предназначен для размещения в папке .cursor вашего проекта 1С. Он содержит:

  • Агенты и субагенты — специализированные AI-ассистенты для различных задач разработки, включая субагент для управления метаданными
  • Правила — стандарты кодирования, антипаттерны, best practices для 1С
  • Навыки — консолидированный диспетчерский навык для работы с метаданными и данными (17 доменов, 30+ PowerShell-инструментов, MCP-инструменты) и утилиты
  • ��оманды — готовые сценарии для развёртывания и тестирования

Репозиторий ориентирован на использование MCP-серверов с vibecoding1c.ru.

Структура каталога

.cursor/
├── agents/                    # AI-агенты и субагенты
│   ├── analytic.md           # Бизнес-аналитик (PRD, ТЗ, спецификации)
│   ├── architect.md          # Архитектор решений
│   ├── arch-reviewer.md      # Ревьюер архитектуры
│   ├── code-reviewer.md      # Ревьюер кода
│   ├── developer.md          # Разработчик
│   ├── doc-writer.md         # Технический писатель
│   ├── error-fixer.md        # Исправление ошибок
│   ├── metadata-manager.md   # Субагент: управление метаданными (NEW)
│   ├── performance-optimizer.md  # Оптимизация производительности
│   ├── planner.md            # Планировщик задач
│   ├── refactoring.md        # Рефакторинг
│   └── tester.md             # Тестирование
│
├── rules/                     # Правила и стандарты
│   ├── project_rules.mdc     # Основные правила проекта (всегда активны)
│   ├── user_rules.mdc        # Пользовательские правила (всегда активны)
│   ├── mcp-tools.mdc         # Справочник MCP-инструментов
│   ├── sdd-integrations.mdc  # Интеграции SDD-фреймворков
│   ├── anti-patterns.mdc     # Антипаттерны и оптимизации
│   ├── form_module_rules.mdc # Правила модулей форм (globs: **/Form.Module.bsl)
│   ├── forms_add.mdc         # Создание форм (интеграция с навыком 1c-metadata-manage)
│   ├── forms_events_add.mdc  # Обработчики событий форм (globs: **/Form.Module.bsl)
│   ├── integrations_add.mdc  # Интеграции
│   ├── refactor_add.mdc      # Рефакторинг
│   ├── template-search-mcp.mdc # Workflow: шаблоны кода и долговременная память (template-search-mcp)
│   └── getconfigfiles.mdc    # Выгрузка конфигурации
│
├── skills/                    # Специализированные навыки
│   ├── 1c-metadata-manage/    # Диспетчерский навык управления метаданными (CONSOLIDATED)
│   │   ├── SKILL.md          # Точка входа — маршрутизация по доменам
│   │   ├── docs/             # 17 документов по доменам (meta, form, SKD, MXL, role, data-tools, ...)
│   │   └── tools/            # 30+ PowerShell-инструментов со скриптами
│   ├── img-grid-analysis/     # Анализ изображений сеткой
│   ├── mermaid-diagrams/      # Создание Mermaid-диаграмм
│   └── powershell-windows/    # PowerShell на Windows
│
├── commands/                  # Команды для выполнения
│   ├── deploy_and_test.md    # Развёртывание и тестирование
│   └── getconfigfiles.md     # Выгрузка файлов конфигурации
│
└── README.md                  # Этот файл

Установка

  1. Скопируйте содержимое репозитория в папку .cursor вашего проекта 1С
  2. Настройте MCP-серверы согласно инструкциям на vibecoding1c.ru
  3. Создайте файл infobasesettings.md в корне проекта с настройками вашей информационной базы:
    • Путь подключения к базе (например, C:\Users\...\InfoBase)
    • URL публикации для тестирования (например, http://localhost/MyBase/ru/)

MCP-серверы

Правила оптимизированы для работы с MCP-инструментами. Основные инструменты:

Поиск кода и документации

Инструмент Назначение
docsearch Поиск в документации платформы 1С
codesearch Поиск в коде текущей конфигурации
templatesearch Поиск шаблонов и примеров кода (семантический + полнотекстовый, 2000+ шаблонов)
list_templates Список всех шаблонов (id, description) без кода
get_template Получение полного кода шаблона по ID
add_template Сохранение нового шаблона (описание + код, мин. 10 символов)
helpsearch Поиск информации о объектах метаданных
ssl_search Поиск функций БСП (Стандартной Библиотеки Подсистем)

Долговременная память (template-search-mcp)

Инструмент Назначение
remember Сохранение заметки в память (решения, исправления, факты)
recall Семантический поиск по сохранённым заметкам

Работа с метаданными

Инструмент Назначение
search_metadata Поиск и проверка структуры метаданных
business_search Семантический поиск объектов по описанию
answer_metadata_question Ответы на вопросы о работе объектов

Проверка качества кода (SyntaxCheckServer)

Инструмент Назначение
syntaxcheck Синтаксический контроль BSL (макс. 3 раза за цикл)

1CCodeChecker (1С:Напарник) — 11 инструментов

Анализ и работа с кодом

Инструмент Назначение
check_1c_code Проверка кода: синтаксис, логика, производительность
review_1c_code Code review: стиль, стандарты ИТС, именование, структура
rewrite_1c_code Переписывание кода ИИ с улучшениями и объяснениями
modify_1c_code Модификация кода по явной инструкции пользователя
ask_1c_ai Свободный вопрос к ИИ 1С:Напарник (с контекстом диалога)

Документация и база знаний

Инструмент Назначение
search_1c_documentation Поиск в документации платформы (с указанием версии)
onec_help Поиск в документации платформы (последняя версия)
its_help Поиск по базе знаний ИТС (стандарты, методики, статьи). Возвращает ID документов для fetch_its
fetch_its Чтение содержимого документа ИТС по ID (всегда использовать после its_help)
diff_1c_documentation_versions Сравнение документации между версиями платформы
config_help Поиск документации по прикладным конфигурациям (ERP, БП, ЗУП, УТ)

Агенты

Агенты — это специализированные AI-ассистенты с предустановленными инструкциями для конкретных задач. Размещаются в .cursor/agents/ и вызываются через /имя-агента или автоматически по описанию задачи.

Все агенты ссылаются на @skills/powershell-windows/SKILL.md для корректной работы с PowerShell. Агенты, создающие диаграммы, дополнительно ссылаются на @skills/mermaid-diagrams/SKILL.md.

Разработка

Агент Описание
1c-developer Основной агент для написания кода. Следует стандартам, использует MCP-инструменты, проводит самопроверку
1c-architect Проектирование архитектуры модификаций. Анализ паттернов, trade-off analysis, диаграммы
1c-analytic Бизнес-анализ и документация. PRD, ТЗ, спецификации без написания кода

Качество кода

Агент Описание
1c-code-reviewer Ревью кода с confidence scoring. Проверка на антипаттерны, безопасность, производительность
1c-arch-reviewer Ревью архитектурных решений
1c-error-fixer Исправление ошибок и проблем
1c-refactoring Рефакторинг с сохранением функциональности
1c-performance-optimizer Оптимизация производительности

Документация и планирование

Агент Описание
1c-doc-writer Написание технической документации
1c-planner Планирование задач и декомпозиция
1c-tester Разработка тестов

Субагенты

Субагенты — это агенты, которые запускаются в отдельном контекстном окне для изоляции сложных задач. Они наследуют все инструменты родительского агента (включая MCP) и работают автономно.

Субагент Описание
/metadata-manager Специалист по метаданным 1С. Создаёт, редактирует, валидирует и удаляет объекты конфигурации, формы, СКД, MXL, роли, EPF/ERF, расширения, базы данных. Использует навык 1c-metadata-manage

Когда используется субагент

  • Субагент — для сложных задач: создание, компиляция, многошаговые операции с метаданными (create → edit → validate → fix). Сохраняет контекстное окно основного агента чистым для написания кода.
  • Напрямую — для простых запросов: проверка существования объекта, быстрый info-запрос, одиночная валидация.

Вызов: /metadata-manager создай справочник Контрагенты с реквизитами ИНН, КПП и управляемой формой

Правила

Правила — это .mdc-файлы с YAML-фронтматтером, размещаемые в .cursor/rules/. У каждого правила есть:

  • description — когда Cursor должен предлагать это правило
  • alwaysApply — применять ли автоматически к каждому запросу
  • globs — шаблон файлов для автоматического подключения

Автоматически применяемые (alwaysApply: true)

  • project_rules.mdc — основные правила разработки на 1С:

    • Персона, MCP-инструменты, стандарты кода, запросы, работа с данными через БСП
    • Оптимизация производительности, кэширование, транзакции
    • Метаданные: делегирование навыку 1c-metadata-manage и субагенту /metadata-manager
  • user_rules.mdc — общие инженерные принципы:

    • Пошаговый подход, минимальные изменения, проверка перед изменениями
  • template-search-mcp.mdc — workflow для MCP-сервера template-search-mcp:

    • Template-First: поиск шаблонов через templatesearch перед написанием нового кода
    • Сохранение проверенного кода в шаблоны через add_template
    • Долговременная память: recall перед принятием решений, remember для запоминания решений пользователя и исправлений ошибок

Контекстно применяемые

  • mcp-tools.mdc — справочник всех MCP-инструментов с примерами использования
  • sdd-integrations.mdc — интеграции с SDD-фреймворками (загружается по требованию, см. ниже)
  • anti-patterns.mdc — каталог антипаттернов с примерами исправления:
    • Критические: запросы в цикле, точечная нотация, подзапросы в SELECT
    • Высокие: фильтр WHERE на виртуальных таблицах, лишние серверные вызовы
    • Средние: отсутствие кэширования, O(n²) алгоритмы, глубокая вложенность
  • form_module_rules.mdc — правила для модулей форм (globs: **/Form.Module.bsl)
  • forms_add.mdc — создание форм через MCP-инструменты + компиляция через навык 1c-metadata-manage
  • forms_events_add.mdc — обработчики событий форм (globs: **/Form.Module.bsl)
  • integrations_add.mdc — интеграции (Python-first подход для HTTP API)
  • refactor_add.mdc — рефакторинг (top-down анализ, bottom-up рефакторинг)
  • getconfigfiles.mdc — выгрузка объектов конфигурации

Архитектура: агенты, субагенты, навыки

Схема взаимодействия компонентов:

Пользователь
    │
    ├── Вызов агента (/developer, /architect, /planner, ...)
    │       │
    │       ├── Правила (alwaysApply: true) загружены автоматически
    │       ├── Правила (контекстные) подключаются по globs / description
    │       ├── Навыки-утилиты подключаются по задаче (mermaid, powershell)
    │       │
    │       └── Сложная метаданные-задача?
    │               │
    │               ├── ДА → Делегирование субагенту /metadata-manager
    │               │         │
    │               │         ├── Читает SKILL.md навыка 1c-metadata-manage
    │               │         ├── Определяет домен(ы) задачи
    │               │         ├── Читает доменные docs/ и выполняет tools/scripts/
    │               │         ├── Валидирует результат
    │               │         └── Возвращает отчёт основному агенту
    │               │
    │               └── НЕТ → Агент выполняет задачу напрямую
    │
    └── Прямой вызов субагента (/metadata-manager ...)
            └── Работает автономно в отдельном контекстном окне

Зачем субагенты

  • Изоляция контекста: документация по метаданным (~4 200 строк / ~230 КБ) загружается в отдельное окно и не вытесняет код пользователя из контекста основного агента
  • Параллелизм: можно запустить несколько субагентов одновременно (например, "создай справочник" + "создай регистр")
  • Фокус: субагент загружает ВСЕ нужные документы без давления контекста
  • Изоляция ошибок: цикл validate → fix → re-validate остаётся внутри субагента

Создание собственных субагентов

Субагенты — это .md-файлы с YAML-фронтматтером в .cursor/agents/:

---
name: my-subagent
description: "Когда использовать этого субагента"
model: inherit
---

# Инструкции для субагента
...

Подробности: Cursor Subagents Docs

SDD-интеграции (Spec-Driven Development)

Все агенты поддерживают опциональную интеграцию с SDD-фреймворками, если они присутствуют в проекте. Подробности см. в rules/sdd-integrations.mdc.

Поддерживаемые фреймворки

Фреймворк Тип Описание Обнаружение
cursor-memory-bank Файловый Управление контекстом через memory-bank/ Папка memory-bank/
OpenSpec Файловый Спецификации и предложения изменений Папка openspec/specs/
spec-kit (GitHub) Файловый Управление архитектурными ограничениями Файлы spec.md, constitution.md
TaskMaster MCP-сервер AI-управление задачами MCP user-task-master-ai

Навыки

Навыки — это углублённые руководства по специфическим темам. Каждый навык содержит пошаговые инструкции, скрипты и паттерны для конкретной области. Размещаются в .cursor/skills/.

Архитектурное решение: Все навыки для работы с метаданными 1С консолидированы в один диспетчерский навык 1c-metadata-manage. Это сокращает потребление токенов в системном промпте: вместо ~40 отдельных описаний навыков загружается одно, а документация по конкретному домену подгружается только при необходимости.

1c-metadata-manage — Диспетчерский навык

Единая точка входа для операций с метаданными 1С и взаимодействия с живой базой данных. Содержит:

  • SKILL.md — маршрутизация: определяет домен задачи → выбирает режим выполнения (напрямую или через субагент /metadata-manager)
  • docs/ — 17 доменных документов с пошаговыми инструкциями
  • tools/ — 30+ PowerShell-инструментов со скриптами

Стратегия диспетчеризации

Сложность задачи Режим выполнения
Простая (info, lookup, валидация) Агент читает документацию напрямую
Сложная (создание, компиляция, многошаговая) Делегируется субагенту /metadata-manager

Поддерживаемые домены

Домен Документ Описание
Объекты метаданных meta-manage.md Создание, редактирование, анализ, удаление и валидация справочников, документов, регистров, перечислений, констант, модулей, реквизитов, табличных частей
Управляемые формы form-manage.md Проектирование, создание, редактирование и валидация Form.xml — элементы UI, команды, события
СКД (DCS/SKD) skd-manage.md Создание, редактирование и валидация отчётов, наборов данных, запросов
Макеты (MXL) mxl-manage.md Создание, декомпиляция, анализ и валидация печатных форм и макетов
Роли и права доступа role-manage.md Создание, анализ и валидация ролей, RLS, разрешений
Внешние обработки (EPF/ERF) epf-manage.md Scaffolding, сборка, выгрузка и валидация
Регистрация в БСП bsp-manage.md СведенияОВнешнейОбработке(), регистрация, команды
Конфигурация (CF) cf-manage.md Создание, редактирование, анализ и валидация Configuration.xml
Расширения (CFE) cfe-manage.md Создание, заимствование, сравнение, патчинг и валидация
Базы данных db-manage.md Реестр, создание, запуск, загрузка и выгрузка
Подсистемы subsystem-manage.md Создание, редактирование, анализ и валидация подсистем
Командный интерфейс interface-manage.md Редактирование и валидация CommandInterface.xml
Макеты объектов template-manage.md Добавление и удаление макетов (ТабличныйДокумент, HTML, Текст)
Встроенная справка help-manage.md Добавление Help.xml, HTML-страниц, обновление метаданных
Паттерны БСП/SSL ssl-patterns.md Пользователи и права, файлы, печатные формы, фоновые задания, email
Оптимизация запросов query-optimization.md Продвинутые паттерны: временные таблицы, JOIN, СКД, ВЫРАЗИТЬ, индексирование
Инструменты данных (MCP) data-tools.md Выполнение кода и запросов в живой базе 1С, валидация запросов, получение ошибок из журнала регистрации (MCP-сервер 1c-data-mcp)

Утилиты

Навык Описание
img-grid-analysis Наложение пронумерованной сетки на изображение печатной формы для определения границ колонок и пропорций при разработке MXL-макетов
mermaid-diagrams Руководство по созданию читаемых Mermaid-диаграмм: шаблоны, совместимость, советы для агентов. Используется агентами architect, analytic, doc-writer, planner
powershell-windows Правила корректного использования PowerShell на Windows: команды, пути, Docker, HTTP. Используется всеми агентами с доступом к Shell

Команды

deploy_and_test.md

Команды для развёртывания и тестирования:

  1. Загрузка конфигурации — загрузка из файлов в информационную базу
  2. Обновление БД — обновление структуры базы данных
  3. Тестирование — открытие веб-клиента для проверки

getconfigfiles.md

Выгрузка объектов конфигурации из информационной базы в файлы для редактирования.

Ключевые принципы

  1. Всегда используйте MCP-инструменты — templatesearch перед написанием кода, search_metadata для проверки метаданных, docsearch для документации
  2. Избегайте антипаттернов — запросы в циклах, точечная нотация, избыточные серверные вызовы
  3. Используйте БСП — ОбщегоНазначения, СтроковыеФункцииКлиентСервер и другие модули
  4. Проводите самопроверку — syntaxcheck после написания кода, внутреннее ревью
  5. Пишите код на русском языке — переменные, комментарии, имена процедур

Сообщество

Участие

Делитесь своими правилами, агентами и навыками — присылайте pull request!


Репозиторий обновляется в процессе использования.

About

Rules for cursor for vibe coding in 1C

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors