++ 1. ПроблемаAI-инструменты для разработки доступны всем. Результаты - нет.
Copilot, Claude, GPT - генерируют код за секунды. Но попробуйте построить PKI-систему с аппаратным TRNG, тремя MCU-платами и деплоем на ARM64. Не лендинг. Не TODO-приложение. Систему, где нарушение контракта на генерацию ключей - не ошибка, а уязвимость.
Проблема не в качестве генерации. Проблема в контексте.
Контекстное окно модели - конечный ресурс. 200K токенов звучит много, пока не загрузишь туда архитектуру проекта, историю решений, спецификации, тесты и текущую задачу. На сложном проекте контекст заканчивается раньше, чем задача.
Три уровня потери:
*** Внутри сессии: на 50-м сообщении агент забывает что было на 10-м
*** Между сессиями: новый чат = чистый лист, каждый раз заново
*** Между проектами: переключился - потерял всё
На одном проекте это терпимо. На одиннадцати - это стена. 420+ сессий, и каждая начинается с нуля, если не решить проблему системно.
Вайб-кодинг - термин, который описывает работу с AI без структуры. "Напиши мне X" -> получил код -> вставил -> работает (или нет) -> следующий промт. Для лендинга хватает. Для системы с аппаратным TRNG, тремя MCU-платами, SELinux-политиками и FIPS-совместимой криптографией - нет. Не потому что AI плохой. Потому что без методологии работы с AI сложность побеждает.
Шкала: вайб-кодинг -> структурированные промты -> оркестрация сессий -> полная система с контрактами. Большинство застревает на первых двух уровнях.
++ 2. Решение: файлы вместо инфраструктуры
Большие компании строят RAG-пайплайны: vector DB, embedding-сервер, chunking, retrieval tuning, GPU. Месяцы работы команды.
0.agent делает то же самое через readFile:
[]RAG pipeline -> 0.agent:[]
*** Vector search -> ROUTE_CACHE.json (650 строк, 3% контекста)
*** RAG retrieval -> CONTEXT_LEVEL_1/2/3 (200/700/2000 токенов)
*** Fine-tuning -> Компетенции + роли (предметные знания проекта)
*** Evaluation pipeline -> drift_check.py (84 проверки, 0 расхождений)
*** Стоимость инфраструктуры: миллионы $ + команда DevOps -> текстовый редактор + git
Это не упрощение. Это осознанный выбор: readFile детерминирован, vector search - нет. Когда речь о криптографических контрактах, детерминированность - не роскошь, а требование. Ты точно знаешь что загружено в контекст. С RAG - надеешься.
Принцип: файловая система - это база данных. Markdown - формат. Git - версионирование. Никакой инфраструктуры кроме того что уже есть. Не нужен Redis для кэша, не нужен PostgreSQL для метаданных, не нужен S3 для хранения. Всё что нужно - текстовый редактор и git.
Пять механизмов:
** Маршрутизация - JSON-файл, 3% контекста при старте вместо 19%
** Сессии с уровнями контекста - L1/L2/L3, 8 типов включая оркестраторы
** Роли - режимы мышления: analyst видит архитектуру, coder - код, tester - edge cases
** Контракты (SDD/DbC) - формальные PRE/POST/INV на поведение агента
** Правила - кодифицированный опыт, каждое правило - шрам от реальной проблемы
Это не фреймворк, спроектированный на доске. Это система, выросшая из 420+ сессий. Каждый механизм - ответ на конкретную проблему. Вместе - метод оркестрации AI-агента.
Текущая реализация работает с Claude (Anthropic), но файлы портативны - vendor lock-in отсутствует. Завтра локальные модели дорастут - система переносится без изменений.
++ 3. Доказательство: pki-on-box
Теория без proof - маркетинг. Вот цифры:
*** Коммитов: 129
*** PR (merged): 15
*** Веток: 34
*** Дни активной работы: 10 (из 16 календарных, 27.03 - 11.04)
*** Автор: 1 человек
*** Python файлов: 36
*** C файлов (firmware): 19
*** Тестов: 62 contract + 15 HW + unit (99+ passed)
*** MCU борды: 3 (STM32G474, STM32G431, STM32H750)
*** Целевая платформа: RK3328 ARM64 (Cortex-A53, 2GB RAM)
*** Стоимость железа: ~$129 (SBC $111 + STM32 $18)
*** Стоимость токенов AI: 1208 руб за 18 из 35 сессий (остальные без трекинга)
Репозиторий: [[https://github.com/vasilievsv/hw.pki-on-box github.com/vasilievsv/hw.pki-on-box]]
Архитектура: тепловой шум с аппаратного TRNG -> DRBG (NIST SP 800-90A) -> генерация ключей -> CA -> сертификат X.509. Entropy chain: физический процесс (тепловой шум на ADC микроконтроллера) -> кондиционирование -> DRBG seed -> криптографически стойкая последовательность. Три мира: Windows (разработка), Linux ARM64 (продакшн), MCU (firmware). Деплой через SSH, systemd, без Docker на железке. Стоимость железа: $129 (RK3328 плата + STM32 борда). Производительность: 15.6 КБ/с энтропии, 1.6с на выпуск сертификата.
Безопасность: SELinux enforcing + eBPF-фильтры + systemd sandboxing. Zero trust: HSM изолирован от PKI Core, коммуникация только через unix socket. Firmware hardening: 12 уязвимостей закрыты по NIST 800-90B (6 CRITICAL). Ноль открытых.
[]Два кейса:[]
[]53 руб / 9 минут[] - оркестратор-сессия: 99 тестов, zeroization, FIPS KAT, CI security pipeline. Агент в роли architect декомпозировал задачу на 8 дочерних сессий, каждая со своей ролью.
[]5 руб / 2 минуты[] - три MCU-платы (STM32G474, G431, H750), PlatformIO, firmware для аппаратного TRNG. Класс задач убит: конфигурация embedded-проекта из "часы мучений с HAL" превратилась в рутину. Агент в роли firmware-coder знает HAL, знает PlatformIO, знает pinout конкретной борды - потому что компетенции загружены в контекст.
35 сессий. 6 ролей (analyst, architect, coder, tester, firmware-coder, devops). 3 оркестратора. 906 запросов к модели. 18.4 часа суммарной работы. Один человек.
Для контекста: оценка аналогичной работы без агента - 40+ человеко-часов квалифицированного инженера. С учётом embedded-части (firmware TRNG, HAL, PlatformIO) и DevOps (systemd, SELinux, eBPF, деплой на ARM64) - скорее 60+. Здесь 18.4 часа. Разница не в скорости набора кода. Разница в том, что агент переключается между ролями без потери контекста: architect декомпозирует, coder реализует, tester проверяет, devops деплоит - и каждый "помнит" решения предыдущего.
++ 4. Контракты: Design by Contract в эпоху AI
Бертран Мейер сформулировал Design by Contract в 1986 году. Формальные контракты между модулями: предусловия, постусловия, инварианты. Красивая теория. Не взлетела - двойная работа: человек пишет и контракт, и код.
AI-агент убирает то, что убило DbC. Человек пишет контракт. Агент пишет код и тесты. Человек проверяет контракт, а не тысячи строк реализации. Контракт становится единственной задачей человека. Всё остальное делегировано.
Это не теория. Это рабочий процесс: контракт -> агент генерирует реализацию -> тесты проверяют postconditions -> автоматическая проверка находит расхождения.
[]Мейер (1986) -> С AI-агентом (2026):[]
*** Кто пишет контракт: Человек -> Человек
*** Кто пишет код: Человек -> Агент
*** Кто проверяет: Компилятор Eiffel -> Агент + тесты + автоматическая верификация
*** Почему не работало: Двойная работа -> Работа делегирована
Реальный контракт из pki-on-box - генерация ключей:
contract: key_generation
PRE:
- DRBG.seeded == true
- DRBG.reseed_counter { max_requests
- algorithm {RSA-2048, RSA-4096, ECDSA-P256, Ed25519}
POST:
- private_key.encrypted(AES-256-GCM)
- nonce.unique()
- public_key = derive(private_key)
INV:
- padding == RSA-PSS (подпись) | RSA-OAEP (шифрование)
- PKCS#1 v1.5 == ЗАПРЕЩЕНО
Нарушение INV (PKCS#1 v1.5 вместо RSA-PSS) - это не баг. Это атака Блейхенбахера. Контракт предотвращает класс уязвимостей до того, как код написан.
Контекст: Claude Mythos нашёл 0-day в OpenBSD (27 лет), FFmpeg (16 лет), Linux kernel, Rust unsafe. AI ломает быстрее, чем люди чинят. Язык не спасает - Rust unsafe это доказал. Контракты работают выше уровня языка.
DbC Мейера - ответ на угрозу, которую показал Mythos. pki-on-box - живое доказательство: формальные гарантии на криптографию, не "надеемся что тесты поймают".
Контракт на выпуск сертификата:
contract: certificate_issuance
PRE:
- issuer_ca.valid() && !issuer_ca.revoked()
- csr.signature.verify() == true
POST:
- cert.serial.unique()
- cert.signature.verify(issuer_ca.public_key) == true
- cert.extensions.key_usage.set()
INV:
- cert_chain.depth {= max_path_length
- root_ca.offline == true (air-gapped)
Два контракта - два стыка архитектуры. На каждом стыке формальные гарантии. CRYPTO_COMPLIANCE_REVIEW нашёл 2 CRITICAL проблемы именно через контрактный подход: PKCS#1 v1.5 padding и неправильный AES mode. Без контрактов это нашли бы тесты - может быть. Или пентест. Или злоумышленник.
Реализация contract-тестов: [[https://github.com/vasilievsv/hw.pki-on-box/blob/main/asw/PK... test_crypto_engine_contract.py]]
++ 5. Вывод
Инструмент доступен всем. Метод - нет.
129 коммитов, 10 дней, $129 на железо, один человек - это не про AI. Это про организацию работы с AI. Вайб-кодинг работает для прототипов. Для PKI с аппаратным TRNG и формальными контрактами на криптографию нужен метод.
Метод не продаётся и не скачивается. Он выращивается - через сессии, ошибки, рефлексию. 420+ сессий, 11 проектов, от embedded firmware до DevOps на ARM64. Каждая сессия - решение, которое стало частью системы. Каждое правило - шрам от реальной ошибки. Retry limit 3 - после 7 попыток починить один баг. Heartbeat каждые 3 операции - после двух "завис?" от пользователя. Task focus - после 30-итерационного фикса pytest вместо прогона тестов.
Файлы портативны. Vendor lock-in отсутствует. Завтра локальные модели дорастут - система та же.
Проверьте. Если сможете повторить - вы на правильном пути. Если нет - задумайтесь, почему.
++ Ссылки
** Meyer B. "Object-Oriented Software Construction" (1988, 2nd ed. 1997)
** Meyer B. "Applying Design by Contract" (IEEE Computer, 1992)
** NIST SP 800-90A: Recommendation for Random Number Generation Using Deterministic Random Bit Generators
** NIST SP 800-90B: Recommendation for the Entropy Sources Used for Random Bit Generation
** [[https://github.com/vasilievsv/hw.pki-on-box pki-on-box на GitHub]]
URL: https://github.com/vasilievsv
Обсуждается: http://www.opennet.me/tips/info/3296.shtml