惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

The Last Watchdog
The Last Watchdog
C
Cyber Attacks, Cyber Crime and Cyber Security
L
LINUX DO - 热门话题
G
GRAHAM CLULEY
S
Schneier on Security
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
S
SegmentFault 最新的问题
IT之家
IT之家
阮一峰的网络日志
阮一峰的网络日志
Recorded Future
Recorded Future
I
Intezer
云风的 BLOG
云风的 BLOG
博客园 - Franky
月光博客
月光博客
大猫的无限游戏
大猫的无限游戏
T
Tenable Blog
The Hacker News
The Hacker News
T
The Blog of Author Tim Ferriss
Attack and Defense Labs
Attack and Defense Labs
D
DataBreaches.Net
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
N
News and Events Feed by Topic
有赞技术团队
有赞技术团队
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
N
News and Events Feed by Topic
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
S
Secure Thoughts
The Register - Security
The Register - Security
B
Blog
Security Archives - TechRepublic
Security Archives - TechRepublic
The Cloudflare Blog
Webroot Blog
Webroot Blog
W
WeLiveSecurity
H
Heimdal Security Blog
博客园 - 三生石上(FineUI控件)
V
Vulnerabilities – Threatpost
G
Google Developers Blog
O
OpenAI News
V
V2EX
罗磊的独立博客
博客园_首页
N
News | PayPal Newsroom
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
TaoSecurity Blog
TaoSecurity Blog
Cloudbric
Cloudbric
H
Hacker News: Front Page
博客园 - 叶小钗
T
Tor Project blog
AI
AI

Все публикации подряд на Хабре

Ловим музу за клавиатуру: как айтишнику стать автором Что умеет Midjourney в 2026? Мой немного грустный разбор этого шикарного инструмента Никто не любит писать тесты, но ИИ может исправить это IPv8 выглядит как мечта. Поэтому почти наверняка не взлетит Производители вернули в продажу материнки с DDR3. Что происходит? Управление агентом с телефона через Telegram теперь в KodaCode От координации к лидерству: как меняется роль руководителя разработки Я сделала родителям бизнес вместо пенсии: зарабатываем 70 тысяч, мама не даёт продать В три раза быстрее приемка товара и оптимизация трудозатрат на 73%: как «РСТ-Инвент» помог Gulliver Group ИИ-шечный мир победил? О влиянии искусственного интеллекта на игропром Кремль снижает давление на Телеграмм пока Европа строит интернет по паспорту Как CEO, CTO и CIO за 8 часов собрали ИИ-директора, который умеет держать позицию под давлением Как (не) потерять домен за выходные Вместо 8 разных VPS: как я организовал практику студентам на одном сервере Почему твой Open Source проект не замечают? R&D: искусство управления неопределенностью в разработке AI-дефляция: вакансий для разработчиков больше, а рост зарплат — худший за 15 лет Мы отдали управление роботами OpenClaw. Что из этого вышло Галактический ID: система идентификации для всех форм разумной жизни Шесть основ бизнес-анализа: начинаем с вопроса «Кто в игре?» Код-ревью, в котором дело не в коде Данные переехали. Команда — нет Системной подход к сдаче OSWE в 2025 Почему комната управления реактором покрашена в цвет морской пены 4 YAML-файла вместо PySpark: как аналитикам строить пайплайны без разработчиков LLM-агент для поиска свободных доменов: автоматизируем подбор Когда, зачем и как правильно начинать новую сессию в Claude Code? Как я заставил нейросеть писать макросы для FreeCAD Анатомия ИИ‑агента для подбора персонала. От тысячи резюме к топ‑10 за минуты Опыт разработчика как экономика внимания Автономность как точка невозврата: кто будет субъектом в цифровом будущем Обучение ИИ в «диких» условиях: как рутинные действия превращаются в датасеты Как измерить LLM для задач кибербеза: обзор открытых бенчмарков Где хранить код? Сравнение GitHub, GitLab и Bitbucket Математика объясняет, почему нормальное распределение встречается повсюду Почему ваш FinOps не работает: 12 тезисов от практиков Как подписать проектную документацию УКЭП с использованием бесплатных лицензий Pilot Адаптивное администрирование Sigla Vision Я грузил уран в бочки, а потом 20 лет строил ИТ в атомной отрасли Чем позвонить с Эвереста? История и обзор спутниковой связи. Часть 2 Как языковая модель помогает контролировать качество инструктажей по охране труда в металлургии Как не передать на desktop свой IP в РКН Анатомия SAP Privileges: как устроено управление правами в macOS MoneyDev: Сказка про три главных слова Обновлённый токенизатор видео K-VAE 2.0 от Сбера Как сделать диспетчеризацию дома на 1284 квартиры почти бесплатно Как мы разогнали железную дорогу Мы дали агентам рутину. Теперь надо решить — что делать с освободившимся временем Токсичный контент, промпт-хакинг и защита ИИ — всё о Guardrails для LLM Умный город начинается с точного взгляда: как «Фалькон Тех» меняет пространство к лучшему Навайбкодил приложение для анализа графов Почему Дюну так интересно читать? Упрощаем работу с рутиной или как стать Гендальфом Белым Деконструкция Go: CPU, RAM и что там происходит. Go Assembler база. Часть 1.1 Какие профессии исчезнут из-за ИИ, а какие появятся? И что с этим делать Как мы построили IT-отдел, где хочется расти: архитектурные встречи, прозрачные метрики и книжные подарки Rufler: Делаем из Claude Code автономный рой через один YAML-конфиг Sing-box и белый список приложений Как построить надёжный обмен сообщениями в микросервисах: лучшие практики для enterprise OpenAI строит MLM-пирамиду, а McKinsey и Accenture помогают ей в этом Дом, который не построил Фишер (Часть 2) «Сверхзвуковой математик» против «Вдумчивого логиста»: битва алгоритмов 3D-упаковки Мультимодальные модели – грубый и дорогой инструмент Разговоры ничего не стоят. Код тоже Проверки физических лиц: с кого начнет ФНС Топ-10 бесплатных нейросетей для создания видео в 2026 году Первые слои кода: как наши решения сегодня определяют архитектуру ИИ на десятилетия Разработка нового статического анализатора: PVS-Studio JavaScript Поиск уязвимостей ПО: базовый минимум или роскошный максимум Почему оценка персонала не работает как инструмент управления Как мы разработали ИИ-ассистента и сократили рутину продуктовой команды на 50% Как я ушел из найма, нажарил косточек и продал на маркетплейсах на 168 млн в год Когда 1С:ERP уже внедрена, а нормального производственного плана всё ещё нет Как я сделал Claude мультимодальным, подключив к нему Qwen Omni Как приглашение на вакансию мечты превращается в атаку Infrastructure as Code: философия и лучшие практики IaC Тестируем Yandex Code Assistant на задаче, в которой нужно хранить секреты nxs-universal-chart v3.0: новое поколение универсального Helm-чарта Callback Injection: Техника, которая отправила Microsoft Defender в глухой нокаут «Все идеи на стол»: митап как способ вывести проект из тупика Сегодня я узнал нечто новое о GPU благодаря багу в своей игре Как заставить LLM ̶ ̶г̶а̶л̶л̶ю̶ ̶ эволюционировать Карта событий как фундамент аналитики: практический кейс для E-commerce Что выбрать для AI: x86, ARM или RISC-V? Дайджест железа за март Роль соматических мутаций в развитии аутоиммунных заболеваний: путь к избирательной терапии Mythos от Anthropic — тревожный сигнал для всех, а не только для банков Guardrails для LLM на Java: как приручить промпт‑инъекции и токсичные ответы Green-VLA: как мы собрали VLA-модель для реального антропоморфного робота и не потеряли обобщение Финансовая гонка вооружений: почему умные люди добровольно в ней участвуют Эра ИИ-агентов наступила: выбираем лучшего цифрового сотрудника # Практический опыт внедрения WinCC Redundancy на производственном предприятии Сделал MVP за 3 дня, а потом неделю прикручивал оплату. Оно того стоило? Физика против Маска: почему Starship V3 может оказаться ещё одной катастрофой Нефть Венесуэлы: крупнейшие запасы в мире, но не крупнейшая нефтяная держава JPA 4. Переосмысление Hibernate Почему зеркальная фотокамера Nikon D5 десятилетней давности идеально подошла для миссии «Артемида-2» Проект «Уровень-Спутник» или как мы сделали платформу для гидрологов «Замедлиться, чтобы ускориться»: почему ИИ повышает цену ошибок в требованиях и архитектуре Как с нуля поднять трафик IT-компании на 1657% при бюджете 55 тыс. и выжить Pixel-perfect Downsampling — идеальная отрисовка 50 миллионов точек без потерь
AI-friendly и AI-first: как адаптировать ИТ-проекты под эру LLM
DrArgentum ( · 2026-05-05 · via Все публикации подряд на Хабре

Привет, Хабр! Последние полгода стало модно создавать новые и переводить старые проекты на рельсы AI-First (или AI-Friendly) стандарта. Уже появляются проекты, которые декларируются как «designed for AI to write». Например, AIR — AI-First веб-фреймворк на Python.

В этой статье я хочу рассказать о том, как сделать свой проект дружелюбным для ИИ и тем самым повысить его юзабилити и помочь пользователям быстрее начать им пользоваться. ИИ-агенты стали новыми потребителями вашего кода. У них своя экономика токенов, свои требования к проекту и его документации. Хорошая новость в том, что настроить все можно за несколько часов — будь то забытый корпоративный микросервис или новый opensource-проект.

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

AI-Friendly и AI-First на практике

Понятия AI-friendly и AI-first практически равнозначны. AI-Friendly означает проект, который можно использовать через ИИ-агента без лишних сложностей. AI-First — когда проект с самого начала проектируется с учетом удобства использования через ИИ. Разница состоит в усилиях и позиционировании проекта, хотя суть остается той же: проект должен быть понятен машине.

Можно выделить три уровня «дружелюбного к ИИ» проекта:

На схеме они расположены по порядку.

Уровень документации — самый важный, потому что именно он объясняет связи, взаимодействие и использование проекта. Здесь играет роль экономия токенов: «плоские» файлы легче анализировать, чем парсить документацию с сайта. Какие файлы нужно создать, рассмотрим ниже.

Уровень кода — не менее важен. Как гласит дзен питона, простое лучше сложного, а сложное лучше запутанного. Код должен быть понятным, а связи — легко угадываемыми. Здесь стоит следовать принципам SOLID, DRY и KISS. Человекочитаемый код читаем и для ИИ-агента. Желательно, чтобы существовал один способ сделать что-то — это помогает и человеку, и ИИ-агенту, снижая вероятность ошибок. Чистая архитектура здесь не имеет радикальных отличий именно для ИИ-агентов.

Уровень внешних сервисов — дополнительный слой, который дает удобство в использовании проекта. Ниже приведу примеры сервисов, помогающих сделать проект удобнее для работы через ИИ-агентов.

Давайте перейдем непосредственно к практике.

Инфраструктура AI-Friendly/AI-First проекта

Любая база не работает без инфраструктуры, которая выступает как указатели для ИИ-агентов. Поскольку это связано с обработкой естественного языка, логично предположить, что главное для агента — качественная документация, описывающая работу с проектом. Причем не только пользовательская, но и специализированные форматы для ИИ.

AGENTS.md

AGENTS.md — открытый формат для направления ИИ-агента в нужную сторону. Это как README, но для агентов: содержит команды для развертывания приложений, стиль кода, запрещенные и разрешенные паттерны.

 # AGENTS.md
 
 ## Setup commands
 - Install deps: pnpm install
 - Start dev server: pnpm dev
 - Run tests: pnpm test
 
 ## Code style
 - TypeScript strict mode
 - Single quotes, no semicolons
 - Use functional patterns where possible

Можете рассмотреть реально существющий пример — AGENTS.md из AIR — веб-фреймворк на Python, который заявляется как «designed for AI». Он содержит инструкции по работе с HTML-макетами, код минимального приложения, правила маршрутизации, шаблонизации, формы, SSE, базы данных, общие паттерны, структуру, зависимости и многое другое. Это сжатая документация для разработчика с заметками и стилем кода — нечто среднее между CONTRIBUTING.md, README.md и документацией.

Правила Cursor IDE

Правила Cursor (Rules) — это постоянные инструкции для ИИ-агента: стиль кода, архитектура, соглашения по проекту. Без них модель не знает ваших конвенций и может предлагать лишнее или не в том формате. В Cursor правила находятся в директории .cursor/rules/ в виде файлов .mdc.

Отличие от AGENTS.md — в точечном применении именно в AI-IDE Cursor. Само правило короче чем AGENTS.md, так как содержит код именно по использованию.

Разберем на примере проекта FastStream, Python-фреймворка для микросервисов на очередях (Kafka, RabbitMQ, NATS, Redis) — он работает с любым брокером. FastStream автоматически генерирует документацию на основе аннотаций типов. Вы пишете обработчик с Pydantic-моделью — фреймворк сам понимает, какие поля ожидать, и создает OpenAPI-схему. Также он имеет заготовленный файл .cursor/rules/faststream.mdc, который содержит основные правила использования этого проекта.

То есть по факту это тот же markdown с небольшой надстройкой:

 ---
 description: Python code style for this project
 globs: *.py
 ---
 
 Always use type hints. Never use except: without an exception class. Prefer dataclasses over plain dicts for structured data. Use f-strings, not .format() or %.

Поле globs указывает, к каким файлам применять правило. .py — ко всем Python-файлам. Можете сделать правило только для tests/.py или для examples/.

AI-навигация через llms.txt

Это свежий стандарт от Answer.AI, созданный с простой идеей: дать агентам карту документации. llms.txt — индекс в виде обычного текстового файла со списком ссылок. Агент сканирует его и решает, что читать дальше.

 # Documentation index for MyLibrary
 
 ## Getting started
 - https://mylib.dev/docs/installation.md
 - https://mylib.dev/docs/quickstart.md
 
 ## Core API
 - https://mylib.dev/docs/api/client.md
 - https://mylib.dev/docs/api/auth.md
 
 ## Examples
 - https://mylib.dev/docs/examples/basic.md
 - https://mylib.dev/docs/examples/advanced.md

llms-full.txt — полный текст документации в одном файле. Агент может скачать его один раз и держать в контексте, не ходя по двадцати ссылкам. Чтобы сгенерировать llms-full.txt, нужно склеить все страницы документации в один файл (markdown, rST или другой похожий формат).

Эти файлы стоит размещать на сайте документации — как, например, в проекте django-modern-rest: https://django-modern-rest.readthedocs.io/llms.txt и https://django-modern-rest.readthedocs.io/llms-full.txt.

Здесь важна экономия: агенты ограничены по токенам, и им выгоднее прочитать один файл, чем ходить по множеству ссылок и парсить HTML. Этот стандарт помогает как в навигации, так и в самом чтении документации.

Внешние сервисы

Эта тема связана немного косвенно, но также важна для удобства конечных пользователей.

Context7

Проблема многих LLM в том, что они знают только то, что было в тренировочных данных. Если вашу библиотеку выпустили вчера, GPT-4 про нее не слышал. А если слышал, примеры кода будут из прошлогодней версии, где API уже изменился.

Context7 решает это через MCP (Model Context Protocol). Сервер берет актуальную документацию и кладет ее в промпт агента.

Вот, например, как выглядит главное окно проекта в Context7:

Он имеет свою систему бенчмарков документации, так что вы всегда можете улучшать документацию своего проекта:

Также вы можете добавить ИИ-чат прямо на сайт документации.

Технически Context7 — это MCP-сервер, который работает с Cursor, Claude Code, VSCode, Windsurf. Он написан на Node.js 18+. Установка через npx, настройка через конфиг MCP-клиента. Пара нажатий — и по вашей документации можно искать через естественный язык и строить сложные запросы.

DeepWiki: генерация вики по проекту

Cognition Labs (команда, создавшая Devin AI) запустила DeepWiki в апреле 2025 года. Идея проста: берете любой публичный репозиторий на GitHub, заменяете в URL github.com на deepwiki.com — и получаете полноценную вики с диаграммами и AI-ассистентом.

DeepWiki генерирует описание проекта, его стек, версии, зависимости, структуру файлов, интерактивные схемы и диаграммы, а также предоставляет AI-чат для вопросов по проекту. Это более простая альтернатива Context7, но также полезная.

Итак, AGENTS.md и правила Cursor создают декларации для ИИ-агента о паттернах генерации кода. llms.txt реализует быструю индексацию документации. Context7 и DeepWiki предлагают пользователям и агентам документацию с поиском на естественном языке и MCP-сервером.

Уровень кода опущен здесь потому, что важно само качество, а не его конкретная оптимизация только под ИИ. AI-friendly ваш проект или нет, код должен оставаться читаемым и чистым.

Пошаговая инструкция

Теперь самое время упорядочить то, что мы узнали, и объединить все в понятный список действий.

  1. Положите в корень AGENTS.md.

  • Опишите проект, структуру репозитория, ключевые файлы.

  • А также можете позаимствовать советы по работе с ИИ от Андрея Карпаты по ссылке (всего 65 строк, четыре принципа: думай и спрашивай перед кодингом, упрощай, меняй только то, что просят, работай над четкой целью).

  1. Добавьте llms.txt и llms-full.txt.

  • Если у вас есть сайт с документацией — положите файлы в корень. Если нет — создайте папку docs и сгенерируйте эти файлы из README и докстрингов. Агент скажет спасибо. Ну или можете создать issue в своем проекте и подождать, когда другой человек захочет помочь.

  1. Проверяйте код через анализаторы типов, линтеры и тесты.

  • Этот совет применим не только к AI-Friendly проектам и является универсальным для всех. Иногда 100% покрытие тестами и политика zero-warnings делают библиотеку невероятно стабильной, а ее API — понятным и для человека, и для машины.

  1. Подключите сторонние сервисы.

  • Добавьте проект в Context7 — это бесплатно и занимает пару минут. Убедитесь, что DeepWiki видит ваш репозиторий (обычно достаточно, чтобы он был публичным).

  1. Напишите AI_POLICY.md в папку .github.

  • Это полезная дополнительная вещь, которая позволит отгородить проект от «нейрослопа». Это не панацея, но напомнит потенциальным контрибьюторам, что ответственность несет человек. Пример такой политики можно посмотреть у astral-sh.

Вот и все. Пять действий, два-три часа работы. После этого ваш проект станет понятнее для агентов — а значит, для тысяч разработчиков, которые работают через агентов. Это не дополнительная нагрузка, а новый стандарт поддержки, как Community Guidelines десять лет назад.

AI-friendly не означает зеленый свет для «нейрослопа». Наоборот, это повод задуматься об инженерном опыте и ответственности. Если ваш код понятен агенту — он почти наверняка понятен и человеку. Чистые имена, явная типизация, отсутствие магии, качественная документация — это то, что нужно всем.

Пробуйте, ломайте, улучшайте. И пусть ваш код читают не только люди.