TGViewer
Channel Public Channel
FastNews | Никита Пастухов

FastNews | Никита Пастухов

@fastnewsdev

Welcome! Я - Никита Пастухов: AI-энтузиаст и OpenSource разработчик (автор FastStream, AG2)

Здесь я пишу обо всем, что мне интересно

Чатик: @fastnewsdev_chat
Чатик по FastStream: @python_faststream
Мой GitHub: https://github.com/Lancetnik
Subscribers
2.58K
Photos
117
Videos
4
Links
224

Showing posts older than #358 · Back to latest

Older Posts 20 shown
Post #357 2.48K
За AI-тулингом невозможно следить руками, поэтому поднял себе радар: агент раз в день прочесывает GitHub Trending, Reddit, X и HN в поисках нового тулинга для кодинг-агентов - скиллы, MCP-серверы, CLI. Если это что-то стоящее - кидаю в канал. Но стоящего в последнее время много, поэтому предлагаю новый формат:

• по воскресеньям закидываю в канал дайджест за неделю
• если что-то стоящее появляется день в день - я кидаю это в чат

На этой неделе:

Топ недели - hallmark. Анти-AI-slop скилл для дизайна: ставишь в Claude Code / Cursor - агент перестает лепить фиолетовые градиенты. Неделю назад у репы было 4.6k звезд, к субботе - 12.4k🤯, на пике +3.4k за день. Та же ниша, что у taste-skill, который я гонял на своем сайте - положил в бэклог сравнить.

Тренд недели - "скилл-библиотека под роль". Matt Pocock выложил свою рабочую .claude-директорию как skills for real engineers (+2k звезд в день на пике) - я сам ей активно пользуюсь. Следом - маркетинг, дизайн-инженерия, и даже Google подтянул android/skills. Скиллы больше не шерят поштучно - выкладывают целые сетапы под профессию.

Боль недели - память. Шесть инструментов за семь дней об одном и том же: "агент забывает все между сессиями". Ditto майнит твои локальные логи Claude Code в профиль "как ты работаешь" и подгружает его перед каждой задачей. elim-mcp хранит негативное знание - что агент уже пробовал и отбросил, чтобы не ходить по кругу. Плюс Engram, Selvedge, Ravel и Perseus Vault. Когда шесть человек независимо пилят одно и то же🤷‍♂️

Вторая боль - страховка от агента с руками. dcg блокирует деструктивные git/shell-команды до исполнения, Confessor показывает, какие приватные файлы агент успел прочитать за сессию, Ripple - CI-gate на границы правки: просил тронуть одну функцию - отрефакторил три файла, лови. Тоже кластер: пять штук за неделю.

Просто находки:
wigolo - локальный веб-поисковик для агента: поиск, fetch, crawl без API-ключей и без оплаты за запрос;
Mindwalk - реплей сессии агента на 3D-карте кодовой базы: видно, где он "ходил" и что трогал. (Тул специально для Коли🌚)

Сам из этого пока ничего не внедрил - только собрал. Первыми потыкаю hallmark и wigolo, отпишусь в чат.

Если радар что-то проспал - несите в комменты, годное попадет в следующий выпуск. И давайте проголосуем, нужны ли такие дайджесты вообще: ставим пальцы 🙂 / 👎

#AI #digest
Telegram FastNews | Chat Флудилка про AI, Slop и всякое разное Чат канала @fastnewsdev
  • 👍 20
  • ❤ 4
  • 🔥 3
  • 👎 1
  • 😁 1
  • 🤡 1
  • 🥴 1
Post #356 2.42K
Периодически я закидываю в канал новые skills для агентов - для дизайна, SDD, свои собственные. Большую часть из них я пробую сам, но результаты этого тестирования обсуждаем в основном в чатике. Исправляю это недоразумение - поделюсь личным сетапом скиллов, которым пользуюсь каждый день:

grill-with-docs - 10/10, мой топ
​ Заставляет агента мучать тебя вопросами, пока не выудит все нюансы задачи, - и только потом оформляет решение в ADR и идет кодить. Еще он ведет CONTEXT.md - глоссарий проекта. Через пару сеансов вы с агентом говорите на одном языке и понимаете друг друга с полуслова. Юзаю буквально на всех проектах. Если ставить ровно один скилл - ставьте этот.

superpowers - рабочая лошадка, но с оговоркой
​ PLAN-мод, TDD, наводящие вопросы перед задачей - все, как я люблю. 250к+ звезд на гите не на пустом месте, могу рекомендовать. Одно бесит: по дефолту он коммитит в репозиторий все планы и ресерчи, что нагенерил. А план - промежуточный артефакт, ему место в мусорке после мержа, не в гит-истории (целый пост про это). И реализацию с сабагентами я тоже частенько выключаю - пусть лучше один агент шуршит. Но в целом, скилл - огонь

codegraph - это не скилл, а MCP, но его я тоже могу рекомендовать
​ Строит граф всего кода проекта на основе AST через tree-sitter - символы, вызовы, зависимости. Агент вместо слепого grep спрашивает точечно: кто вызывает эту функцию, что сломается, если поменять вот это, покажи сигнатуру - и получает структурный ответ за миллисекунды, не сжигая контекст на чтение половины репозитория. Штука рабочая, мне нравится. Хотя сейчас хочу попробовать еще Graphify

rtk - использую, но по мелочи
​ Якобы он экономит токены на CLI вызовах: прогоняет команду через себя и отдает агенту сжатый вывод вместо простыней. У меня прижился узко - git-команды, всякие ls / wc и прочая мелочевка, где вывод жирный, а нужного в нем три строки. На вызовах тестов (он все время норовит завернуть pytest в себя) надо отключать, там он только вредит. Не революция, но контекст бережет.

⚠️НА ЭТОМ МОЙ СПИСОК КОНЧИЛСЯ!⚠️

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

Но я пробовал и другие хайповые штуки:

taste-skill - пилот пройден, но надо смотреть еще
​ Скилл обещает привить агенту дизайнерский вкус (самый популярный из скиллов этой категории). Проверял на своем сайте: агент сам придумал три концепции - и выглядит более-менее прилично, но слоп все равно прослеживается. Работает скилл или это заслуга Opus 4.8 - до конца не понял. Но результат зашел, буду тестировать при возможности еще.

ponytail - попробовал, ноль эффекта. Хотя на GitHub уже 80k+ звезд...
​ Скилл форсит агента лениться: думать как самый ленивый синьор в команде, "лучший код - тот, который ты не написал". На моих проектах скилл не поменял вообще ничего. Видимо, я и так уже самый ленивый синьор в комнате 🌚

caveman - пробовал пару раз, не зашло
​ Скилл заставляет модель общаться с тобой как пещерный человек: "Моя сделать, готово". Заявлена экономия 60% токенов, но на деле экономит только 8%. Кто-то в чате писал, что так просто удобнее читать вывод агента. Для меня оно того не стоит

Если у вас есть какие-нибудь прикольные скиллы на пробу - закидывайте в комменты, обязательно посмотрю! Мб что-нибудь сворую🌚

#AI
Telegram FastNews | Chat Флудилка про AI, Slop и всякое разное Чат канала @fastnewsdev
  • ❤ 15
  • 👍 4
  • 😢 1
  • 🍓 1
  • 👀 1
Post #355 1.91K
Наконец-то я запустил AG2-Assistant, который у нас в разработке (руки дошли). Этакий аналог Hermes / OpenClaw

У ребят довольно неплохо получилось, но у меня все еще 100500 замечаний по UX🌚

Щас лимиты на Claude откатятся - и пойду переделывать половину проекта😅

Релиз запланирован на следующей неделе - вместе с AG2 1.0.0

А пока - мигрирую все свои рабочие Hermes / Claude Cowork пайплайны на этого ассистента. Посмотрим, что из этого получится
  • 👍 11
  • 🤡 5
  • 🔥 4
  • ❤ 2
  • 💅 2
Post #354 1.9K
Как я выбил свою фамилию в международный авард

Короткая история про то, что требовать свое - это рабочий навык.

В 2023 году FastStream попал в список 100 Best OSS Projects 2023 от BenchCouncil. Это до сих пор мое самое крутое внешнее признание проекта - реальный международный авард, а не просто звездочки на гитхабе.

Теперь могу понтоваться этой бумажкой😎

Но изначально на ней были отмечены 2 человека: CEO и CTO airt (компания, в которой проект тогда жил), а меня не было. Это при том, что код писал я, документацию писал я, маркетинг тащил я, релизы делал я. Компания была просто владельцем проекта.

Я пошел к CTO с вопросом: "а где моя фамилия?"

Ответ был классический: "ну, видимо, BenchCouncil так оформил, я не знаю"🤷‍♂️

Дальше можно было пойти двумя путями:

• расстроиться, написать в твиттер пассивно-агрессивный тред в стиле "ну вот так у нас" и забыть
• потребовать у компании написать в комитет и добавить мою фамилию

Я выбрал второй. На следующий день моя фамилия там появилась - просто потому что я попросил.

Чему меня этот случай научил:

Признание не приходит само. Награды, статусы и упоминания по дефолту раздаются тем, кто формально сверху. Если хотите, чтобы ваш вклад увидели - о нем надо сказать самому. Вслух.
За спрос не бьют. В худшем случае скажут "нет" - и вы остаетесь в той же точке. В лучшем - ваша фамилия появляется в международном аварде.
Молчание стоит дороже всего. Через 5 лет никто не вспомнит, кто "делал большую часть проекта". Запомнят только то, что зафиксировано - на сайте премии, в README, в шапке статьи.

К слову, это правило одинаково работает с зарплатой, авторством статей, упоминанием в чужих докладах и кредитом за фичу в релиз-ноутах. Спрашивать неловко 5 минут - а молчать обидно годами.

Расскажите в комментах: что вы выбили, просто попросив, - и за что обидно, что промолчали и отсиделись?

#opensource #карьера
Telegram FastNews | Никита Пастухов Мелочь, а приятно😊 Совершенно случайно нашел вот такую бумажку на компе, которая прилагалась вот к этому списочку - https://www.benchcouncil.org/evaluation/opencs/annual.html Пойду прикреплю к портфолио, пока совсем не потерялась😅 #opensource
  • 🔥 39
  • 👍 14
  • ❤ 8
  • ❤‍🔥 2
  • 🏆 1
Post #353 1.72K
FastNews | Никита Пастухов Channel photo updated
Все, теперь я признаю, что анонимный канал у меня не получился - пусть будет персональный блог

Контент не поменяется. Просто называю вещи своими именами😅
  • 😁 22
  • 👍 6
  • ❤ 2
  • 🍓 2
Post #352
Channel photo updated
Post #351 3.01K
FastNews | Никита Пастухов Что делать с планами, которые генерирует агент? Агентские тулзы плодят горы маркдауна: планы реализации, дизайн-доки, ресерчи. Тот же superpowers коммитит все это добро по умолчанию. И возникает вопрос - а надо ли оно в репозитории? Я думаю, что нет. План…
Забыл добавить свой любимый Skill ever, который заставляет агента мучать вас вопросами до тех пор, пока все нюансы задачи не будут зафиксированы. После этого он оформляет ADR и только потом приступает к исполнению:

https://github.com/mattpocock/skills/tree/main/skills%2Fengineering%2Fgrill-with-docs

Юзаю буквально на всех проектах - скилл 10/10
GitHub skills/skills/engineering/grill-with-docs at main · mattpocock/skills Skills for Real Engineers. Straight from my .agents directory. - mattpocock/skills
  • 🔥 20
Post #350 1.92K
Что делать с планами, которые генерирует агент?

Агентские тулзы плодят горы маркдауна: планы реализации, дизайн-доки, ресерчи. Тот же superpowers коммитит все это добро по умолчанию. И возникает вопрос - а надо ли оно в репозитории?

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

Но в чатике прозвучало справедливое возражение: по гит-дереву хочется понимать не только ЧТО сделано, но и ПОЧЕМУ. "Что" git и так покажет. А для "почему" есть инструмент получше - и придумали его задолго до LLM.

ADR - Architecture Decision Record

Короткий документ, который фиксирует ОДНО архитектурное решение: контекст, что решили, почему. Минимальный ADR - буквально три предложения. Лежат в docs/adr/ со сквозной нумерацией. Главное правило - ADR не редактируют задним числом: решение устарело - помечаете superseded by ADR-042 и пишете новый. Получается хронология решений проекта.

Заводить не на каждый чих, а когда сошлись три условия:

• решение дорого откатить
• без контекста оно выглядит странно ("какого черта тут две очереди?")
• были реальные альтернативы, и выбор - результат трейдоффов

Живой пример - NATS: у них под это отдельный репозиторий, и ADR-1 от 2020 года до сих пор объясняет, почему JetStream API построен поверх request-reply с JSON-схемами. Новый контрибутор (или автор клиентской либы) читает его и понимает дизайн, не раскапывая шесть лет git-истории😎

Причем тут LLM

ADR - идеальная память для агента:

• Агент перед изменением читает ADR и не "чинит" сознательные решения. Без этого он видит в коде "странность" и услужливо рефакторит то, что вы выбрали специально 🌚
• План на реализацию для этой задачи не годится - он несет слишком много деталей. ADR - это дистиллят: только решение и его причины, дешево по токенам
• Работает и в обратную сторону: скиллы типа grill-with-docs гриллят вас вопросами по дизайну и сами оформляют ответы в ADR. Вот такие документы коммитить можно и нужно👍

Но держать для агента прям ВСЮ историю смысла нет - поэтому я время от времени "схлопываю" ADR до текущего состояния. Да, это ломает главное правило - но агенту нужна не хронология, а понимание, почему архитектура сейчас такая. Почему бы не сэкономить контекст?

В общем, после мержа отправляем план реализации в мусорку, а все "почему" - в ADR


Ссылки:

сборник ADR в AG2
сборник шаблонов и гайдов по ADR
как это выглядит у NATS
компактный формат от Matt Pocock

А какие документы коммитите вы?

#архитектура #AI
  • 👍 20
  • ❤ 3
  • 🔥 3
Post #349 1.65K
Может ли агент в дизайн?

Агенты неплохо умеют писать фронтенд. Даже красиво, если ты понимаешь, что хочешь. У меня обычно проблема другая - я не понимаю, поэтому прошу "сделай красиво", и получаю шляпу: фиолетовые градиенты, эмодзи в каждом заголовке и дефолтный лендинг😢 Код модели уже более-менее могут, а вот дизайн - все еще слоп.

Пару недель назад я скидывал в наш чатик taste-skill - скилл, который обещает привить агенту дизайнерский вкус. Желающих проверить не нашлось, так что проверил сам.

Подопытный - мой персональный сайт, почему бы и нет? Чтобы было с чем сравнивать, попросил собрать три разных варианта. Стили я не задавал вообще - все три концепции агент придумал сам:

Stream - жирный дарк-мод: один экран, крупная типографика
Пресса - сайт-газета: передовица с буквицей, сводка в рамочке, репозитории версткой объявлений в три колонки
Терминал - shell-сессия: whoami, cat about.md, tree ~/projects, вместо навигации - tmux-статусбар, поверх всего - CRT-сканлайны

Переключалка между дизайнами - прямо в шапке, можно щелкать и сравнивать.

Все мои правки были только по наполнению - что написать в лиде, какие проекты показать. В сам дизайн я не лез ни разу: и газета, и tmux-статусбар - целиком инициатива агента. Слоп все еще виден, но выглядит прилично. Версия с терминалом - даже креативно😎

Лично мне результат зашел. Если бы я понимал что-то в хорошем дизайне - можно докрутить до "отлично". Скилл работает - агент начинает что-то понимать в типографике, цветах, композиции, UI-эффектах. Хотя, это может быть и просто заслуга Opus 4.8. Чтож, буду теперь пробовать этот скилл на реальных проектах - пилот считаем пройденным.

К слову, хостится все это на Github Pages - рассказывал недавно, агент даже сам все задеплоил - создал ветку, настроил Pages, CI, проверил доступность curl'ом - мне даже не пришлось выходить из IDE. Будущее уже здесь🤯

В общем, заходи потыкать: https://lancetnik.github.io/Lancetnik/

И расскажи, какой из вариантов тебе зашел (или вообще ничего не зашло)?🌚

#AI
GitHub GitHub - Leonxlnx/taste-skill: Taste-Skill - gives your AI good taste. stops the AI from generating boring, generic slop Taste-Skill - gives your AI good taste. stops the AI from generating boring, generic slop - Leonxlnx/taste-skill
  • 👍 11
  • ❤ 1
  • 💅 1
Post #348 1.46K
Мы полностью переписали AG2 - и готовы к релизу!

Неделю назад я говорил, что выпиливаю из AG2 весь легаси и готовлю фреймворк к выходу из беты. Так вот, этот час настал: первая бета AG2 1.0 вышла🎉

Классика (тот самый AutoGen) уехала в ag2-classic и живет в maintenance-режиме - у тех, кто на ней в проде, ничего не ломается. А `pip install ag2` теперь ставит полностью новый фреймворк: все, что мы строили в `autogen.beta` (и о чем я вам регулярно рассказывал), стало основным API.

Зачем еще один фреймворк, когда есть LangChain / CrewAI / PydanticAI?

Мой ответ - протоколы вместо абстракций. Отсюда все остальное:

Маленький публичный API на протоколах - поверх него строятся все фичи фреймворка. Меньше поверхность - предсказуемее поведение. А еще можно воткнуть свои реализации на что угодно
Агенты stateless - состояние вынесено наружу, поэтому поведение агента можно точно контролировать и воспроизводить
Акторная модель исполнения - все части фреймворка построены на событиях: любое можно перехватить и изменить, повесить свой обработчик, а то и построить логику поверх кастомных событий. Это другой уровень гибкости инструмента
Лучший DI - хуков много, и везде доступны и зависимости, и контекст управления: Depends, Inject, Variable. Даже ваш любимый dishka поддерживается🌚
Все необходимое на месте - поддержка Skills, сабагентов, динамических и бекграунд агентов, память, Shell и Coding инструменты... Написать свой Hermes можно в 10 строчек😎
Открытые протоколы на все случаи жизни - фронтенд через AG-UI, мультиагенты через A2A, MCP, A2UI. Можно даже оркестрировать Claude Code-агентов через ACP
Нормальные мидлвари - через них уже реализовано многое: сжатие контекста, OpenTelemetry и тд

Минимальный агент выглядит так:


from ag2 import Agent
from ag2.config import OpenAIConfig

agent = Agent(
"assistant",
prompt="You are a helpful assistant.",
config=OpenAIConfig("gpt-4o-mini"),
)

# Start a new conversation
reply = await agent.ask("Give me one sentence about AG2.")
print(reply.body)

# Continue the exact same conversation context
next_turn = await reply.ask("Now make it shorter.")
print(next_turn.body)


Фреймворк получился в моем стиле: экстремальная гибкость - реализовать можно что угодно, но на стандартные кейсы есть стандартные батарейки.

Финальный 1.0 - по плану, середина июля. Если вы еще выбираете, на чем писать агентов - идеальный момент потыкать бету и принести нам issues, пока API не заморожен😅

#Agents #opensource
  • ❤ 20
  • 🔥 13
  • 👍 1
  • 👏 1
Post #347 1.7K
FastNews | Никита Пастухов На днях меня позвал Владимир Гриненко (@devspotting - обязательно подпишитесь) на подкаст поговорить об агентах Получился оч крутой и содержательный диалог про harness, tool calling, управление контекстом. А заодно повайнили на MCP, Skills, A2A, AG-UI, A2UI…
На канале у Владимира Гриненко (@devspotting) вышла вторая часть подкаста, который мы записали - на этот раз про OpenSource🎉

Если в прошлый раз это было нечто лекционного формата про AI агентов, то теперь это почти 2 часа моего отборного нытья на тему слопа в PRах🌚

https://www.youtube.com/watch?v=tBgaOBnpZyg

В выпуске:
• OpenSource как продукт, карьера и кошмар;
AG2, FastStream и наследие AutoGen;
• почему PR от внешнего контрибьютора часто стоит дороже, чем кажется;
• как AI-слоп меняет презумпцию доверия в OpenSource;
• где LLM реально ускоряют разработку;
• почему архитектуру пока всё ещё должен понимать человек;
• что делать мейнтейнерам с ботами, слопом и выгоранием;
• как AI меняет поиск, аналитику, спорт, поездки и бытовые задачи.

В общем, получилось плотно, классно и жизненно! Но смотреть все еще лучше на х1.5😂
YouTube ИИ ломает open source | Никита Пастухов, мейнтейнер AG2 и автор FastStream Обсуждаем, как LLM изменили жизнь мейнтейнеров с Никитой Пастуховым: автором FastStream, мейнтейнером AG2 и человеком, который живёт внутри современного open source, AI-агентов и бесконечного потока сгенерированных pull request’ов. *В выпуске:* — open source…
  • ❤ 4
  • 👍 3
  • 😁 2
  • 🔥 1
Post #346 1.45K
Гайд, как зарепортить проблему, чтобы вас не возненавидели

За 3 года я закрыл ~500 issue. Какие-то сразу, какие-то висят месяцами и годами. Некоторых авторов я вообще хочу забанить на GitHub. Разница между всеми Issue не в сложности бага, а в том, как они оформлены.

Мой личный топ абсурда:
🥇Issue с заголовком clone https://github.com/... cd ... и пустым телом. Совсем пустым. А в комментах автор спрашивает: «What features does it entail?» - то есть что должен делать его собственный issue, человек уточняет у меня.
🥈Заголовок 2actions / windows2015beta @ mystery file playground.., внутри кусок CI-конфига вперемешку с обрывками HTML-таблицы. Я до сих пор не знаю, о чем это было.

Если серьезно, самая частая проблема - недостаток информации. Чтобы просто ПОНЯТЬ, что у человека сломалось, нужно три раунда переписки с таймзоной в 12 часов. Вот тебе и пара недель до фикса.

Вот антипаттерны, после которых Issue зависает:

- "Не работает" Нет версии, нет трейсбека, нет кода. Вот в таком виде: "у меня NATS в k8s, под упал - faststream завис". Всё, два предложения. Я не экстрасенс - первый ответ всегда будет "приложите код".

- Нужны версии ВСЕХ (важных) библиотек: вот issue, где код приложили, а версию pydantic - нет. Дело оказалось именно в ней. Минус раунд переписки на ровном месте

- "Минимальный пример" на 200 строк. Внутри ваш бизнес-код, конфиги и три лишние зависимости. Чем больше кода - тем дольше искать, что сломалось. И тем больше мне впадлу это делать. Попробуйте-ка разобрать вот эту простыню

- Баг, который на самом деле вопрос. "Как сделать X?" - это discussions, а не issue. А лучше вообще в чате спросить, там ответят быстрее. В т.ч. и другие пользователи. Половина таких закрывается одной ссылкой на доку в тот же день.

- Фича-реквест без юзкейса. "Добавьте X" - зачем? Опишите задачу, а не решение: возможно, нужное уже есть, просто называется иначе. Вот реквест на manual commit в Kafka - опять же просто ссылка на доку (я вам что, Google? ChatGPT?)

- "В проде падает". Окей. Версия библиотеки? Python? Брокера? Код? Трейсбек ошибки? Прода у меня нет, у меня есть только то, что вы написали.

А вот чеклист issue, который решается за 5 минут:

1️⃣ Версии - библиотеки, Python, брокера/окружения. Если ошибка в конкретной подбиблиотеке - укажите её версию тоже.
2️⃣ Минимальный пример - код, который воспроизводит проблему копипастом. Реально минимальный: 10-20 строк без вашего домена. Даже если вашу проблему понятно как воспроизвести - ПРИЛОЖИТЕ, СУКА, КОД. Дело в том, что я трубу шатал вашу проблему воспроизводить - а вот ctrl+c ctrl+v нажать способен. Пример
3️⃣ Полный traceback - не скриншот и не последняя строчка
4️⃣ Что уже пробовал - чтобы не советовали то, что вы уже отмели
5️⃣ Для фич: юзкейс вместо решения. Опишите, какую задачу решаете, а не что мне делать. Это я уже сам придумаю.

Так выглядит идеальный issue: минимальный пример на 8 строк, шаги воспроизведения, "ожидал X - получил Y". Закрыт без единого уточняющего вопроса.

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

Сохраните себе и отправляйте коллеге, когда он пишет "не работает, помогите"🌚

В следующий раз закину примеры по PR - а то это еще большая проблема...

#opensource #программирование
  • ❤ 19
  • 🔥 3
  • 👍 1
  • 😁 1
Post #345 1.35K
Интернет агентов incoming

Смотрите какая штука. Мы уже год пилим агентов: MCP - чтобы агент дернул тулзу, A2A - чтобы агенты говорили друг с другом, Skills, плагины, вот это все. Но все эти протоколы предполагают одну вещь: агент УЖЕ знает, что нужный ему инструмент существует и где его найти. Ты руками прописал MCP-сервера в конфиг - и агент живет ровно в этом загончике.

А теперь представьте человека, который умеет пользоваться вебом, только если ему заранее дали точный URL. Никакого гугла, никакого поиска - только закладки, которые тебе кто-то накидал. Так работают наши агенты сейчас.

И вот, нам завезли (еще одну) спеку - ARD (Agentic Resource Discovery). Под капотом - простая идея, которую мы уже проходили с обычным вебом:

Каталог. Кладешь на свой домен статический файл /.well-known/ai-catalog.json и описываешь в нем, что предлагаешь миру - свои MCP-сервера, A2A-агентов, OpenAPI-тулы. Буквально robots.txt + sitemap.xml, только для агентов.
Реестры. Поисковики, которые краулят эти каталоги по всему интернету и отдают REST-ручку /search: агент спрашивает на человеческом "найди мне агента под бронь авиабилетов" - получает ранжированный список. Гугл для агентов, ага.

До сих пор у агентов был интранет - закрытый загон из захардкоженных тулов. ARD - это переход к интернету: пространство, где можно найти то, о существовании чего ты вчера даже не знал.


Что мне нравится как человеку, который сам клепает эти MCP-штуки: доверие тут прибито к домену. Идентичность ресурса (did:web, SPIFFE) обязана совпадать с доменом издателя - то есть никакого центрального аппстора-вахтера, все держится на владении доменом, ровно как TLS и DNS в обычном вебе. Это не "магазин приложений от одной корпорации", это веб. И за спекой стоят не два энтузиаста, а Microsoft, Google, Nvidia, Cisco, GitHub, Databricks под крылом Linux Foundation - то есть шанс, что не помрет в первый год, реально есть.

Но есть и забавный момент - SEO возвращается🌚. В каталоге есть поле representativeQueries - примеры запросов, по которым тебя найдут. Это же буквально keyword stuffing, только для агентов. Через год вылезет AEO (Agent Engine Optimization), и мы будем вылизывать свои каталоги под ранжирование в реестрах ровно так же, как десять лет вылизывали мета-теги под Google😅

В общем, штука важная. Может, та самая, с которой "интернет агентов" перестанет быть красивым словом из твиттера. Будем посмотреть.

Спека (и quickstart, если хочется потыкать руками) - https://agenticresourcediscovery.org/

#Agents
agenticresourcediscovery.org Agentic Resource Discovery Specification - AgenticResourceDiscovery.org A protocol for discovering agentic resources — tools, Skills, MCP servers, APIs, workflows, and agents — for AI clients
  • 👍 19
  • ❤ 5
  • 🔥 1
  • 🥴 1
Post #344 1.34K
Доклады смотрите в записи. Пиво пейте вживую

Билет на крупную IT-конференцию стоит 40-100к. Плюс перелет, плюс гостиница, плюс пара дней отпуска. И я честно не понимаю, за что эти деньги (зрителю).

Смотрите, что вы получаете из зала:

• доклады, которые через месяц-два лежат на ютубе бесплатно
• нетворкинг, на который расписание не оставляет времени - вы же сидите в зале и слушаете то, что могли посмотреть в записи
• кофе-брейки и мерч 🤷

Имхо, но доклад как контент умер. Запись удобнее живого просмотра по всем параметрам: x1.5, перемотка, пауза. А статья - удобнее записи. Единственное, чего нет ни в записи, ни в статье - люди. Но именно на людей очный формат времени и не оставляет: 8 часов докладов, 30 минут коридора.

Из этого у меня два вывода:

Вывод первый: если уж ехать на большую конференцию - то со стороны сцены. Спикеру она дает ровно то, что обещает зрителю: нетворкинг приходит сам (после доклада люди подходят к тебе, а не ты ловишь их за рукав), каждое выступление приносит мне ~+50 подписчиков за неделю и знакомства, которые потом стреляют самым неожиданным образом. И да - билет, дорога и гостиница за счет организаторов. Если совсем грубо: зритель платит за плюшки спикеру🌚 Подача CFP страшнее покупки билета, но окупается сильно лучше.

Вывод второй: здоровый формат уже существует - это митап. 2-3 доклада не переутомляют, а все остальное время - то, ради чего люди вообще куда-то едут: коридор, споры, разборы, пиво. Митапы обычно бесплатные. По сути, митап - это конференция, из которой убрали все, что устарело, и оставили концентрацию нужных людей в одном месте.

К слову, мы с ребятами в какой-то момент пришли к этому сами - перестали брать билеты и стали просто собираться в баре. Привет, Коля! 👋

Так вот, к делу. 10 июля в Нижнем Новгороде - PythoNN 10, митап питонистов от Никиты Соболева. Я там буду гостем, чисто пообщаться и пиво попить.

Если вы из НН или рядом - приходите, найдете меня и поговорим: про FastStream, агентов, OpenSource или что у вас болит🍺
pytho-nn.timepad.ru PythoNN 10: митап питонистов в Нижнем Новгороде, июль 2026 / События на TimePad.ru
  • ❤ 23
  • 👍 3
  • 🔥 2
Post #343 1.41K
FastNews | Никита Пастухов Прямо сейчас я занимаюсь тем, что удаляю весь ag2-classic deprecated код, документацию, CI - в общем разношу к чертям весь репозиторий и готовлю нас к 1.0.0 релизу
Мой любимый вид PR'ов😊
  • 🥰 9
  • 🤯 7
  • 😁 5
  • ❤ 4
  • 👍 4
  • 😢 3
  • 🙏 1
  • 🥴 1
  • 💯 1
Post #342 1.53K
Сегодня вышел релиз AG2 0.14

Если кто не знает, пару месяцев назад я протолкнул идею ПОЛНОСТЬЮ ПЕРЕПИСАТЬ ФРЕЙМВОРК. И вот, с тех пор все мои (и не только мои) наработки живут в autogen.beta

Так вот, 0.14 - это последний релиз с autogen.beta. Прямо сейчас я занимаюсь тем, что удаляю весь ag2-classic deprecated код, документацию, CI - в общем разношу к чертям весь репозиторий и готовлю нас к 1.0.0 релизу (выходим из беты). Ориентировочно все это должно случиться в середине июля

А теперь про прикольные фишки самого 0.14
1️⃣ Появилась встроенная поддержка A2UI. Что это такое могу рассказать отдельным постом, но фича клевая и важная
2️⃣ Затащили поддержку провайдера моделей Z.AI. Те, что GLM-5.2 недавно дропнули
3️⃣ Появился новый API Agent.run / Agent.resume, чтобы можно было пушить сообщения в таску прямо во время выполнения + продолжать выполнение таски с середины
4️⃣ MemorySkills - моя гордость❤️

Про последний чуть подробнее. MemorySkills - это как обычный скилл, только в коде. Примерно таком:


from autogen.beta import Agent
from autogen.beta.config import AnthropicConfig
from autogen.beta.tools import SkillPlugin, MemorySkill

unit_converter = MemorySkill(
name="unit-converter",
description="Convert between common units (miles, km, pounds, kg).",
instructions="Use the convert script with a factor from the conversion_table resource.",
)

@unit_converter.resource
def conversion_table() -> str:
return "miles->km: 1.60934\npounds->kg: 0.453592"

@unit_converter.script
def convert(value: float, factor: float) -> str:
return str(round(value * factor, 4))

agent = Agent(
"assistant",
config=AnthropicConfig(model="claude-sonnet-4-6"),
plugins=[SkillPlugin(unit_converter)])


Это дает нам оч крутую фишку - мы можем написать сколько угодно кусков кода (функций), которые наш агент может дергать, но это не будет инструментами. Т.е. тулов в контексте всегда будет 2-3 (загрузи скилл, исполни скрипт и тд), но реальных функций к исполнению - сколько угодно. И это функции будут загружаться в контекст по востребованию - прям как обычные скиллы. Красота же!

А вообще, мне, похоже, пора снимать видео про агентов... Потому что текстом вообще не получается доходчиво рассказывать, как работают эти штуки😢
GitHub Release v0.14.0 · ag2ai/ag2 Highlights 🛣️ Path to v1.0 — Deprecations Removed v0.14.0 is a milestone release on the path to v1.0. The deprecations announced in v0.12.0 have now been removed from the Classic framework (autogen...
  • 🔥 28
  • 👍 1
  • 🤮 1
Post #341 1.13K
https://akrites.org/letter/ - фига тут Linux Foundation инициативу запустили

ИИ сломал прежний баланс между атакующими и защитниками. Раньше найти серьёзную уязвимость в крупном OSS-проекте у эксперта занимало недели — теперь машина делает это за минуты и часто возвращает несколько уязвимостей за один проход. Цифра, которую все цитируют (от Endor Labs): из тысяч валидированных OSS-уязвимостей за последние месяцы пропатчено меньше 5%. То есть узкое место — не находить дыры, а успевать чинить.


Подразумевается, что теперь вместо 1000 репортов от независимых исследователей, будет одна команда, которая этим занимается. И эта же команда самовалидирует все найденные уязвимости перед отправкой мейнтейнерам на фикс. Т.е это прямая попытка борьбы с AI-CVE SLOP: понятный канал связи, устранение флуда однотипными репортами, повышение качества репортов за счет их предварительной валидации

Уже вписались 19 компаний (AWS, Anthropic, Google, Microsoft/GitHub, IBM, Cisco, Citi, JPMorganChase, NVIDIA, OpenAI, Red Hat, Rust Foundation, Sonatype, Vodafone, Zscaler, Chainguard, Endor Labs, Ericsson, RapidFort) плюс фонды CNCF, OpenInfra, OpenJS, OpenSSF, PyTorch Foundation, LF Energy

⚠️НО ЭТО ЕЩЕ НЕ САМОЕ ПРИКОЛЬНОЕ

Если у проекта нет активного мейнтейнера - команда Akrites должна будет фиксить найденные уязвимости САМОСТОЯТЕЛЬНО

Ну все, получается, я могу смело уходить на покой - за меня все AI найдет и пофиксит. Осталось только понять, как они это мержить без меня собираются🤔
Akrites Open Letter | Akrites An open letter from the technology industry, and the launch of Akrites - a coordinated effort to remediate vulnerabilities in the open source software the world runs on.
  • ❤ 7
  • 🍌 4
  • 🌭 1
Post #340 1.63K
Недавно послушал подкаст от Подлодки про Ruby on Rails и мне понравилась одна мысль

Если у вас в штате 5+ разрабов, то вы уже крупная компания. До этого масштаба еще дорасти нужно


Сейчас в индустрии мы привыкли к бигтехам. Как будто каждый встречный разраб работает в Авито / Яндексе / Желто-зеленом банке. У всех IT департаменты по 2-20к сотрудников. Кубер, QA команды, фронты и беки, девопсеры и аналитики. Те, у кого ИТ отдел на 40 человек, обычно стесняются говорить, где работают и мечтают тоже попасть в бигтех. Это логично - там больше платят, меньше риск, что компания обанкротится и тд и тп.

И это причина дисбаланса стека. По своей природе у новых стартапов на 1-3 сотрудника и у компаний с ИТ департаментом на 20к человек должны быть разные процессы. В первом случае вы делаете все сами - и фронт, и бек, и CI, и тестирование, и релиз. Во втором - у вас уже есть готовая инфраструктура, смежные команды, переиспользуемые вещи и куча ролей на подстраховке.

Но тут происходит очень смешная вещь: ваш единственный разраб (ну или 3 бедолаги) фантазируют, что они работают в бигтехе🌚 Либо они уже там работали и видели "как правильно". Либо мечтают там работать через год и хотят научиться "правильным практикам" за ваш счет. Это не важно. Результат один - вместо быстрого итерирования на стеке, созданного для быстрого итерирования (Ruby on Rails / Django / etc), они пишут микросервисы на Golang, обмазывают все трейсингом, тянут кубер, пайплайны и дико замедляют разработку. Такими темпами вы пилите за месяц-три MVP (как же можно катиться без настроенного CI и кубера) с расчетом на 5к+ RPS, чтобы первые полгода жить с одним пользователем в сутки😅 Типичные последователи карго-культа, в общем

Здравая позиция из реального мира: собрать MVP из готовых модулей, без расчета на нагрузку, без развесистых CI пайплайнов, без куберов. Когда все это вам понадобится - у вас уже будут стабильно платящие юзеры (причем много), и вы уже сможете нанять не 1го фрилансера, а полноценную команду "как в бигтехе". А она уже сможет все переписать, если надо

Как пример - Hexlet (довольно крупный проект) живет на двух разрабах и Ruby on Rails. Причем вполне успешно

Непопулярное мнение автора фреймворка для микросервисов

Если вы стартуете новый проект не в бигтехе с готовой платформенной командой - берите Django (или лучше DMR) и не делайте мозги


Change my mind, как говорится

#карьера #программирование
GitHub GitHub - wemake-services/django-modern-rest: Modern REST framework for Django with types and async support! Modern REST framework for Django with types and async support! - wemake-services/django-modern-rest
  • 👍 21
  • ❤ 6
  • 🔥 2
  • 🤔 1
Post #339 2K
Чет ору😂 Самый трендовый скилл на Github на этой неделе - это скилл, который форсит агента "не делать задачи, которые можно не делать"

Makes your AI agent think like the laziest senior dev in the room. The best code is the code you never wrote.


https://github.com/DietrichGebert/ponytail
GitHub GitHub - DietrichGebert/ponytail: Makes your AI agent think like the laziest senior dev in the room. The best code is the code… Makes your AI agent think like the laziest senior dev in the room. The best code is the code you never wrote. - DietrichGebert/ponytail
  • 😁 22
  • 🔥 2
  • 💯 1
  • 🤣 1
Post #338 1.56K
Если кто не знал - Github может быть бесплатным хостингом для ваших статических сайтов, если это публичный репозиторий. Github Pages называется

У меня там хостятся обе документации:
https://faststream.ag2.ai/latest/
https://docs.ag2.ai/latest/
Но хостить можно любую статику - портфолио, личный сайт, котиков. Лишь бы репа была публичной

ТАК ВОТ - эта херня очень сильно может растить размер репы. Прямо сейчас я ужал репу AG2 4.4 GiB → 309 MB

Проблема в том, что статика весит довольно много (15kb+), так что каждый ваш коммит в ветку gh-pages - это +15кб к размеру репы. В нашем случае репа весит 4Гб и git clone занимает неприлично много времени

Что делать?
• сквошим все коммиты в ветке gh-pages в одним и делаем подменяем историю коммитом этим единственным
исправляем CI, чтобы он делал не новый коммит, а перезаписывал старый

Таким образом у вас теряется история коммитов в этой ветке, но она и так не нужна - это же сгенерированные статические артефакты. Зато размер репы больше не растет бесконечно

В общем, если вы пользуетесь Github Pages - проверьте, нет ли у вас такой проблемы. Если не пользуетесь - просто имейте ввиду, проблема может быть актуальна и для других пайплайнов

В общем, я вас предупредил👍
faststream.ag2.ai Asynchronous Python framework for event-driven services — a thin client for Kafka, RabbitMQ, NATS, Redis and MQTT with AsyncAPI docs and in-memory testing.
  • 👍 31
  • 🔥 3
  • ❤ 1
  • 👎 1
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →