Когда работаешь с coding agents, особенно в креативных или междисциплинарных задачах, сталкиваешься с проблемой линейного мышления. Агенты часто застревают в одном узком фрейме, и это ограничивает их потенциал. Проект UditAkhourii/adhd предлагает интересное решение — подход, который назван ADHD (Attention Deficit Hyperactivity Disorder), но с выверенным инженерным подтекстом.
ADHD как методология: Tree-of-thought с pruning
Основная идея ADHD — это использование Tree-of-thought (ToT) подхода с добавлением механизма pruning (обрезки). Если коротко: агент генерирует несколько параллельных мыслей под разными когнитивными фреймами, оценивает их, отсекает неперспективные и углубляет оставшиеся. Это не просто брутфорс идей, а структурированный процесс, который помогает избежать тупиковых веток.
На практике это выглядит так:
- Divergent thinking: агент создает несколько вариантов решения задачи, используя разные подходы или контексты.
- Scoring: каждый вариант оценивается по заданным критериям (например, креативность, эффективность, реализуемость).
- Pruning: варианты с низким скором отсекаются, чтобы не тратить ресурсы на их дальнейшую обработку.
- Deepening: оставшиеся варианты углубляются, чтобы получить более детализированные решения.
Этот процесс напоминает мозговой штурм, но с четкой структурой и автоматизацией. Особенно полезно в задачах, где требуется нестандартное мышление или комбинация разных дисциплин.
Claude и Codex SDK: комбо для креативных задач
ADHD построен на базе Claude и Codex Agent SDK, и это не случайно. Claude отлично справляется с генерацией идей и абстрактным мышлением, а Codex — с технической реализацией. Вместе они позволяют создавать решения, которые балансируют между креативностью и практичностью.
Например, если задача — предложить архитектуру для нового сервиса, Claude может генерировать несколько концепций, а Codex — оценивать их с точки зрения технической реализуемости. Это особенно полезно в междисциплинарных проектах, где нужно учитывать и бизнес-требования, и технические ограничения.
Практический сценарий: архитектура микросервисов
Допустим, у вас есть задача спроектировать архитектуру микросервисов для новой фичи. ADHD может помочь следующим образом:
- Divergent thinking: агент предлагает несколько вариантов организации сервисов — классический REST, GraphQL, event-driven архитектура.
- Scoring: каждый вариант оценивается по критериям: масштабируемость, простота поддержки, скорость разработки.
- Pruning: если GraphQL оказывается слишком сложным для текущей команды, этот вариант отсекается.
- Deepening: оставшиеся варианты углубляются — например, для event-driven архитектуры предлагаются конкретные брокеры сообщений (Kafka, RabbitMQ).
Такой подход помогает избежать ситуации, когда команда застревает в одном решении и упускает более подходящие альтернативы.
Где ADHD действительно полезен?
ADHD — не универсальный инструмент, но в определенных сценариях он может быть крайне полезен:
- Креативные задачи: где требуется генерация нестандартных идей.
- Междисциплинарные проекты: где нужно учитывать разные аспекты (технические, бизнес, UX).
- Прототипирование: когда нужно быстро оценить несколько вариантов и выбрать лучший.
Однако, это не панацея. В задачах, где требуется строгая логика или четкий алгоритм, ADHD может быть избыточным. Также стоит учитывать, что процесс генерации и оценки идей требует ресурсов, поэтому для простых задач он может быть неэффективен.
Что попробовать дальше?
Если вас заинтересовал подход ADHD, вот несколько шагов для старта:
- Изучите репозиторий проекта — там есть примеры использования и документация.
- Поэкспериментируйте с Claude и Codex SDK в связке, чтобы понять, как они работают вместе.
- Попробуйте применить ADHD в реальной задаче — например, в проектировании архитектуры или генерации идей для новой фичи.
ADHD — это не про хаос, а про структурированный подход к генерации идей. Если вы столкнулись с проблемой линейного мышления в coding agents, этот метод стоит попробовать. Но помните: как и любой инструмент, он требует адаптации под конкретные задачи и контекст.
Источник: https://github.com/UditAkhourii/adhd