← На главную

Опубликовано

Hermes Agent - Prism: структурный анализ, перед которым не устоит ни одно AI-решение

Автор: Гусев Николай [портфолио]

Темы: ai-agents, privacy, security


Попроси ChatGPT "найди проблемы в этом коде". Он найдёт пару опечаток, скажет "отличная архитектура", и вы разойдётесь довольные. А через месяц продакшен упадёт.

Это не злой умысел. Это сикофантия - встроенное свойство LLM поддакивать пользователю. Turpin et al. (2023) показали: модели меняют ответ под контекст разговора. Sharma et al. (2023) подтвердили: чем увереннее пользователь формулирует позицию, тем охотнее модель с ней соглашается.

Prism - это 5 инструментов принудительного структурного анализа, которые запрещают модели соглашаться.


Проблема: "отличное решение, сеньор"

LLM по умолчанию - комфорт-бот. Ей выгодно:

дать ответ, который понравится

не спорить

не находить проблемы, которые нельзя исправить

На практике это выглядит как "ты гений" за любую сойдёт-архитектуру. И если инженер не имеет внутреннего критика - он поверит.

Prism это не "не верь ИИ". Prism - это процесс, встроенный в AI-агента, который заставляет его атаковать собственные выводы.


Что такое Prism

Prism - это не один инструмент, а 5 скилов, каждый из которых реализует отдельный вид структурного анализа. Они работают как линзы: каждый пропускает артефакт через свою оптику и находит то, что невидимо остальным.

В основе - conservation law: любой анализ должен закончиться утверждением вида "A × B = Constant" - неустранимый компромисс, который прошит в системе. Найти его - значит понять систему глубже её автора.


Prism Discover - разведка доменов

Перед тем как анализировать - надо понять, с каких вообще сторон можно подойти.

Discover не анализирует артефакт. Он генерирует 10-20 доменов - принципиально разных углов, под которыми можно исследовать объект.

Для одного и того же кода это может быть:

архитектура

security

user psychology

operational cost

onboarding friction

documentation strategy

competitive differentiation

regulatory implications

Правило: каждый домен должен быть генуинно другим. "Error handling" и "exception propagation" - один домен. А "error handling" и "user psychology" - разные.

Это этап разведки. Дальше пользователь выбирает, под какой линзой анализировать.


Prism Scan - одноразовый снайпер

Scan генерирует ровно одну линзу, идеально заточенную под конкретный артефакт. Не generic checklist - а аналитический инструмент, сконструированный для этого кода, этого текста, этого ADR.

Пример сработавшей линзы (score 9.5/10):

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

Каждый Scan заканчивается таблицей находок: что сломано, где, насколько серьёзно, и - критически - fixable или structural (можно починить или это свойство проблемного пространства).


Prism 3-Way - три ортогональных взгляда

Самый мощный инструмент. Три независимых анализа, каждый с разных позиций.

WHERE / Structural Archaeology:

Раскопать артефакт слой за слоем. От поверхности - к фундаменту. Найти разломы - места, где слои из разных эпох встречаются плохо. Производная: консервационный закон - компромисс, проходящий через все слои.

WHEN / Temporal Simulation:

Прогнать артефакт вперёд через 3-5 циклов изменений. Для каждого цикла: что сломается, что окостенеет в "так исторически сложилось", какие знания будут потеряны. Итог: какие предсказания стали догмой без валидации?

WHY / Structural Impossibility:

Найти три свойства, которые артефакт обещает одновременно. Доказать, что все три не могут сосуществовать. Инженерное улучшение - и доказать, что оно воссоздаёт проблему на глубже. Второе улучшение - и снова. Производная: структурный инвариант, который переживает любые попытки исправления.

Синтез:

Что нашли ВСЕ три анализа - structural certainty

Что нашли двое - strong signal

Что нашёл только один - unique perspective (и объяснение, почему два других не могли это увидеть)

Финальный вывод - то, что могло появиться ТОЛЬКО из трёх взглядов одновременно.


Prism Full - многоходовка с адвокатом дьявола

Full - это когда одного взгляда мало, а трёх - много. Ты проектируешь 2-4 аналитических пасса, каждый следующий пасс получает артефакт ПЛЮС результаты предыдущих.

Обязательный финальный пасс - Adversarial:

Атакуй собственные находки. Для каждого консервационного закона, структурного утверждения, бага:

Какие evidence опровергли бы этот вывод?

Не переоценил? (сказал "структурно" - а на самом деле чинится)

Не недооценил? (пропустил то, что следует из твоего же анализа)

Что ВСЕ твои пассы приняли как данность - и, возможно, зря?

Chaining с Premortem: Prism отвечает "что структурно не так с планом?", Premortem - "как это нас убьёт?".


Prism Reflect - знает, чего не знает

Самый необычный инструмент. Reflect анализирует не артефакт - а собственный анализ.

Фаза 1: Структурный анализ артефакта (как Scan).

Фаза 2: Прочитать результат Фазы 1 как НОВЫЙ артефакт и проанализировать его - тем же протоколом. Что первая фаза пропустила? Что скрыла? Какой analytical frame заслонил одни проблемы и открыл другие?

Фаза 3: Constraint Transparency Report - обязательный структурированный вывод:

"Агент, который знает, чего не видит - агент, которому можно доверять." Это не рекламный слоган, это инженерный принцип.


Практическая применимость

ADR → Prism → Premortem pipeline:

  1. Написал ADR

  2. Prism - обнаружил скрытые допущения, экономические дыры, структурные трещины

  3. Premortem - развернул каждую структурную проблему в сценарий катастрофы

  4. Переписал ADR - и повторил Premortem на исправленной версии

Результат: три артефакта - ADR, анализ Prism, premortem-отчёт.

Где работает:

Code review (особенно архитектурных PR)

Анализ AI-характеристик (оценка модели)

Архитектурные решения (миграции, выбор стека)

Анализ документов (договоры, ОСС - кто что скрывает)

Оценка своих же идей (до того как упарился реализовывать)

Ограничения честно:

Требователен к модели - нужна reasoning-capable (DeepSeek V4, Claude Sonnet/Opus). На дешёвых моделях Prism вырождается в формальный checklist.

Дороже обычного вопроса - 3-4 анализа вместо одного.

Не заменяет экспертизу - Prism находит проблемы, но решает их инженер.

Conservation law может быть тривиальной ("быстро × качественно ≠ дёшево") - но часто это, наоборот, неочевидный инвариант, который автор системы сам не сформулировал.


Вывод

LLM не перестанет поддакивать. Это вшито в архитектуру. Но можно перестать верить её "отличное решение" - и вместо этого дать ей процесс, который обязывает думать структурно.

Prism не делает LLM умнее. Он делает её честнее.


📊 Схема: hermes-prism-diagram.png

🌐 hermes-agent.ru - сайт проекта

🐙 github.com/Cranot/super-hermes - репозиторий с исходным кодом Prism

ℹ️ Хотите попробовать, но нет времени разбираться? Напишите в контакты на сайте - поможем с настройкой и подбором сценария под ваши задачи.