AXEL · ИИ-мастер формул, таблиц Excel и документов Word

Глубокий анализ, архитектура, модели и план работ по фазам

Исследование открытых проектов на GitHub и научных работ, живой замер наших моделей на GX10, оценка сервера «Сагар», разбор Timeweb Cloud AI, рынка и закона. По итогам — архитектура, план из 9 фаз и кликабельный прототип всех 28 экранов.

02.10.2026Сессия Claude Code, проект ~/AXELПрототип экранов →

Итог

160+
открытых проектов и ~30 научных работ разобрано
30
ключевых фактов перепроверено по первоисточникам
8
моделей замерено на GX10 на 22 задачах
28
экранов в кликабельном прототипе
  1. Ниша свободна. Открытого или российского сервиса, который делает готовый .xlsx/.docx и безопасно дорабатывает файл пользователя с проверкой «ничего не удалено», нет. Западные агенты (Copilot, Claude for Excel) в России для массового пользователя почти недоступны и не работают в Excel 2016/2019, Р7 и МойОфис.
  2. Схему изобретать не нужно. Зрелые открытые проекты пришли к одной схеме: карта книги → разрешённые операции → проверка пересчётом → снимок и откат. Код берём у проектов с лицензиями MIT, Apache и BSD (genoffice, excel-mcp-server, pi-for-excel, XlsxWriter, IronCalc и Formualizer, docx-mcp, Docxodus, oletools). У проприетарных и копилефтных (anthropics/skills, ONLYOFFICE, HyperFormula, formulas, SheetCopilot) — только идеи.
  3. Модель никогда не пишет файл. Она получает паспорт книги на 1–3 тыс. токенов и возвращает план операций по JSON-схеме. Применяет план, пересчитывает и сверяет с исходником наш детерминированный код. Это главный вывод науки (SpreadsheetBench 2, DELEGATE-52, DocOps) и главная защита от «тихой порчи».
  4. «Ничего не удалять» — это архитектура, а не обещание. openpyxl, ExcelJS и SheetJS теряют объекты при пересохранении, поэтому чужие файлы правит свой патчер OOXML: меняются только нужные XML-части, остальное копируется байт в байт, после правки — инвариантная сверка. Исходник неизменяем, план и «до/после» показываются всегда, перезапись данных — только с отдельной галочкой.
  5. Формулы проверяет программа. 3–5 вариантов считаются на нескольких наборах данных (ExecVote), пересчёт идёт двумя движками, ремонт — по тексту ошибки. Русскую версию формулы (СУММЕСЛИМН и «;») делает словарь, а не модель.
  6. Модели выбраны по живому замеру. 8 моделей GX10 прошли 22 русские задачи с проверкой пересчётом. Лучшая по качеству — qwen3.8:27b: формулы 12 из 15, VBA 12 из 15, планы правки 12,5 из 15, но она медленная (~40 с на типичный запрос). Быстрые qwen3-coder:30b и qwen3.5:35b-a3b отвечают за 10–11 с и решают 10–11 формул из 15. Кандидаты трёх моделей с проверкой пересчётом решают 14 из 15. Русскую версию формулы модели пишут плохо (верно 0–11 из 15), поэтому её делает словарь.
  7. Сагара не хватит для основной генерации: без видеокарты он читает таблицу на 20 тыс. токенов минутами. Его роль — веб, очередь, вся работа с файлами, пересчёт, поиск персональных данных и маленькая модель-классификатор. Облако Timeweb — резерв и трудные задачи, только без сырых ПДн.
  8. Timeweb дёшев: средний запрос стоит 0,2–0,6 ₽ на GPT-6 Luna, Qwen 3.5 Flash или DeepSeek V4.1 Flash. Бесплатные токены (до 12,5 млн до 31.12.2026) даются только на одного ИИ-агента с одной моделью: их стоит потратить на прогон тестов и прототип. Зарубежные модели означают трансграничную передачу, поэтому персональные данные туда не идут.
  9. Закон влияет на продукт: данные — только в РФ (23-ФЗ), согласие на ПДн отдельно (156-ФЗ), подписки по 376-ФЗ, НДС 22 % с 2026 года — ставка только из листа «Параметры».
  10. План: 9 фаз, около 29 недель для одного разработчика. Первый публичный запуск (формулы) — через 5 недель от старта. Каждая фаза считается готовой только онлайн на Сагаре. Чтобы начать, от владельца нужны доступ к Сагару, A-запись DNS и ключ Timeweb (раздел 14).

1. Что строим

AXEL — веб-сервис, где человек обычными словами описывает, что ему нужно посчитать или оформить, и получает рабочий результат: формулу, готовый файл Excel или Word, макрос, комплект файлов под бизнес-процесс. Или загружает свой файл и получает аккуратно доработанную версию, в которой ничего не потерялось.

Четыре сценария

  1. Формула по описанию. Формула в двух видах: для русского Excel (СУММЕСЛИМН, «;») и для файла или английского Excel (SUMIFS, «,»). Перед показом её считают на примере, к ней прилагается разбор по частям и список программ, где она работает.
  2. Создать таблицу или документ. Готовый .xlsx, .xlsm, .docx или .dotx: листы, умные таблицы, выпадающие списки, формулы, подсветка, лист «Параметры», лист «Как пользоваться», поля формы в Word.
  3. Доработать мой файл. Сначала план изменений и предупреждение о затрагиваемых данных, затем сравнение «до/после», подтверждение, применение и проверка, что всё на месте. Исходник сохраняется всегда.
  4. Макросы и процессы. VBA с объяснением, проверкой кода и инструкцией. Варианты для Р7-Офис, LibreOffice и Google Таблиц. Комплекты «заявка → согласование → учёт → отчёт».

Для кого

Бухгалтер, кладовщик, менеджер по продажам, кадровик, прораб и сметчик, логист, преподаватель, ИП и самозанятый, секретарь, производство. Для каждой роли в коробке 4–5 типовых задач: сверка выгрузок, остатки, план-факт и бонусы, табель Т-13, смета, путевой лист, журнал оценок, книга доходов и расходов, журнал входящих.

Чем AXEL отличается

  • Выдаёт готовый файл, а не текст в чате.
  • Доказывает, что ничего не удалено: план, сравнение, резервная копия и отчёт проверки есть всегда, а не включаются по желанию.
  • Совместим с тем, чем работают в России: Excel 2016–365, LibreOffice, Р7-Офис, МойОфис, Google Таблицы.
  • Каждую формулу считает программа, а не только пишет модель.
  • Данные и модели — на наших серверах в России.

Главное архитектурное правило, к которому независимо пришли открытые проекты, научные работы и разбор провалов конкурентов: модель никогда не пишет файл сама. Она получает сжатый «паспорт» книги и возвращает план из разрешённых операций в строгом JSON. План проверяет и применяет наш детерминированный код, после чего проверяет результат пересчётом и сверкой с исходником. Отсюда и надёжность, и скорость: модели не нужно читать всю таблицу.

2. Что нашли в открытом коде

Просмотрено больше 160 проектов: ИИ-надстройки для Excel и Word, MCP-серверы, генераторы формул, движки формул, библиотеки OOXML, инструменты рецензирования, серверы моделей. Готового открытого аналога AXEL нет. Нет и веб-сервиса на русском, где можно описать задачу, получить готовый .xlsx или .docx и безопасно доработать свой файл. Ниша свободна, но все нужные кирпичи уже есть.

К 2026 году зрелые проекты пришли к одной схеме: карта книги → ограниченный набор атомарных операций → проверка (пересчёт и поиск ошибок) → снимок и откат. Так устроены genoffice, pi-for-excel, excel-assistant, excel-mcp-server 1.0 и Univer AI SDK. Схему изобретать не нужно: её надо собрать под веб, русский язык и наш контур безопасности.

Берём в основу (разрешительные лицензии)

ПроектЛицензияЧто берём
genspark-ai/genoffice
★ 8,2 тыс., активен
Apache-2.0 (кроме папки ee/)Принцип «оригинал — источник истины, правка — узкий патч одной XML-части», нетронутое сохраняется байт в байт. Формат операций с пробным прогоном (dry-run). Список проверок sheet check.
haris-musa/excel-mcp-server
★ 4,2 тыс., версия 1.0
MITСловарь атомарных операций над книгой (почти 1:1 ложится в наш DSL). Политика формул: токенизация вместо регулярок, нормализация префиксов _xlfn., блок-лист опасных функций (WEBSERVICE, INDIRECT, CALL и др.), лимит 100 тыс. ячеек на операцию.
tmustier/pi-for-excelMITКарта книги (blueprint) с кэшированием, протокол записи «проверить → записать → проверить ошибки → снимок → журнал», объяснение формулы, трассировка зависимостей.
ALbum3270/excel-assistantMITФлаг overwrite: без него запись в непустую ячейку отклоняется. Это наш режим «только добавлять». Готовый формат отчёта «до/после».
STAR-LAB/excel-formula-generationMITКонвейер генератора формул: таблица в TSV с адресами, при больших листах первые 50 и последние 10 строк с явной меткой пропуска, три уровня проверки, два повтора исправления. Берём алгоритм, не код.
Khushiyant/sheetwiseApache-2.0Реализация SheetCompressor из SpreadsheetLLM: сжатие «грязных» листов и выгрузок 1С для локальных моделей.
XlsxWriterBSD-2-ClauseГенератор новых книг: динамические массивы, префиксы новых функций, умные таблицы, проверки ввода, условное форматирование, диаграммы, защита, вставка готового vbaProject.bin.
IronCalc и FormualizerMIT / Apache-2.0Быстрый пересчёт формул внутри процесса, за миллисекунды. Первая линия проверки и «второе мнение» к LibreOffice: LAMBDA и разлив массивов LibreOffice не считает.
oletools (olevba)BSD-2-ClauseПроверка входящих .xlsm, .docm и .xls: есть ли макросы, автозапуск, внешние вызовы. Макросы пользователя на сервере не запускаем никогда.
SecurityRonin/docx-mcpMITПравки Word в режиме рецензирования с адресацией абзацев по w14:paraId и автором «AXEL».
Open-Xml-PowerTools / Clippit (OpenXmlRegex)MITЭталонная замена текста в Word: поиск по склеенной строке абзаца, формат первого совпавшего фрагмента, сразу w:del и w:ins.
Docxodus + Python-RedlinesMIT (не путать с docxodus-service под AGPL)Сравнение двух .docx с выдачей документа с настоящими исправлениями Word: «чистая правка → сравнение → документ с правками».
docxtpl, docx (JS)LGPL-2.1 / MITШаблоны Word на Jinja (без изменений библиотеки) и генерация документов с нуля. Из списка переменных шаблона автоматически строится форма ввода.
docx-preview, unoserverApache-2.0 / MITПредпросмотр Word в браузере. Постоянно запущенный LibreOffice для пересчёта, PDF и картинок — экономит 50–75 % процессора.
LiteLLM, llama.cpp, llama-swapMITЕдиный шлюз к моделям (GX10, Timeweb, резерв в РФ) с переключением при отказе и бюджетами. Сервер моделей с выводом строго по JSON-схеме, загрузка тяжёлых моделей по требованию.
Presidio + NatashaMITПоиск и маскирование персональных данных на русском (ФИО, телефоны, ИНН и СНИЛС с контрольными суммами) до любой отправки в облако.
holidays-calendar-ruMITПроизводственный календарь РФ для табелей, сроков и рабочих дней в шаблонах.
SpreadsheetBenchCC BY-SA 4.0 (данные)Методика оценки: задача, несколько наборов данных, пересчёт в LibreOffice, сравнение ячеек. По ней строим свой русский набор AXEL-Bench-RU.

Только идеи: код брать нельзя

ПроектПочему нельзяЧто берём как идею
anthropics/skills (xlsx, docx)Проприетарная лицензия: копирование и производные запрещеныОбязательный пересчёт с отчётом об ошибках; правило «ошибка была в файле или появилась после нас»; склейка фрагментов текста в Word
SheetCopilot, WriterAgent, pycelGPL-3.0Классы атомарных действий, цикл «наблюдать → предложить → уточнить → выполнить», независимая проверка формулы переводом в Python
formulas (Python)EUPL-1.1: доступ по сети приравнен к распространению—
HyperFormula, EPPlus 5+GPL или платная; Polyform Noncommercial—
ONLYOFFICE / Р7 (веб-редакторы), SuperDocAGPL-3.0Таблица соответствия RU↔EN имён функций — только для сверки собственного словаря
Carbone, модули docxtemplaterCarbone CCL запрещает сервис генерации документов; модули платные—
UniverЯдро Apache-2.0, но импорт и экспорт XLSX только в платной ProМодель «черновик → проверка человеком → слить»; двойная проверка «картинка + структурный линт»

Не подходит

  • openpyxl для записи чужих файлов: по документации теряет фигуры, при сохранении удаляет расширения x14 (спарклайны, срезы, расширенное условное форматирование и проверку данных), не моделирует Power Query. Последний релиз — 28.06.2024. Оставляем только для чтения и анализа.
  • ExcelJS теряет диаграммы даже при открытии и сохранении без правок. SheetJS CE не записывает стили, диаграммы и сводные: это есть только в платной версии.
  • Пересохранение через LibreOffice переписывает все части файла. LibreOffice используем только для пересчёта копии и картинок предпросмотра.
  • Заброшенные или закрытые проекты: IPEX-LLM (в архиве), Office-Word-MCP-Server (в архиве), Quadratic (код закрыт), Rows (поглощён).

3. Что говорит наука и бенчмарки

Разобрано около 30 работ 2023–2026 годов о формулах, агентах для таблиц и правке документов. Вывод один: надёжность дают обвязка вокруг модели, проверка исполнением и точечные правки. Размер модели решает меньше.

18 % → 83 %
Рост на SpreadsheetBench (912 задач с форумов Excel): GPT-4o в 2024 году — 18 %, лучшие специализированные агенты в 2026-м — 59–83 %. У людей-экспертов 71 %.
~65 %
Доля провалов на SpreadsheetBench 2 из-за двух причин: книгу плохо осмотрели перед правкой (~35 %) и правили не те ячейки или листы (~30 %).
−25 %
Столько содержимого в среднем теряют даже лучшие модели за 20 шагов правки документа (DELEGATE-52, Microsoft). Около 80 % ущерба дают отдельные катастрофические шаги.

Ключевые выводы и наши правила

Что показали работыПравило для AXEL
SpreadsheetBench 2 (arXiv 2606.29955): задача засчитывается, только если совпали все ячейки файла, включая те, что трогать не нужно. Лучший результат — около 35 %.Обязательная фаза осмотра. Запись запрещена, пока модель не «посмотрела» целевую область. Цели правки объявляются явно и проверяются.
DELEGATE-52 (arXiv 2604.15597) и DocOps (arXiv 2607.19865): модели «тихо портят» документы. Детерминированные проверки сохранности ловят 96,7 % внесённых порч.Модель никогда не переписывает документ целиком. Каждая версия сравнивается с исходником, а не с предыдущей. После каждых ~5 правок пользователь видит сводку и точку отката.
WTM-bench (arXiv 2608.07873): модели сообщают «готово», хотя проверка этого не подтверждает, — в 43–81 % таких случаев.Статус «готово» ставит проверщик, а не модель. Файл, не прошедший проверку, не выдаётся.
FormulaSPIN (arXiv 2607.19354): дообученная 8B-модель — 87,1 % верных результатов на NL2Formula против 66,1 % у GPT-4o. Главный приём — ExecVote: несколько вариантов формулы исполняются, голосование идёт по результату.Генерируем 3–5 вариантов формулы, считаем их на 2–3 наборах данных и выбираем по совпадению результатов. Размер победившей группы показываем как уверенность.
RING (arXiv 2208.11640, Microsoft): ремонт формул — 82 % с первой попытки, 89 % за три.При ошибке пересчёта (#ИМЯ?, #ЗНАЧ!, #ССЫЛКА!) модель получает текст ошибки и похожие примеры ремонта. Не больше 2 попыток, затем модель сильнее.
SpreadsheetLLM / SheetCompressor (arXiv 2407.09025): сжатие листа примерно в 25 раз (структурные якоря, обратный индекс, агрегация по форматам).Модель получает паспорт книги на 1–3 тыс. токенов, а не всю таблицу. Для «грязных» выгрузок 1С — сжатие SheetCompressor.
InstructExcel (arXiv 2310.14495): похожие примеры из базы дают не меньше +40 % качества, полная документация API — хуже. Около 20 % ответов не компилировались из-за выдуманных вызовов.Узкий набор своих операций с короткими примерами. Примеры подбираются поиском по базе задач (эмбеддинги bge-m3).
SpreadsheetAgent (arXiv 2604.12282): агент на открытой gpt-oss-120b — 38,2 % на SpreadsheetBench, выше ChatGPT Agent (35,3 %).Открытые модели на GX10 с хорошей обвязкой годятся для типовых задач. Сложные многошаговые правки отдаём облачной модели.
Скрытое содержимое OOXML (arXiv 2608.25880): 21 способ, при котором Word или Excel показывают одно, а модель читает другое.Скрытые листы, скрытый текст, удалённые исправления и комментарии извлекаются отдельно, показываются пользователю и передаются модели только как данные, не как инструкции.

Ограничение. Почти все цифры получены на английском языке и на передовых моделях. Русскоязычного бенчмарка по формулам, VBA и docx нет, поэтому выбор моделей мы делаем по своему замеру (раздел 6) и по набору AXEL-Bench-RU, который растёт вместе с продуктом. Часть результатов на лидербордах — самоотчёты разработчиков, организаторы их не проверяли.

AXEL-Bench-RU — свой набор для приёмки моделей

200–500 русских задач в формате «задача + 3 набора данных + эталон». Категории: формулы (ВПР/ПРОСМОТРX, СУММЕСЛИМН, даты и рабочие дни, текст, динамические массивы), VBA для Excel и Word, шаблоны Word, правки существующих книг с запретом что-либо удалять. Проверка автоматическая: пересчёт LibreOffice, сравнение значений, проверка сохранности всего, что не должно было измениться. Модель или промпт меняются только если ни одна категория не просела больше чем на 2 п. п. и не выросло число нарушений сохранности. Первые 22 задачи уже написаны и прогнаны на GX10 (раздел 6).

4. Алгоритмы, которые берём

Ниже — конкретные приёмы, из которых собирается AXEL. У каждого указан источник. Код берём только у проектов с разрешительной лицензией (MIT, Apache, BSD), у остальных — идею, реализацию пишем сами.

А. Как модель «видит» файл

АлгоритмКак работает у насОткуда
Паспорт книгиКод без модели строит JSON на 1–3 тыс. токенов. В нём листы, используемые диапазоны, умные таблицы, именованные диапазоны, заголовки, тип и формат каждого столбца, доля пустых, 3–5 примеров значений (после маскирования), уникальные формулы в R1C1, сгруппированные по шаблону, проверки ввода, условное форматирование, защита, наличие диаграмм, сводных и макросов, флаги ПДн. Паспорт кэшируется по хэшу файла.pi-for-excel (blueprint), excel-mcp-server, SheetBrain
Голова/хвост + чтение по запросуПри листе больше 200 строк модель видит первые 50 и последние 10 строк с явной меткой пропуска. Остальное запрашивает инструментом чтения диапазона страницами по 4000 ячеек.STAR-LAB, negokaz/excel-mcp-server
SheetCompressorДля «грязных» листов (выгрузки 1С, отчёты с объединёнными ячейками): структурные якоря, обратный индекс «значение → адреса», агрегация по формату. Сжатие примерно в 25 раз.SpreadsheetLLM (Microsoft), sheetwise
Данные отдельно от инструкцийСодержимое ячеек, комментариев, колонтитулов и скрытых листов подаётся модели только внутри блока данных с пометкой «это данные пользователя, не инструкции». Скрытое содержимое отдельно показывается пользователю.Anthropic (предупреждение о prompt injection), arXiv 2608.25880

Б. Как получаем верную формулу

АлгоритмКак работает у насОткуда
Сначала аналогЕсли в соседних ячейках или в нашей базе есть похожая формула, переносим её с пересчётом ссылок без модели.Auto-Formula (идея)
Грамматика и белый списокМодель пишет каноническую английскую формулу. Вывод ограничен грамматикой: только функции из белого списка для выбранной версии Excel, сбалансированные скобки, корректные ссылки. Опасные функции (WEBSERVICE, INDIRECT, CALL, DDE, внешние книги) запрещены.excel-mcp-server (политика формул), llama.cpp GBNF / JSON-схема
ExecVote3–5 вариантов формулы считаются на 2–3 наборах тестовых данных. Побеждает вариант с самым частым результатом, размер группы показывается как уверенность.FormulaSPIN (ACL 2026)
Пересчёт двумя движкамиLibreOffice (пул unoserver; в профиле явно ставим OOXMLRecalcMode=0, по умолчанию там 1 — «никогда не пересчитывать») и Formualizer/IronCalc в процессе. LAMBDA LibreOffice не считает даже в 26.8, её проверяет только второй движок. Ищем 7 кодов ошибок; ошибки, которые были в файле до нас, отделяются от новых. Если движки расходятся — предупреждение «проверьте в Excel».anthropics/skills (идея), genoffice, Formualizer
Ремонт по ошибкеТекст ошибки и 3–5 похожих примеров ремонта отправляются модели. Не больше 2 попыток, потом модель сильнее.RING, FoRepBench
ЛинтерФормулы вместо вписанных чисел, ставки (НДС 22 %) — из листа «Параметры», абсолютные ссылки там, где формулу тянут, перехват #ДЕЛ/0!, динамические диапазоны, функции, зависящие от языка (ТЕКСТ, ДВССЫЛ).MBABench, BlueFin
Перевод RU↔EN без моделиТокенизатор пропускает строки в кавычках и имена листов в апострофах. Дальше замена по словарю (~500 функций), ИСТИНА/ЛОЖЬ, «,» → «;», десятичный разделитель. Тест обратного перевода EN→RU→EN блокирует релиз при расхождении.Собственный словарь по справке Microsoft; сверка с таблицами ONLYOFFICE и HyperFormula (без копирования)
Профиль совместимостиТаблица «функция → минимальная версия»: Excel 2016/2019/2021/365, LibreOffice, Р7, МойОфис, Google Таблицы. Если функция не поддерживается, формула переписывается под старую версию (ПРОСМОТРX → ИНДЕКС/ПОИСКПОЗ) или помечается.GPTExcel (переключатель платформы), документация XlsxWriter и LibreOffice

В. Как правим файл, ничего не теряя

АлгоритмКак работает у насОткуда
План в виде DSLМодель возвращает только список операций из белого списка по JSON-схеме (вывод строго по схеме): add_sheet, add_column, set_formula, fill_formula, write_values, add_validation, add_conditional_format, add_named_range, add_table. У каждой операции объявлены целевые адреса.excel-mcp-server, genoffice, SheetCopilot (классы действий)
Классы риска R0–R4R0 — чтение; R1 — добавление в пустое (новый лист, столбец справа); R2 — оформление и формулы в новых областях; R3 — изменение существующих формул и форматов; R4 — перезапись непустых данных. Класс считает исполнитель по фактическим адресам, а не модель. R3 и R4 требуют отдельной галочки пользователя. Удаление по умолчанию выключено и заменяется переносом на лист «Архив_AXEL».excel-assistant (флаг overwrite), xlsxedit
Пробный прогон и диффПлан применяется к копии. Различия собираются по ячейкам: значение, формула, стиль, проверка ввода, условное форматирование, имена, листы, модули VBA. Отдельно показываются пересчитанные зависимые значения.genoffice (dry-run), ExcelCompare
Хирургический патч OOXMLФайл .xlsx — это zip с XML-частями. Помечаются «грязными» и переписываются только изменённые части, остальные копируются побайтно: диаграммы, сводные, срезы, Power Query, vbaProject.bin. Новые строки пишутся как inlineStr (sharedStrings не трогаем), стили только добавляются, calcChain удаляется, ставится fullCalcOnLoad. Новые функции получают префикс _xlfn., динамические массивы — атрибут cm и metadata.xml.genoffice, ice-report PR #136 (идея), документация XlsxWriter
Инвариантная сверкаПосле применения проверяем: все части пакета на месте, хэши нетронутых частей совпадают, листы и их видимость не изменились, непустые ячейки вне утверждённого плана совпадают, число объектов не уменьшилось. Файл проходит схему OpenXmlValidator. Не прошёл — пользователь его не получает, изменение откатывается.genoffice, DocOps, docx-redline
Неизменяемый исходник и версииЗагруженный файл — версия 0, только чтение, с SHA-256. Каждое применение создаёт новую версию с планом, диффом и отчётом проверки. Откат — выбор версии, ничего не удаляется.Univer (Worktree), xltrail

Г. Word

АлгоритмКак работает у насОткуда
Нормализация и карта символовСоседние фрагменты текста с одинаковым форматом склеиваются. Поиск идёт по склеенной строке абзаца, замена получает формат первого совпавшего символа.OpenXmlRegex, docx4j, python-docx-replace
Правки рецензированиемИзменения вносятся как w:del и w:ins с автором «AXEL» и минимальным диффом. Пользователь принимает или отклоняет их в своём Word. Абзацы адресуются устойчивым якорем (paraId + точная цитата + отпечаток версии), неоднозначные цитаты отклоняются.docx-mcp, Docxodus, Adeu
Двусторонняя проверкаПрограммно выполняется «отклонить всё»: текст должен совпасть с оригиналом символ в символ. Затем «принять всё»: текст должен совпасть с планом. Счётчики таблиц, рисунков, полей, закладок, колонтитулов и разделов сравниваются.docx-redline
Шаблоны с полямиПоля — элементы управления содержимым (текст, дата, список, флажок) с w:tag и привязкой к Custom XML. Поля Word пишутся с вычисленным значением. Для форм с автоподсчётом без макросов используются устаревшие поля форм с защитой «только заполнение».docx4j, Microsoft Q&A
Чистая правка → сравнениеСложные структурные правки (таблицы, перестройка разделов) делаются в копии. Затем Docxodus строит из пары файлов документ с настоящими исправлениями Word.Python-Redlines / Docxodus

Д. Модели, деньги и персональные данные

АлгоритмКак работает у насОткуда
Маршрутизатор уровнейЖёсткие правила идут первыми: файлы с ПДн обрабатываются только на Сагаре и GX10. Дальше по сложности и оценке времени ответа: очередь + токены на входе / скорость чтения + ожидаемый выход / скорость генерации. Выбирается узел с наименьшим временем среди разрешённых политикой данных.Исследование моделей, RouteLLM (идея)
Каскад с эскалациейСначала дешёвая подходящая модель, потом проверка. Если проверка не прошла дважды, задача уходит модели сильнее. Цель — не больше 15 % эскалаций.Leni (arXiv 2607.17044), FrugalGPT
Промпт под кэш префиксаПорядок сообщения: неизменные правила и справочник функций, затем паспорт книги (версия по хэшу), затем история, затем вопрос. Повторные вопросы по той же книге не перечитывают таблицу. У Timeweb чтение из кэша в 10–50 раз дешевле обычного входа.llama.cpp (слоты), документация Timeweb
Двухфазный выводСложным задачам (VBA, процессы) модель сначала рассуждает без ограничений, затем выдаёт строгий JSON по схеме с выключенными рассуждениями. Простым задачам рассуждения выключены.vLLM, llama.cpp
Детектор ПДн по столбцамЗаголовки (ФИО, телефон, оклад, паспорт), регулярные выражения с контрольными суммами (ИНН, СНИЛС, карта по Луну), Natasha NER на выборке. Обратимая псевдонимизация: [PERSON_1], [PHONE_3], соответствия хранятся только на время задачи.Presidio, Natasha, llm-guard
ПредохранительДля каждого провайдера окно в 5 минут. Если ошибок больше 20 % или задержка выше порога, провайдер отключается на 1–5 минут и запросы идут следующему. Повторы с паузой — не больше 2.LiteLLM Router

5. Архитектура

Три узла с чёткими ролями. «Сагар» — публичный вход и вся детерминированная работа с файлами. GX10 — основной генератор: модели работают бесплатно и в РФ. Облако Timeweb — резерв и сложные задачи, туда никогда не уходят сырые персональные данные.

Пользователи Браузер: ПК и телефонaxel.24oros.ru Бот MAX / Telegramфаза 8, тот же API Надстройка Officeпозже, по спросу Сагар · Core Ultra 9 285H · 93 ГБ · без видеокарты Traefik: HTTPS, *.24oros.ru, лимиты запросов Веб + APISPA, FastAPI, вход, тарифы Очередь задачRedis, приоритеты, ETA Движок книгпаспорт, DSL, патчер OOXML,дифф, инвариантная сверка Движок Wordшаблоны SDT, слияние,рецензирование, проверка axel-calcLibreOffice ≥25.8 × 4 (unoserver)+ Formualizer, без сети Приёмка файловлимиты, zip, defusedxml,olevba, скрытое содержимое Детектор ПДнPresidio + Natasha, маски Роутер + шлюз LiteLLMправила ПДн, ETA, бюджеты Малая модель на CPUqwen3.5:4b — тип задачи Postgres + файлы /srvверсии, удаление через 30 дн. Вся работа с файлами — детерминированный код на процессоре. Файл пользователя целиком не покидает Сагар. GX10 · GB10 · 121 ГБ основной генератор, бесплатно llama-swap / Ollama • qwen3.5:35b-a3b — формулы, планы • qwen3-coder:30b — VBA и код • qwen3.8:27b, gpt-oss:120b — трудные задачи, по требованию • bge-m3 — поиск похожих примеров • qwen3-vl:30b — фото таблиц Память общая с другими проектами: перед загрузкой тяжёлой модели — проверка. Timeweb AI Gateway только без ПДн или маскированное • дёшево: GPT-6 Luna, Qwen 3.5 Flash • средне: DeepSeek V4.1 Flash • сложно: Claude Sonnet 5 (платные тарифы) Резерв в РФ: Cloud.ru, MWS GPT, Yandex AI Studio Tailscale HTTPS

Компоненты

КомпонентГдеТехнологииЗачем
Веб и APIСагарSPA (React или Svelte), FastAPI на PythonОдин язык с движками: openpyxl, python-docx, lxml, oletools, UNO — всё на Python.
Очередь и воркерыСагарRedis + arq/RQ, cgroups-лимитыДлинные задачи не держат HTTP-соединение. Приоритет у веб-трафика других сайтов Сагара.
Движок книгСагарlxml-патчер OOXML, openpyxl и calamine только для чтения, XlsxWriter для новых книгСоздание и хирургическая правка .xlsx/.xlsm без потерь.
Движок WordСагарpython-docx + свой lxml-слой (SDT, поля, рецензирование), docxtpl, Python-RedlinesШаблоны, слияние, правки рецензированием.
axel-calcСагар (резерв — GX10)LibreOffice ≥25.8 в контейнере без сети, unoserver ×3–6, FormualizerПересчёт копий, поиск ошибок, картинки предпросмотра. Пользовательский файл через LibreOffice не пересохраняется.
Приёмка файловСагарЛимиты размера и числа частей, defusedxml, olevba, извлечение скрытого содержимогоЗащита от zip-бомб, XXE, макросов и внедрения инструкций.
ПДнСагарPresidio + Natasha, обратимые маскиРешает, куда можно отправить задачу.
Шлюз моделейСагарLiteLLM + свой роутер, реестр возможностей моделейЕдиный OpenAI-совместимый вход, переключение при отказе, бюджеты, учёт стоимости.
МоделиGX10llama-swap + llama-server (или Ollama на старте)Вывод строго по JSON-схеме, параллельные слоты, загрузка тяжёлых моделей по требованию.
ХранилищеСагар, /srv/server-dataPostgres, файлы с шифрованием, версииДанные пользователей только в РФ (152-ФЗ, ч. 5 ст. 18).
ПредпросмотрБраузер + СагарСвоя лёгкая сетка по данным calamine, docx-preview, PNG/PDF через LibreOfficeUniver не подходит: импорт xlsx в нём платный. ONLYOFFICE — AGPL.

Путь запроса «доработай мой файл»

  1. Приёмка (Сагар, 1–3 с): лимиты, проверка zip и XML, olevba, извлечение скрытого. Исходник сохраняется как версия 0.
  2. Паспорт и ПДн (Сагар, 1–5 с): карта книги на 1–3 тыс. токенов, поиск персональных данных по столбцам, маски.
  3. План (GX10, 5–30 с): модель получает паспорт и запрос, возвращает операции по JSON-схеме. Если GX10 занят и в файле нет ПДн — облако.
  4. Проверка плана (Сагар): схема, адреса существуют, классы риска R0–R4 по фактическим ячейкам, формулы проходят грамматику и линтер.
  5. Пробный прогон (Сагар): применение к копии, пересчёт в axel-calc, дифф по ячейкам. Пользователь видит план, предупреждения и «до/после».
  6. Подтверждение пользователя (для R3/R4 — отдельная галочка).
  7. Применение и сверка (Сагар): патч OOXML, инвариантная сверка, валидатор схемы. Если не прошло — откат, кредит возвращается.
  8. Выдача: новая версия, отчёт об изменениях, исходник всегда доступен.

6. Модели: GX10, «Сагар», Timeweb

Вместо выбора модели по чужим бенчмаркам мы прогнали 8 локальных моделей GX10 на 22 русских задачах AXEL: 15 формул с проверкой пересчётом в LibreOffice, 3 макроса VBA, 2 задачи Word, 3 плана правки книги (без JSON-схемы и с ней). Харнесс замера лежит на GX10 в ~/ai/axel-bench и станет ядром нашего набора AXEL-Bench-RU.

6.1. Качество на задачах AXEL

МодельРазмер, ГБФормулы
(пересчёт)
RU-версия
моделью
VBA
/15
Word
/10
План правки
/15
JSON со
схемой
qwen3.8:27b (плотная)17,712/157/1512412,53/3
qwen3-coder:30b (MoE)18,611/156/159563/3
qwen3.5:35b-a3b (MoE)23,910/155/15855,52/3
glm-4.7-flash (MoE)19,05/15 (9 после автоисправления)11/158363/3
gemma3:27b17,47/155/159632/3
qwen3.5:9b6,67/154/152233/3
qwen3.5:4b3,41/155/153253/3
llama3.1:8b4,94/150/15322,52/3
gpt-oss:120b65,4не тестировалась: свободно 65 ГиБ из нужных 85 — память GX10 делят другие проекты

6.2. Скорость на GX10

МодельГенерация, ток/сЧтение ~6 000 ток., ток/сФормула, сМакрос, сПлан, сТипичный запрос*, с
qwen3-coder:30b822 6132,311,65,7~10
qwen3.5:35b-a3b732 0892,524,05,6~11
qwen3.5:4b613 7312,435,17,4~11
qwen3.5:9b382 5304,645,811,5~18
glm-4.7-flash241 9276,844,714,6~28
qwen3.8:27b1973215,466,521,3~40
gemma3:27b1186516,2109,550,9~62

* Типичный запрос AXEL: паспорт книги и вопрос на 6 000 токенов, ответ 600 токенов. Медианы по задачам, первая задача каждой модели (загрузка) исключена.

Что показал замер

Ансамбль с проверкой работает. Если взять кандидатов от трёх моделей (qwen3-coder, qwen3.5:35b, qwen3.8) и оставить тот, что прошёл пересчёт, решено 14 формул из 15 — против 12 у лучшей одиночной. Это прямое подтверждение подхода ExecVote: несколько вариантов плюс проверка исполнением.

Размышление помогает формулам. qwen3.8:27b в режиме размышления решила все 3 трудные формулы, которые провалила без него (рабочие дни без праздников, выделение НДС, ФИЛЬТР+СОРТ). Цена — 50–100 секунд вместо 15. Включаем как вторую попытку после провала проверки.

Русскую версию формулы модели делают плохо: верно 0–11 из 15. Типичное: NETWORKDAYS → «РАБДНИ» вместо ЧИСТРАБДНИ, кириллическая «Т» внутри TODAY, русские имена функций в формуле для файла. Русскую версию делает только программа по словарю.

JSON-схема не делает план правильным. JSON валиден почти всегда, но модели «угадывают» номера строк для удаления (или перечисляют сотни строк до обрыва ответа) и путают позиции столбцов. Поэтому DSL описывает удаление условием, а адреса и сдвиги считает исполнитель.

Предметные ошибки. Почти все модели «выделяют» НДС из суммы с НДС как сумма × 0,2 вместо сумма × 22/122. Типовые расчёты (НДС, сумма прописью, рабочие дни, стаж) идут из библиотеки проверенных рецептов, а не генерируются заново.

Общая ошибка в VBA. У 6 моделей из 8 объектная переменная листа не сбрасывается в цикле: данные всех менеджеров попадают на один лист. Режим размышления её не исправил. Это правило статического анализатора VBA (раздел 9).

6.3. Хватит ли «Сагара»

Для основной генерации — нет. У Core Ultra 9 285H два канала памяти DDR5: на практике это ~60–67 ГБ/с против ~273 ГБ/с у GB10, а скорость генерации упирается именно в память. Хуже всего с чтением промпта: на процессоре это десятки и сотни токенов в секунду вместо 2–3,7 тысячи на GX10. Модели, которые на Сагаре работают быстро (4–9 млрд параметров), по качеству не годятся как генератор: формулы 1–7 из 15, VBA 2–3 из 15.

МодельGX10, типичный запрос (замер)Сагар, генерация, ток/с (оценка)Сагар, чтение, ток/с (оценка)Сагар, типичный запрос (оценка)
qwen3.5:4b11 с15–20150–30050–80 с
qwen3.5:9b18 с8–1080–150100–150 с
qwen3-coder:30b / qwen3.5:35b-a3b (MoE)10–11 с12–2050–15070–170 с
gpt-oss:20b (MoE)—15–2560–18060–140 с
qwen3.8:27b (плотная)40 с3–420–40больше 6 мин

Оценки сверены с чужими замерами на похожем железе: Qwen3-Coder-30B-A3B на 285H через llama.cpp SYCL — 11,5 ток/с генерации и 81 ток/с чтения; Qwen3.6-35B-A3B через OpenVINO — 13,6 ток/с. На самом Сагаре мы не замеряли — нет доступа.

Роль Сагара: веб, очередь, вся работа с файлами (паспорт, патчер, дифф, сверка), пул LibreOffice, детектор ПДн, эмбеддинги и маленькая модель-классификатор (qwen3.5:4b или правила) — тип задачи, сложность, извлечение параметров. Как аварийный резерв для коротких формул без большого контекста — Qwen3.6-35B-A3B на CPU, 1–2 пользователя, около минуты на ответ. LLM на Сагаре изолируется: свой набор ядер, лимит памяти, отключение при росте задержек публичных сайтов.

Первые замеры, когда появится доступ: тип и частота памяти (dmidecode -t memory), драйвер графики (xe или i915) и доступ к /dev/dri из контейнеров, llama-bench для CPU, Vulkan, SYCL и OpenVINO на модели около 22 ГБ с промптом 512/4096 и глубиной 0/8k/16k, нагрузочный тест на 1, 2 и 4 одновременных запроса с контролем времени ответа сайтов.

6.4. Timeweb Cloud AI

Два API

AI Gateway (https://api.timeweb.ai/v1, совместим с OpenAI SDK): модель задаётся в каждом запросе, в каталоге 148 позиций — OpenAI, Anthropic, Google, DeepSeek, Qwen, xAI, Yandex, Moonshot, Z.ai, а также модели, которые Timeweb размещает сам (gpt-oss-120b, gemma4:31b, glm-5.x, kimi-k2.6). Это наш вариант.

API агента: модель зафиксирована в агенте, есть RAG, MCP и песочница. Нужен только чтобы потратить акционные токены.

Бесплатные токены

Акция «Знакомство с AI-агентами» действует до 31.12.2026 для клиентов, которые раньше не покупали ИИ-агентов: до 12,5 млн токенов (лимит зависит от модели), только на одного агента с одной моделью, только для агентов, а не для AI Gateway. Этого хватит примерно на 1 300 средних запросов: на прогон AXEL-Bench-RU и прототип, но не на работу сервиса. Сколько токенов уже на балансе владельца, видно только в панели.

Модель (AI Gateway)Вход, ₽ / 1 млнВыход, ₽ / 1 млнСредний запрос*Роль у нас
GPT-6 Luna13,567,5~0,21 ₽дешёвый уровень
Qwen 3.5 Flash1452~0,19 ₽дешёвый уровень
timeweb/gpt-oss-120b2082~0,28 ₽резерв для gpt-oss на GX10
DeepSeek V4.1 Flash40,5162~0,57 ₽средний уровень
Qwen 3.7 Plus54216~0,76 ₽средний уровень
Claude Sonnet 54052 025~6,3 ₽трудные планы и VBA на платных тарифах

* 8 тыс. токенов на вход, 1,5 тыс. на выход. Цены без НДС (платформа в реестре российского ПО), сверены с каталогом Timeweb. У Яндекса и Сбера цены с НДС 22 %, поэтому напрямую не сравниваются. Чтение из кэша в 10–50 раз дешевле обычного входа.

  • Что проверить живьём до интеграции: в документации AI Gateway не описаны function calling, response_format и json_schema. Шлюз, судя по всему, построен на LiteLLM, так что параметры, вероятно, передаются как есть, но это нужно проверить запросом. Для моделей GPT-5.x нужен max_completion_tokens, параметр temperature у них вызывает ошибку.
  • Каталог меняется быстро: у части моделей уже стоят даты отключения (GLM 5.2 — 08.10.2026, Gemini 2.5 — 16.10.2026, GPT-5 — 11.12.2026). Поэтому нужен реестр возможностей моделей с ежедневной проверкой через /v1/models.
  • Данные: большинство моделей зарубежные, а для ИИ-агентов Timeweb требует согласия на трансграничную передачу ПДн. Сырые ПДн в Timeweb не отправляем никогда. Резерв на российской инфраструктуре: Cloud.ru (gpt-oss-120b — 15,86/61 ₽ с НДС), MWS GPT, Yandex AI Studio (base_url сейчас https://ai.api.cloud.yandex.net/v1, логирование отключается заголовком x-data-logging-enabled: false).

6.5. Маршрутизация

ЗадачаПервая попыткаЕсли проверка не прошлаОблако (только без ПДн)
Тип задачи, сложность, параметрыПравила + qwen3.5:4b на Сагаре——
ФормулаКандидаты qwen3-coder:30b и qwen3.5:35b-a3b (GX10), ExecVoteqwen3.8:27b с размышлениемGPT-6 Luna → DeepSeek V4.1 Flash
План правки книгиqwen3.8:27b (лучший план — 12,5 из 15)Уточняющий вопрос пользователюDeepSeek V4.1 Flash; Claude Sonnet 5 на тарифе «Бизнес»
Макрос VBAqwen3.8:27b + статическая проверкаПовтор с текстом замечаний анализатораClaude Sonnet 5 на платных тарифах
Шаблон Word, тексты, объясненияqwen3.5:35b-a3bqwen3.8:27bGPT-6 Luna
Поиск похожих примеровbge-m3 (эмбеддинги)——
Фото таблицы → Excel (фаза 8)qwen3-vl:30b——

Стоит поставить на GX10 и прогнать на нашем наборе: Qwen3.6-35B-A3B (Apache-2.0; гибридное внимание экономит память на длинном контексте), Ornith-1.5-35B-A3B (MIT; сильна в коде, русский не заявлен), T-pro-it-2.1 (Apache-2.0; русское дообучение Qwen3-32B), gpt-oss-20b. Для продакшена перевести GX10 с Ollama на llama-swap + llama-server: вывод строго по схеме, параллельные слоты, загрузка тяжёлых моделей по требованию с проверкой свободной памяти, чтобы не мешать другим проектам.

7. Как бережём файл пользователя

Требование «ничего не удалять» нельзя выполнить ни интерфейсом, ни обещанием в промпте. Популярные библиотеки при пересохранении чужого файла молча выбрасывают то, чего не понимают. Поэтому сохранность обеспечивает архитектура: правка на уровне частей OOXML, проверка инвариантов и неизменяемый исходник.

Что теряется при обычном «открыл → изменил → сохранил»

ИнструментЧто теряет или не умеетВывод
openpyxlПо документации теряет фигуры. При сохранении удаляет расширения x14 (extLst): спарклайны, срезы, расширенное условное форматирование и проверку данных. Не моделирует элементы управления форм и части Power Query. Диаграммы и изображения читает (изображения — только с Pillow). VBA сохраняет только с keep_vba=True и не редактирует. Последний релиз 3.1.5 — 28.06.2024.только чтение
ExcelJSТеряет диаграммы даже при открытии и сохранении без правок (issues #1734, #2607).не брать
SheetJS CEНе записывает стили, диаграммы, картинки, сводные, условное форматирование и проверку данных. Всё это есть только в платной Pro.не брать
LibreOffice (пересохранение)Переписывает все части файла, теряет специфичную для Excel и Word разметку.только пересчёт копий
XlsxWriterОтлично создаёт новые книги, но открыть и изменить существующую не может.новые файлы
Свой патчер OOXML (lxml)Меняет только нужные XML-части, остальное копирует побайтно.правка чужих файлов

Пять гарантий AXEL

1. Исходник неизменяем

Загруженный файл сохраняется как версия 0 с SHA-256. Кнопка «Скачать исходник» видна на каждом экране. Откат — это просто выбор версии.

2. Режим «только добавлять» по умолчанию

Модель решает задачу новыми столбцами, листами и формулами. Перезапись непустых ячеек (класс R4) и изменение существующих формул (R3) возможны только после отдельной галочки. Удаление строк по умолчанию выключено и заменяется переносом на лист «Архив_AXEL».

3. План и «до/после» до применения

Пользователь видит каждую операцию, её класс риска, число затронутых ячеек и пересчитанные зависимые значения. Любую операцию можно выключить.

4. Сверка после применения

Части пакета на месте, хэши нетронутых частей совпадают (диаграммы, сводные, срезы, Power Query, vbaProject.bin). Листы и их видимость не изменились, непустые ячейки вне плана совпадают, объектов не стало меньше. Файл проходит валидатор схемы. Не прошёл — файл не выдаётся, кредит возвращается.

5. Честные предупреждения

О том, что сервер не может обновить: внешние ссылки, Power Query, модель данных — их части сохраняются побайтно, но кэш значений остаётся старым. О волатильных функциях (СЕГОДНЯ, СЛЧИС). О функциях, которых нет в программе пользователя.

Что откладываем

Вставку и удаление строк и столбцов внутри чужих таблиц, сортировку и объединение ячеек. Эти операции сдвигают ссылки в формулах, диаграммах, сводных, условном форматировании и проверках ввода. Их включаем только после регрессии на корпусе реальных файлов. До этого пользователю предлагается безопасная альтернатива: новый столбец справа, отдельный лист-отчёт.

Технические тонкости, которые учтены

  • Новые функции (XLOOKUP, FILTER, LET и др.) записываются с префиксами _xlfn. и _xlws., иначе Excel покажет #ИМЯ?. Динамические массивы требуют атрибута cm и части metadata.xml, иначе Excel откроет их как старые формулы массива {=…}.
  • Строки пишутся как inlineStr, чтобы не трогать общую таблицу строк sharedStrings. Стили только дописываются, существующие индексы не меняются.
  • Умные таблицы: при добавлении столбца правятся ref, autoFilter и tableColumns, а имена столбцов совпадают с заголовками ячеек.
  • calcChain удаляется, в книге ставится fullCalcOnLoad: Excel пересчитает всё при открытии. Значения из нашего пересчёта кладутся в кэш <v>, чтобы предпросмотры сразу показывали числа.
  • Порядок элементов листа (CT_Worksheet) соблюдается строго. Нарушение даёт окно «Excel обнаружил проблему» — главную причину потери доверия. Отсюда обязательный валидатор и Windows-стенд с настоящим Excel для приёмки.

До разработки правки чужих файлов соберём корпус из 200–300 реальных «тяжёлых» файлов малого бизнеса: сводные, срезы, диаграммы, фигуры, макросы, внешние связи, выгрузки 1С. Файлы — с согласия владельцев и без персональных данных. Сценарий «открыть → ничего не менять → сохранить → сверить» прогоняется для нашего патчера, BetterOffice и openpyxl (как отрицательный контроль). Метрики: доля файлов, которые Excel открывает без восстановления; побайтовая сохранность нетронутых частей; совпадение пересчёта с Excel.

8. Документы Word

Готового открытого «комбайна» для Word нет, но стек собирается из трёх проверенных слоёв: генерация и заполнение, правка чужих документов в режиме рецензирования, предпросмотр. Вся работа с DOCX идёт на процессоре Сагара. Модель нужна только для плана правок и спецификации шаблона.

Создание шаблонов

Модель возвращает JSON-спецификацию: разделы, поля с типами (текст, дата, список, флажок, число), таблицы, колонтитулы, реквизиты, защиту. Билдер собирает .docx или .dotx. Поля — элементы управления содержимым с тегами и привязкой к Custom XML, поэтому их можно потом найти и заполнить программно.

Заполнение и слияние

docxtpl в изолированном режиме Jinja и docxcompose для склейки. Массовое заполнение из таблицы Excel: 124 строки дают 124 .docx в архиве или один PDF. Сумму прописью, даты и реквизиты считает программа, а не модель. ИНН, счёт и БИК проверяются по контрольным числам.

Правка чужих документов

Только рецензированием: вставки и удаления с автором «AXEL». Перед выдачей движок программно выполняет «отклонить всё» (текст совпадает с оригиналом) и «принять всё» (совпадает с планом) и сверяет счётчики объектов. Пользователь получает 3 файла: исходник, документ с исправлениями и чистовик.

Решения и подводные камни

  • Разрыв текста на фрагменты (run splitting). Метка «{ФИО}» в Word часто разбита на несколько w:r с разным форматом. Поэтому сначала склеиваем одинаково оформленные фрагменты, потом ищем по склеенной строке абзаца. В своих шаблонах текстовые метки не используем вообще, только поля с тегами.
  • Защита «только заполнение форм» рассчитана на устаревшие поля форм, а не на элементы управления содержимым. Для форм с автоподсчётом без макросов используем устаревшие поля с вычислением при выходе. Для остальных — групповой элемент управления.
  • Поля Word ({ =SUM(ABOVE) }, { MERGEFIELD }, { IF }) не пересчитываются в предпросмотре и части программ, поэтому всегда пишем вычисленное значение. Разделитель аргументов и формат чисел в русском Word нужно проверить на реальной установке.
  • Удаление абзаца без пометки знака абзаца неверно склеивает абзацы после «Принять всё». Это закрыто тестами.
  • Предпросмотр: docx-preview в браузере для мгновенного вида (вёрстку по страницам не держит, есть пометка). Точный PDF-предпросмотр делает LibreOffice на Сагаре. Сохранять пользовательский документ через LibreOffice нельзя.
  • Онлайн-редактор в первых фазах не делаем: пользователь принимает правки в своём Word. Если понадобится позже, первым кандидатом будет Collabora Online (MPL-2.0). ONLYOFFICE и SuperDoc — только после юридической оценки AGPL или покупки лицензии.

Лицензии. Carbone Community запрещает сервис генерации документов, а у docxtemplater платные модули. docx-templates исполняет JavaScript из шаблона, что опасно для пользовательских шаблонов. Эти три инструмента не берём. pandoc (GPL) запускаем только как внешний процесс для проекции документа в Markdown.

9. Макросы

Макрос — самый рискованный и самый ценный вид результата. Поэтому AXEL сначала предлагает решение без макроса, а если без него никак, выдаёт проверенный код с объяснением, «паспортом» и честной инструкцией по установке.

Порядок выбора решения

  1. Формула. LET, LAMBDA, динамические массивы (ФИЛЬТР, СОРТ, УНИК — Excel 2021 и 365), обычные формулы — для старых версий.
  2. Встроенные средства. Сводная таблица, умная таблица с фильтром, Power Query (обновляется одной кнопкой).
  3. Макрос — когда нужны действия, а не вычисления: разнести строки по листам или файлам, собрать листы, выгрузить в PDF, заполнить документы Word.

Как выдаём макрос

ФорматКак делаемКогда
Текст модуля и файл .basКод с комментариями на русском и пошаговая инструкция: Alt+F11 → Вставка → Модуль → вставить → сохранить как .xlsm.Всегда, с фазы 5
Готовый .xlsm или .dotm из каталога15 проверенных макросов собраны один раз в настоящем Excel. Их vbaProject.bin вставляется в новые книги через XlsxWriter (add_vba_project). Параметры (имена листов, столбцов) макрос берёт из листа «Настройки», поэтому код не меняется.Типовые задачи каталога
Произвольный код внутри готовой книгиНе обещаем. Надёжного открытого способа собрать vbaProject.bin из текста на Linux нет: компилятор MS-OVBA (Beakerboy) экспериментальный, лицензия не указана.Пилот после фазы 7

Блокировка макросов. Office для Windows по умолчанию блокирует макросы в файлах, скачанных из интернета (метка Mark of the Web). Файл с нашего сайта тоже будет заблокирован. Поэтому на экране макроса есть инструкция с официальными способами Microsoft: «Свойства файла → Разблокировать», надёжное расположение, команда PowerShell Unblock-File, подпись доверенного издателя. Есть и альтернатива: вставить модуль .bas в свою книгу — тогда блокировки нет.

Другие офисы

ПрограммаЧем автоматизироватьЧто делает AXEL
Р7-ОфисМакросы на JavaScript (API в стиле ONLYOFFICE). VBA из .xlsm не выполняется, код комментируется.Отдельная цель генерации: JS-макрос и перевод «VBA → JS для Р7».
МойОфисИнтерпретатор базового VBA с переводом в Lua: бета в корпоративной версии 3.6 (27.11.2025), в «МойОфис для дома» — с 26.1 (05.05.2026). Объекты Application, Workbook, Worksheet, Range.Профиль «МойОфис»: генерируем VBA только из поддерживаемого подмножества и предупреждаем об остальном.
LibreOfficeBasic, Python; совместимость с VBA частичная (Option VBASupport 1).Вариант на Basic; простые макросы прогоняем в LibreOffice для проверки.
Google ТаблицыApps Script (JavaScript).Вариант на Apps Script.
Excel в вебе / Microsoft 365Office Scripts (TypeScript).По запросу: в России Microsoft 365 у юрлиц часто недоступен.

Проверка сгенерированного кода

По замеру на GX10 лучший VBA пишет qwen3.8:27b (12 из 15 баллов), быстрая qwen3-coder:30b — 9 из 15, модели на 4–9 млрд параметров часто выдают некомпилируемый код. У 6 моделей из 8 нашлась одна и та же логическая ошибка, и режим размышления её не исправил. Значит, без статической проверки макрос выдавать нельзя.

  • Запрещённые вызовы (макрос не выдаётся): запуск программ (Shell, WScript.Shell), сеть (URLDownloadToFile, XMLHTTP), удаление файлов (Kill, FileSystemObject.DeleteFile), реестр, объявления Declare/Lib, автозапуск при открытии.
  • Правила качества (исправляются автоматически или возвращаются модели): Option Explicit; объектная переменная сбрасывается в Nothing перед поиском листа в цикле; настройки Application (ScreenUpdating, Calculation, EnableEvents) восстанавливаются и в обработчике ошибок; макрос удаляет и очищает только созданные им листы; нет опоры на ActiveSheet и Selection.
  • Паспорт макроса для пользователя: что читает, что пишет, создаёт ли файлы и где, удаляет ли что-то, нужен ли доступ к папкам.
  • Проверка исполнением: каталог — на Windows-стенде с Excel; простые сгенерированные макросы — в LibreOffice с VBASupport; остальное помечается «проверено статически».

Каталог проверенных макросов (фаза 5)

Таблицы
Разнести строки по листам по значению столбца · Собрать все листы в один · Удалить пустые строки (с копией на лист «Архив») · Подсветить и вынести дубли · Разбить ФИО по столбцам
Файлы и выгрузки
Сохранить каждый лист в отдельный файл · Сохранить листы в PDF · Выгрузить в CSV UTF-8 (русский текст не «ломается») · Оглавление книги с гиперссылками
Документы и процессы
Заполнить шаблоны Word из строк таблицы · Очистить форму ввода · Перенести выполненные заявки в архив · Присвоить номера новым строкам · Обновить все сводные таблицы · Защитить формулы от правки

10. Безопасность и закон

Пользователи будут загружать кадровые таблицы, зарплаты, списки клиентов и чужие файлы с макросами. Поэтому безопасность и соответствие закону закладываются в архитектуру с первой фазы, а не добавляются потом.

Приём файлов

УгрозаЗащита
Zip-бомба, огромные файлыЛимит размера по тарифу (10–50 МБ), лимиты на число частей и суммарный распакованный объём, тайм-ауты обработки, отдельные воркеры с ограничением памяти.
XXE и вредоносный XMLРазбор только через defusedxml или lxml с resolve_entities=False и без сетевого доступа. Внешние связи в .rels не разрешаются.
Пути вида ../ в архивеРаспаковка только в память или во временный каталог с проверкой имён.
Макросы во входящих .xlsm/.docm/.xlsolevba: показываем пользователю, что в файле есть макрос и что он делает по признакам. На сервере макросы не запускаются никогда, при правке vbaProject.bin сохраняется побайтно.
LibreOffice как поверхность атакиОтдельный контейнер без сети, непривилегированный пользователь, порты unoserver только во внутренней сети, перезапуск экземпляров по счётчику задач.
Внедрение инструкций через содержимое (prompt injection)Содержимое файла подаётся модели только как данные в разделителях. Скрытые листы, скрытый текст, комментарии и удалённые исправления показываются пользователю. Модель не имеет инструментов с доступом в сеть, все изменения — только через белый список операций.
Опасные формулы в выдаваемых файлахБлок-лист WEBSERVICE, INDIRECT (по умолчанию), CALL, REGISTER, DDE (символ «|»), ссылки на внешние книги, гиперссылки только внутренние.
Опасный сгенерированный VBAСтатическая проверка: запуск программ (Shell, WScript.Shell), сетевые вызовы, удаление файлов (Kill, FileSystemObject.Delete), реестр, объявления Declare/Lib. Найдено опасное — макрос не выдаётся или помечается с объяснением.

Персональные данные (152-ФЗ)

  • Локализация. С 01.07.2025 (23-ФЗ, ч. 5 ст. 18 152-ФЗ) при сборе ПДн граждан РФ нельзя записывать, хранить, изменять и извлекать их с помощью иностранных баз данных. Штраф для юрлиц — 1–6 млн ₽, повторно 6–18 млн ₽ (ч. 8–9 ст. 13.11 КоАП). Аккаунты, файлы и журналы храним только на Сагаре и GX10.
  • Трансграничная передача. Модели OpenAI, Anthropic, Google, xAI, Alibaba, DeepSeek, Moonshot и Z.ai, доступные через Timeweb, — зарубежные. Отправка им ПДн — трансграничная передача (ст. 12), требует уведомления Роскомнадзора. Договор поручения на обработку содержимого запросов у Timeweb не найден, а для ИИ-агентов Timeweb требует от клиента согласия на трансграничную передачу ПДн. Поэтому сырые ПДн в облако не отправляются никогда, даже в YandexGPT через Timeweb, пока место обработки не подтверждено письменно.
  • Три режима обработки файла с ПДн, на выбор пользователя: «только на наших серверах» (по умолчанию), «замаскировать и отправить в облако», «отправить только структуру». Решение записывается в журнал аудита.
  • Согласие. С 01.09.2025 (156-ФЗ) согласие на обработку ПДн оформляется отдельно от иных документов (в электронном виде можно). Поэтому на экране входа два обязательных флажка: согласие на обработку ПДн и оферта — раздельно. В оферте нужен раздел «поручение на обработку ПДн» (ч. 3 ст. 6), потому что AXEL обрабатывает данные, которые пользователь загрузил о третьих лицах.
  • Сроки. Файлы удаляются автоматически через 7/30/90 дней по выбору, кнопка «Удалить все мои файлы» действует сразу.

Нормативка, которая влияет на продукт

НормаЧто это значит для AXEL
НДС 22 % с 01.01.2026 (425-ФЗ); ставки 10 % и льготные сохраняютсяСтавка никогда не вписывается в формулы, а берётся из листа «Параметры». Пример в интерфейсе и шаблонах — 22 %.
376-ФЗ (от 15.10.2025, в силе с 01.03.2026): п. 4.2 ст. 16.1 Закона о защите прав потребителейЗапрещены периодические списания по реквизитам, от использования которых потребитель отказался; отказ нужно принимать, в том числе в электронной форме. У нас: пакеты без автопродления по умолчанию, подписка только по явной галочке, уведомление за 24 часа, отмена в один клик и удаление карты. Последние два пункта законом прямо не требуются, но снимают споры.
54-ФЗЧеки через платёжного агрегатора (ЮKassa или аналог), для юрлиц — оплата по счёту.
Производственный календарь, МРОТ, лимиты УСН и НПДЛист «Параметры» в каждом шаблоне, ежегодное обновление библиотеки. Расчёты, зависящие от закона (зарплата, налоги), помечаются «сверьте с бухгалтером».

Юридический пакет до запуска

  1. Оферта с разделом о поручении на обработку ПДн: перечень действий, цели, меры защиты по ст. 19, запрет передачи сырых ПДн за рубеж.
  2. Отдельный документ согласия на обработку ПДн самих пользователей.
  3. Политика обработки ПДн, уведомление Роскомнадзора как оператора.
  4. Письменный запрос в Timeweb: где обрабатываются промпты для моделей timeweb/* и Yandex, есть ли договор поручения, сколько хранятся промпты.
  5. Решение, на кого оформлен сервис (ИП или ООО): от этого зависят приём платежей, рекуррентные списания и чеки.

11. Рынок, отличия и цены

Рынок делится на четыре класса, и ни один российский сервис не закрывает связку «готовый файл + аккуратная доработка своего файла + сравнение до/после + резервная копия + совместимость с офисами, которыми пользуются в России».

КлассКтоЦенаЧего не хватает
Генераторы формул и макросов (текст)GPTExcel, Formula Bot / Better Analyst, Ajelix, SheetAI, Numerous.ai9–55 $ в месяц; Ajelix до 199 $Отдают текст, а не файл. Формулы правдоподобные, но не проверены. Нет русской локали и отечественных офисов.
ИИ-аналитики с загрузкой файлаJulius, Excelmatic, Rows (поглощён в 2026 году)10–45 $, Julius Business 375 $Формулы превращаются в значения, форматирование и объекты теряются.
Агенты внутри Excel и WordMicrosoft 365 Copilot Agent Mode, Claude for Excel/Word, Shortcut, Gemini в Таблицахот 20 $ и подписка M365Юрлицам в РФ облачный M365 отключают с 2024 года. Claude for Excel не работает в Excel 2016/2019, на iPad и Android, не поддерживает VBA. Подтверждение правок по умолчанию выключено.
РоссийскиеАгрегаторы нейросетей (MashaGPT, Syntx, BotHub и др.), Telegram-боты, ИИ в Яндекс Таблицах, МойОфис 26.2, Р7, GigaChat199–790 ₽ в месяц; Яндекс Таблицы — 50 запросов бесплатно; «Алиса AI для бизнеса» 1 199 ₽ за сотрудникаТекст в чате или ИИ только внутри своего редактора. По обзорам GigaChat не принимает xlsx.

Что берём у конкурентов в интерфейс

  • Claude for Excel/Word: предупреждение перед перезаписью, карточки подтверждения, ссылки на ячейки в ответах, правки Word рецензированием. Но у нас подтверждение включено всегда.
  • Copilot Agent Mode: видимый план шагов, история изменений с подсветкой ячеек и выборочной отменой, «объясни формулу» прямо на данных.
  • GPTExcel: переключатель целевой платформы, раздельные режимы «создать / объяснить / исправить», библиотека шаблонов.
  • Gemini в Таблицах: выделил диапазон → предпросмотр заполнения → принять.
  • Shortcut: задача как единица оплаты, уточнения внутри неё бесплатны; подсветка влияющих ячеек.
  • Excelmatic: фото бумажной таблицы или накладной → Excel (у нас — qwen3-vl на GX10, фаза 8).

Антипаттерны, которых избегаем

  • 17 отдельных «инструментов» с формами вместо одного поля ввода (Ajelix).
  • Кредиты, которые сгорают за пару сложных сообщений; резкий скачок тарифа (Julius: 45 $ → 375 $).
  • Автопродление без уведомления и сложная отмена (жалобы на Numerous.ai). В РФ с 01.03.2026 списания после отказа потребителя прямо запрещены (376-ФЗ).
  • История, которая хранится только в браузере и теряется при смене устройства.

Цены AXEL (гипотеза для A/B-проверки)

ТарифЦенаЧто входитЧем считаем
Без регистрации0 ₽3 формулыGX10
Бесплатно0 ₽10 запросов в месяц, формулы и небольшие файлыТолько GX10
Старт390 ₽ в месяц100 запросов, файлы до 20 МБ, история 30 днейGX10 + дешёвое облако
Профи990 ₽ в месяц500 запросов, макросы, слияние Word, история 90 дней+ средний уровень облака
Бизнес2 990 ₽ в месяцДо 10 человек, процессы, общая библиотека, бессрочное хранение, оплата по счёту+ сильные модели для трудных задач
Пакет без подписки290 ₽50 запросов, не сгорают 12 месяцев—

Что считается запросом: формула или объяснение — 1; макрос — 2; файл по шаблону или документ Word — 3; таблица с нуля — 5; доработка своего файла — 5 и ещё 1 за каждые 5 000 непустых ячеек. Уточнения внутри задачи бесплатны. Перед тяжёлой задачей пользователь видит, сколько будет списано. Если проверка не прошла и файл не выдан, запрос возвращается.

Себестоимость. На GX10 запрос по деньгам бесплатен, остаётся только электричество. В облаке Timeweb средний запрос (8 тыс. токенов на вход, 1,5 тыс. на выход) стоит около 0,2 ₽ на GPT-6 Luna или Qwen 3.5 Flash, около 0,6 ₽ на DeepSeek V4.1 Flash и около 6,3 ₽ на Claude Sonnet 5. С паспортом книги вместо всей таблицы и кэшем префикса дешёвый уровень выходит в 0,05–0,1 ₽. Даже при 15 % эскалаций себестоимость платного пользователя — десятки рублей в месяц при цене тарифа 390–2 990 ₽.

Каналы

Основной канал — веб, полноценный на телефоне: надстройки Claude и Copilot на Android и iPad не работают, это наше преимущество. Второй очередью — бот в мессенджере: формула сразу в чате, файлы по ссылке на веб. Первым кандидатом выглядит MAX: национальный мессенджер с платформой ботов и мини-приложений для юрлиц, ИП и самозанятых — резидентов РФ, к маю 2026 года там создано больше 150 тыс. ботов (iXBT). Telegram на 30.09.2026 работает, но с ограничениями: с 2025 года Роскомнадзор замедляет медиа и блокирует звонки, сбои продолжаются (Hi-Tech Mail). Файлы через ссылку на веб эти ограничения обходят. Один и тот же API обслуживает оба бота. Надстройка для Excel или Р7 — по спросу, после фазы 7. SEO: страницы «формула для …» по типовым задачам с живым генератором.

12. Экраны

Все 28 экранов собраны в кликабельный прототип: mockups.html. Он работает в браузере и на телефоне: переходы между экранами, имитация генерации и проверки, план с галочками, «до/после», заполнение полей Word, фильтры шаблонов. Ниже — снимок и назначение каждого экрана; по ссылке экран открывается в прототипе.

На телефоне

Лендинг — телефон
Лендинг
Главная — телефон
Главная
Формула по описанию — телефон
Формула по описанию
План изменений и предупреждения — телефон
План изменений и предупреждения
Предпросмотр «до/после» — телефон
Предпросмотр «до/после»
Применение и проверка целостности — телефон
Применение и проверка целостности
Шаблон Word с полями и слиянием — телефон
Шаблон Word с полями и слиянием

Публичное

Экран «Лендинг»

01. Лендинг

Что делает экран. Публичная страница: за 5 секунд объясняет продукт и даёт попробовать без регистрации — поле «Получить формулу» работает (3 бесплатных запроса, ответ в RU и EN, разбор по частям, проверка на примере). AXEL сам распознаёт тип задачи: попросите договор, макрос или «доработать файл» — вместо формулы предложит нужный сценарий; на расплывчатый запрос задаст уточнение и не спишет запрос. Попробуйте: чипы-примеры под полем, шаги в блоке «Как мы бережём ваш файл», профессии в «Для кого», переключатель «Месяц / Год» в тарифах.

Открыть в прототипе →
Экран «Вход и регистрация»

02. Вход и регистрация

Что делает экран. Вход и регистрация — одна форма без пароля: код на почту или по SMS; если аккаунта ещё нет, он создаётся сам, и человек попадает в онбординг. Согласие на обработку ПДн — отдельный обязательный флажок, не склеенный с офертой (так требует 152-ФЗ с 01.09.2025), рассылка — по желанию и заранее не отмечена. Попробуйте: «Получить код» без флажков, «Почта / Телефон», код из «письма» по цифре или целиком через Ctrl+V, неверный код, таймер повторной отправки; Яндекс ID / VK ID / Сбер ID — заглушки.

Открыть в прототипе →
Экран «Онбординг: 3 вопроса»

03. Онбординг: 3 вопроса

Что делает экран. Три вопроса за 30 секунд, и каждый ответ сразу на что-то влияет: пример формулы перестраивается под вашу программу и язык Excel (ПРОСМОТРX — только если его знают все отмеченные программы, иначе ИНДЕКС + ПОИСКПОЗ), а итоговая подборка из 4 шаблонов — под отрасль. Приватность по умолчанию — файлы только на наших серверах, облачная модель — лишь по явному выбору и без ПДн. Попробуйте: выберите отрасль, отметьте «Excel 365», потом добавьте «LibreOffice», переключите язык, выберите облачную модель; в подборке нажмите «Изменить» у отрасли — шаблоны поменяются; «Начать» ведёт на Главную.

Открыть в прототипе →

Рабочее место

Экран «Главная»

04. Главная

Единый вход во все сценарии. Человек пишет задачу своими словами, а AXEL сразу показывает, какой сценарий распознал и по какому слову: формула, новая таблица, доработка файла, документ Word, макрос или процесс. В продукте тип определяет маленькая модель-классификатор на сервере Сагар (≈0,2 с), в прототипе — ключевые слова; если угадал не то — «Выбрать вручную». Попробуйте: сотрите текст и напишите «формула НДС», «договор с ИП», «макрос» или «доработать файл», нажмите 📎 и «Выполнить» (Ctrl+Enter), переключите «Ждут меня» и отрасль в шаблонах.

Открыть в прототипе →
Экран «Формула по описанию»

05. Формула по описанию

Что делает экран. Человек пишет задачу своими словами, AXEL задаёт 1–2 уточняющих вопроса (какие столбцы, где результат) и выдаёт формулу в двух видах: для русского Excel (СУММЕСЛИМН и «;») и для файла/английского Excel (SUMIFS и «,»). Формула разобрана по частям, проверена на примере в LibreOffice на сервере (значения посчитаны, ошибок нет), показана совместимость с Excel 2016/2019/365, LibreOffice, Р7-Офис, МойОфис, Google Таблицами. Перевод RU↔EN делается программой по таблице соответствий, а не моделью. Попробуйте: нажмите «Сгенерировать», переключите RU/EN, «Проверить на моих данных».

Открыть в прототипе →

Создать таблицу

Экран «Новая таблица: описание и уточнения»

06. Новая таблица: описание и уточнения

Шаг 1 из 3: описание и уточнения. Модель на GX10 разбирает описание на столбцы, итоги и подсветку и сама предлагает недостающее (№, дата, «Просрочено»); ответы на вопросы уже подставлены из описания и онбординга — человек меняет только то, что не так. Попробуйте: выберите другой пример справа (склад, табель, договоры) — разбор и первый вопрос поменяются; в вопросе 2 выберите «Форма с кнопкой (макрос)» — появится предупреждение про .xlsm; нажмите «Предложить структуру».

Открыть в прототипе →
Экран «Конструктор структуры»

07. Конструктор структуры

Шаг 2 из 3: структура до создания файла. AXEL предложил книгу из 4 листов — её правят руками (тип, проверка, обязательность, порядок за ⋮⋮) или словами, а файл не собирается, пока не нажата «Создать файл»; удалить столбец, на который ссылается формула, молча нельзя — AXEL покажет зависимые формулы. Панель «Что будет в файле» пересчитывает листы, столбцы, проверки и формулы при каждой правке. Попробуйте: напишите «добавь столбец Телефон обязательный», удалите «Статус», включите «макрос кнопки», добавьте лист через «+ лист».

Открыть в прототипе →
Экран «Готовый файл: предпросмотр и проверка»

08. Готовый файл: предпросмотр и проверка

Шаг 3 из 3: готовый файл. Книгу собирает программа по утверждённой структуре, а LibreOffice на сервере пересчитывает все формулы — в «Отчёт проверки» попадает только реально проверенное, предупреждения не прячутся. Предпросмотр строится из структуры шага 2 (добавленный там столбец появится и здесь): голубые ячейки — формулы, красная строка — просрочено, жёлтая — пустое обязательное поле. Попробуйте: переключите вкладки листов под таблицей, нажмите ячейку «Просрочено» и переключите RU/EN, нажмите пункт отчёта проверки — покажу его на листе.

Открыть в прототипе →

Доработать мой файл

Экран «Загрузка файла»

09. Загрузка файла

Что делает экран. Первый шаг доработки: человек кладёт файл, а AXEL сначала проверяет его на безопасность (пароль, внешние ссылки, макросы, OLE-объекты) и только потом разбирает структуру; макросы никогда не запускаются, файл обрабатывается в России и удаляется через 30 дней. Задачу можно написать сразу, пока идёт проверка. Попробуйте: перетащите или выберите свой .xlsx, .xlsm, .docx или .csv — он прочитается только в браузере (покажем имя, размер, листы и макросы), — или нажмите «Взять пример prodazhi-2026.xlsx», а затем «Открыть карту книги».

Открыть в прототипе →
Экран «Карта книги»

10. Карта книги

Что делает экран. До любой правки AXEL показывает, как он понял книгу: листы и что в них (умная таблица, формулы, сводная, диаграммы, скрытый и защищённый лист), кто от кого зависит и описание словами. Здесь же бесплатная диагностика — ошибки #Н/Д, числа-текстом, ссылки на пустой столбец, дубли клиентов — и найденные персональные данные: они маскируются и в облачную модель не уходят. Попробуйте: раскройте карточку листа, «Добавить исправление в план» (попадёт в план на следующем шаге), переключите «Что видит модель» и нажмите «Составить план».

Открыть в прототипе →
Экран «План изменений и предупреждения»

11. План изменений и предупреждения

Что делает экран. План — это договор до правки: каждая операция отдельной карточкой, любую можно выключить, а те, что меняют существующие данные, помечены жёлтым и показаны «было / стало» на примере ячейки. Сводка, число изменяемых ячеек и текст согласия пересчитываются на лету; «Применить» недоступна, пока не отмечено согласие — или пока не сняты опасные операции. Попробуйте: снимите операцию 1 (снимется и 2), нажмите «Только безопасные», отметьте согласие, «Все 14 на листе →».

Открыть в прототипе →
Экран «Предпросмотр «до/после»»

12. Предпросмотр «до/после»

Что делает экран. Показывает prodazhi-2026.xlsx как в Excel, но с разметкой будущих правок: зелёные — новые ячейки, жёлтые — изменённые, красные зачёркнутые — значения, которые будут перезаписаны, синяя рамка — меняется только оформление. Переключатель До / После / Рядом перестраивает лист, «Только изменения» прячет нетронутые строки и столбцы, клик по ячейке показывает справа «было / стало» с формулами, а жёлтую ячейку можно исключить из правки. Попробуйте: «Рядом», вкладки листов, жёлтую ячейку в «Отчёт», список операций справа и ячейку столбца G (объяснит, почему одну её исключить нельзя).

Открыть в прототипе →
Экран «Применение и проверка целостности»

13. Применение и проверка целостности

Что делает экран. Вносит утверждённые правки и сразу сам себя проверяет: копия исходника → изменения → пересчёт в LibreOffice на сервере → сверка «было / стало» по 10 признакам (листы, формулы, диаграммы, сводные, макрос по хешу, данные вне плана). Файл выдаётся только если все проверки пройдены, иначе — автоматический откат, исходник цел. Попробуйте: посмотрите, как заполняется таблица проверки; переключите демо на «Проверка нашла проблему»; «Откатить», «Технический журнал», «Копировать» отчёт.

Открыть в прототипе →

Документы Word

Экран «Документы Word: создать или загрузить»

14. Документы Word: создать или загрузить

Что делает экран. Вход в работу с Word: человек описывает документ словами, AXEL определяет тип документа и список полей (ИНН с проверкой, даты-календари, сумма прописью, которую считает программа, а не модель) и предлагает готовую основу из галереи. Тип результата выбирается переключателями: шаблон .dotx, документ + таблица Excel для массового заполнения, защищённая форма. Свой .docx можно загрузить и доработать — правки лягут в режиме рецензирования. Попробуйте: «Собрать шаблон», примеры-подсказки, переключатели результата, фильтр галереи и «Посмотреть» у любого шаблона.

Открыть в прототипе →
Экран «Шаблон Word с полями и слиянием»

15. Шаблон Word с полями и слиянием

Что делает экран. Слева — страница договора с полями-«пилюлями» (в Word это элементы управления содержимым): пустые синие, заполненные зелёные, с ошибкой красные. Справа — панель «Поля»: тип, обязательность, проверка и источник. Сумма прописью, НДС и предоплата считаются программой, ИНН и расчётный счёт проверяются по контрольным числам. Вкладка «Массовое заполнение» связывает шаблон с clients.xlsx (124 строки) и выпускает архив .docx или один PDF. Попробуйте: поменяйте сумму (например, 1 021 001,21), включите «Предоплата 30 %» — появится новый пункт и сдвинется нумерация; кликните пилюлю в документе; «Заполнить примером»; во вкладке «Массовое заполнение» листайте строки ◀ ▶ и нажмите «Создать».

Открыть в прототипе →
Экран «Правка чужого документа в режиме рецензирования»

16. Правка чужого документа в режиме рецензирования

Что делает экран. Человек загрузил чужой договор и попросил поправить его словами. AXEL ничего не переписывает молча: все 23 правки внесены как исправления Word (вставки зелёным, удаления зачёркнуты красным), к спорным местам — примечания. Каждую правку можно принять или отклонить здесь или потом в самом Word; форматирование, нумерация и стили не тронуты. Попробуйте: примите или отклоните правки справа (текст в документе и счётчик меняются), отфильтруйте «Замена» и «Принять все», кликните правку — документ прокрутится к ней, переключите вид «С правками / Чистовик / Исходник».

Открыть в прототипе →

Макросы

Экран «Макрос по описанию»

17. Макрос по описанию

Что делает экран. Сначала AXEL честно отвечает, можно ли обойтись без макроса (фильтр, ФИЛЬТР(), сводная, Power Query), и только потом выдаёт аккуратный VBA-код с комментариями на русском, разбором по шагам и проверкой безопасности: нет сети и запуска программ, удаляются только листы, созданные самим макросом. Есть версии для LibreOffice, Р7-Офиса и Google Таблиц, инструкция по установке и официальный способ Microsoft разблокировать файл из интернета. Попробуйте: «Написать макрос», переключатель способов без макроса, вкладки программ, клик по шагу разбора — в коде подсветятся нужные строки.

Открыть в прототипе →

Бизнес-процессы и шаблоны

Экран «Конструктор бизнес-процесса»

18. Конструктор бизнес-процесса

Что делает экран. Процесс описывается шагами, а AXEL превращает его в комплект связанных файлов: таблицу с листом для каждого шага, форму Word и инструкцию. По клику на шаг справа видно, кто его выполняет и что создаётся (файл, лист, поля, формулы, подсветка, макрос); срок (SLA) сразу становится формулой и правилом подсветки просрочек. Попробуйте: клик по шагу, смените срок согласования и посмотрите на подсветку, «Собрать комплект файлов», выберите внизу другой готовый процесс.

Открыть в прототипе →
Экран «Библиотека шаблонов по отраслям»

19. Библиотека шаблонов по отраслям

Что делает экран. Библиотека проверенных шаблонов Excel и Word по отраслям: поиск, чипы отраслей и переключатель программы фильтруют карточки сразу, на карточке видно, что внутри, где работает и сколько раз шаблоном пользовались. Предпросмотр показывает миниатюру листа с формулами, а поле «Настроить словами» сразу меняет её (например, «добавь столбец «Телефон»»). Попробуйте: чип «Склад», поиск «смета», «Посмотреть» → «Применить», «Взять и настроить».

Открыть в прототипе →

Аккаунт

Экран «Мои файлы и проекты»

20. Мои файлы и проекты

Что делает экран. Все работы в одном месте: Excel, Word и макросы, разложенные по папкам-проектам, с числом версий и статусом — «готово», «ждёт подтверждения», «ошибка проверки». Незакреплённые файлы удаляются через 30 дней после последнего изменения, поэтому скорые удаления видны заранее и их можно продлить. Попробуйте: переключите «Excel / Word / Макросы», выберите папку «Кадры», наберите в поиске «договор» или «табель», отметьте пару файлов галочками, нажмите «Продлить».

Открыть в прототипе →
Экран «История версий и откат»

21. История версий и откат

Что делает экран. Лента всех версий файла: кто и когда, по какому запросу, что изменилось и чем закончилась проверка целостности. Откат ничего не удаляет — он создаёт новую версию-копию, вся история остаётся. Справа — сводное сравнение двух выбранных версий. Попробуйте: отметьте «В сравнение» у двух версий, «Сравнить с предыдущей», «Откатить к этой» у версии 1, раскройте строку проверки.

Открыть в прототипе →
Экран «Настройки»

22. Настройки

Что делает экран. Здесь человек говорит, в какой программе он работает, — и AXEL подбирает только те функции, которые там есть: для Excel 2016/2019 вместо ПРОСМОТРX будет ИНДЕКС + ПОИСКПОЗ, для LibreOffice — ссылка на лист через точку. Если файл открывают ещё и коллеги в Р7-Офисе или LibreOffice, формула подбирается так, чтобы работала у всех. Приватность по умолчанию строгая: только наши серверы, облачная модель — лишь по согласию и без персональных данных. Попробуйте: переключите «Excel 365» ↔ «Excel 2016 / 2019», добавьте «Р7-Офис» в «также открывают», смените язык и разделитель, включите облачную модель и выключите маскирование.

Открыть в прототипе →
Экран «Тарифы и оплата»

23. Тарифы и оплата

Что делает экран. Четыре тарифа и разовый пакет запросов, честно показано, что считается запросом (формула — 1, доработка файла с проверкой — 5, ремонт формулы после неудачной проверки — бесплатно). Оплата — карта, СБП по QR или счёт для юрлица, чеки по 54-ФЗ; при переходе на тариф выше неиспользованные дни «Старта» зачитываются. Попробуйте: переключите «Помесячно / За год −20 %», выберите «Профи» или «Бизнес», смените способ оплаты и нажмите «Оплатить» — платёж появится в истории.

Открыть в прототипе →

Админка

Экран «Обзор»

24. Обзор

Что делает экран. Пульт владельца сервиса: сколько запросов, какая доля формул прошла пересчёт в LibreOffice с первого раза, что стоит в очереди и хватает ли мощности. Внизу — состояние трёх площадок: Сагар (веб, очередь, LibreOffice, классификатор на CPU), GX10 (основные модели) и Timeweb (облачный резерв, только без ПДн). Ошибки идут лентой вместе с тем, как система их уже обработала: ремонт, резерв, повтор. Попробуйте: переключить «Сегодня / 7 дней / 30 дней», кликнуть по столбику графика, отфильтровать ошибки и открыть «Подробнее».

Открыть в прототипе →
Экран «Модели и маршрутизация»

25. Модели и маршрутизация

Что делает экран. Какая модель за что отвечает и куда уходит каждый запрос: Сагар (классификатор на CPU), GX10 (пять моделей Ollama), Timeweb Cloud AI (два облачных агента, только без ПДн). Правила проверяются сверху вниз, срабатывает первое подходящее, поэтому порядок важен. Экран сам ловит опасные перестановки (например, резерв Timeweb выше правила «ПДн») и не даёт их сохранить. Попробуйте: опустить правило «ПДн» кнопкой ↓ ниже «Резерва Timeweb», выбрать справа сценарий «Файл с ФИО, GX10 занят» и посмотреть, куда уйдёт запрос; подвигать тайм-аут и бюджет; «Прогнать регрессионный набор…».

Открыть в прототипе →
Экран «Качество ответов»

26. Качество ответов

Что делает экран. Показывает, насколько ответам можно доверять: регрессионный набор из 120 задач (60 формул, 20 VBA, 25 планов правки, 15 Word) прогоняется на всех моделях, и каждый ответ проверяет программа — пересчёт в LibreOffice, сравнение с эталоном, проверка целостности, а не человек «на глаз». Жалоба пользователя одной кнопкой становится новой задачей набора, поэтому найденную однажды ошибку ловит каждый следующий прогон. Попробуйте: выбрать тип задач «VBA», нажать «Прогнать заново» (или ▶ в строке модели), добавить жалобу в набор или закрыть её, переключить метрику на графике и кликнуть по столбику или событию.

Открыть в прототипе →

Мобильная версия и каналы

Экран «Мобильная версия»

27. Мобильная версия

Что делает экран. Три главных сценария на телефоне: формула (поле, ответ с большой кнопкой «Копировать», переключатель RU/EN), план правки файла (предупреждение, флажок согласия, «Применить») и готовый файл («Скачать», краткий отчёт целостности). Вместо бокового меню — нижняя панель вкладок, главные кнопки во всю ширину и под палец. Принцип «ничего не меняем молча» тот же, что на сайте: «Применить» не нажимается, пока не поставлен флажок, а «до/после» открывается отдельным экраном. Попробуйте: выбрать пример, переключить RU/EN и скопировать; снять операцию 6, поставить флажок и «Применить» — третий телефон обновит отчёт; раскрыть все 10 проверок и «Откатить».

Открыть в прототипе →
Экран «Telegram-бот»

28. Telegram-бот

Что делает экран. Макет чата с ботом @axel_bot: задача словами → формула в двух видах (RU и EN, моноширинным) с кнопками «Копировать», «Пример .xlsx», «Открыть в AXEL»; файл → план из 4 пунктов. Бот ничего не меняет в файле сам: правки подтверждаются только на сайте, где видно «до/после» и сохраняется исходник. Бот работает через тот же API, что и сайт, поэтому модели, проверки в LibreOffice и лимиты у них общие. Попробуйте: написать в поле «выдели НДС 22 %» или «подтяни цену по артикулу», нажать /limits, отправить файл скрепкой 📎 (в том числе больше 20 МБ), нажать на формулу или «Подтвердить на сайте».

Открыть в прототипе →

13. План работ по фазам

Девять фаз, около 29 недель для одного разработчика с ИИ-сессиями. Со вторым разработчиком Word-трек идёт параллельно с доработкой файлов, и срок сокращается примерно до 5 месяцев. Каждая фаза считается готовой только тогда, когда она работает онлайн на Сагаре по адресу axel.24oros.ru: проверено живыми запросами, в браузере и на телефоне.

Недели от старта. Цвета: зелёный — Excel, синий — Word, фиолетовый — макросы, серый — инфраструктура, оранжевый — каналы.

Ф0. Фундамент — 2 недели

инфраструктура нужно от владельца: доступ к Сагару, DNS, ключ Timeweb
  • Доступ к Сагару (памятка сервера, отдельный пользователь вместо root). Замеры железа: тип памяти, llama-bench для CPU, Vulkan, SYCL и OpenVINO.
  • Репозиторий в Gitea, CI, автодеплой через Coolify на Сагаре. Контейнеры: веб, API, Redis, Postgres, axel-calc (LibreOffice ≥25.8, профиль с пересчётом, без сети), LiteLLM.
  • Связь Сагар → GX10 по Tailscale с проверкой здоровья. Ключ Timeweb AI Gateway с жёстким лимитом. Живая проверка tools и json_schema у выбранных моделей.
  • Словарь функций RU↔EN (~500) с тестом обратного перевода. AXEL-Bench-RU: 22 задачи из нашего замера расширяются до 200.
  • Черновики юридических документов: оферта, политика ПДн, согласие.

Готово, когда: axel.24oros.ru отвечает по HTTPS с Сагара; /healthz показывает Сагар, GX10 и Timeweb; формула =1+1 пересчитывается в axel-calc; бенчмарк прогоняется одной командой.

Ф1. Формулы и первый запуск — 3 недели

экраны: лендинг, вход, онбординг, главная, формула, настройки
  • Формула по описанию: уточняющие вопросы, вывод по схеме, грамматика с белым списком, ExecVote на 2–3 наборах данных, ремонт по ошибке, линтер, совместимость, перевод RU/EN программой.
  • Разбор формулы по частям с промежуточными значениями, мини-таблица «проверено расчётом», «скачать пример .xlsx».
  • Вход по почте или телефону с кодом, лимиты (3 без регистрации, 10 в месяц), профиль совместимости.
  • Метрики: время ответа, доля формул, прошедших пересчёт с первого раза, кнопки «работает / не работает».

Готово, когда: не меньше 85 % формул из AXEL-Bench-RU проходят пересчёт с первой попытки; ответ за p95 < 20 с; русская версия формулы совпадает с переводом программой в 100 % случаев; экран работает на телефоне 375 px.

Ф2. Новые таблицы и оплата — 4 недели

экраны: создать (описание, конструктор, результат), шаблоны, тарифы
  • WorkbookSpec (JSON) → XlsxWriter: умные таблицы, проверки ввода из «Справочников», условное форматирование, лист «Параметры» (НДС 22 %, календарь), «Как пользоваться», защита формульных столбцов.
  • Конструктор структуры с правкой словами. Предпросмотр: своя сетка по данным calamine и PNG через LibreOffice.
  • Первые 20 отраслевых шаблонов: склад, продажи, заявки, табель Т-13, книга доходов и расходов.
  • Оплата через ЮKassa (карта, СБП), пакеты без автопродления, подписка по 376-ФЗ, чеки.

Готово, когда: 100 % созданных файлов открываются в Excel без окна восстановления (Windows-стенд) и в LibreOffice; ошибок формул 0; тестовая оплата проходит от начала до конца.

Ф3. Доработка файлов пользователя — 6 недель

экраны: загрузка, карта книги, план, до/после, применение, версии, мои файлы нужно: корпус реальных файлов, Windows-стенд с Excel 365
  • Приёмка: лимиты, zip, defusedxml, olevba, скрытое содержимое. Паспорт книги, детектор ПДн с масками, выбор режима обработки.
  • DSL плана правки, классы риска R0–R4, пробный прогон, дифф по ячейкам и пересчитанным зависимым значениям.
  • Хирургический патчер OOXML: на этой фазе только классы R1–R3 (добавление и изменение в новых областях; изменение существующих формул — с галочкой).
  • Инвариантная сверка, валидатор схемы, версии и откат, отчёт об изменениях.
  • Регрессия на корпусе 200–300 реальных файлов.

Готово, когда: на корпусе 100 % файлов проходят «открыть → ничего не менять → сохранить» побайтно; 99 %+ правленых файлов открываются в Excel без восстановления; ни одного случая потери объекта (диаграммы, сводной, макроса); перезапись непустых ячеек без согласия невозможна (покрыто тестами).

Ф4. Документы Word — 4 недели

экраны: документы, шаблон с полями, рецензирование
  • Шаблоны из спецификации: поля с тегами, защита, колонтитулы, реквизиты. 15 стандартных документов: договор, счёт, акт, приказ, заявление, КП, доверенность.
  • Заполнение и слияние из Excel, сумма прописью и проверка реквизитов программой.
  • Правка чужих документов рецензированием: нормализация, карта символов, w:ins/w:del, двусторонняя проверка, три файла на выходе.

Готово, когда: «отклонить всё» возвращает исходный текст в 100 % тестов; документы открываются в Word 2016+ и LibreOffice без ошибок; на 50+ русских документах (ГОСТ-оформление, многоуровневые списки, объединённые ячейки) нумерация и стили не ломаются.

Ф5. Макросы — 2 недели

экран: макрос
  • VBA по описанию: сначала проверяем, можно ли обойтись без макроса; код с комментариями, статическая проверка опасных вызовов, разбор по шагам, инструкция установки и разблокировки файла.
  • Выдача: модуль .bas плюс каталог проверенных макросов в готовых .xlsm/.dotm (vbaProject.bin собран заранее в Excel).
  • Варианты для Р7-Офис (JavaScript), LibreOffice Basic, Google Apps Script, подмножество VBA для МойОфис.

Готово, когда: 15 макросов каталога проверены на Windows-стенде; сгенерированный VBA проходит статическую проверку; опасные вызовы блокируются в 100 % тестов.

Ф6. Бизнес-процессы и библиотека — 3 недели

  • Конструктор процесса «заявка → согласование → учёт → отчёт»: комплект файлов (Excel-реестр, форма Word, инструкция), роли, сроки, подсветка просрочек.
  • Библиотека: 40+ шаблонов по 10 отраслям с фильтрами, «настроить словами», производственный календарь и «Параметры» в каждом.

Готово, когда: каждый шаблон проходит автоматические проверки создания и пересчёта; 6 готовых процессов собираются за один запрос.

Ф7. Качество и масштаб — 2 недели

  • Админка: обзор, модели и маршрутизация, качество, жалобы с добавлением в набор задач.
  • Переход GX10 с Ollama на llama-swap и llama-server (слоты, json_schema, параллельные запросы). Замер нагрузки: сколько пользователей одновременно держит связка.
  • Мониторинг, бэкапы, сторож деградации (LLM на Сагаре отключается, если тормозят сайты).

Готово, когда: нагрузочный тест на 20 одновременных пользователей проходит без ошибок; восстановление из бэкапа проверено.

Ф8. Каналы — 3 недели, по решению

  • Бот в мессенджере (MAX или Telegram — по проверке доступности): формулы в чате, файлы по ссылке.
  • Фото бумажной таблицы или накладной → Excel (qwen3-vl на GX10).
  • Надстройка для Excel или Р7 — если будет спрос.

Можно начинать сразу. Харнесс проверки формул (пересчёт в LibreOffice на GX10, детерминированная проверка русской версии) уже работает в ~/ai/axel-bench на GX10 и станет ядром сервиса axel-calc в Ф0. Кликабельный прототип всех 28 экранов готов и задаёт объём работ для Ф1–Ф7.

14. Риски, открытые вопросы и что нужно от владельца

Главные риски

РискВероятность и ущербЧто делаем
Потеря объектов при правке чужого файла: окно «Excel обнаружил проблему», пропавшая диаграмма или своднаявысокий ущерб Главная угроза довериюТолько патчер OOXML, инвариантная сверка, валидатор, корпус 200–300 реальных файлов, Windows-стенд с Excel. Вставку и удаление строк откладываем.
Правдоподобная, но неверная формулавысокий Главный минус всей категорииExecVote, пересчёт двумя движками, тесты на 2–3 наборах данных, «готово» ставит проверщик, а не модель.
LibreOffice не считает LAMBDA и не «разливает» динамические массивысреднийВторой движок (Formualizer), пометка «проверьте в Excel», режим совместимости по умолчанию — Excel 2016 + LibreOffice.
GX10 занят другими проектами, память общаясредний Падения «нет памяти» уже былиПроверка свободной памяти до загрузки модели, llama-swap с TTL, очередь, облако для задач без ПДн, честное «подождите» для задач с ПДн.
LLM на Сагаре тормозит публичные сайтысреднийНа Сагаре только маленькая модель-классификатор; cpuset и лимит памяти; сторож отключает LLM при росте задержек сайтов.
Персональные данные уходят за рубежштрафы до 6–18 млн ₽Жёсткое правило в роутере: сырые ПДн — только Сагар и GX10. Маскирование, журнал решений, юридический пакет.
Внедрение инструкций через загруженный файлсреднийДанные отдельно от инструкций, белый список операций, нет сетевых инструментов у модели, показ скрытого содержимого.
Timeweb меняет цены и каталог, зарубежные модели пропадаютсредний Многие модели уже помечены как устаревшиеLiteLLM и реестр возможностей моделей с ежедневной проверкой, резерв в РФ (Cloud.ru, MWS, Yandex), лимиты на ключах.
Бесплатный ИИ в отечественных офисах закрывает простые формулысреднийЦенность AXEL — в файлах, доработке, процессах и гарантиях сохранности, а не в одной формуле.
Лицензии: случайно скопировать GPL, AGPL или проприетарный кодсреднийРеестр зависимостей (SBOM) с проверкой лицензии при каждом добавлении; код anthropics/skills, ONLYOFFICE, HyperFormula, formulas не используем.
VBA: собрать произвольный vbaProject.bin из текста надёжно нельзяизвестное ограничениеМодуль .bas с инструкцией и каталог заранее собранных .xlsm. Не обещаем «любой макрос внутри готовой книги».

Что нужно от владельца

  1. Доступ к Сагару. Памятку сервера и отдельного пользователя или явное разрешение работать под root. Без этого фаза 0 не начнётся, а все цифры скорости для Сагара остаются оценками.
  2. DNS. Сейчас (01.10.2026) все поддомены *.24oros.ru в публичном DNS указывают на Timeweb VPS 217.199.253.218, а не на наш IP 95.105.82.3. Для axel.24oros.ru нужна A-запись на 95.105.82.3 и маршрут в Traefik Сагара. Иначе по этому адресу откроется чужая страница.
  3. Timeweb. Сколько бесплатных токенов уже на балансе и по какой акции. Ключ AI Gateway для AXEL с лимитом. Письменный ответ поддержки: где обрабатываются промпты моделей timeweb/* и Yandex, есть ли договор поручения.
  4. Юрлицо для оферты, приёма платежей и уведомления Роскомнадзора.
  5. Корпус файлов: 200–300 реальных рабочих файлов малого бизнеса (с согласия владельцев, без ПДн или обезличенные) — для регрессии фазы 3.
  6. Windows-стенд с Excel 365 и Word на русском (виртуальная машина) — эталонная приёмка файлов и макросов. По возможности — установки Р7-Офис и МойОфис.
  7. Память GX10: сколько ГБ можно гарантированно отдать сервису (например, 25–30 ГБ под постоянную модель).

Открытые вопросы

  • Какие офисы реально у целевой аудитории (доля Excel 2016, Р7, МойОфис, LibreOffice)? От этого зависит режим совместимости по умолчанию.
  • Нужна ли на старте поддержка .xls, .xlsb и .ods: только чтение с конвертацией или полноценно?
  • Правки Word по умолчанию рецензированием (безопаснее) или выбор на экране подтверждения?
  • Насколько хорошо Qwen3.6-35B-A3B, Ornith-1.5 и T-pro-it-2.1 справятся с русскими задачами — их стоит поставить на GX10 и прогнать на нашем наборе.
  • Какое время ответа допустимо для пользователя: 10 секунд, 30 секунд, 2 минуты? От этого зависит, включать ли режим рассуждений.
  • Канал второй очереди: MAX выглядит устойчивее, Telegram ограничен, но работает. Можно делать оба на одном API — решить к фазе 8.

15. Проверка фактов и источники

Отдельный агент-скептик перепроверил по первоисточникам 30 ключевых утверждений, на которых стоят архитектура и план: подтверждено 25, исправлено 5, не удалось проверить 0. Исправления уже учтены в тексте отчёта.

№УтверждениеВердиктУточнение
1genspark-ai/genoffice — лицензия Apache-2.0 (кроме папки ee/), умеет точечные патчи OOXML с побайтовым сохранением нетронутых частей.подтвержденоПодтверждено по LICENSE и README: весь репозиторий под Apache-2.0, кроме каталога ee/ (GenOffice Enterprise License: разрешены только разработка и тестирование; продакшн, предоставление как hosted/managed-сервиса и распространение — только по договору с Mainfunc, Inc.). Сейчас в ee/ лежат лишь LICENSE и README (зарезервировано под будущие модули). README описывает сохранение: переписывается только изменённое, для docx изменённые блоки вклеиваются в исходный document.xml, остальные записи zip копируются байт-в-байт; xlsx обрабатывает Rust-сайдкар. Товарные знаки GenOffice/Genspark лицензия не покрывает. Проект очень молодой: создан 31.07.2026, релиз v0.11.0 от 28.09.2026. источник
2haris-musa/excel-mcp-server — MIT; содержит блок-лист опасных функций (WEBSERVICE, INDIRECT и др.).подтвержденоLICENSE — MIT (Copyright 2025-2026 Haris Musa). Блок-лист BLOCKED_FUNCTIONS в src/excel_mcp/formulas.py: сетевые (WEBSERVICE, FILTERXML, IMAGE, HYPERLINK, STOCKHISTORY, TRANSLATE, DETECTLANGUAGE, COPILOT, PY, IMPORT* из Google Sheets), внешние программы и подключения (RTD, DDE, CALL, REGISTER, REGISTER.ID, SQL.REQUEST, CUBE*), макрофункции Excel 4.0 (EXEC, EXECUTE, EVALUATE, FOPEN/FWRITE/FREAD/FCLOSE, GET.WORKSPACE/DOCUMENT/CELL), а также INFO, CELL, INDIRECT. Формулы разбираются токенизатором openpyxl (неразбираемые отклоняются), отдельно запрещены ссылки на внешние книги и DDE ('|'). Проверка применяется к значениям ячеек, условному форматированию и проверке данных. источник
3tmustier/pi-for-excel — MIT.подтвержденоLICENSE — MIT (Copyright 2026 Thomas Mustier). Сам проект описан как экспериментальная надстройка-сайдбар для Excel. источник
4ironcalc/IronCalc — MIT или Apache-2.0; авторы называют его work-in-progress.подтвержденоREADME: двойная лицензия на выбор — MIT или Apache-2.0 (файлы LICENSE-MIT и LICENSE-Apache-2.0); GitHub API показывает только Apache-2.0 — это особенность автоопределения. В README движок прямо назван work-in-progress, демо — в разделе «Early testing». источник
5Formualizer (Rust-движок формул с Python-обёрткой) — лицензия MIT/Apache, версия на PyPI ~0.10 (сентябрь 2026).подтвержденоРепозиторий PSU3D0/formualizer: в Cargo.toml license = "MIT OR Apache-2.0", файлы LICENSE-MIT и LICENSE-APACHE. На PyPI пакет formualizer: 0.10.0 (29.09.2026) и 0.10.1 (30.09.2026). В метаданных PyPI указана только MIT. источник
6BetterOffice / betteroffice-xlsx — Apache-2.0, 0.2.0 от 28.09.2026.подтвержденоPyPI betteroffice-xlsx 0.2.0 загружен 28.09.2026 (23:14 UTC), лицензия Apache-2.0; исходники — openooxml/betteroffice (Apache-2.0, контрибьюторы подписывают CLA). В тот же день вышли betteroffice-docx 0.2.0 и npm-пакет @betteroffice/xlsx 0.3.0. источник
7SecurityRonin/docx-mcp — MIT, правки Word в режиме рецензирования.подтвержденоLICENSE — MIT (Copyright 2026 Security Ronin). По README: вставка, удаление и замена текста как tracked revisions (можно отключить параметром tracked=False), принятие и отклонение правок по автору, комментарии, сноски, защита документа, журнал изменений, сравнение двух файлов. Проект небольшой: около 57 звёзд, последний push 05.08.2026. источник
8XlsxWriter — BSD-2-Clause, умеет write_dynamic_array_formula и add_vba_project; не умеет менять существующие файлы.подтвержденоLICENSE.txt — BSD 2-Clause. В документации есть worksheet.write_dynamic_array_formula() и workbook.add_vba_project(). В FAQ сказано, что XlsxWriter только пишет файлы и не может читать или изменять существующие. Формулы он не вычисляет: записывает результат 0 и ставит флаг пересчёта при открытии. источник
9python-docx-template (docxtpl) — LGPL-2.1.подтвержденоLICENSE.txt — GNU LGPL v2.1; на PyPI docxtpl 0.20.2 (13.11.2025) указано LGPL-2.1-only. источник
10Docxodus — MIT; JSv4/Python-Redlines — MIT.подтвержденоОба под MIT. У Docxodus в LICENSE два правообладателя — Microsoft и John Scrudato IV, потому что это форк Open-Xml-PowerTools. Python-Redlines (LICENSE.md, MIT) по умолчанию работает через движок Docxodus на .NET 10, старый движок на Open-XML-PowerTools помечен устаревшим. Не путать с Open-Source-Legal/docxodus-service: он под AGPL-3.0. источник
11anthropics/skills — скиллы docx/xlsx/pptx/pdf под проприетарной лицензией (LICENSE.txt запрещает копирование/производные).подтвержденоВ skills/docx, xlsx, pptx и pdf лежит LICENSE.txt «© 2025 Anthropic, PBC. All rights reserved». Использование возможно только по соглашению с Anthropic. Запрещены извлечение и хранение копий вне сервисов, воспроизведение, производные работы, распространение и реверс-инжиниринг. README называет эти четыре скилла source-available, а не open source; остальные скиллы репозитория — Apache-2.0. источник
12formulas (vinci1it2000) — EUPL-1.1; pycel — GPL-3.0; HyperFormula — GPLv3 или коммерческая; EPPlus 5+ — Polyform Noncommercial.подтвержденоformulas — EUPL 1.1 (на PyPI «EUPL 1.1+», то есть допускаются и более поздние версии EUPL). pycel — GPL-3.0, последний релиз 1.0b30 от 13.10.2021. HyperFormula — двойная лицензия: проприетарная или GPLv3, вариант определяется применённым ключом. EPPlus с 5-й версии — Polyform Noncommercial 1.0.0 или коммерческая лицензия (официальная страница лицензий EPPlus). источник
13Carbone Community Edition — лицензия CCL, запрещает предлагать его как облачный сервис генерации документов.подтвержденоLICENSE.md — Carbone Community License Agreement (действует с 14.02.2023). Пункт 2.2 запрещает использовать CE для document-generator-as-a-service и в любом SaaS, где функции генерации документов доступны третьим лицам. Исключение — «Value Added Products», которые не являются в первую очередь генераторами документов. Для AXEL, где создание документов — основная функция, исключение, скорее всего, не подходит; нужна коммерческая лицензия. источник
14Univer: импорт/экспорт XLSX доступен только в платной Univer Pro; ядро Apache-2.0.подтвержденоВ разделе «Open Source and Pro» README импорт/экспорт для Sheets, Docs и Slides отнесён к Univer Pro / commercial; OSS-пакеты — Apache-2.0. Документация 1.0.3: пакеты @univerjs-pro/exchange-client и @univerjs-pro/sheets-exchange-client помечены как требующие лицензию и серверного бэкенда конвертации (Univer Server), а браузерный API не принимает .xlsm. Без лицензии появляются водяные знаки и ограничения. Прежние бесплатные лимиты (1 МБ на импорт, 10 тыс. ячеек на экспорт) в текущей документации не найдены. источник
15openpyxl по официальной документации теряет фигуры/изображения/диаграммы при открытии и сохранении существующего файла; последний релиз openpyxl — 2024 год.исправленоОфициальная документация (tutorial) предупреждает о потере только фигур (shapes) при открытии и сохранении файла. Диаграммы читаются с 2.5.0 (2017), изображения — с 2.5.5 (2018), но только при установленном Pillow: без него изображения отбрасываются. В исходниках 3.1.5 есть предупреждения: DrawingML ограничен диаграммами и изображениями, остальные фигуры и рисунки теряются; неподдерживаемые расширения листа удаляются (x14-условное форматирование, x14-проверка данных, спарклайны, срезы, timeline, protected ranges, ignored errors, web extensions). VBA сохраняется только при keep_vba=True (по умолчанию False). Последний релиз — 3.1.5 от 28.06.2024, это подтверждено. источник
16LibreOffice: XLOOKUP, XMATCH, FILTER, SORT, SORTBY, UNIQUE, SEQUENCE, RANDARRAY, LET появились в 24.8; LAMBDA нет даже в 26.2.подтвержденоПо release notes 24.8 все девять функций добавлены в этой версии. LAMBDA нет в release notes 25.2, 25.8, 26.2 и в уже вышедшей 26.8 (26.8.0 — конец августа 2026). LAMBDA вместе с MAP, REDUCE, SCAN, BYROW, BYCOL, ISOMITTED и ARRAYTOTEXT реализованы только в ветке разработки (версия 27.2.0 alpha0+, ещё не выпущена). По багу tdf#173669 эти функции пока неправильно экспортируются в XLSX. В 25.8 добавлены CHOOSECOLS, CHOOSEROWS, DROP, EXPAND, HSTACK, TAKE, TEXTAFTER, TEXTBEFORE, TEXTSPLIT, TOCOL, TOROW, VSTACK, WRAPCOLS, WRAPROWS. Полноценных динамических массивов (spill) как в Excel нет: tdf#127808 открыт. источник
17Ключ профиля LibreOffice /org.openoffice.Office.Calc/Formula/Load/OOXMLRecalcMode (0 = всегда пересчитывать) включает пересчёт xlsx при загрузке.подтвержденоВ officecfg/.../Calc.xcs путь именно /org.openoffice.Office.Calc/Formula/Load/OOXMLRecalcMode. Значения: 0 — всегда пересчитывать, 1 — никогда (значение по умолчанию), 2 — спрашивать. Значит, для headless-пересчёта 0 надо выставлять явно. Для ODF есть аналогичный ключ ODFRecalcMode. источник
18Timeweb Cloud AI Gateway: base_url https://api.timeweb.ai/v1, OpenAI-совместимый; API агента вида https://agent.timeweb.cloud/api/v1/cloud-ai/agents/{agent_id}/v1/chat/completions.подтвержденоДокументация AI Gateway: OpenAI SDK с base_url https://api.timeweb.ai/v1 (chat.completions). AI Gateway не даёт возможностей агентов: RAG, MCP, системных настроек. Документация OpenAI-совместимого API агентов: POST https://agent.timeweb.cloud/api/v1/cloud-ai/agents/{agent_id}/v1/chat/completions с Bearer-токеном. источник
19Timeweb, цены за 1 млн токенов (вход/выход): GPT-6 Luna 13,5/67,5 ₽; Qwen 3.5 Flash 14/52 ₽; DeepSeek V4.1 Flash 40,5/162 ₽; timeweb/gpt-oss-120b 20/82 ₽; Claude Sonnet 5 405/2025 ₽. НДС не начисляется (реестр российского ПО).подтвержденоКаталог моделей на странице timeweb.cloud/services/ai-gateway (цена за токен × 10^6) на 01.10.2026: openai/gpt-6-luna 13,5/67,5 ₽; dashscope/qwen3.5-flash 14/52 ₽; deepseek/deepseek-flash (DeepSeek V4.1 Flash) 40,5/162 ₽; timeweb/gpt-oss-120b 20/82 ₽; anthropic/claude-sonnet-5 405/2025 ₽. Калькулятор на сайте показывает GPT-6 Luna с округлением — 14/68 ₽. НДС: по п. 2.7 соглашения о сервисе ИИ-агентов (ред. 01.12.2025) НДС не облагается на основании пп. 26 п. 2 ст. 149 НК РФ; платформа в реестре российского ПО, запись № 15725 от 05.12.2022. Цены меняются, фиксировать их на дату заказа. источник
20Timeweb, акция: до 12,5 млн бесплатных токенов новым пользователям с 01.07 по 31.12.2026, только на одного агента с одной моделью.исправленоПравила акции «Знакомство с AI-агентами» (приказ № 32 от 22.06.2026). Срок — с 01.07 по 31.12.2026 включительно. Бесплатный лимит токенов даётся на одного агента с одной моделью, сменить модель нельзя. Размер лимита свой для каждой модели и указан в панели; «до 12,5 млн» — это максимум с сайта. Участвовать могут не только новые пользователи, но и действующие клиенты платформы, если они раньше не покупали ИИ-агентов или у них нет активных предоплаченных агентов. Участие однократное, территория — Россия. После исчерпания лимита автоматически включается платная тарификация. Акция распространяется на сервис ИИ-агентов, а не на AI Gateway. источник
21Yandex AI Studio: OpenAI-совместимый base_url https://llm.api.cloud.yandex.net/v1, логирование запросов отключается заголовком x-data-logging-enabled: false; цены Qwen3.6 35B 200/300 ₽, gpt-oss-20b 100/100 ₽ за 1 млн (с НДС).исправленоВ актуальной документации AI Studio (aistudio.yandex.ru/docs, quickstart) base_url — https://ai.api.cloud.yandex.net/v1. Старый https://llm.api.cloud.yandex.net/v1 на 01.10.2026 тоже отвечает как OpenAI-совместимый (проверено запросом без ключа), но в документации его больше нет; закладываться лучше на ai.api. Заголовок x-data-logging-enabled: false подтверждён; в SDK этому соответствует enable_server_data_logging=False. Цены синхронного режима подтверждены: Qwen3.6 35B — 0,2/0,3 ₽ за 1000 токенов (200/300 ₽ за 1 млн), gpt-oss-20b — 0,1/0,1 ₽ за 1000 (100/100 ₽ за 1 млн). Рублёвые цены включают НДС, долларовые — без НДС; соотношение между ними соответствует ставке 22 %. источник
22GigaChat: Freemium для физлиц только для личного некоммерческого использования; с 01.09.2026 новые клиенты-юрлица покупают GigaChat через cloud.ru.подтвержденоСтраница «Коммерческое использование»: бесплатный Freemium-доступ — исключительно для личного некоммерческого использования, коммерческое — только после покупки платного пакета. Страницы тарифов (обновлено 29.09.2026): с 01.09.2026 новые клиенты и клиенты, ранее не покупавшие пакеты, оплачивают работу с моделями на cloud.ru. Это касается и юрлиц, и физлиц; покупать пакеты на developers.sber.ru могут только действующие клиенты. Freemium для физлиц — 365 млн токенов на 12 месяцев (Lite 250 млн, Pro 40 млн, Max 25 млн, Ultra 50 млн), генерация в один поток. источник
23Базовая ставка НДС в РФ с 01.01.2026 — 22 % (Федеральный закон № 425-ФЗ).подтвержденоФедеральный закон от 28.11.2025 № 425-ФЗ повысил основную ставку НДС с 20 до 22 %. Новая ставка применяется к отгрузкам, работам и услугам с 01.01.2026. источник
24376-ФЗ: с 01.03.2026 правила для подписок (отказ от подписки в любой форме, запрет списаний после отказа, удаление карты).исправленоФедеральный закон от 15.10.2025 № 376-ФЗ вступил в силу 01.03.2026 и добавил п. 4.2 в ст. 16.1 Закона о защите прав потребителей. При оплате услуг по абонентскому договору через сайт, информационную систему или программу исполнителю запрещено использовать для периодических платежей реквизиты счёта или данные платёжного средства, от использования которых потребитель отказался. Исполнитель обязан обеспечить приём такого отказа, в том числе в электронной форме. Закон регулирует отказ от использования ранее предоставленных платёжных данных (по сути — «отвязку карты») и запрет списаний с них. Об «отказе от подписки в любой форме» и об отдельном праве «удалить карту» в тексте не говорится. источник
2523-ФЗ: с 01.07.2025 ч. 5 ст. 18 152-ФЗ запрещает при сборе ПДн граждан РФ запись/хранение/изменение/извлечение с использованием иностранных баз данных; штраф по ст. 13.11 КоАП до 6 млн ₽ (повторно до 18 млн).подтвержденоФедеральный закон от 28.02.2025 № 23-ФЗ ввёл с 01.07.2025 новую редакцию ч. 5 ст. 18 152-ФЗ. При сборе ПДн, в том числе через интернет, запись, систематизация, накопление, хранение, уточнение и извлечение ПДн граждан РФ с использованием баз данных за пределами РФ не допускаются; исключения — пп. 2, 3, 4, 8 ч. 1 ст. 6. КоАП ст. 13.11: ч. 8 — для юрлиц от 1 до 6 млн ₽, ч. 9 (повторно) — от 6 до 18 млн ₽. Для должностных лиц — 100–200 тыс. ₽ и 500–800 тыс. ₽ соответственно. источник
26С 01.09.2025 (156-ФЗ) согласие на обработку ПДн оформляется отдельным документом.подтвержденоФедеральный закон от 24.06.2025 № 156-ФЗ (ст. 5 вступила в силу 01.09.2025) дополнил ч. 1 ст. 9 152-ФЗ: согласие должно быть оформлено отдельно от иной информации и документов, которые субъект подтверждает или подписывает. Точнее говорить «отдельно от других документов»: например, отдельный чекбокс или форма согласия, а не пункт пользовательского соглашения. Бумажного документа закон не требует. источник
27Р7-Офис не исполняет VBA (макросы на JavaScript), а МойОфис с версии 26.1 имеет интерпретатор базового VBA (Application/Workbook/Worksheet/Range).исправленоР7 — подтверждено: центр поддержки (обновлено 07.09.2026, версия 2026.1.2.1942) сообщает, что макросы только на JavaScript, а поддержка VBA и автоматическая конвертация невозможны; предлагается ручная переделка. МойОфис — уточнение по версии: интерпретация VBA появилась как бета в корпоративном релизе МойОфис 3.6 (27.11.2025, табличный редактор). Работает как автоматическая трансляция VBA в Lua, исходный VBA остаётся в файле. В версии 26.1 (05.05.2026) эту функцию получил «МойОфис для дома». Поддержка базового синтаксиса VBA и объектов Application, Workbook, Worksheet, Range подтверждена. Источник — пресс-релизы МойОфис (CNews); страница поддержки МойОфис о VBA сейчас отдаёт 404. источник
28Microsoft блокирует макросы VBA в файлах из интернета (Mark of the Web) по умолчанию; официальный способ для доверенного файла — Свойства → «Разблокировать».подтвержденоMicrosoft Learn (обновлено 17.07.2026): макросы VBA в файлах с Mark of the Web блокируются по умолчанию в Office для Windows — Access, Excel, PowerPoint, Project, Publisher, Visio, Word (Current Channel — с версии 2206, июль 2022). Для отдельного файла: флажок «Разблокировать» на вкладке «Общие» свойств файла или PowerShell Unblock-File. Другие официальные пути — доверенные расположения (Trusted Locations) и макросы, подписанные доверенным издателем. MOTW ставится только на NTFS. источник
29SpreadsheetBench: 912 задач, данные CC BY-SA 4.0; на лидерборде есть результаты вида Shortcut.ai 59,25 %, Copilot Agent Mode 57,2 % (самоотчёт).подтвержденоREADME: 912 задач (2729 тест-кейсов), проект под CC BY-SA 4.0. Лидерборд V1 Full (data/leaderboard-v1-full.json): Shortcut.ai — 59,25 % (16.10.2025), помечен verified, то есть проверен организаторами, а не самоотчёт. Copilot in Excel (Agent Mode) — 57,2 % (29.09.2025), unverified: результат заявлен Microsoft. Эти цифры устарели: лидер V1 Full — Qingqiu Agent (Kingsoft), 83,11 %; есть подмножество Verified (400 задач) с результатами до 99,25 % и SpreadsheetBench 2 (лидер arito — 54,51 %). источник
30IPEX-LLM (Intel) архивирован в январе 2026; в Ollama с Vulkan на встроенной графике Intel есть открытые баги с мусором на выходе.подтвержденоintel/ipex-llm: archived=true, последний коммит 28.01.2026 «archive notice». README: проект архивирован, Intel его не поддерживает и не принимает патчи, есть известные проблемы безопасности. В Ollama открыты issues: #13964 (iGPU Arrow Lake, мусор на Vulkan на моделях от 3B, с 29.01.2026), #15248 (iGPU Arc Arrow Lake-P, искажённый вывод gemma4:26b, регрессия, с 03.04.2026), #13108 («vulkan lobotomizes models»). Похожий #13086 (iGPU Intel, бессмысленный текст) закрыт. источник

Источники по направлениям

Открытые ИИ-помощники для Excel и Word — 60
Научные работы и бенчмарки — 76
Движок xlsx — 76
Движок Word — 48
Модели и железо — 52
Timeweb и облака РФ — 47
Рынок и интерфейсы — 74