? Проблема не в модели

GPT-codex, Claude 4.8, Gemini 3.5 flash: все они умеют писать хороший код. Но по умолчанию ни один из них не знает ваших стандартов. ?‍♂️

Что получает модель без системного промпта:

  • Никаких ограничений на архитектуру ?️

  • Никаких предпочтений по тестированию ?

  • Никаких правил по визуальному качеству ?

  • Никаких требований к безопасности ?

Результат предсказуем. Компонент работает. Стили: дефолтный Tailwind. Тесты не написаны. any везде, где TypeScript сопротивлялся. Магические числа без объяснений. ?

Это не модель плохая. Это пустое поле вместо технического задания. ?


? Системный промпт: почему не работает «act as a senior dev»

Стандартные советы про системные промпты обычно заканчиваются на «скажи модели, что она опытный разработчик». Это примерно как нанять специалиста и описать его роль словом «хороший». ?

Настоящий системный промпт для инженерных задач выглядит иначе. Вот что в реальности содержит хорошо написанная персона для senior fullstack инженера:

  • Конкретные архитектурные принципы (когда поднимать стейт, когда нет) ?

  • Жесткие правила по именованию и структуре ?️

  • Обязательные паттерны для конкретных сценариев (data fetching, error boundaries, loading states) ?

  • Явные запреты на действия без согласования ?

  • Стандарты code review и критерии готовности к PR ?

Разница между шаблонным «act as senior developer» и детальной инструкцией сравнима с разницей между джуниором и техлидом. ?‍?


? proagents: 794 таких промпта, ноль зависимостей

github.com/Arlandaren/proagents: открытая библиотека, собранная из шести ведущих репозиториев с агентными конфигурациями. ?

Структура проекта:

proagents/
├── personas/          # 232 агента-специалиста
│   ├── engineering/   # 126 инженерных ролей
│   ├── design/        # 15 дизайн-персон
│   ├── operations/    # 33 операционных роли
│   └── ...
├── workflows/         # 521 исполняемый чеклист
│   ├── development/   # 363 воркфлоу разработки
│   ├── security/      # 64 чеклиста безопасности
│   └── ...
└── rules/             # 41 правило генерации
    ├── taste/         # Визуальные стандарты
    └── core/          # Гигиена кода

Установка в IDE выполняется одной командой: ⚡

git clone https://github.com/Arlandaren/proagents.git
cd proagents
./proagents install react-patterns --cursor

Настройка завершена. Редактор Cursor теперь знает ваши стандарты. ?


? Разбор: что меняется с rules/taste/

Папка rules/taste/, пожалуй, самая недооцененная часть репозитория. Она не описывает роль. Она описывает эстетику. ✨

animate.md ?‍♂️

Запрещает CSS transition и animation в пользу spring physics. Вместо transition: all 0.3s ease используется useSpring из framer-motion с конкретными значениями stiffness и damping. В результате анимации ощущаются физически правдоподобными, а не просто «плавными».

liquid-glass.md ?

Настройка эффекта Glassmorphism. Никаких backdrop-filter: blur(10px) наугад, только проверенные комбинации blur, saturation и overlay-цветов, которые работают на разных фонах. Дополнительно описаны правила, когда этот эффект уместен, а когда создает проблемы с доступностью интерфейса.

bolder.md ✍️

Типографика без компромиссов. Иерархия контраста, правила для font-weight, запрет на использование color: #888888 в качестве нейтрального цвета. Текст либо читается, либо его нет.

overdrive.md ?

Используется, когда нужен максимальный премиальный вид. Высокая визуальная плотность при сохранении читаемости. Этот файл стоит применять точечно, так как он делает UI агрессивно выразительным.


? Конкретный пример: до и после

Задача: написать карточку продукта в React.

Без системного промпта:

function ProductCard({ product }) {
  return (
    <div style={{ border: '1px solid #ccc', padding: '16px', borderRadius: '8px' }}>
      <img src={product.image} alt={product.name} />
      <h3>{product.name}</h3>
      <p>{product.price}</p>
      <button onClick={() => addToCart(product.id)}>Add to Cart</button>
    </div>
  );
}

Код работает, но выглядит слабо. Атрибут alt не несет смысла. Нет состояния загрузки, отсутствует обработка ошибок. Переменная addToCart берется из ниоткуда. ?

С react-patterns + animate из proagents:

interface ProductCardProps {
  product: Product;
  onAddToCart: (productId: string) => void;
}

function ProductCard({ product, onAddToCart }: ProductCardProps) {
  const [isAdding, setIsAdding] = useState(false);
  const cardSpring = useSpring({ scale: 1, config: { stiffness: 300, damping: 20 } });

  const handleAddToCart = async () => {
    setIsAdding(true);
    await onAddToCart(product.id);
    setIsAdding(false);
  };

  return (
    <animated.article
      style={cardSpring}
      onMouseEnter={() => cardSpring.scale.set(1.02)}
      onMouseLeave={() => cardSpring.scale.set(1)}
      aria-label={`${product.name}, ${formatPrice(product.price)}`}
    >
      <img
        src={product.imageUrl}
        alt={product.name}
        loading="lazy"
      />
      <h3>{product.name}</h3>
      <p>{formatPrice(product.price)}</p>
      <button
        onClick={handleAddToCart}
        disabled={isAdding}
        aria-busy={isAdding}
      >
        {isAdding ? 'Добавляем...' : 'В корзину'}
      </button>
    </animated.article>
  );
}

Код полностью типизирован. Функция onAddToCart корректно передается через props. Добавлено состояние загрузки и поддержка доступности. Реализована spring-анимация с конкретными значениями. Форматирование цены вынесено в formatPrice. ?

Модель не стала умнее. Просто получила правильное ТЗ. ?


? Какие IDE поддерживаются

IDE

Команда

Cursor ?

./proagents install <name> --cursor

Claude Code ?

./proagents install <name> --stdout >> CLAUDE.md

Windsurf ?

./proagents install <name> --windsurf

Gemini CLI ♊

./proagents install <name> --antigravity

OpenCode ?

./proagents install <name> --opencode

Любой ?️

./proagents install <name> --target /path/to/file


⚡ Попробуйте прямо сейчас

git clone https://github.com/Arlandaren/proagents.git
cd proagents
./proagents search security  # найдите нужные файлы
./proagents install owasp-threat-modeling --stdout  # просмотрите содержимое

Репозиторий: github.com/Arlandaren/proagents

Если библиотека упростила вашу работу, поддержите проект звездой на GitHub и лайком на Хабре. Если у вас есть свои проверенные промпты, пулреквесты приветствуются. ?

Комментарии (5)


  1. CitizenOfDreams
    02.06.2026 05:05

    794 проверенных системных промпта

    Как средневековые алхимики, блин. Вот сейчас мы смешаем львиную гриву с закатным светом в нужных пропорциях, нагреем до правильной температуры, и тогда у нас совершенно точно получится золото.


  1. iBear
    02.06.2026 05:05

    GPT-4, Claude 3.5, Gemini 1.5

    Это что за археологические раскопки? Какая модель статью писала?


  1. CryptoPirate
    02.06.2026 05:05

    Не, это прям полное безобразие. Статью полностью модель писала судя по количеству эмодзи, опечатка прямо в названии статьи. Автор, вы её хоть сами то читали?


    1. KEugene
      02.06.2026 05:05

      Постил, наверно, тоже автомат.


    1. alrn Автор
      02.06.2026 05:05

      Да