Параллельные агенты кодирования с использованием tmux и спецификаций в Markdown

Мануэль Шиппер запускает параллельных кодирующих агентов с помощью лёгкой настройки, используя tmux, файлы Markdown, bash-алиасы и шесть слэш-команд. Это стандартные агенты без профилей под-агентов или оркестраторов, использующие соглашение об именовании ролей для каждого окна tmux: Планировщик (Planner, создаёт спецификации Markdown), Исполнитель (Worker, реализует готовые спецификации) и Менеджер проекта (PM, управление бэклогом и сбор идей).
Система Feature Design
Большая часть написания кода происходит на основе готовых спецификаций, называемых Feature Designs (FD). FD — это файл Markdown, содержащий:
- Описание решаемой проблемы
- Все рассмотренные решения с плюсами и минусами для каждого
- Финальное решение с планом реализации, включая файлы для обновления
- Шаги верификации
После внедрения этой системы Шиппер может работать параллельно с 4-8 агентами. При превышении 8 агентов качество решений ухудшается. Система была создана вручную в одном проекте с более чем 300 спецификациями, а затем перенесена в новые проекты с помощью команды /fd-init, которая настраивает систему в любом репозитории.
Отслеживание и жизненный цикл FD
Каждой FD присваивается пронумерованный файл спецификации (FD-001, FD-002...), отслеживаемый в индексе всех FD. Файлы находятся в docs/features/ и проходят 8 стадий:
- Запланировано (Planned): Определено, но ещё не спроектировано
- Проектирование (Design): Активное проектирование решения
- Открыто (Open): Спроектировано, готово к реализации
- В процессе (In Progress): В настоящее время реализуется
- Ожидает верификации (Pending Verification): Код завершён, ожидает проверки в работе
- Завершено (Complete): Проверено на работоспособность, готово к архивации
- Отложено (Deferred): Отложено на неопределённый срок
- Закрыто (Closed): Не будет выполнено
Слэш-команды
Шесть слэш-команд управляют полным жизненным циклом:
/fd-new: Создать новую FD из набора идей/fd-status: Показать индекс: что активно, ожидает верификации и завершено/fd-explore: Запустить сессию: загрузить документацию по архитектуре, руководство разработчика, индекс FD/fd-deep: Запустить 4 параллельных агента Opus для исследования сложной проектной задачи/fd-verify: Проверить код, предложить план верификации, выполнить коммит/fd-close: Архивировать FD, обновить индекс, обновить журнал изменений
Каждый коммит связан со своей FD (например, "FD-049: Реализовать инкрементальную пересборку индекса"). Журнал изменений автоматически пополняется по мере завершения FD.
Пример файла FD
FD-051: Многометочная классификация документов Статус: Открыто Приоритет: Средний Затраты усилий: Средние Эффект: Улучшенный отзыв для последующей фильтрацииПроблема
Входящие документы получают одну метку категории, но многие охватывают несколько тем. Последующие фильтры пропускают релевантные документы, потому что классификатор вынуждает выбрать одно наилучшее соответствие.
Решение
Заменить однозначную классификацию на многометочную:
- Использовать LLM для присвоения оценок уверенности по каждой категории.
- Принимать все метки с уверенностью выше 0.90.
- Для неоднозначных оценок (0.50-0.90) выполнить второй проход LLM с few-shot примерами для подтверждения.
- Сохранять все метки с оценками, чтобы последующие запросы могли гибко пороговые значения.
Файлы для изменения
- src/classify/multi_label.py (новый: логика многометочной классификации на основе LLM)
- src/classify/prompts.py (новый: шаблоны few-shot для неоднозначных случаев)
- sql/01_schema.sql (добавить таблицу document_labels с оценками)
- sql/06_classify_job.sql (новый: запланированная классификация после приёма)
Верификация
- Запустить классификатор на тестовой таблице документов
- Проверить отсутствие ошибок в журнале операций, выполнить проверки работоспособности
- Выборочная проверка: документы с известным многотемным содержанием имеют ожидаемые метки
- Запустить тесты, подтвердить, что последующие фильтры учитывают порог уверенности
Инициализация системы
Запуск /fd-init в любом репозитории:
- Определяет контекст проекта из CLAUDE.md, конфигураций пакетов и журнала git
- Создаёт структуру каталогов (
docs/features/,docs/features/archive/) - Генерирует FEATURE_INDEX.md, адаптированный под проект
- Создаёт шаблон FD
- Устанавливает шесть слэш-команд
- Добавляет соглашения о жизненном цикле FD в CLAUDE.md проекта
Создаваемые файлы включают docs/features/FEATURE_INDEX.md (индекс функций), docs/features/TEMPLATE.md (шаблон файла FD), docs/features/archive/ (каталог архива), CHANGELOG.md (формат Keep a Changelog) и обновления в CLAUDE.md с проектными соглашениями, включая систему FD.
📖 Read the full source: HN AI Agents
👀 Смотрите также

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

CC-Canary: Обнаружение регрессий в Claude Code с помощью локального анализа JSONL
CC-Canary читает журналы сессий Claude Code и составляет судебно-медицинский отчет о дрейфе модели, включая соотношение чтения/редактирования, циклы рассуждений, тенденции затрат и автоматически определяемые даты перегиба.

yburn: Инструмент для аудита и замены ненужных cron-задач AI-агентов
yburn — это инструмент на Python, который проверяет cron-задачи AI-агентов и заменяет те, что не требуют LLM, на автономные Python-скрипты. Создатель обнаружил, что 58% из 98 cron-задач были чисто механическими задачами, такими как проверка состояния системы и резервное копирование git.

Клод Банан: Плагин Claude Code для генерации изображений с учетом дизайн-системы
Claude Banana — это плагин Claude Code для генерации изображений с использованием API Google Gemini. Он создаёт контекстно-зависимые промпты, анализируя конфигурации Tailwind, CSS-переменные, дизайн-токены и существующие ресурсы, чтобы понять визуальный стиль проекта.