КосмоАкадемия: недельный апдейт — 41 страница учебников, живая линейка и страж Windows
Неделю назад я рассказал, как собрал КосмоАкадемию — ИИ-тренажёр по настоящим школьным учебникам для сына-второклассника. За неделю проект из «молодой демки» превратился в рабочую ежедневную систему: 41 страница двух учебников, 199 заданий, 214 проверочных вопросов — и Windows-страж, который не пускает к развлечениям, пока не сделана норма. Рассказываю, что добавилось и какие решения за этим стоят.

Учебники: от 13 страниц к 41 — и ни одной выдуманной цифры
В тренажёре теперь математика (Моро, 2 класс, с. 4–35) и русский язык (Канакина, с. 37–58): задачи, обратные задачи, время, длина ломаной, синонимы, антонимы, родственные слова. Главное правило конвейера не изменилось: ни одно задание не попадает в базу без скан-сверки с печатным учебником. Агент читает PNG-скан страницы, сверяет формулировки и ответы с разбором, и только потом собирает карточки.
Отсюда — самое интересное решение этих недель. Там, где ответ нельзя проверить автоматически честно (показания часов с маленького циферблата, измерения линейкой), карточка сознательно делается без эталона: ребёнок вводит свой результат с пометкой «на проверку взрослому», а формат расчёта лежит в подсказке. Подставлять непроверенные цифры в решебник хуже, чем не давать ответ вовсе.
Второй жёсткий фильтр — гейт в деплое. Страница без «плана манёвра» (маршрут урока от базы к цели) и без мотивации к каждому заданию не деплоится вообще: конвейер падает с ошибкой ещё на сборке. Методика learn (probe → plan → teach) зашита не в промпт, а в инфраструктуру.
Проверка без порядка и ошибки с характером
Часть нюансов пришла из живой эксплуатации. Выяснилось, что «выбери четыре верных неравенства из шести» — это набор, а не последовательность: проверка идёт поэлементно, порядок ответов не важен. У ответов-«словосочетаний» появилась персональная реакция на ошибку: если ребёнок в паре «мелкий пруд — мелкий дождь» механически подставляет антоним из другого значения слова, тренажёр отвечает не дежурным «неверно», а «Дождь не бывает глубоким — здесь “мелкий” про размер капель».
Самая приятная новая механика — круговые примеры. Восемь перемешанных карточек без ответов; ребёнок считает в уме и выбирает ту, что начинается с текущего числа. Ответ каждой — первое число следующей, и когда последняя карточка возвращает к старту, круг замыкается и задание зачитывается само. Ошибка видна по ходу, без кнопки «проверить»: не та карточка — просто не встаёт в цепочку.

Инструменты, а не только карточки
- Линейка кадета. В математике у каждой страницы — кнопка «📏 Линейка»: снизу поднимается шторка (задание сверху остаётся видно) с настоящей линейкой на 30 см, миллиметровыми делениями и скроллом, как у физической. Два тапа по шкале — и линейка сама показывает отрезок: «от 6 см до 14 см — длина 8 см = 80 мм». Ниже — наглядные единицы: дециметр из десяти сантиметров, сантиметр из десяти миллиметров.
- Скан страницы учебника. Оригинальная страница открывается в приложении по кнопке — свериться с книгой можно, не выходя из задания. Сканы отдаёт API только после входа: без авторизации сервер возвращает 401, так что копирайтный материал наружу не торчит.
- Фото-отчёт. Кнопка «📸 Сделать фото страницы» снимает всю выполненную работу одним тапом: на телефоне сразу открывается системная шторка «Поделиться» — отправить родителю в мессенджер дело двух секунд.
SpaceLocker: страж на компьютере
Финальный кусок системы — Windows-привратник SpaceLocker. Задача честная: пока дневная норма не сделана, Steam и Roblox закрываются, YouTube не открывается. Норму задаёт родитель: предмет и страницы на день («математика, с. 36»). При попытке запустить игру поверх всего появляется заставка «🚀 Сначала заправь ракету» с прогрессом — «решено 3 из 8» — и кнопками «Открыть тренажёр» и «Я сделал — проверить». Крестик и Alt+F4 не работают; закрывают её только выполненная норма или родительский PIN.
Технически это одно самодостаточное C#-приложение (один exe, без установки зависимостей): монитор процессов раз в 15 секунд, блокировка YouTube через hosts с маркерными строками, статус домашки — запрос к API КосмоАкадемии под сессией кадета. Сделал норму — свободен до конца дня, завтра блок вернётся сам.
Что это даёт семье и что — инженерам
Семьёй проект закрывает три боли разом: «не хочет делать домашку» (структура урока и мотивация в каждом задании), «сидит в играх до уроков» (страж вместо вечного спора) и «как проверить, что реально сделано» (прогресс на сервере плюс фото одним тапом).
Инженерам здесь интересен не EdTech, а конвейер: скан → агентная сверка → данные с гейтом качества → деплой → клиент-страж на другой платформе. Сборка Windows-бинарника идёт из Linux одной командой (dotnet publish -r win-x64 --self-contained), кросспост этой статьи — тоже конвейер. Один человек с агентами держит темп, на который раньше уходила бы команда.
Проект личный, не SaaS: показываю архитектуру и решения, а не продаю доступ. Если интересно, как устроена агентная сверка учебника или гейт методики в деплое — спрашивайте, разберу отдельной статьёй.
Automata может помочь:
Частые вопросы
Откуда в тренажёре берутся задания — не выдумывает ли их нейросеть?
Нет. Каждая страница вносится только после скан-сверки с печатным учебником: формулировки и ответы сверяются с PNG-сканом, а то, что на скане не читается (например, показания циферблатов), сознательно остаётся заданием без эталонного ответа — с пометкой «на проверку взрослому». Деплой физически не пройдёт без плана урока и мотивации к каждому заданию — это проверяет отдельный гейт в конвейере.
Как SpaceLocker блокирует игры и YouTube?
Steam и Roblox закрываются мониторингом процессов раз в 15 секунд, после чего показывается полноэкранная заставка с прогрессом домашки. YouTube блокируется через системный файл hosts, пока дневная норма не выполнена. Закрыть заставку может только выполненная норма или родительский PIN.
Не нарушаются ли авторские права на учебники?
Сканы страниц не лежат в публичной папке сайта: их отдаёт API только после входа в аккаунт, без сессии сервер возвращает 401. Карточки заданий — собственные формулировки на основе разбора, а сами сканы служат для сверки ребёнком с книгой.
Кто задаёт дневную норму домашки?
Родитель. В настройках стража выбираются предмет и страницы учебника на день, например «математика, с. 36». Норма действует до конца дня: выполнил — Steam, Roblox и YouTube открываются до полуночи, на следующий день блок возвращается.
Работаю удалённо — цены и условия для вашего города: