Об этом проекте

Shader Agent — это локальный программный инструментарий, разработанный для создателей и разработчиков, которым требуются воспроизводимые и автономные рабочие процессы для генерации, анализа, валидации и экспорта шейдеров. Он объединяет в себе Python CLI, локальный Web UI, поиск по SQLite с поддержкой FTS5, фильтрацию с учетом лицензий, шлюзы валидации рендеринга и помощники экспорта, адаптированные для таких платформ, как Shadertoy, WebGL, LÖVE 2D и офлайн-производство видео. Инструмент поддерживает детерминированную генерацию черновиков GLSL, не требуя по умолчанию внешних API-ключей. Опциональная генерация с помощью ИИ может быть включена через переменные окружения или ввод в UI только для текущей сессии; поддерживаются провайдеры OpenAI-compatible, OpenAI, Anthropic, Gemini и Ollama. Пользователи могут настраивать параметры ИИ, такие как модель, базовый URL, повторные попытки, кэш и параллелизм, через переменные окружения — настоящие ключи нельзя коммитить в репозиторий. Ключевые особенности включают импорт метаданных и кода шейдеров из JSONL, итеративную генерацию нескольких кандидатов с обратной связью по рендерингу, предварительные проверки синтаксиса, формы mainImage, соответствия лицензиям и дымовое тестирование, а также пакеты экспорта, совместимые с Shadertoy и LÖVE 2D. Web UI предоставляет живой предпросмотр WebGL, редактируемый код, графы узлов для неразрушающей итерации и средства управления экспортом кадров или видео с настраиваемой частотой кадров, разрешением и микшированием. Проект включает режим чата в CLI с проектными выходными данными, аудит ссылок и такие команды, как /search, /export и /repair-ai. Архитектура модульная: cli.py для командной строки, webapp.py для локального сервера, agent.py для оркестрации, store.py для хранения и поиска, llm.py для маршрутизации провайдеров, quality.py для шлюзов валидации и targets/ для платформенно-зависимых адаптеров. Инструментарий был использован для создания 22 эпизодов VFX-видео на основе шейдеров, опубликованных на Bilibili и YouTube, что демонстрирует долгосрочное практическое применение за пределами изолированных экспериментов. Тестирование включает модульные тесты, скрипты приемки и валидацию браузерного UI. Сторонние компоненты, такие как ufbx, включены под лицензией MIT. Рекомендации по безопасности подчеркивают необходимость держать API-ключи, приватные промпты, сгенерированные медиафайлы и базы данных вне публичных issue или PR. Дорожная карта включает публикацию публичного репозитория, добавление CI-бейджей, размещение скриншотов/GIF, улучшение валидации рендеринга и отделение тяжелых тестов от быстрых проверок PR. Выпущено под лицензией MIT.