desko77/claude-code-skills-1c/1c77-dev
Claude Code and agent skill by desko77/claude-code-skills-1c
- community
Checking that the SKILL.md file is still in the repository.
Разработка и доработка под 1С:Предприятие 7.7 (она же "77", "семерка"): правка и создание модулей кода (.1s, кодировка CP1251), форм (.frm), объектов конфигурации (1Cv7.MD), внешних обработок и отчетов (.ert), плюс разбор и сборка .ert / 1Cv7.MD через GComp. Используй ВСЕГДА, когда задача касается 1С 7.7: файлы .1s / .ert / .frm / .mdp / 1Cv7.MD; глобальный модуль, модули проведения и формы 7.7; синтаксис 7.7 (нет типа Булево; ПустаяСтрока; СоздатьОбъект; тернарник ?(); ошибка компиляции "Выражение должно иметь логический тип"); обход справочников и документов 7.7, выгрузка через ТаблицаЗначений или FileSystemObject; сборка или разбор внешних обработок 7.7 (gcomp); миграция данных с 7.7; поиск и правка кириллицы в .1s (обычный grep ее не находит из-за CP1251). Применяй даже без явного "7.7", если речь о старой конфигурации с файлами .1s/.ert/.md или о ТиС / Торговле / Бухгалтерии 7.7 / УПП 7.7. НЕ использовать для 1С 8.x: EDT, .bsl, .mdo, .epf, .erf, .cf, .cfe, управляемые формы, расширения конфигурации (CFE), СКД, Конвертация данных (КД) 2.x, конфигурации УНФ / ERP / ЗУП / УТ / БП 3.x - для них есть отдельные 1c-* скиллы. Не применять и к общим задачам с кодировкой CP1251 вне 1С 7.7 (например конвертация csv-файлов).
Install
npx vskill@latest install desko77/claude-code-skills-1c/1c77-devSKILL.md
Разработка под 1С 7.7 (1c77-dev)
Доработка кода, форм, метаданных и внешних обработок 1С:Предприятия 7.7. Версия 7.7 кардинально отличается от 8.x, и привычные для 8.x приемы тут ломаются. Этот скилл собирает рабочие приемы, особенности синтаксиса и готовые скрипты.
Чем 7.7 отличается (читать обязательно)
- Нет EDT и .bsl/.mdo. Конфигурация хранится в бинарном
1Cv7.MD, внешние обработки - в бинарном.ert.
Редактируемые исходники получают разбором через GComp (текстовые .1s, .frm, .mdp, .mxl).
- Кодировка везде CP1251. Файлы
.1s/.frm/.mdp- не UTF-8. Инструмент Grep (ищет по UTF-8-байтам)
кириллицу в них не находит. Read показывает кракозябры. Читать/править - только через Python с encoding='cp1251' (см. scripts/cp1251_io.py) либо через MCP-сервер 1c77-metadata.
- Синтаксис строже и беднее 8.x. Нет типа Булево; число в условии
Еслине приводится к логическому;
многих функций 8.x (ЗначениеЗаполнено, штатной ПустаяСтрока как Булево) нет или ведут себя иначе. Это источник большинства ошибок компиляции. Подробно: references/syntax-gotchas-77.md.
Карта навигации
Читай нужный файл по ситуации, не загружай все сразу:
| Когда | Файл | |
|---|---|---|
| Пишешь/правишь BSL-код 7.7, ловишь ошибку компиляции "Выражение должно иметь логический тип" и т.п. | references/syntax-gotchas-77.md | |
Нужно понять структуру .1s / .frm / .mdp / .mxl / .ert, что внутри обработки | references/file-formats-77.md | |
Надо разобрать .ert в исходники или собрать обратно | references/gcomp.md | |
| Анализ метаданных конфигурации, поиск реквизита, проверка запроса 7.7, окружение | references/mcp-and-tools.md |
Скрипты в scripts/ (запуск с --help):
cp1251_io.py- чтение/запись/grep по.1sв CP1251 (когда обычный Grep слеп).analyze_module.py- инвентаризация модуля:СоздатьОбъект, типы метаданных, глобальныегл*-функции, обращения к реквизитам.patch_by_marker.py- идемпотентная вставка блока кода по маркеру-якорю (для повторяемых правок).build_ert.py/unpack_ert.py- обертки GComp (сборка/разбор.ert) через PowerShell.
Базовый workflow доработки
- Понять объект. Метаданные и код существующих объектов конфигурации смотри через MCP
1c77-metadata
(get_object, get_module, search_field, validate_query) - это быстрее и точнее ручного парсинга. Для внешней обработки .ert сначала разбери ее GComp (unpack_ert.py), затем работай с .1s/.frm. Детали: references/mcp-and-tools.md, references/gcomp.md.
- Править код только через CP1251. Используй
scripts/cp1251_io.pyили Python напрямую
(Path.read_text(encoding='cp1251') / write_text(..., encoding='cp1251', newline='')). Никогда не правь .1s инструментом, который пишет UTF-8 - сломаешь кодировку всего файла. Для повторяемых вставок (одинаковый блок в N мест) используй patch_by_marker.py - он идемпотентен.
- Сверить синтаксис 7.7 ДО сборки. Прогони мысленно (или поиском) по чек-листу особенностей из
references/syntax-gotchas-77.md. Самая частая ошибка: голый вызов функции или число в условии Если/ИначеЕсли без операции сравнения. Проверка запросов - validate_query MCP 1c77-metadata.
- Собрать `.ert` и проверить. Сборка - только рабочим GComp через PowerShell (
build_ert.py).
Перед сборкой - бэкап .ert. После - убедиться, что timestamp/размер изменились (GComp молча не пересобирает при битых аргументах). Финальная компиляция BSL и проверка - при открытии в самой 7.7.
Самопроверка перед сборкой .ert
Чек-лист прогонять по СВОЕМУ сгенерированному коду ДО вызова gcomp:
- [ ] В условиях
Если/Поканет голых вызовов функций или чисел - каждое сравнение явное
и в скобках: (Ф(х)=1) И (у=2).
- [ ]
ПустаяСтрока/ПустоеЗначениесравнивать с 1/0. - [ ] Каждая вызываемая процедура/функция объявлена ВЫШЕ точки вызова или в глобальном
модуле - проверить греп-поиском определения.
- [ ]
Симв(), неСимвол(); тернарник?(усл,а,б)с явными сравнениями. - [ ] Нет обращений к несуществующим у 7.7 методам 8.x.
Детали и полный список - references/syntax-gotchas-77.md.
Типовые ошибки компиляции ("Выражение должно иметь логический тип", "Процедура не обнаружена", "Плохой тип переменной") - сначала прогнать этот чек-лист, потом лезть в отладку.
Критические правила (ключевые отличия синтаксиса, детали в references)
- Логический тип в `Если`.
Если ПустаяСтрока(Х) Тогда-> ошибка "Выражение должно иметь логический тип".
Нужно сравнение: Если ПустаяСтрока(Х) = 1 Тогда, а НЕ ПустаяСтрока(Х) -> ПустаяСтрока(Х) = 0. То же для тернарника: ?(ПустоеЗначение(Х) = 1, "", ...). Полный список - references/syntax-gotchas-77.md.
- CP1251. Grep по кириллице в
.1sмолчит (UTF-8 vs CP1251). Не делай вывод "совпадений нет" по Grep -
ищи через cp1251_io.py grep или MCP.
- GComp запускать только из PowerShell. Из Bash кириллица в путях бьется, gcomp молча выходит с ложным
успехом и ничего не собирает. Рабочий exe - в C:\Program Files\GComp\Release\ (с GComp.dll рядом), "голый" exe из каталогов проекта не запускается. Детали - references/gcomp.md.
- Минимальный diff при багфиксе. Правь только код, связанный с багом. Не переформатируй CP1251-файл
целиком - рискуешь кодировкой и шумным diff.
Проверка качества
После правки BSL 7.7 - прогон через MCP 1c-naparnik (ask_1c_ai) для оценки и validate_query (1c77-metadata) для запросов. EDT-валидация и bsl-platform-help к 7.7 неприменимы (это 8.x).
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/1c77-dev/SKILL.md
Popularity
- Repository stars
- 72
- Repository forks
- 16
- 7-day trend score
- 21
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 27 Sep 2026, a month ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/desko77/claude-code-skills-1c/1c77-dev)