курсор в сторону


Гео и язык канала: Россия, Русский
Категория: Технологии


Пишу про развитие внутренних продуктов и AI-трансформации в kts.tech
@rusakov_denis_a

Связанные каналы

Гео и язык канала
Россия, Русский
Категория
Технологии
Статистика
Фильтр публикаций


Когда таксист — техлид в отставке

Ехали сейчас с женой (она продуктовый дизайнер) на такси, по дороге обсуждали немного работу. Водитель молчал, но потом кинул фразу: «дааа, а у меня проблема с айтишкой». И через пару минут тишины добавил: «да, я техлидом работал». Крч мне стало интересно и я спросил в какой компании и кем работал. Рассказал, что писал на C#, игры в ВК, но отдел сократили и пока таксует/ищет, куда устроиться дальше.

Ну и конечно я спросил про нейронки. Говорит, что конечно использует, и даже продал одну игру, сделанную с ИИ, за 6000$.

Мне кажется, если бы я выбрал тариф «Вместе», и к нам подсел кто-то третий, и он внезапно оказался QA, то мы бы прямо в этой машине спроектировали продукт, нарисовали дизайн, протестировали и зарелизили его в пятницу.

Кажется, пора выпускать новую версию стереотипа про таксистов: «таксую для души, а вообще-то я техлид».


Репост из: Внутри AI | Кейсы ИИ Агентов в бизнесе
MCP для Яндекс Трекера пробил 100 звёзд на GitHub⭐️

Когда-то давно мы сделали сервер для собственных процессов: с ним AI-ассистенты создают и обновляют задачи, дополняют описания, оставляют комментарии и фиксируют затраты времени прямо в Трекере.

Потом открыли код на GitHub. И теперь видим больше 100 звёзд и радуемся, что инструмент пригодился и другим командам.

К первой сотне выпустили обновление 0.8.0. Главное изменение: MCP научился работать с проектами, портфелями и целями. Добавили 39 инструментов для поиска, создания, обновления и удаления этих сущностей, а также работы с комментариями.

Теперь агенту можно поручить создать проект, обновить статус цели или собрать информацию по портфелю. Меньше данных придётся переносить вручную между AI-ассистентом и Трекером.

В релизе есть и другие изменения. Полный список собрали в changelog.

Спасибо всем, кто пользуется сервером, ставит звёзды и помогает его развивать! 💚


приятно видеть, что проект продолжает расти

как раз в этот релиз законтрибьютил тулзы для работы с портфелями, проектами и целями

#kts #ai #mcp


Написание тестов через ИИ

Когда начинаешь подключать ИИ к решению задач, первое, что хочется это конечно что-то автоматизировать, и хочется автоматизировать рутину. Например, писать тесты долго, а пользу от них в команде просто не видят, особенно если это не их код и не их фича.

Например, есть юнит-тесты с чёткой целью: хороший юнит-тест = быстрый тест, который работает как индикатор и сразу подсвечивает проблемное место. Когда тест падает, ты сразу знаешь, в какой именно функции проблема. Тут конечно считаю, что скоростью должен обладать любой хороший тест.

На проектах их пишут иногда по требованию клиента, потому что у него так покрываются все продукты. Нужно закрыть тот процент, который требует клиент, например 70%, и добавлять тесты к каждой новой фиче или странице. По большому счёту это "тесты ради тестов", то есть ради достижения цифры, а не ради той самой функции индикатора, ради которой они вообще задумывались.

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

Когда убираешь рутину, заодно появляется шанс перейти на следующий этап и уйти от старой привычки к новой. Это не то, что до ИИ никто не знал, все эти принципы тестирования существовали и раньше. Просто в текущих реалиях это уже договорённость: раз ИИ может быстро писать e2e, ограничение "дорого и долго" затирается. Классическая тестовая пирамида, где юнитов много, а e2e совсем чуть-чуть, отражала ограничения инструментов своего времени, когда e2e были медленными и дорогими в поддержке. Сейчас это ограничение снимается, и ромб подходит лучше, чем пирамида: юниты остаются основой, но доля e2e растёт, потому что инструменты для них стали быстрыми и дешёвыми, и держать их наверху пирамиды просто по привычке больше не обязательно.

#ai #tests


MCP: что прижилось за 2 месяца

Внедряли разные MCP и решил посмотреть по проектам, что реально осталось в работе, а что выкинули с проектов.

Прижилось и используется постоянно:
Context7 подтягивает актуальную версионную документацию библиотеки прямо в промпт вместо галлюцинаций из старого трейна. Без правила в AGENTS.md агент про него забывает. Пропишите: «всегда используй Context7 для вопросов по API библиотек».

Outline, подойдёт если база знаний поднята на Outline, ставьте, потому что поиск становится в разы быстрее. Важно, что агент получает полный доступ ко всей базе, поэтому лучше выставить только чтение OUTLINE_READ_ONLY.

Figma, отдаёт не скриншот, а структуру, состоящую из компонентов, вариантов, переменных. Работает в обе стороны, но лучшее применение, это, конечно, вытаскивать вёрстку. Здесь понадобится много токенов, терпение и ещё раз много токенов) В планах ещё стоит связка с Code Connect.

Chrome DevTools это официальный сервер команды Chrome DevTools (теперь часть DevTools for agents), под капотом Puppeteer + CDP. Помогает дебажить на конкретных страницах и конкретные блоки, либо просто отвечать на вопрос, почему страница грузится долго, и заглянуть на вкладку Network.

Strapi это бриллиант, затащили недавно на проект и остались в восторге. Сам MCP стал поводом обновиться до пятой версии. Контент-менеджерам зашло, внедрение простое: пишете инструкцию, выдаёте токен, показываете, как передавать информацию агенту, и ваши статьи теперь редактируются локально без входа в админ-панель.

Bitrix24 управляет задачами и CRM из чата. Не знаю, что добавить, но вебхуки потеряли ценность.

Yandex Tracker разработан не от Яндекса, а от kts.tech, прижился с TRACKER_LIMIT_QUEUES и TRACKER_READ_ONLY, с ними безопасно давать доступ.

Выкинули:
Playwright не прижился, потому что тянет в контекст здоровенные схемы инструментов и accessibility-деревья. Заменили на связку cli + skills, получаем тот же результат, но без лишнего веса в контексте на каждый вызов.

BrowserStack, не подошел, не потому что плохой инструмент, а потому что кросс-браузерное тестирование через агента оказалось нашей редкой задачей, а не ежедневной. Держать ради неё отдельный MCP с ~20 инструментами в контексте не окупилось, поэтому легче вызывать вручную, когда реально нужно.

Talk to Figma работал лучше официального, но потом стал криво вытаскивать координаты слоев и мы перешли на официальный Figma MCP.

Из 9 инструментов прижилось 6, три ушли по разным причинам. Не начинайте с модного, а при выборе отталкивайтесь от проблемы либо идеи автоматизации процессов.

#ai #mcp


Репост из: mefody.work
UDW. Догфудинг, Никита Дубко.pdf
12.8Мб
🕷 Догфудинг как способ сделать свой сервис качественнее

Прочитал только что на Ural Digital Weekend доклад про то, что такое догфудинг, как его правильно готовить и зачем он может быть полезен маленьким и большим командам.

Делюсь с вами слайдами. А когда появится видео доклада, поделюсь и им.


Качество

У нас в kts.tech работаем так,
что новые AI-инструменты сначала обкатываем на выделенных проектах. Например, тот же Strapi MCP сначала внедрили на своём офф сайте, потом уже внедряем в другие.

Практики могут иметь разные/странные названия, но это не отменяет того факта, что они полезные, так например можно сказать о практике догфудинг.

Поэтому делюсь старым докладом от Никиты, только сейчас до него дошел и могу сказать, что доклад интересный.

Ссылка на доклад


Инструкции на уровне агента

Последний месяц привожу в порядок rules/skills на внутренних проектах в kts.tech, включая те, где их раньше вообще не было, и тут такая штука, что агенты заставили нас формализовать доку к каждому проекту, правда, чтобы они же работали по нашим правилам. Смысл документации остается прежним: чем она полнее, тем яснее процесс разработки на проекте. Про качество кода нужно писать отдельно.

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

Цена
У агента инструкции читаются один раз за сессию и держатся в кэше, так что цена не растет линейно с каждым вызовом. Но кэша нет при новой сессии и при апгрейде модели, и в этот момент весь объем считается заново.

В феврале ETH Zurich и LogicStar.ai прогнали четыре модели на 100+ реальных задачах и сравнили три сценария: без контекстного файла, с файлом от модели, с файлом от человека (https://arxiv.org/abs/2602.11988, ссылка выглядит скамно, простите). Файлы в среднем не увеличивают долю решенных задач, а стоимость вызова модели растет больше чем на 20%. Держится это на разных моделях и агентах, и для сгенерированных файлов, и для написанных руками.

Агенты следуют написанному буквально, даже когда это вредит задаче. В одном из замеров инструмент, просто упомянутый в файле, использовался в 160+ раз чаще, чем в сценарии без файла. Агент цепляется за него просто потому, что он описан на проекте, хотя инструмент был устаревшим и вредил проекту (https://arxiv.org/pdf/2606.20512/, стр. 2).

НО аккуратно собранный AGENTS.md на точечных изменениях дает меньше времени выполнения и меньше выходных токенов. Но там меряли скорость, а не корректность решения.

Разница
Можно сравнить два проекта, на которые нужно было добавить rules и skills:
- на одном документации не было вообще. Поднимал проект локально, пролистывал сотню файлов, чтобы понять стиль и стек, и уточнял детали по последним коммитам. Rules и skills пришлось собирать с нуля: агент собирает их по коду проекта, но не все процессы видны в коде.
- на другом есть папка docs с ADR, описанием локальной разработки, структурой проекта и даже списком контрибьюторов. Смотрел по коммитам и там было видно, что доку дописали уже по готовому проекту (сейчас важно собирать ее еще на этапе разработки, чтобы агент понимал, что мы вообще пытаемся сделать). Rules и skills заводятся на таком проекте с пары запросов.

Границы
У инструкции для агента есть две границы:
- нижняя: отвечает за то, без чего агент вообще не сможет нормально работать. Это где лежит код, как запускать тесты и к кому уходит ревью. Ее приходится писать всегда, и чем хуже документация в проекте, тем она тяжелее и дороже.
- верхняя: это все, что уже написано для человека и просто оказалось пригодным для агента. Те же ADR, та же инструкция локального разворота, README с объяснением зачем вообще существует сервис, гайд по неймингу веток и коммитов и т.п.

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

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

Соответственно, задача не в том, чтобы наращивать слой инструкций, а в том, чтобы сдвигать нижнюю границу как можно ближе к верхней. Не плодить skill'ы, а наполнять проект документацией, которая и так должна быть в проекте.

#ai


Отдых от ИИ

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

Перестаешь отличать важное от привычного, потому что всё звучит одинаково убедительно. Дело не в усталости (хотя она присутствует) и не в повторении одной и той же информации. Дело в нескольких конкретных сбоях восприятия.

Инфу нашёл на проекте UX Core, про который не слышал уже пару лет. Такие темы полезны PM, HR, лидам и всем, кто работает с людьми.

В итоге выделил для себя несколько паттернов мышления:

1. Эффект иллюзии правды
Мы склонны верить в достоверность информации после её многократного восприятия, потому что знакомое просто легче обрабатывается мозгом.

Тезис «ИИ заменит X» не стал правдивее, но стал знакомее. Повторение подменяет проверку. Здесь рекомендовал бы такой фильтр: cпрашивать себя "откуда я это знаю?". Если ответ "все говорят", то это не знание.

2. Неприятие потерь
Утрата ощущается острее, чем равнозначное приобретение.

Поэтому аргумент «не внедрим, значит отстанем» действует сильнее, чем «внедрим и всем станет лучше», хотя по сути это один и тот же выбор.

Отсюда появляются пилоты, которые никто не просил. Лучше формулировать инициативу через приобретение и метрику. Если приобретение не формулируется, то это страх, а не стратегия.

3. Закон Вебера
Чтобы изменение заметили, оно должно быть пропорционально фону, а не просто большим само по себе.

Когда фон состоит из 50 упоминаний ИИ в день, действительно значимая вещь физически не ощущается как значимая. Мозг не тупеет, у него просто меняется порог различения. Здесь лучше всего это снижать фон. Не читать больше, а читать меньше и медленнее.

P.S. На скрине изображено первое, что увидел когда зашел на сайт, баннер с ссылкой на гайды по ИИ)

#ai


Привет! Меня зовут Денис

Я техлид внутренних продуктов и AI-трансформации в компании kts.tech. Это значит, что я одновременно отвечаю за то, чтобы решения работали, и за то, чтобы они кому-то были нужны.

Здесь будет три вещи (2 мало, а 4 уже много):
— что происходит с AI-фичами после демо: где они закрепляются, а где ими перестают пользоваться на второй неделе
— заметки о разработке: архитектура, процессы, команды
— и конечно разборы инструментов и ресурсов

Пишу для себя и для тех, кто делает то же самое.

Спасибо, что заглянули

Показано 10 последних публикаций.