Claude Info
Дизайн

Picasso Orchestrator

RazvanGabrielNiculae/picasso-claude-design-claude-code-bridge-loop

Оркестратор, замыкающий Claude Code и Claude Design в цикл обратной связи: бриф → дизайн → реализация → оценка → доработка. Пропускает результат только при достижении порога точности 9.0/10 по 6 визуальным критериям.

Установка

terminal
bash
git clone https://github.com/RazvanGabrielNiculae/picasso-claude-design-claude-code-bridge-loop.git

README

🎨 Picasso Orchestrator: Claude Design 🔄 Claude Code [Bridge Loop]

Первый двунаправленный цикл с оценкой-шлюзом между Claude Code и Claude Design.Бриф → Дизайн → Реализация → Оценка → Доработка.

GitHub Visual Docs

Stars Gate Score Patterns License

Claude Code Claude Design Karpathy Modes


Хватит гадать, совпадает ли реализация с дизайном. Пусть цикл докажет это сам.

Picasso соединяет Claude Code с Claude Design в замкнутый цикл обратной связи — на вход подаётся структурированный бриф, на выход — верифицированный код, а между ними стоит шлюз точности с математической оценкой. Никаких «и так сойдёт». Либо оценка достигает 9.0 / 10, либо цикл продолжается.


⚡ Быстрый старт — 3 шага, 30 секунд

bash
# 01 · Установка (однострочник — автоматически патчит ~/.claude)
curl -fsSL https://cdn.jsdelivr.net/gh/RazvanGabrielNiculae/picasso-claude-design-claude-code-bridge-loop@main/scripts/install-oneliner.sh | bash

# 02 · Проверка корректности подключения
picasso-bridge verify --smoke

# 03 · Запуск первого цикла
/picasso --design-loop "hero cinematic for B2B SaaS" --scope complex

💡 Нужна пошаговая настройка? Добавьте --wizard к команде установки — он интерактивно проведёт через настройку шлюза, максимального числа раундов и подключения хуков.


🔁 Как это работает

mermaid
flowchart LR
    A([picasso]) --> B[ASSUMPTIONS] --> C[DESIGN.md] --> D[Claude Design] --> E[Implement] --> F[Render] --> G[Score] --> H{Gate 9.0}
    H -- "✅" --> I([APPROVED])
    H -- "📉" --> J([STAGNATED])
    H -- "🔄 refine" --> D

    style A fill:#ff2d95,stroke:#ff4fa8,color:#fff
    style B fill:#2a1420,stroke:#ff2d95,color:#ffa2cf
    style C fill:#0d1f2d,stroke:#5ce1ff,color:#8eecff
    style D fill:#0d1f2d,stroke:#5ce1ff,color:#8eecff
    style E fill:#1a1a2e,stroke:#7cf0a0,color:#7cf0a0
    style F fill:#1a1a2e,stroke:#7cf0a0,color:#7cf0a0
    style G fill:#2a2000,stroke:#ffd83d,color:#ffd83d
    style H fill:#2a2000,stroke:#ffd83d,color:#fff59d
    style I fill:#0d2e1a,stroke:#4caf50,color:#7cf0a0
    style J fill:#2e1a0d,stroke:#ff9800,color:#ffb14a
  1. Бриф → Опишите цель дизайна на естественном языке (/picasso --design-loop "hero for B2B SaaS")
  2. ASSUMPTIONS → Picasso выводит выведенные токены как явный блок до любого обращения к браузеру — вы правите их прямо в тексте
  3. DESIGN.md → Генерируется структурированная спецификация из 9 разделов: цвета · типографика · макет · анимация · адаптивность · доступность
  4. Claude Design → Picasso отправляет структурированный промпт и захватывает визуальное предложение через скриншот
  5. Реализация → Субагент с нулевым контекстом применяет только изменённые разделы DESIGN.md (~200 токенов против 2 000 при наивном подходе)
  6. Рендер → Десктоп всегда · мобильный только если предыдущая оценка адаптивности < 8.0
  7. Оценка → Взвешенный шлюз: ΔE цвета (25%) · типографика (20%) · макет (20%) · компоненты (15%) · анимация (10%) · адаптивность (10%)
  8. Расхождения → Максимум 3 строки · формат с объявленной целью: текущее → целевое · передаются в следующий раунд
  9. Шлюзscore ≥ 9.0 → ✅ APPROVED · плато → STAGNATED · иначе → доработка и повтор с шага 4

📊 Цифры

МетрикаЗначениеЧто означает
🎯 Порог шлюза по умолчанию9.0 / 10Взвешенная точность по 6 визуальным критериям
🔄 Режимы цикла5loop · solo · critique · reference · iterate
📐 Шагов за раунд7запрос → извлечение → реализация → рендер → оценка → расхождения → шлюз
🧩 Паттерны оркестрации9+Токен-осознанные, защищённые от стагнации
🧠 Принципы Karpathy4Встроены в кондуктор — не опциональные надстройки
Экономия токеновПо сравнению с наивным полноконтекстным циклом (субагент с нулевым контекстом + ленивые чтения)

🔧 Требования

ИнструментВерсияРоль
🤖 Claude Code≥ 0.2.0CLI-хост — кастомные команды + субагенты + хуки
🎨 Тариф ClaudePro · Max · Team · EnterpriseНеобходим для доступа к claude.ai/design
🌐 ChromeпоследняяАутентифицированная сессия на claude.ai
🔌 chrome-mcpпоследняяMCP-транспорт браузера — навигация, клики, скриншоты
📐 webdesign-mcpпоследняяИзвлечение токенов · рендер превью · вычисление оценки
📦 Node≥ 18Среды выполнения MCP-серверов
🛠️ jq · bashлюбаяИспользуются хуками и скриптами установки

🔄 Цикл — 7 шагов за раунд

Полное описание каждого шага, примеры вывода и диаграммы состояний — в docs/LOOP.md.

ШагНазваниеЧто происходит
1RequestPicasso формирует структурированный промпт из DESIGN.md и отправляет его в Claude Design
2ExtractСкриншот захватывается; токены цвета, типографики и макета извлекаются через webdesign-mcp
3ImplementСубагент с нулевым контекстом получает только дельту DESIGN.md — не весь файл
4RenderДесктоп всегда; мобильный рендер запускается только при адаптивной оценке < 8.0
5ScoreВзвешенная оценка по 6 критериям → итоговый балл от 0 до 10
6GapsМаксимум 3 расхождения в формате текущее → целевое; передаются в следующий раунд
7Gate≥ 9.0 → APPROVED · плато → STAGNATED · иначе → следующий раунд

🎛️ Режимы

Полная документация по режимам — в docs/MODES.md.

РежимКомандаНазначение
loop/picasso --design-loop "..."Полный цикл: дизайн → реализация → оценка → доработка
solo/picasso --solo "..."Только реализация, без обращения к Claude Design
critique/picasso --critiqueОценить текущее состояние без изменений
reference/picasso --reference image.pngИспользовать внешнее изображение как эталон дизайна
iterate/picasso --iterateПродолжить предыдущий цикл с новыми расхождениями

🧩 Паттерны оркестрации

Полное описание всех 9 паттернов — в docs/DESIGN-PATTERNS.md.

#ПаттернПроблема, которую решает
1Zero-context subagentПредотвращает дрейф контекста при реализации
2Lazy DESIGN.md readsЧитает только изменённые разделы (~200 токенов)
3Stagnation guardОбнаруживает плато оценки и прерывает цикл
4Assumption surfacingДелает выведенные токены явными до первого вызова
5Conditional mobile renderРендерит мобильный вид только при необходимости
6Goal-declared gap formatСтруктурирует расхождения как текущее → целевое
7Weighted gate scoring6 критериев с разными весами вместо единой метрики
8Hook-driven verificationPre/post-хуки проверяют инварианты без ручного контроля
9Structured 9-section specРазбивает DESIGN.md на атомарные обновляемые разделы

🧠 Философский фундамент: принципы Karpathy

Подробнее — в docs/DESIGN-PATTERNS.md#philosophical-foundation.

Picasso реализует четыре принципа из подхода Karpathy к надёжным AI-системам:

  1. Явность предположений — ASSUMPTIONS-блок делает все выводы видимыми до начала работы
  2. Минимальный контекст — субагент с нулевым контекстом и ленивые чтения сокращают шум
  3. Измеримые критерии выхода — шлюз 9.0/10 заменяет субъективное «выглядит хорошо»
  4. Защита от стагнации — детектор плато предотвращает бесконечные циклы без прогресса

📁 Структура репозитория

picasso-claude-design-claude-code-bridge-loop/ ├── .claude/ │ ├── commands/ │ │ └── picasso.md # Определение команды /picasso │ └── hooks/ │ ├── pre-tool-use.sh # Проверка инвариантов перед вызовом инструмента │ └── post-tool-use.sh # Верификация после вызова инструмента ├── scripts/ │ ├── install-oneliner.sh # Однострочник установки │ └── verify.sh # Smoke-тест подключения ├── docs/ │ ├── LOOP.md # Детальное описание 7 шагов │ ├── MODES.md # Документация по 5 режимам │ ├── DESIGN-PATTERNS.md # Все 9 паттернов оркестрации │ ├── GATE-SCORING.md # Методология взвешенной оценки │ └── banner.svg # Баннер репозитория └── README.md

📄 Лицензия

MIT — подробности в файле LICENSE.

Похожие скиллы