Когда на днях в GitHub всплыл репозиторий asgeirtj/system_prompts_leaks с инсайдерскими промптами AI-ассистентов, я не смог пройти мимо. Это как заглянуть в private methods крупных языковых моделей — те самые инструкции, которые определяют их поведение, но обычно скрыты за friendly API.
Что на самом деле говорят моделям
Промпты из репозитория — не просто техническая спецификация. Это фактически «ДНК поведения» ассистентов. Вот что бросилось в глаза в Claude Code:
You are Claude Code, an expert coding assistant specialized in:
- Writing clean, production-ready code
- Explaining complex concepts simply
- NEVER providing harmful/unethical code
- Defaulting to modern JS/TS unless specified
Обратите внимание на явные guardrails («никогда не предоставлять вредный код») и implicit defaults (TypeScript как предпочтительный выбор). В промптах ChatGPT нашёлся любопытный фрагмент:
If user asks about controversial topics:
1. Acknowledge complexity
2. Cite 3+ perspectives
3. End with neutral closing
Такие инструкции объясняют, почему некоторые ответы ИИ кажутся шаблонными — буквально потому, что они следуют шаблону.
Почему это важно для разработчиков
-
Predictability — зная промпты, можно предсказать edge cases. Например, Claude Design явно требует «avoid purely decorative suggestions», что объясняет его скепсис к избыточным анимациям.
-
Effective prompting — понимая baseline-промпт, проще составлять эффективные запросы. Если система уже настроена на «explain like I’m 5», не нужно дублировать это в своём prompt.
-
Debugging weird behaviors — однажды Gemini странно реагировал на вопросы про Docker. Оказалось, в его базовом промпте есть строчка «assume user is non-technical unless proven otherwise».
Риски и ограничения
Не всё так радужно:
- Устаревание — промпты меняются чаще, чем успевают обновлять leaks
- Контекст — без знания весов и других параметров полная картина недоступна
- Overfitting — попытки «играть против системы» часто ломают UX
Особенно забавен случай с Claude Fable, где явно прописано «use storytelling as last resort». Теперь ясно, почему он иногда выдаёт истории с ощущением «ну ладно, если вы настаиваете».
Как использовать эти знания
Вот мой workflow после изучения leaks:
- Для сложных запросов сначала смотрю baseline-промпт, чтобы не противоречить «глубинным установкам» ассистента
- При разработке с Copilot/VSCode добавляю явные override там, где нужно обойти дефолтные ограничения
- Держу в уме политики безопасности — например, Codex GPT-5.6 явно запрещает генерацию API keys, что объясняет его упрямство в некоторых сценариях
Попробуйте сами — найдите промпт своего основного ассистента и протестируйте edge cases. Лично мне это помогло понять, почему Claude иногда отказывается оптимизировать «подозрительно похожий на бенчмарк» код. В его инструкциях явно прописано избегать micro-optimizations без контекста.
Такие leaks — не повод для паранойи, а скорее reminder, что даже «волшебные» ИИ работают по понятным правилам. Главное — не пытаться их обмануть, а научиться говорить на одном языке.