SimpleAGI
293 subscribers
83 photos
2 files
70 links
Здесь ты найдешь понятные лайфхаки и примеры использования LLM в повседневной жизни и бизнесе.

Подпишись, чтобы вместе шаг за шагом разбираться в технологиях, которые уже меняют наше будущее.
Download Telegram
Вот сижу, разбираюсь с этим апдейтом Skills, что-то тестирую.
И бац, мысля в голову прилетела.
Ведь всё, что ново-модно сейчас обсуждать с агентами в разработке
Декомпозиция. Специализация. Оркестрация. Контракты
Всё это используем уже десятилетия в микросервисах.

Фундаментально решить пытаемся одну и ту же задачу:
Как управлять сложностью через декомпозицию?

Микросервисы разбивают монолитное приложение на независимые сервисы.
А skills разбивают сложную задачу на специализированные "навыки", которыми владеет агент.

| Микросервисы                     | Skills                          |
|----------------------------------|---------------------------------|
| Независимые deployment units | Независимые SKILL.md файлы |
| API контракты (OpenAPI) | Контракты на естественном языке |
| Service discovery | LLM-роутинг по описаниям |
| Оркестрация (K8s) | Оркестрация через LLM |


Обе архитектуры обещают: модульность, переиспользование, независимую эволюцию компонентов, возможность комбинировать базовые блоки в сложные системы.

Но как справедливо отмечает Guille Ojeda в своём анализе:
Они обе делят сложность на управляемые части, но делают это по разным причинам и делят разную сложность.

Фундаментальное различие: зачем мы декомпозируем

Микросервисы: структура приложения

Микросервисы появились как ответ на боли монолита: медленные релизы, неэффективное масштабирование, технологический lock-in, каскадные отказы. Это паттерн софтверной архитектуры, направленный на улучшение жизненного цикла разработки.

Декомпозиция в микросервисах привязана к бизнес-доменам — стабильным концепциям предметной области. Сервис CatalogService управляет каталогом товаров. PaymentService — платежами. Границы сервисов отражают границы бизнеса, что обеспечивает долгосрочную поддерживаемость.

Skills: структура задачи

Skills появились как ответ на ограничения LLM: сложные задачи требуют многошаговых процессов, доступа к внешним инструментам, сохранения контекста. Это паттерн AI-системного дизайна, направленный на достижение автономного, целеориентированного поведения.

Декомпозиция в Skills привязана к логике выполнения задачи — функциональным шагам, ролям, рабочим процессам. Skill pdf знает, как извлекать текст из PDF. Skill code-review знает, как проводить ревью кода. Границы Skills отражают границы экспертизы, а не бизнес-домены.

Ключевой инсайт: Микросервисы декомпозируют структуру приложения. Skills декомпозируют процесс решения задачи.

Ради этой таблички пишу пост
В AI-native разработке формируется своя иерархия:
| Уровень     | Традиционный              | AI-Native                         |
|------------|----------------------------|-----------------------------------|
| Атомарный | Функция | Tool (Read, Write, Bash) |
| Экспертиза | Модуль | Skill (домен + workflow) |
| Автономный | Сервис | Agent (reasoning + tools) |
| Система | Приложение | Agentic Workflow |


И почему же не получается полностью перенести весь "опыт" разработки на агентские рельсы?
Мысль то моя не нова и есть десятки репозиториев со сложными сценариями на десятки агентов, со сложными сценариями, которые "копируют" процесс разработки и автоматизируют его.
НО дальше концепта и звезд на GitHub не идет?
___
Bounded Contexts из Domain-Driven Design отлично работают для микросервисов, но плохо подходят для Skills. Skill декомпозируется по функциональным шагам, а не по доменным границам.
Попытка создать "UserProfileSkill" по аналогии с "UserProfileService" приведёт к размытым границам и неэффективному использованию.

Заключение
Skills — это не "микросервисы для AI". Это новый архитектурный паттерн, который заимствует идеи декомпозиции из микросервисного мира, но применяет их к принципиально другой проблеме: оркестрации интеллектуального поведения.
25832
Забавное ощущение. На последних курсах, что проходил в https://shvm.xyz/ (не реклама, но там есть пара преподавателей - лапочек ), говорили
Вы, скорее всего, будете уже разработчиками, которым не нужно знать теорию глубоко, но это будет очень хорошим преимуществом.

И сейчас я пытаюсь на GitHub найти один репозиторий, который я точно лайкал, но не могу найти.
Долистал до своих первых "звезд"
И знаете, книгу
Interpretable Machine Learning with Python
Которую я лайканул, судя по всему, года 4 назад, и разбираясь в блокнотах..

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

Нужную мне библиотеку я не нашел, но вам рекомендую потыкать на GitHub вкладку Stars, можно окунуться в воспоминания, мне понравилось)
Вот из забавного:
- самый старый реп Паши - лайканул где-то в феврале 2024
1😁3💯2
Собеседование на AI-инженера в банк: три вещи, которые реально проверяют

Собрал в кучу инфу по теме AI-инженера. "Горячая" тема, судя по рилсам)
Типичная вакансия: Python, LLM, RAG, агенты, production. Но на собесе не проверяют знание этих слов. Проверяют три вещи:
1. Trade-off мышление - не "лучший подход", а "лучший для этой ситуации"
2. Production-фокус - как это будет жить, ломаться и стоить денег
3. Язык домена - говоришь ли ты на языке бизнеса, а не только на языке ML
___
1. Trade-off мышление
Нет "лучшего" решения. Есть решение, оптимальное для конкретных ограничений.
Chunking в RAG
| Стратегия       | Плюс               | Минус              | Когда выбирать           |
|----------------|--------------------|--------------------|--------------------------|
| Мелкие чанки | Точнее поиск | Теряем контекст | Фактовые вопросы |
| Крупные чанки | Больше контекста | Шум в retrieval | Аналитические вопросы |
| Parent-child | И точность, и контекст | Два индекса, сложнее | Когда критично качество |

Зрелый ответ: "Зависит от типа вопросов. Для фактовых - мельче, для аналитических - крупнее."
Retrieval
| Метод             | Плюс                 | Минус                                   |
|------------------|----------------------|------------------------------------------|
| Dense (векторный) | Понимает семантику | Может пропустить exact match |
| Sparse (BM25) | Точный match | "РКО" ≠ "расчётно-кассовое обслуживание" |
| Hybrid | Лучшее из двух | Сложнее настройка |

В проде почти всегда hybrid - потому что dense пропускает точные совпадения (аббревиатуры, коды), а sparse не понимает семантику.
Агент vs Граф
| Подход              | Плюс                          | Минус                                           |
|---------------------|-------------------------------|-------------------------------------------------|
| Свободный агент | Гибкость | Непредсказуемость, дорого, сложно тестировать |
| Граф (state machine) | Воспроизводимость, аудируемость | Нужно продумать все пути заранее |

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

Треугольник оптимизации
QUALITY

/|\
/ | \
▽──┴──▽
LATENCY COST

- Streaming - реальная latency та же, но UX кардинально лучше
- Кэширование мгновенные ответы, но риск устаревших данных
- Роутинг по сложности простые вопросы на дешёвую модель. 80% запросов обычно простые - экономия существенная
- Reranking - quality +, но latency -
___
2. Production-фокус
Сделать прототип — легко. Поддерживать систему, которая не деградирует - сложно.
Что может пойти не так
| Проблема           | Что происходит                          | Как заметить                         |
|-------------------|------------------------------------------|--------------------------------------|
| Устаревший индекс | Регламенты обновились, база старая | Рост ответов "информации нет" |
| Изменение модели | Провайдер обновил модель | Скачок метрик после апдейта |
| Падение интеграций | CRM или бэкенд недоступен | Рост таймаутов |
| Смена паттернов | Пользователи спрашивают о новом | Незнакомые вопросы в логах |

Безопасность агентов
| Механизм           | Зачем                                           |
|-------------------|--------------------------------------------------|
| Allowlist tools | Только разрешённые инструменты |
| Loop guard | Лимит шагов, времени, стоимости |
| Human-in-the-loop | Подтверждение на чувствительных действиях |

Loop guard - мастхэв. Агент может решить, что ему нужно 50 вызовов API на простой вопрос.
Verifier - обязательный компонент
Generate → Verify → Respond
26🔥5
___
3. Язык домена
Понимаешь ли ты контекст, в котором система будет работать?

Метрики: о чём реально спросят
Не "accuracy модели", а бизнес-результат:
- Сколько обращений закрыл бот без человека? - главная метрика
- Сколько передали оператору? - и почему
- Сколько стоит закрыть одно обращение? - сравниваем с ценой оператора
- Как изменилось время обработки?

Если говоришь только про recall и precision - видно, что не думал вообще о продукте.
2🔥52
Claude Code завезли Task Manager, но есть нюанс

Новая система управления задачами в Claude Code перешла от хранения списка дел в оперативной памяти к файловой структуре.

Но я наткнулся на недочёт, который ломает UX в реальной работе над проектами:

Таски создаются в глобальной директории Claude и привязываются к номеру сессии.
Из-за этого теряется консистентность и невозможно нормально возвращаться к задачам между сессиями в рамках одного проекта.
Я завёл issue:
https://github.com/anthropics/claude-code/issues/20425

Временное решение без боли: wrapper "cc"
Идея простая: запускать Claude Code через wrapper-скрипт, который автоматически выставляет CLAUDE_CODE_TASK_LIST_ID по имени текущей директории (то есть по имени проекта).
Плюс: если в будущем Anthropics это поправят - просто удаляете скрипт, и всё.

Я предлагаю запускать это через сам Claude Code, чтобы полностью понимать, что делает код, и не тянуть “скрипты из интернета”.

В Комментариях сам промпт.

Как пользоваться:
Заходите в папку проекта → запускаете cc вместо claude → таски “приклеиваются” к проекту.
133🔥2
С последней нашей встречи Вас явно прибавилось. Мне чертовски приятно это видеть! ❤️

Меня всё не покидает желание уложить в простую структуру нескольких агентов с допами для универсального пайплайна разработки по методологии TDD.
Про результаты когда-то в следующий раз или никогда

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

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

Вот я и подвел к своему артефакту)
Навык для ваших агентов, для редактирования ваших сгенерированных текстов
- документации,
- readme,
- инструкций агентам
- коммиты
- беклог для долговременной памяти
https://github.com/nikitaCodeSave/writing-clearly
___

Формат - Agent Skills по документации Anthropic. Два файла: короткий SKILL.md с памяткой и отдельный style-guide.md с подробными правилами. Так агент не тащит всё в контекст сразу, а обращается к деталям по необходимости.

Работает не только в Claude Code - Cursor, Gemini CLI, Codex, VS Code с Copilot. В README расписал установку для каждого.

PS.
На изображении результат, что агент изменил в этом посте с помощью навыка, но вы всё равно читаете оригинал
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥7
До сих пор варюсь в попытках автоматизации разработки. Есть результаты(нет). Опять осознал - не нужно пытаться охватить всё.

Вернулся к спекам. К формулированию "идеи" в текст, ДО того как бросать в терминал "Сделай красиво и чтоб работало".
Назвал это "Шаг 0".
Собрал стандарт документации для старта проектов:

PRD - зачем делаем и для кого
SPEC - что система делает, с проверяемыми критериями
ADR - почему выбрали конкретные технологии
CLAUDE.md - точка входа для агента

Оформил как Skill в минимальном формате, чтоб работало и в claude.ai, и в других агентах. Git

Вместо объяснений что там внутри - демо на задаче "хочу парсинг мемов". Без факапа не обошлось, но я честен - разбор проблемы в треде.

По итогу - удобный стартер для прототипов и мимолётных идей. Декомпозиция всё ещё важный навык, что не говори)
153
Если бы «Войти в IT после 30» было игрой,
то у меня классная ачивка.
Вышел в новый (третий) банк - продвигать AI технологии в процессы.
Приятное ощущение испытываю, от осознания, что
- в Т банке повысил грейд
- уволился и остался с положительными эмоциями

А новый путь обещает быть насыщенным и ух каким ИИшным 🫥

PS
УХ КАК ЛЮБЛЮ ПОЛУЧАТЬ ДОСТУПЫ!!11!
Please open Telegram to view this post
VIEW IN TELEGRAM
1😁43🔥2
Opus 4.6
Нам может быть интересно:
- аппнули извлечение инфы из большого контекста
- хранение и "выявление" смысла в процессе рассуждений на длинном контексте

Надеюсь мы заметим этот прирост на практике.

Выше я рассказывал, как в Claude Code привязать tasks к проекту для сохранения контекста между сессиями.
Бумц!
Agent Teams в Claude Code
Можно запускать несколько агентов, которые работают параллельно и координируются автономно.
Архитектура

- Team lead — основная сессия Claude Code, создаёт и координирует команду
- Teammates — отдельные экземпляры Claude Code со своим контекстным окном
- Task list — общий список задач (~/.claude/tasks/{team-name}/)
- Mailbox — система обмена сообщениями между агентами

Тиммейты не наследуют историю переписки лида — им нужно давать контекст явно при создании.
13🤩11
Собрал SKILL - срез российского ИИ-сектора.

Валидные источники, актуальные данные, устойчивый парсинг. Уже половина дела - как говорит ML-мантра: "garbage in, garbage out".

Дальше - щепотка магии Claude:
- фильтрация информации
- итеративный flow с паузой на «подумать»
- чеклист качества
- сопоставление данных и поиск связей

На выходе - уже не garbage.

Краткий лог и результат: share-claude

Саммари событий - на скрине.
12
Не так давно заприметил сайт "Альянс в сфере искусственного интеллекта"
Похихикал с пустых страниц и уполз дальше.

А тут собирая источники по теме ИИ - вернулся.
Инициатива с учебниками для школьников звучит классно.
Хотелось бы узнать, что там внутри.
Ознакомительных фрагментов маловато.

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

#meme
1😁6
Погружаюсь в новую рабочую атмосферу,
Уже сформировал себе комфортную "среду" и дербаню новые задачи.
А к Вам я вот с чем.
Автоматизация агентских сценариев становится либо проще, либо полезнее,
Может и То и Другое)

Замечаю, что уже в каждом проекте стараюсь автоматизировать ведение changelog, документации и тестирования.

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

Обернул это все в команду, мол читай план, ищи чекбокс не закрашенный, вот от сюда начинай и копай, пока можешь, как устанешь, сохранись.

И так пару часов тыкал в терминал эту команду.

Нужно сказать, что без подписок таким заниматься будет дорого) Результат хороший, но явно это больше развлечение, чем "рабочий стандарт"
14🔥3
Очевидность, но

Claude Code умеет рекурсивно запускать себя из CLI. Это официальный подход - Agent Teams под капотом работают точно так же.
unset CLAUDECODE && claude --print --dangerously-skip-permissions "prompt"

Три обязательных флага:
- unset CLAUDECODE : снимает защиту от рекурсии
- --print : headless-режим, результат в stdout
- --dangerously-skip-permissions : одобряет все действия автоматически (в headless некому нажать "yes")

Встраиваете вызов суб-агентов в свои skills и команды. Основной агент разбивает задачу на части и делегирует.

Вроде настолько всё очевидно, но до меня долго доходит.

P.S.
Зачем это нужно?
Любой сценарий, где хочется сказать «пусть другой Claude посмотрит свежим взглядом» - решается одной строчкой.
51🔥33
UI обновился навыков в
https://claude.ai/customize/skills

А на прошлой неделе обновился оф. skill-creator , с которым я обновил навыки своего проекта и остался доволен.

Может нас ждут какие-то интересные апдейты от Anthropic?
1🤔2
Прочитал статью про AI-First Product Engineering.
Из серии "выстройте надёжные пайплайны и спроектируйте масштабируемую архитектуру".

Но за обёрткой прячется нормальная структура.
Которую многие понимают интуитивно, но не могут сформулировать.
Вытащил и разложил.

Если строите продукт с ИИ внутри - честный тест: что сломается, если убрать модель?
Если ничего - у вас фича, а не AI-first продукт.
Обёртка над одним промптом к GPT - это не архитектурное решение.

80% времени уйдёт не на модель, а на сбор, очистку, версионирование.
Это не подготовительный этап. Это и есть работа.
Нет данных - нет продукта. shit in shit out

Человек в цикле - обязательно.
ML-пайплайн без HITL - shit out.
Причём важно не просто "человек проверяет", а где именно он стоит.

Валидация данных на входе и валидация ответа модели на выходе - два разных контура с разными метриками.
Без этого никакой корпоративный пайплайн не будет работоспособным.

Архитектура под ИИ ≠ архитектура с ИИ.
Когда модель определяет потоки данных - это AI-first.
Когда модель прикручена сбоку - это "мы тоже используем нейросети".
Feature store, model registry, A/B тесты, откат модели - проектируйте до, а не после.
"Масштабируемость из коробки" - миф.


Вроде всё очевидно, но когда собираешь в одном месте становится чеклистом.

Самое дорогое в AI-first - не модель, а инфраструктура вокруг неё.
Оригинал статьи: https://www.volumetree.com/2025/12/17/ai-first-product-engineering-explained-a-complete-guide/

С уважением ваш,
уже дважды подряд,
Капитан Очевидность
512👏2
Привет.
Anthropic тихо готовит CLI для Claude API.
Первая реакция: ну и что(херня на go), у нас есть curl.
А давай сравним:
Псевдо-curl версия вызова Claude:
curl https://api.anthropic.com/v1/messages \
-H "x-api-key: $KEY" \
-H "content-type: application/json" \
-H "anthropic-version: 2023-06-01" \
-d '{"model":"claude-sonnet-4-5-20250929",
"max_tokens":1024,
"messages":[{"role":"user",
"content":[{"type":"text",
"text":"привет"}]}]}'

ant-версия:
ant messages create \
--model claude-sonnet-4-5-20250929 \
--max-tokens 1024 \
--message '{content: "привет", role: user}'

Передаёшь файл через @photo.jpg - CLI сам определяет тип и кодирует в base64
--stream - и получаешь стриминг.
--transform "content.0.text" - вытащил текст из ответа без jq.

Anthropic системно закрывает все точки входа: веб-чат, API, Python/TS SDK, Claude Code как агент в терминале, и теперь CLI для атомарных вызовов.

Если вот эта вся заворушка с вояками не помешает "моим пасанам" двигать тему, я буду радоваться каждому их шагу в сторону моего взгляда < 3
51
SimpleAGI
UI обновился навыков в https://claude.ai/customize/skills А на прошлой неделе обновился оф. skill-creator , с которым я обновил навыки своего проекта и остался доволен. Может нас ждут какие-то интересные апдейты от Anthropic?
Мне казалось, что эта наивная шалость не завершится ничем хорошим или полезным.
/skill-creator:skill-creator 
Есть огромный план работ
docs/research/PLAN-analyzer-split.md
Который требует реализации в нескольких
сессиях. Для этого потребуется контроль прогресса, оркестрация. Как подготовить Claude Code для итеративного выполнения плана без
потери контекста и строгого выполнения пунктов с контролем качества?

В целом, он повторил пайплайн, который и я в каком-то виде реализую. Только тут это за полторы минуты.
Не так всё вылизано, но оно работает.
1🔥4
А ты доволен?

#meme
😁43
Added 1M context window for Opus 4.6 by default for Max, Team, and Enterprise plans (previously required extra usage)

Да есть же!
пушка-бомба.
🔥2😱1