📝 Память AI SWE Tools
Закончим обзор китайскими инструментами - там тоже есть достойные варианты!
... Trae и Quoder.
6️⃣ Trae
Интересен инновационным режимом SOLO, но сегодня мы про систему памяти, которая очень базовая:
* скоуп - правила пользователя (settings - rules - user rules)
* правила проекта:
* frontmatter не применяется, настройки скоупа нет;
в целом - это все что можно сказать. Довольно скудно! прочитать тут: https://docs.trae.ai/ide/rules-for-ai?_lang=en
6️⃣ Qoder
‼️ Один из самых интересных релизов последнего времени. Релиз упакован рядом иновационных и интересных фишек:
- repoWiki : огромный подробный автоматически создаваемый/обновляемый wiki по проекту,
- quest mode : их тейк про spec-driven development,
- быстрый code search : graph + векторный поиск (возможно, задействуют и repowiki)
- несколько моментов про long-term memory, про что мы и поговорим подробнее
Система памяти похожа на Cursor:
*
* скоуп - проект
* есть тюнинг скоупа правил: manual / agent decides / glob pattern matching files / always
* есть система памяти: memory
▶️ Агент автоматически хранит структурированную информацию о проекте:
* персональные предпочтения (Personal Preferences): стиль кода, подходы к разработке (test-forst development), пользовательские правила;
* извлечённый опыт (!!!): решения для повторяющихся ошибок, общие шаги для решения проблем, инстуркции по сборке и развёртыванию проекта (build/deploy), извлечённые уроки из проведённых рефакторингов и исправления багов (lessons learned)
* база знаний проекта : архитектура/структура, техстек, api/subsystems integration
▶️ Агент использует следующие источники для информации:
- чаты с пользователем: извлекаем явные указания и неявные паттерны
- логи работы агента: анализируем итоги работы для понимания что работает и что не работает;
- структура проекта и документация: извлечение семантической карты проекта
▶️ Для поддержания памяти в актуальном состоянии, агент производит оценку всех записанных фактов по следующим критериям (критерии весьма интересны, кмк):
- насколько релевантны записи для будущих задач
- точность и актуальность информации
- влияние на выполнение задач
Оценка производится после выполнения любой задачи, заметки которые имеют низку оценку помечаются к удалению из актуальной памяти.
▶️ Помимо этого, агент регулярно производит "ревизию" системы памяти:
- дедупликация: объединение дублирующейся/пересекающейся информации
- устранение конфликтов: устраняются выявленные противоречия в записях
- механизм "забывания": убираем нерелевантную или устаревшую информацию, основываясь на частоте использования и актуальности
🟢 Таким образом, агент используют следующий цикл в работе с памятью:
- извлечение: поиск в памяти необходимых фактов для контекста задачи
- использование: выполнение задачи с использованием сформированного контекста
- анализ: извлечение инсайтов/итогов выполнения задачи
- оценка: качества и полезности новых "воспоминаний"
- ревизия: цикл "обслуживания" памяти, рассмотрели чуть выше.
Написано в блогах крайне интересно, что уже очень здорово - идеи реально инновационные и ранее не встречавшиеся в готовых продуктах. Как работает с реальными проектами - пока не понятно, надо пробовать.
Почитать подробнее:
* блог - https://qoder.com/blog
* документация, rules: https://docs.qoder.com/user-guide/rules
* memory: https://docs.qoder.com/user-guide/chat/memory
#post
@deksden_notes
Закончим обзор китайскими инструментами - там тоже есть достойные варианты!
... Trae и Quoder.
6️⃣ Trae
Интересен инновационным режимом SOLO, но сегодня мы про систему памяти, которая очень базовая:
* скоуп - правила пользователя (settings - rules - user rules)
* правила проекта:
.trae/rules/, пользовательские md файлы* frontmatter не применяется, настройки скоупа нет;
в целом - это все что можно сказать. Довольно скудно! прочитать тут: https://docs.trae.ai/ide/rules-for-ai?_lang=en
6️⃣ Qoder
‼️ Один из самых интересных релизов последнего времени. Релиз упакован рядом иновационных и интересных фишек:
- repoWiki : огромный подробный автоматически создаваемый/обновляемый wiki по проекту,
- quest mode : их тейк про spec-driven development,
- быстрый code search : graph + векторный поиск (возможно, задействуют и repowiki)
- несколько моментов про long-term memory, про что мы и поговорим подробнее
Система памяти похожа на Cursor:
*
.qoder/rules папки для правил* скоуп - проект
* есть тюнинг скоупа правил: manual / agent decides / glob pattern matching files / always
* есть система памяти: memory
▶️ Агент автоматически хранит структурированную информацию о проекте:
* персональные предпочтения (Personal Preferences): стиль кода, подходы к разработке (test-forst development), пользовательские правила;
* извлечённый опыт (!!!): решения для повторяющихся ошибок, общие шаги для решения проблем, инстуркции по сборке и развёртыванию проекта (build/deploy), извлечённые уроки из проведённых рефакторингов и исправления багов (lessons learned)
* база знаний проекта : архитектура/структура, техстек, api/subsystems integration
▶️ Агент использует следующие источники для информации:
- чаты с пользователем: извлекаем явные указания и неявные паттерны
- логи работы агента: анализируем итоги работы для понимания что работает и что не работает;
- структура проекта и документация: извлечение семантической карты проекта
▶️ Для поддержания памяти в актуальном состоянии, агент производит оценку всех записанных фактов по следующим критериям (критерии весьма интересны, кмк):
- насколько релевантны записи для будущих задач
- точность и актуальность информации
- влияние на выполнение задач
Оценка производится после выполнения любой задачи, заметки которые имеют низку оценку помечаются к удалению из актуальной памяти.
▶️ Помимо этого, агент регулярно производит "ревизию" системы памяти:
- дедупликация: объединение дублирующейся/пересекающейся информации
- устранение конфликтов: устраняются выявленные противоречия в записях
- механизм "забывания": убираем нерелевантную или устаревшую информацию, основываясь на частоте использования и актуальности
🟢 Таким образом, агент используют следующий цикл в работе с памятью:
- извлечение: поиск в памяти необходимых фактов для контекста задачи
- использование: выполнение задачи с использованием сформированного контекста
- анализ: извлечение инсайтов/итогов выполнения задачи
- оценка: качества и полезности новых "воспоминаний"
- ревизия: цикл "обслуживания" памяти, рассмотрели чуть выше.
Написано в блогах крайне интересно, что уже очень здорово - идеи реально инновационные и ранее не встречавшиеся в готовых продуктах. Как работает с реальными проектами - пока не понятно, надо пробовать.
Почитать подробнее:
* блог - https://qoder.com/blog
* документация, rules: https://docs.qoder.com/user-guide/rules
* memory: https://docs.qoder.com/user-guide/chat/memory
#post
@deksden_notes
Qoder
Qoder - The Agentic Coding Platform
Qoder is an agentic coding platform for real software, think deeper, build better.
🔥9👍4
⚒️ Codex : небольшие ремарки
На данный момент мой основной рабочий инструмент, который работает 24/7 (ну - не совсем, но все таки), и в пару потоков - это СС.
Но я всегда смотрю альтернативные инструмены.
🟢 После выхода GPT-5 таким инструментом стал Codex CLI. Мало того, что он довольно бодро развивается, так ещё и модель, которая работает в нем - очень умная. GPT-5-Medium / High Thinking отлично справляется с вопросам, на мой взгляд, заметно превосходя Opus 4.1.
Но тулинг вокруг модели пока довольно сырой! Мало того что не хватает почти всего, что есть в СС: сессии - да, продолжить чат нельзя, нет субагентов, нет /memory команды, нет /context, нет statusline / ccusage. В общем - как жить - хз.
⚠️ Неожиданно возникли определённые вопросы с агентским поведением модели: упорно "тупит" при запуске моего оркестратора, запуская его в синхронном режиме, и ожидая ответа. Где то - умная, но тут - почему не в фоне? Как вы понимаете, "переключить" как в СС в фоновый режим через Ctrl+B в кодексе нельзя, такой фишки нету! Проблемы, как мне кажется, в недостаточно отладенных системных промптах кодекса и описании тулов. Клод тут с начала года "полирует" тему регулярно. Например, чтобы избежать подобных кейсов в СС запуск bash сопровождается таймаутом в 2 минуты, так что через 2 минуты процесс продолжится. Сколько процесс может висеть в кодексе - я не проверял, но точно больше 2 минут!
▶️ На мой взгляд - кодекс штука интересная, но в данный момент выглядит как нишевая, для решения "сложных" задач или отдельных тем. Например, пускать кодекс как MCP сервер с Cc, для генерации "второго мнения". Я её попробую к ещё к фронтэнду подпустить - посмотрим как там оно, ещё и с playwright MCP работать будет.
В общем, текущая премиум подписка остаётся за клодом.
#post
@deksden_notes
На данный момент мой основной рабочий инструмент, который работает 24/7 (ну - не совсем, но все таки), и в пару потоков - это СС.
Но я всегда смотрю альтернативные инструмены.
🟢 После выхода GPT-5 таким инструментом стал Codex CLI. Мало того, что он довольно бодро развивается, так ещё и модель, которая работает в нем - очень умная. GPT-5-Medium / High Thinking отлично справляется с вопросам, на мой взгляд, заметно превосходя Opus 4.1.
Но тулинг вокруг модели пока довольно сырой! Мало того что не хватает почти всего, что есть в СС: сессии - да, продолжить чат нельзя, нет субагентов, нет /memory команды, нет /context, нет statusline / ccusage. В общем - как жить - хз.
⚠️ Неожиданно возникли определённые вопросы с агентским поведением модели: упорно "тупит" при запуске моего оркестратора, запуская его в синхронном режиме, и ожидая ответа. Где то - умная, но тут - почему не в фоне? Как вы понимаете, "переключить" как в СС в фоновый режим через Ctrl+B в кодексе нельзя, такой фишки нету! Проблемы, как мне кажется, в недостаточно отладенных системных промптах кодекса и описании тулов. Клод тут с начала года "полирует" тему регулярно. Например, чтобы избежать подобных кейсов в СС запуск bash сопровождается таймаутом в 2 минуты, так что через 2 минуты процесс продолжится. Сколько процесс может висеть в кодексе - я не проверял, но точно больше 2 минут!
▶️ На мой взгляд - кодекс штука интересная, но в данный момент выглядит как нишевая, для решения "сложных" задач или отдельных тем. Например, пускать кодекс как MCP сервер с Cc, для генерации "второго мнения". Я её попробую к ещё к фронтэнду подпустить - посмотрим как там оно, ещё и с playwright MCP работать будет.
В общем, текущая премиум подписка остаётся за клодом.
#post
@deksden_notes
👍1🔥1
🎁 Jules опять немного обновился
Теперь картинки можно отправлять прямо со стартовой задачей, а значит, например, легче ставить задачи на дороботку фронта и в целом любые UI вопросы.
Полезная мелочь, но не могу не отметить уверенный темп развития продукта
https://jules.google/docs/changelog/
#news
@deksden_notes
Теперь картинки можно отправлять прямо со стартовой задачей, а значит, например, легче ставить задачи на дороботку фронта и в целом любые UI вопросы.
Полезная мелочь, но не могу не отметить уверенный темп развития продукта
https://jules.google/docs/changelog/
#news
@deksden_notes
❤3👍1
☝️ ХоЗАЯке на заметку
простите за каламбур, просто пост про ЗАЮ: z.ai
Как подключить модель GLM в Клод Код и получить (по бенчам) модель на уровне Соннет 4 с ценой $3/$15 в месяц с приличными лимитами! Даже без акции это будет $30. Весьма интересно, чтобы попробовать - я вот собираюсь затестить попозже.
* про модельки тут: https://z.ai/model-api
* про подписку тут: https://docs.z.ai/devpack/overview
* про использование с СС тут: https://docs.z.ai/devpack/tool/claude
Пишите в чат, кто попробует - любопытно же!
#post
@deksden_notes
простите за каламбур, просто пост про ЗАЮ: z.ai
Как подключить модель GLM в Клод Код и получить (по бенчам) модель на уровне Соннет 4 с ценой $3/$15 в месяц с приличными лимитами! Даже без акции это будет $30. Весьма интересно, чтобы попробовать - я вот собираюсь затестить попозже.
* про модельки тут: https://z.ai/model-api
* про подписку тут: https://docs.z.ai/devpack/overview
* про использование с СС тут: https://docs.z.ai/devpack/tool/claude
Пишите в чат, кто попробует - любопытно же!
#post
@deksden_notes
😁3🔥2
Хабр: Claude Code - субагенты
Не прошло и недели, как хабр расчехлился с модерацией статьи!
Сабж тут:
https://habr.com/ru/articles/946748/
Примерно то же самое что было в канале, но немножко причесано
#post
@deksden_notes
Не прошло и недели, как хабр расчехлился с модерацией статьи!
Сабж тут:
https://habr.com/ru/articles/946748/
Примерно то же самое что было в канале, но немножко причесано
#post
@deksden_notes
🔥7❤4👍3
👉 Вайбкодинг сессии
1/2
Да, мы все с вами понимаем, что Spec-Driven Development это топ, и в целом видимо в тех краях будущее AI-driven разработки.
Но регулярно возникает необходимость оперативно внести изменения в код проекта, для которого ещё не выстроен полноценный AI SWE Pipeline на спеках и агентах.
Тогда у нас начинается "вайбкодинг" - относительно интерактивные сессии работы с системой. Что я бы посоветовал и что применяю сам в таких случаях:
‼️ Контекст должен быть чистым/достаточно свободным. Всегда начинайте новый вопрос с чистого контекста, идеально - /clear для старта новой сессии;
Иногда это невозможно: допустим, если вы в процессе чата поняли необходимость внесения изменений в код. Тут важно понять: достаочно ли у вас контекста для обсуждения изменений. Вы же используете ccstatusline? смотрите сколько токенов сейчас в контексте. Прикидывайте сколько вы потратите на обсуждения вашего рефакторинга. Если есть опасения что не хватит - делайте команду "/compact {инструкции}", а в качестве инструкции описывайте максимально те сведения, которые вам надо оставить в контексте - тогда компактификация чуть лучше сохранит вам контекст.
‼️ Используем plan mode. Идеально если у вас есть max план и доступен opus. тогда вы можете поставить модель "opusplan" (через команду /model), и тогда при переключении в режим планирования включится гораздо более эрудированный опус, что поможет. А когда вы завершите планирование, для кодинга по сформированному плану у вас будет достаточно быстрый соннет.
❓Зачем использовать "plan mode" если у вас нету opus на тарифе, и есть только соннет? Потому что это удобная возможность не писать в промптах "не делай пока код, давай обсудим". Агент будет обсуждать с вами планы, не "срываясь" фальшстартами в кодинг.
‼️ Включите стиль "Explanatory" - он значительно разбавит сухой лаконичный стиль общения СС, что важно в обсуждениях при планировании. Используйте команду "/output-style"
‼️ Прежде чем задавать свой вопрос попросите агента подготовится. Пишите "Подготовься, собери необходимый контекст: будем обсуждать вопрос ...". СС пошуршит по вашему проекту, соберёт инфу. Тогда обсуждение сразу будет предметное.
‼️ Обсуждайте вопрос. Если вышла табличка с планом, жмите 3 (отвергнуть план, продолжить обсуждение) - и пишите дальнейшие вопросы для проработки.
‼️ Когда вы получили нужное вам решение, то перед реализацией советую сделать следующие пункты:
▶️ Первым пунктом плана необходимо запланировать создание подробного плана работы в файле маркдаун с чек-листом, где указать что будем делать, где, ПОЧЕМУ именно так, какие сведения используем, на какую документацию опираемся, каким стандартам кодирования следуем, что в части интеграции отслеживаем. План разместить в папке
▶️ Вторым пунктом плана: изучить меморибанк, изучить его структуру, понять какие документы используются в документировании изменяющихся модулей системы, и прописать изменения в документацию. Принцип - docs first, мы прописываем изменения ДО их внесения.
▶️ Последним пунктом плана необходимо прописать: читаем файл маркдаун из пункта один, и систематически сверям каждый изменённый файл коди и документации с планом. Далее необходимо запланировать внесение изменений по выявленным недоработкам и недостаткам.
❓ Зачем файлик в маркдауне? Этот файл позволит вам в полном объёме сохранить ваш обсуждённый план, с проработанными деталями. Плюс вы можете сами изучить не краткое резюме плана от агента, а подробный перечень действий, и скорректировать при необходимости (что, впрочем, довольно редко).
❓ почему файл плана первым пунктом? Потому что после старта изменений агент все постепенно забудет, а вам нужно сохранить полный качественный план! Если вы этого не сделаете сразу - считайте что половину качества планирования вы слили.
Продолжение тут: https://t.me/deksden_notes/90
1/2
Да, мы все с вами понимаем, что Spec-Driven Development это топ, и в целом видимо в тех краях будущее AI-driven разработки.
Но регулярно возникает необходимость оперативно внести изменения в код проекта, для которого ещё не выстроен полноценный AI SWE Pipeline на спеках и агентах.
Тогда у нас начинается "вайбкодинг" - относительно интерактивные сессии работы с системой. Что я бы посоветовал и что применяю сам в таких случаях:
‼️ Контекст должен быть чистым/достаточно свободным. Всегда начинайте новый вопрос с чистого контекста, идеально - /clear для старта новой сессии;
Иногда это невозможно: допустим, если вы в процессе чата поняли необходимость внесения изменений в код. Тут важно понять: достаочно ли у вас контекста для обсуждения изменений. Вы же используете ccstatusline? смотрите сколько токенов сейчас в контексте. Прикидывайте сколько вы потратите на обсуждения вашего рефакторинга. Если есть опасения что не хватит - делайте команду "/compact {инструкции}", а в качестве инструкции описывайте максимально те сведения, которые вам надо оставить в контексте - тогда компактификация чуть лучше сохранит вам контекст.
‼️ Используем plan mode. Идеально если у вас есть max план и доступен opus. тогда вы можете поставить модель "opusplan" (через команду /model), и тогда при переключении в режим планирования включится гораздо более эрудированный опус, что поможет. А когда вы завершите планирование, для кодинга по сформированному плану у вас будет достаточно быстрый соннет.
❓Зачем использовать "plan mode" если у вас нету opus на тарифе, и есть только соннет? Потому что это удобная возможность не писать в промптах "не делай пока код, давай обсудим". Агент будет обсуждать с вами планы, не "срываясь" фальшстартами в кодинг.
‼️ Включите стиль "Explanatory" - он значительно разбавит сухой лаконичный стиль общения СС, что важно в обсуждениях при планировании. Используйте команду "/output-style"
‼️ Прежде чем задавать свой вопрос попросите агента подготовится. Пишите "Подготовься, собери необходимый контекст: будем обсуждать вопрос ...". СС пошуршит по вашему проекту, соберёт инфу. Тогда обсуждение сразу будет предметное.
‼️ Обсуждайте вопрос. Если вышла табличка с планом, жмите 3 (отвергнуть план, продолжить обсуждение) - и пишите дальнейшие вопросы для проработки.
‼️ Когда вы получили нужное вам решение, то перед реализацией советую сделать следующие пункты:
▶️ Первым пунктом плана необходимо запланировать создание подробного плана работы в файле маркдаун с чек-листом, где указать что будем делать, где, ПОЧЕМУ именно так, какие сведения используем, на какую документацию опираемся, каким стандартам кодирования следуем, что в части интеграции отслеживаем. План разместить в папке
.protocols/ в корневой папке проекта.▶️ Вторым пунктом плана: изучить меморибанк, изучить его структуру, понять какие документы используются в документировании изменяющихся модулей системы, и прописать изменения в документацию. Принцип - docs first, мы прописываем изменения ДО их внесения.
▶️ Последним пунктом плана необходимо прописать: читаем файл маркдаун из пункта один, и систематически сверям каждый изменённый файл коди и документации с планом. Далее необходимо запланировать внесение изменений по выявленным недоработкам и недостаткам.
❓ Зачем файлик в маркдауне? Этот файл позволит вам в полном объёме сохранить ваш обсуждённый план, с проработанными деталями. Плюс вы можете сами изучить не краткое резюме плана от агента, а подробный перечень действий, и скорректировать при необходимости (что, впрочем, довольно редко).
❓ почему файл плана первым пунктом? Потому что после старта изменений агент все постепенно забудет, а вам нужно сохранить полный качественный план! Если вы этого не сделаете сразу - считайте что половину качества планирования вы слили.
Продолжение тут: https://t.me/deksden_notes/90
Telegram
DEKSDEN notes
2/2
❓почему документация именно вторым пунктом а не после внесения изменений? По той же причине, что и создание плана первым пунктом. Только план вы используете сейчас, а документация - это то что останется для последующей работы. Это не менее важно, потому…
❓почему документация именно вторым пунктом а не после внесения изменений? По той же причине, что и создание плана первым пунктом. Только план вы используете сейчас, а документация - это то что останется для последующей работы. Это не менее важно, потому…
👍9🔥6❤3
👉 Вайбкодинг сессии
2/2
... (начало тут: https://t.me/deksden_notes/89)
❓почему документация именно вторым пунктом а не после внесения изменений? По той же причине, что и создание плана первым пунктом. Только план вы используете сейчас, а документация - это то что останется для последующей работы. Это не менее важно, потому приоритетно.
❓Зачем сверять в конце? Потому что агент "забывает" или "упускает" ряд моментов. Чем тщательнее на старте были прописаны детали вашего плана в файл, тем полнее будет реализация того. Даже не очень длинные воркфлоу на моей практике оборачивались доработками по чек-листу.
❓Что делать если настигла компактификация? Простой промпт "по ходу дела" помогает - "Прочитай файл {путь и имя файла с планом} для контекста, продолжай по плану". Засылайте такой промпт во время компактификации, тогда он его обработает сразу после возобновления работы, и забывание будет значительно скомпенсировано.
❓Есть же встроенный инструмент todo? Зачем дублировать в файл? Встроенный инструмент не содержит подробных сведений - только краткие пункты. Да, агент не забудет что надо сделать. Но может упустить проработанные вами при планировании детали - "как" именно все нужно было делать, ну и нюансы интеграции. Вы же проработали это при планировании, да?
ℹ️ Это базовый подход.
Что можно улучшать: сделать отдельные этапы на базе специализированных агентов. Если у вас есть агент, работающий с меморибанком, который в курсе про структуру хранени я информации и правила хранения данных, то документирование в меморибанк проводим через него.
Если у вас есть кодовые агенты, которые знают стиль кодирования, структуру системы, интеграции подсистем, где искать контракты подсистем, то код писать лучше через них.
Да, субагенты будут работать подольше - зато качество работы будет повыше и конекст оркестратора "целее", что позитивно для отслеживания общего плана.
Такие вот приёмы
#post
@deksden_notes
2/2
... (начало тут: https://t.me/deksden_notes/89)
❓почему документация именно вторым пунктом а не после внесения изменений? По той же причине, что и создание плана первым пунктом. Только план вы используете сейчас, а документация - это то что останется для последующей работы. Это не менее важно, потому приоритетно.
❓Зачем сверять в конце? Потому что агент "забывает" или "упускает" ряд моментов. Чем тщательнее на старте были прописаны детали вашего плана в файл, тем полнее будет реализация того. Даже не очень длинные воркфлоу на моей практике оборачивались доработками по чек-листу.
❓Что делать если настигла компактификация? Простой промпт "по ходу дела" помогает - "Прочитай файл {путь и имя файла с планом} для контекста, продолжай по плану". Засылайте такой промпт во время компактификации, тогда он его обработает сразу после возобновления работы, и забывание будет значительно скомпенсировано.
❓Есть же встроенный инструмент todo? Зачем дублировать в файл? Встроенный инструмент не содержит подробных сведений - только краткие пункты. Да, агент не забудет что надо сделать. Но может упустить проработанные вами при планировании детали - "как" именно все нужно было делать, ну и нюансы интеграции. Вы же проработали это при планировании, да?
ℹ️ Это базовый подход.
Что можно улучшать: сделать отдельные этапы на базе специализированных агентов. Если у вас есть агент, работающий с меморибанком, который в курсе про структуру хранени я информации и правила хранения данных, то документирование в меморибанк проводим через него.
Если у вас есть кодовые агенты, которые знают стиль кодирования, структуру системы, интеграции подсистем, где искать контракты подсистем, то код писать лучше через них.
Да, субагенты будут работать подольше - зато качество работы будет повыше и конекст оркестратора "целее", что позитивно для отслеживания общего плана.
Такие вот приёмы
#post
@deksden_notes
Telegram
DEKSDEN notes
👉 Вайбкодинг сессии
1/2
Да, мы все с вами понимаем, что Spec-Driven Development это топ, и в целом видимо в тех краях будущее AI-driven разработки.
Но регулярно возникает необходимость оперативно внести изменения в код проекта, для которого ещё не выстроен…
1/2
Да, мы все с вами понимаем, что Spec-Driven Development это топ, и в целом видимо в тех краях будущее AI-driven разработки.
Но регулярно возникает необходимость оперативно внести изменения в код проекта, для которого ещё не выстроен…
👍9🔥5❤2
⚒️ Новый релиз codex 0.36.0 и gpt-5-codex модель
Не даром аж 4 дня не обновляли кодекс! Готовился достаточно крупный релиз:
- новая специальная кодинговая модель
- codex resume : можно выбрать сессию которую восстанавливать, можно --last, можно по <id>
- и куча других мелких, но приятных новшеств, подробнее тут: https://github.com/openai/codex/releases/tag/rust-v0.36.0
Первые впечатления про codex-5-medium/high
Не хуже классического gpt-5-medium/high. Интерфейс теперь показывает кое-какие мысли. Думать может долго, но для простых задач может и быстро - не разобрался ещё что и как. Пока кажется что стало несколько задумчевее все!
Посмотрим как будет работать на крупном контексте. Gpt-5 на 75% контекста уже начинает путаться в ответах и чудить. Посмотрим как будет себя вести кодекс.
Upd: добавлю ссылочку где почитать про модель: https://openai.com/index/introducing-upgrades-to-codex/
- на простые вопросы отвечает действительно быстро. Видимо, это и есть обозначенная динамическая подстройка под сложность вопроса.
- местами задумывается без признаков жизни - только часики тикают. Но это просто думает.
- на большом контексте догнал 2 чата до 4% left, не чудил. Но есть ли или нету автокомпакта (который анонсировали) пока не пробовал, эти чаты было жалко, попробую потом на чем нибудь не важном
Upd2: спецэффекты к gpt-5-codex начинаются при приближении к 0% свободного конекста! не доводите, он прям деградирует по вниманию - путает сообщения при ответах, и все такое. Лучше уж компакт и восстановление контекста
Промпт для рефреша контекста в таком духе: "подготовлся с обсуждению вопроса {тематика}, читай код, документацию/меморибанк и подготовь контекст. Сами вопросы будут позже."
#post
@deksden_notes
Не даром аж 4 дня не обновляли кодекс! Готовился достаточно крупный релиз:
- новая специальная кодинговая модель
- codex resume : можно выбрать сессию которую восстанавливать, можно --last, можно по <id>
- и куча других мелких, но приятных новшеств, подробнее тут: https://github.com/openai/codex/releases/tag/rust-v0.36.0
Первые впечатления про codex-5-medium/high
Не хуже классического gpt-5-medium/high. Интерфейс теперь показывает кое-какие мысли. Думать может долго, но для простых задач может и быстро - не разобрался ещё что и как. Пока кажется что стало несколько задумчевее все!
Посмотрим как будет работать на крупном контексте. Gpt-5 на 75% контекста уже начинает путаться в ответах и чудить. Посмотрим как будет себя вести кодекс.
Upd: добавлю ссылочку где почитать про модель: https://openai.com/index/introducing-upgrades-to-codex/
- на простые вопросы отвечает действительно быстро. Видимо, это и есть обозначенная динамическая подстройка под сложность вопроса.
- местами задумывается без признаков жизни - только часики тикают. Но это просто думает.
- на большом контексте догнал 2 чата до 4% left, не чудил. Но есть ли или нету автокомпакта (который анонсировали) пока не пробовал, эти чаты было жалко, попробую потом на чем нибудь не важном
Upd2: спецэффекты к gpt-5-codex начинаются при приближении к 0% свободного конекста! не доводите, он прям деградирует по вниманию - путает сообщения при ответах, и все такое. Лучше уж компакт и восстановление контекста
Промпт для рефреша контекста в таком духе: "подготовлся с обсуждению вопроса {тематика}, читай код, документацию/меморибанк и подготовь контекст. Сами вопросы будут позже."
#post
@deksden_notes
GitHub
Release 0.36.0 · openai/codex
Breaking change: OPENAI_API_KEY is no longer read from the environment
API login is no longer implicit; we do not pick up OPENAI_API_KEY from the environment. To use an API key programmatically, ru...
API login is no longer implicit; we do not pick up OPENAI_API_KEY from the environment. To use an API key programmatically, ru...
2🔥6❤3👍2👎1
➡️ Небольшой практический пример параллельного запуска агентов
Приведу простой пример как можно организовать агентный процесс и использовать возможность СС запускать процессы параллельно.
Исходная задача: проект на TypeScript. Для него мы делаем typecheck и lint. Typecheck - это запусе typescript компилятора в режиме проверки кода (без генерации js бандла), lint - это запуск линтера, который используется в проекте. Часто это ESLint, для next.js это next lint, я последнее время для ts настраиваю biome.
➡️ Рассмотрим как тут можно кое-что ускорить за счёт параллельных задач. Первое: получить результаты компилирования и линтинга. Очевидно, что утилиты можно запустить параллельно, это мы пропишем "ручную".
Для запуска будем использовать специализированного агента, назовём "qa-agent". В контексте агента указываем:
- соберём из меморибанка сведения о тех стеке проекта, чтобы агент умел запускать утилиты,
- знал про конфиги и в случае чего мог поправить конфиг.
- знал какие папки нужно игнорировать (для ts это dist папки со сгенерированным компилятором js)
- определитесь - lint для тестов в проекте вы делаете? а компиляцию? и пропишем это в агенте;
- (на самом деле главная компетенция агента - умение запускать тесты, но чтобы не разводить слишком большую стаю агентов мы его и для компиляции с линтингом задействуем)
Итак, запуск агентов параллельно нужно сопроводить фразой: "запускай агенты
Суть магии этой фразы - добиться чтобы модель сделала "параллельный вызов" tools. Технически это происходит когда модель в одном своём ответе запрашивает вызов нескольких инструментов. СС поддерживает такую штуку и запустит агентов параллельно.
➡️ Дальше интереснее: получив результаты компилятора и линтера можно поручить модели спланировать параллельную обработку результатов - мы будем фиксить проблемы параллельными агентами.
❓ Какие есть возможности параллельной обработки проекта? принципиально их всего две:
- развести "области работы" и параллельно обрабатывать непересекающиеся части проекта; это самый простой и беспроблемный способ - если задача с понятной "зоной изменения", и мы знаем какие файлы будут изменяться, то можем поручить исправление разных файлов разным агентам. Этот способ позволяет избежать стадии решения конфликтов при "вливании" результатов работы в репозиторий.
- если зоны работы агентов пересекаются - необходимо использовать изоляцию на уровне Git: локально мы можем использовать worktree для каждого агента, или классические branch. Детали зависят от схемы работы с git в вашем проекте. Это может быть стандартные бранчи main -> develop -> (feature branch). По завершении работы мы мержим worktree/branch обратно в develop - конечно, все это делают агенты.
Для нашей задачи с исправлением ошибок компилятора / lint подходит первый вариант: ведь мы знаем списки проблемных файлов.
Мы инcтруктируем оркестратора сгруппировать проблемы с компиляцией и линтом по файлам, и распределить их между 5-7 агентами таким образом, чтобы файлы не пересекались и агенты не мешали друг другу.
Запускать агенты мы будем также, параллельно. Агент нужен будет для написания кода, "code-writer":
- знает структуру кода в проекте
- знает стандарты кодпирования
- знает как оформлять jsdoc, какие кросс-ссылки проставлять
Запускаем аналогично: даём инструкцию вызывать всех агентов в ОДНОМ сообщении оркестратора.
➡️ Итак - на верхнем уровне у оркестратора одна задача - запускать агентов, получать списки файлов и провести планирование работы так, чтобы разделить "зоны" между агентами, а в конце отчитаться о результатах. Все детали о запуске компилятора/линтера и требованиях к написанию кода будут внутри промптов субагентов.
🟢 Такая штука работает вполне надёжно и может быть запущена как отдельное агентское воркфлоу через claude code sdk/cli, можно даже по крону (ночью?).
#post
@deksden_notes
Приведу простой пример как можно организовать агентный процесс и использовать возможность СС запускать процессы параллельно.
Исходная задача: проект на TypeScript. Для него мы делаем typecheck и lint. Typecheck - это запусе typescript компилятора в режиме проверки кода (без генерации js бандла), lint - это запуск линтера, который используется в проекте. Часто это ESLint, для next.js это next lint, я последнее время для ts настраиваю biome.
➡️ Рассмотрим как тут можно кое-что ускорить за счёт параллельных задач. Первое: получить результаты компилирования и линтинга. Очевидно, что утилиты можно запустить параллельно, это мы пропишем "ручную".
Для запуска будем использовать специализированного агента, назовём "qa-agent". В контексте агента указываем:
- соберём из меморибанка сведения о тех стеке проекта, чтобы агент умел запускать утилиты,
- знал про конфиги и в случае чего мог поправить конфиг.
- знал какие папки нужно игнорировать (для ts это dist папки со сгенерированным компилятором js)
- определитесь - lint для тестов в проекте вы делаете? а компиляцию? и пропишем это в агенте;
- (на самом деле главная компетенция агента - умение запускать тесты, но чтобы не разводить слишком большую стаю агентов мы его и для компиляции с линтингом задействуем)
Итак, запуск агентов параллельно нужно сопроводить фразой: "запускай агенты
qa-agent для выполнения Typecheck и lint проекта параллельно, для этого вызывай команду запуска двух агента в ОДНОМ своём сообщении."Суть магии этой фразы - добиться чтобы модель сделала "параллельный вызов" tools. Технически это происходит когда модель в одном своём ответе запрашивает вызов нескольких инструментов. СС поддерживает такую штуку и запустит агентов параллельно.
➡️ Дальше интереснее: получив результаты компилятора и линтера можно поручить модели спланировать параллельную обработку результатов - мы будем фиксить проблемы параллельными агентами.
❓ Какие есть возможности параллельной обработки проекта? принципиально их всего две:
- развести "области работы" и параллельно обрабатывать непересекающиеся части проекта; это самый простой и беспроблемный способ - если задача с понятной "зоной изменения", и мы знаем какие файлы будут изменяться, то можем поручить исправление разных файлов разным агентам. Этот способ позволяет избежать стадии решения конфликтов при "вливании" результатов работы в репозиторий.
- если зоны работы агентов пересекаются - необходимо использовать изоляцию на уровне Git: локально мы можем использовать worktree для каждого агента, или классические branch. Детали зависят от схемы работы с git в вашем проекте. Это может быть стандартные бранчи main -> develop -> (feature branch). По завершении работы мы мержим worktree/branch обратно в develop - конечно, все это делают агенты.
Для нашей задачи с исправлением ошибок компилятора / lint подходит первый вариант: ведь мы знаем списки проблемных файлов.
Мы инcтруктируем оркестратора сгруппировать проблемы с компиляцией и линтом по файлам, и распределить их между 5-7 агентами таким образом, чтобы файлы не пересекались и агенты не мешали друг другу.
Запускать агенты мы будем также, параллельно. Агент нужен будет для написания кода, "code-writer":
- знает структуру кода в проекте
- знает стандарты кодпирования
- знает как оформлять jsdoc, какие кросс-ссылки проставлять
Запускаем аналогично: даём инструкцию вызывать всех агентов в ОДНОМ сообщении оркестратора.
➡️ Итак - на верхнем уровне у оркестратора одна задача - запускать агентов, получать списки файлов и провести планирование работы так, чтобы разделить "зоны" между агентами, а в конце отчитаться о результатах. Все детали о запуске компилятора/линтера и требованиях к написанию кода будут внутри промптов субагентов.
🟢 Такая штука работает вполне надёжно и может быть запущена как отдельное агентское воркфлоу через claude code sdk/cli, можно даже по крону (ночью?).
#post
@deksden_notes
🔥5❤2👍2
➡️ Параллельный запуск - итоги
❓ Короткий апдейт: в чем был смысл?
Посмотрите на скрин. Система работала итого чуть более 8 минут абсолютного времени. Но за это время сделано общей работы - более 25 минут! более 600к токенов.
В один поток это было бы 150к токенов максимум за такое время.
А это - все показатели реально выполненной работы и пользы. PROFIT? Очевидно - да, кмк.
▶️ Как можно улучшить?
Можно инструктировать оркестратора на генерацию yaml/json файла с итогами. Этот файл - машиночитаемый. Ваш раннер для скрипта может смотреть на этот файл, и если вас не устраивают показатели - делать повторный запуск.
Кто в курсе - у текущего клода есть ... не знаю как сказать, но пусть будет "особенность"! Он очень любит приукрашивать состояние дел, и при запуске тестов отчитываться об enterprise ready high quality system когда у вас 50% тестов валится красными.
Для борьбы с "особенностями" пригодится такой сгенерированный файл: если гонять агентов "до посинения" бездушным скриптом по крону "в ночь", то можно к утру каждый день получать "полностью зеленый" проект! Это касается и lint/typecheck, и тестов.
#post
@deksden_notes
❓ Короткий апдейт: в чем был смысл?
Посмотрите на скрин. Система работала итого чуть более 8 минут абсолютного времени. Но за это время сделано общей работы - более 25 минут! более 600к токенов.
В один поток это было бы 150к токенов максимум за такое время.
А это - все показатели реально выполненной работы и пользы. PROFIT? Очевидно - да, кмк.
▶️ Как можно улучшить?
Можно инструктировать оркестратора на генерацию yaml/json файла с итогами. Этот файл - машиночитаемый. Ваш раннер для скрипта может смотреть на этот файл, и если вас не устраивают показатели - делать повторный запуск.
Кто в курсе - у текущего клода есть ... не знаю как сказать, но пусть будет "особенность"! Он очень любит приукрашивать состояние дел, и при запуске тестов отчитываться об enterprise ready high quality system когда у вас 50% тестов валится красными.
Для борьбы с "особенностями" пригодится такой сгенерированный файл: если гонять агентов "до посинения" бездушным скриптом по крону "в ночь", то можно к утру каждый день получать "полностью зеленый" проект! Это касается и lint/typecheck, и тестов.
#post
@deksden_notes
👍8🔥2🥱1
🆕 Первые впечатления от Claude for Chrome
Утром получил письмо счастья от Антропиков, что мой лист ожидания сработал и у меня есть доступ к их новой фиче, клод в твоём браузере.
Ура!
Пойдём тестить.
Качаем расширение, логинимся в клод с Макс тарифом, одобряем подключение расширения и получаем аккуратную панель чата с клодом сбоку странички.
Ставим одобрение всего сразу - "нам нечего терять кроме наших цепей!"
Просим смотреть озон и искать товары. Заходит норм, антибот озона на него не срабатывает, что отлично. Поиском пользуется, навигацию по сайту делает.
Дальше начинаем тупить - при попытке открыть товар кликом по нему, на озоне он открывается в новой вкладке, чего клод не видит и тупит.
Потыкавшись немного в проблему с невозможностью зайти в товар, он придумывает сходить в гугл поиск. Далее получаем ошибку переполнения контекста.
Ну ок - что то работает, что то нет. Надо подумать над другими тестами
#post
@deksden_notes
Утром получил письмо счастья от Антропиков, что мой лист ожидания сработал и у меня есть доступ к их новой фиче, клод в твоём браузере.
Ура!
Пойдём тестить.
Качаем расширение, логинимся в клод с Макс тарифом, одобряем подключение расширения и получаем аккуратную панель чата с клодом сбоку странички.
Ставим одобрение всего сразу - "нам нечего терять кроме наших цепей!"
Просим смотреть озон и искать товары. Заходит норм, антибот озона на него не срабатывает, что отлично. Поиском пользуется, навигацию по сайту делает.
Дальше начинаем тупить - при попытке открыть товар кликом по нему, на озоне он открывается в новой вкладке, чего клод не видит и тупит.
Потыкавшись немного в проблему с невозможностью зайти в товар, он придумывает сходить в гугл поиск. Далее получаем ошибку переполнения контекста.
Ну ок - что то работает, что то нет. Надо подумать над другими тестами
#post
@deksden_notes
❤2🔥2👍1🤣1
🤔 Думать надо анимированно
Тут подоспел релиз СС с индексом 115 (на самом деле 117 уже)
И в нем реализовали визуальный фект для "магических" слов, которые заставляют Клод думать
Попробуйте!
Пишем в строке ввода в СС:
- think
- think hard, think deeply
- ultrathink
Эффект разный)) Не уверен что это прям нужно, но местами может быть даже полезно и забавно
Upd: коллеги уже постят мемы на тему
https://t.me/aiclubsweggs/73056
#post
@deksden_notes
Тут подоспел релиз СС с индексом 115 (на самом деле 117 уже)
И в нем реализовали визуальный фект для "магических" слов, которые заставляют Клод думать
Попробуйте!
Пишем в строке ввода в СС:
- think
- think hard, think deeply
- ultrathink
Эффект разный)) Не уверен что это прям нужно, но местами может быть даже полезно и забавно
Upd: коллеги уже постят мемы на тему
https://t.me/aiclubsweggs/73056
#post
@deksden_notes
👍1🔥1
DEKSDEN notes
⚒️ Новый релиз codex 0.36.0 и gpt-5-codex модель Не даром аж 4 дня не обновляли кодекс! Готовился достаточно крупный релиз: - новая специальная кодинговая модель - codex resume : можно выбрать сессию которую восстанавливать, можно --last, можно по <id> …
⚒️ Gpt-5-codex, вторые впечатления
Первые впечатления были тут https://t.me/deksden_notes/91
Это - вторые впечатления.
В общем, модель очевидно другая в части агентности. В районе часа над моими задачами работает сама, без особых плясок с бубном. План, конечно, выгрузил в файлик - но не особо пригождается: ей хватает контекста! Удивительно. Надо изучить как именно она так экономно работает с контекстом.
Запускать что то внешнее по прежнему можно с проблемами.
модель иногда достаточно медленная.
но все это не главное - главное что модель весьма умная! радует
Плюс: она не льстит, что капец как важно при обсуждениях.
Хороший релиз, кмк.
#post
@deksden_notes
Первые впечатления были тут https://t.me/deksden_notes/91
Это - вторые впечатления.
В общем, модель очевидно другая в части агентности. В районе часа над моими задачами работает сама, без особых плясок с бубном. План, конечно, выгрузил в файлик - но не особо пригождается: ей хватает контекста! Удивительно. Надо изучить как именно она так экономно работает с контекстом.
Запускать что то внешнее по прежнему можно с проблемами.
модель иногда достаточно медленная.
но все это не главное - главное что модель весьма умная! радует
Плюс: она не льстит, что капец как важно при обсуждениях.
Хороший релиз, кмк.
#post
@deksden_notes
👍6🔥3😁1
Github MCP Registry
BIG news для отрасли, в каком то смысле. Github запускает свой регистр MCP серверов, убив разом пучок стартапов, видимо!
https://github.blog/ai-and-ml/github-copilot/meet-the-github-mcp-registry-the-fastest-way-to-discover-mcp-servers/
Нужная инициатива и признание роли MCP. Круто же! )
К релизу приурочен GA собственного MCP от GitHub
https://github.blog/changelog/2025-09-04-remote-github-mcp-server-is-now-generally-available/
Пока в реестре 38 серверов всего, но в планах - поддержка/интеграция с открытым реестром:
https://github.com/modelcontextprotocol/registry/
Интересно, конечно
#post
@deksden_notes
BIG news для отрасли, в каком то смысле. Github запускает свой регистр MCP серверов, убив разом пучок стартапов, видимо!
https://github.blog/ai-and-ml/github-copilot/meet-the-github-mcp-registry-the-fastest-way-to-discover-mcp-servers/
Нужная инициатива и признание роли MCP. Круто же! )
К релизу приурочен GA собственного MCP от GitHub
https://github.blog/changelog/2025-09-04-remote-github-mcp-server-is-now-generally-available/
Пока в реестре 38 серверов всего, но в планах - поддержка/интеграция с открытым реестром:
https://github.com/modelcontextprotocol/registry/
Интересно, конечно
#post
@deksden_notes
🔥4👍1
🐞 Anthropic публикует post-mortem анализ багов с Claude
Сабж: https://www.anthropic.com/engineering/a-postmortem-of-three-recent-issues
❓ Верим? Причина "отупления" Claude Code найдена и устранена?
▶️ Я не могу сказать, я особо на такие эффекты не натыкался. Пытаясь разобраться, сравнивал какие заключения о причинах багов делает sonnet и gpt-5-codex/high . В целом, кодекс обычно подтверждает выводы, но может копнуть поглубже, и лучше "понимает" как комплексно исправить баг.
Конечно, более корректно сравнивать opus 4.1 с codex/high, чем я сейчас занимаюсь. Результаты расскажу, конечно - но надо бы поднабрать статистику. ⏩️
👉 А у вас какой опыт/наблюдения?
#post
@deksden_notes
Сабж: https://www.anthropic.com/engineering/a-postmortem-of-three-recent-issues
❓ Верим? Причина "отупления" Claude Code найдена и устранена?
▶️ Я не могу сказать, я особо на такие эффекты не натыкался. Пытаясь разобраться, сравнивал какие заключения о причинах багов делает sonnet и gpt-5-codex/high . В целом, кодекс обычно подтверждает выводы, но может копнуть поглубже, и лучше "понимает" как комплексно исправить баг.
Конечно, более корректно сравнивать opus 4.1 с codex/high, чем я сейчас занимаюсь. Результаты расскажу, конечно - но надо бы поднабрать статистику. ⏩️
👉 А у вас какой опыт/наблюдения?
#post
@deksden_notes
🤔3👍1🔥1
📦 Кейс: пакуем проекты с Repomix
1/2
Небольшой практический кейс.
Вспомним те доисторические времена, овеянные легендами древности, когда для работы с проектами мы использовали веб приложения чатов с различными моделями. Ведь тогда нам ещё не явились ИИ агенты с подписками по разумным ценам! Но и сейчас есть достойные случаи для всей этой возни с веб чатами: например, контекст в 1m токенов у Гемини, который позволяет модели сразу видеть огромный объём данных - например, ваш проект целиком. До сих пор скорость, удобство и качество такого подхода сложно превзойти любому ИИ агенту с каким бы то ни было меморибанком или индексом (пожалуй, только Qoder немного составляет конкуренцию).
Поэтому кейс актуален и по сей день.
▶️ Для передачи в Ai Studio будем использовать Repomix (https://repomix.com/), поставим его в свой проект своим любимым менеджером пакетов - инструкции на оффсайте по ссылке чуть выше.
Для ts/js проектов в проектах я прописываю скрипт для использования репомикс в package.json: "repomix:all": "repomix -c repomix.config.json". Как ещё можно запаковать, почему "all", для чего нужно по-другому? Например, для крупных проектов - только меморибанк, чтобы хотя бы общие вещи обсуждать. Можно паковать только код - без тестов, если размер проекта пограничный на 1m токенов, или вы не хотите размывания внимания модели.
Для обеспечения разных "видов" паковки нам потребуются разные конфиги repomix. конфиг - файл в корне проекта, документация по нему на оффсайте.
🟢 Вот пример моего конфига для "repomix:no-test": "repomix -c repomix.no-test.config.json":
Особенности "пациента": игнорируется куча ненужных файлов: разные артефакты агентов, IDE, менеджеров пакетов и прочее, что не очень нужно (артефакты тестирования/сборки/ci-cd).
Обратите внимание : меморибанк я смотрю через Obsidian, подключая его как отдельный Vault - мы игнорируем служебную папку Obsidian.
Мы игнорируем папки агентов и команд - они подключены к Клоду (в папку '.claude/' проекта) через симлинки, - чтобы я мог хранить команды и агентов. Если нужно, я могу переподключить на уровень пользователя для использования этого же набора агентов и команд в другом проекте. Или использовать эти команды в другом ИИ агенте - вдруг появятся совместимые по формату.
"seeds/" - вспомогательные папки, храню там начальные данные для БД. "scripts/" - вспомогательные скрипты (sh/ts).
Если использовать расширение *.jsonc/*.json5 (https://github.com/yamadashy/repomix/issues/618) можно комменты в конфиг добавлять без репорта об ошибках от IDE.
...
продолжение: https://t.me/deksden_notes/103
1/2
Небольшой практический кейс.
Вспомним те доисторические времена, овеянные легендами древности, когда для работы с проектами мы использовали веб приложения чатов с различными моделями. Ведь тогда нам ещё не явились ИИ агенты с подписками по разумным ценам! Но и сейчас есть достойные случаи для всей этой возни с веб чатами: например, контекст в 1m токенов у Гемини, который позволяет модели сразу видеть огромный объём данных - например, ваш проект целиком. До сих пор скорость, удобство и качество такого подхода сложно превзойти любому ИИ агенту с каким бы то ни было меморибанком или индексом (пожалуй, только Qoder немного составляет конкуренцию).
Поэтому кейс актуален и по сей день.
▶️ Для передачи в Ai Studio будем использовать Repomix (https://repomix.com/), поставим его в свой проект своим любимым менеджером пакетов - инструкции на оффсайте по ссылке чуть выше.
Для ts/js проектов в проектах я прописываю скрипт для использования репомикс в package.json: "repomix:all": "repomix -c repomix.config.json". Как ещё можно запаковать, почему "all", для чего нужно по-другому? Например, для крупных проектов - только меморибанк, чтобы хотя бы общие вещи обсуждать. Можно паковать только код - без тестов, если размер проекта пограничный на 1m токенов, или вы не хотите размывания внимания модели.
Для обеспечения разных "видов" паковки нам потребуются разные конфиги repomix. конфиг - файл в корне проекта, документация по нему на оффсайте.
🟢 Вот пример моего конфига для "repomix:no-test": "repomix -c repomix.no-test.config.json":
repomix.no-test.config.json:
{
"output": {
"filePath": "_repo.xml",
"style": "xml",
"parsableStyle": false,
"fileSummary": true,
"directoryStructure": true,
"removeComments": false,
"removeEmptyLines": false,
"topFilesLength": 5,
"showLineNumbers": false,
"copyToClipboard": false
},
"include": [],
"ignore": {
"useGitignore": true,
"useDefaultPatterns": false,
"customPatterns": [
".git",
"data",
".husky",
"pnpm*.*",
"_archive/",
// "src/",
".tasks/",
".memory-bank/archive/",
".memory-bank/.obsidian/",
".memory-bank/agents/",
".memory-bank/commands/",
".memory-bank/issues/",
".vscode/",
".idea",
".gemini",
".codex",
".claude",
".aider",
".github",
"test-results/",
"tests/",
"seeds/",
"scripts/",
"logs",
".run",
"*.patch",
"**/*.log",
"log*.txt",
"*-lock.*",
"LICENSE"
]
},
"security": {
"enableSecurityCheck": true
},
"tokenCount": {
"encoding": "o200k_base"
}
}
Особенности "пациента": игнорируется куча ненужных файлов: разные артефакты агентов, IDE, менеджеров пакетов и прочее, что не очень нужно (артефакты тестирования/сборки/ci-cd).
Обратите внимание : меморибанк я смотрю через Obsidian, подключая его как отдельный Vault - мы игнорируем служебную папку Obsidian.
Мы игнорируем папки агентов и команд - они подключены к Клоду (в папку '.claude/' проекта) через симлинки, - чтобы я мог хранить команды и агентов. Если нужно, я могу переподключить на уровень пользователя для использования этого же набора агентов и команд в другом проекте. Или использовать эти команды в другом ИИ агенте - вдруг появятся совместимые по формату.
"seeds/" - вспомогательные папки, храню там начальные данные для БД. "scripts/" - вспомогательные скрипты (sh/ts).
Если использовать расширение *.jsonc/*.json5 (https://github.com/yamadashy/repomix/issues/618) можно комменты в конфиг добавлять без репорта об ошибках от IDE.
...
продолжение: https://t.me/deksden_notes/103
Repomix
Pack your codebase into AI-friendly formats
🔥4❤3👍1
📦 Кейс: пакуем проекты с Repomix
2/2
Начало: https://t.me/deksden_notes/102
...
В этом конфиге указано, что ИГНОРИРУЕТСЯ папка "tests/". В принципе, в качестве игнорируемых папок можно прописать ВСЕ ПАПКИ исходников проекта, и комментировать те, которые НУЖНО ВКЛЮЧИТЬ. Так можно точечно включать или выключать нужные папки. Такой конфиг можно назвать "repomix:cutom" и использовать его в специальных случаях.
Используем кастомные конфиги если нужно экономить контекст - отключаем паковку "кусков" системы, которые обсуждать с Gemini не будем - например, обсуждая UI, можно отключить api (кроме спеков по контрактам/описанию api). Всегда можно часто используемые "пресеты" сохранить в отдельную конфигурацию и уже паковать её скриптом одним кликом - я всегда за автоматизацию, она сокращает ошибки и не тратит ресурс внимания пользователя.
▶️ Когда repomix запаковал проект, полезно в логе посмотреть такие вещи:
- Главное: какого размера получился
- Второе: какие самые крупные файлы попали в проект - иногда паковка "хватает" ненужные файлы типа логов или какие то крупные служебные файлы, или какой нибудь json экспорт или ещё чего то лишнее.
- Можно открыть репо файл в вашей IDE и посмотреть оглавление - repomix его добавляет в начало файла. Там проверьте, что все нужные папки и файлы попали в репозиторий.
▶️ Итак, репо файл получен, мы готовы для его загрузки в AI Studio. Счётчик токенов студии будет немного другой чем у репомикса, потому что Гугл использует иные токенайзеры, но это не принципиально.
👉 К слову - файл прекрасно загружается в DeepSeek, z.ai, ChatGPT Pro, Grok, claude.ai.
#post
@deksden_notes
2/2
Начало: https://t.me/deksden_notes/102
...
В этом конфиге указано, что ИГНОРИРУЕТСЯ папка "tests/". В принципе, в качестве игнорируемых папок можно прописать ВСЕ ПАПКИ исходников проекта, и комментировать те, которые НУЖНО ВКЛЮЧИТЬ. Так можно точечно включать или выключать нужные папки. Такой конфиг можно назвать "repomix:cutom" и использовать его в специальных случаях.
Используем кастомные конфиги если нужно экономить контекст - отключаем паковку "кусков" системы, которые обсуждать с Gemini не будем - например, обсуждая UI, можно отключить api (кроме спеков по контрактам/описанию api). Всегда можно часто используемые "пресеты" сохранить в отдельную конфигурацию и уже паковать её скриптом одним кликом - я всегда за автоматизацию, она сокращает ошибки и не тратит ресурс внимания пользователя.
▶️ Когда repomix запаковал проект, полезно в логе посмотреть такие вещи:
- Главное: какого размера получился
_repo.xml в токенах, чтобы было меньше 1m. - Второе: какие самые крупные файлы попали в проект - иногда паковка "хватает" ненужные файлы типа логов или какие то крупные служебные файлы, или какой нибудь json экспорт или ещё чего то лишнее.
- Можно открыть репо файл в вашей IDE и посмотреть оглавление - repomix его добавляет в начало файла. Там проверьте, что все нужные папки и файлы попали в репозиторий.
▶️ Итак, репо файл получен, мы готовы для его загрузки в AI Studio. Счётчик токенов студии будет немного другой чем у репомикса, потому что Гугл использует иные токенайзеры, но это не принципиально.
👉 К слову - файл прекрасно загружается в DeepSeek, z.ai, ChatGPT Pro, Grok, claude.ai.
#post
@deksden_notes
Repomix
Pack your codebase into AI-friendly formats
🔥5🤔2👍1
♊️ Планируем с Gemini
1/3
Очевидно, что вводный пост про Repomix (https://t.me/deksden_notes/102) был нужен чтобы рассказать про тему работы с Gemini 2.5 pro в AI Studio. На самом деле, конечно, любое веб приложение подходит под такую методику - достойные варианты Qwen, DeepSeek, chatGPT, grok, z.ai, kimi. Но на сентябрь 2025 достойных моделей с контекстом 1m токенов, ещё и бесплатно - таких вариантов почти нет. Про Qwen 1m и Meta Llama4 я знаю, но я же специально сказал - достойных! )) Да, Gemini 2.5 pro и сейчас, более чем через полгода от выпуска, смотрится вполне достойно. С нетерпением ждём поколение 3.0. Впрочем, приступим!
Дано: у нас есть маленький или средний проект. Мы хотим провести рефакторинг, добавить фичу или ещё чего-то сотворить с проектом, для чего, конечно, будем использовать ИИ агента. Мы уже знаем, что Vibe Coding нам не друг, потому что когда такие друзья, жить будет совсем не скучно, а мы хотим - спокойно и без сложностей на ровном месте. А для этого надо качественно сделать работу и мы уже знаем что надо бы пользовать SDD - Spec Driven Development. Здорово, когда в нашем проекте уже есть меморибанк.
Итак, мы понимаем что для нашей работы нам нужен план. "Есть ли у вас план, мистер Фикс?!". Вот его то мы и будем собирать в Gemini. На самом деле, "единый" взгляд на проект может быть удобен для самых разных вещей - обсудить архитектуру, ревизовать меморибанк, подумать над фичами, собрать техзадание под разработку дизайна в тулах, - мало ли! Но мы обсудим использование и практические приёмы на примере планирования некоего рефакторинга в коде: довольно показательный кейс, паттерны которого можно применять и в других активностях.
Я напишу про свои приёмы, которые я использую - не претендую на абсолютную истину или методичность, это просто обобщение практики и воспринимайте это как некие советы. Никаких особых "законов" или строгих методологий тут нет - "мы здесь занимаемся практической магией".
▶️ Начнём планировать рефакторинг. Если у вас есть "в загашнике" специальный промпт на 3 страницы - применяйте. Если нет - не страшно: пишите обычный вопрос "хочу обсудить как сделать ...". Модель вам отвечает. Читаете ответ, то что нравится - вы добавляете как уже готовые вводные В ВАШ ОРИГИНАЛЬНЫЙ ЗАПРОС. В AI Studio можно легко редактировать хоть свой запрос, хоть ответ модели. Добавляйте то, в чем у вас возникла уверенность или новое понимание, можно куски ответа модели копировать. Когда закончите - ПЕРЕГЕНЕРИРУЙТЕ ответ на ваш первоначальный запрос. На следующей итерации за счёт более "обогащённого" запроса модель у вас получается более развёрнутый ответ модели, и уже в нужном вам ключе, который проработан в нужном вам направлении. Используя этот ответ, вы далее "обогащаете" запрос, добавляя тезисы, которые вам нравятся и ведут вас в нужном направлении.
Такими вот итерациями, ваш первоначальный просто неструктурированный запрос постепенно превращается в развёрнутую концепцию. Не забывайте "забирать" из ответов модели то, что вам понравилось - чтобы не потерять при перегенерации полезную информацию. Если температура выше 0, то следующий ответ даже на такой же запрос будет точно другим.
❓ Назовём эту технику "Итеративное улучшение промпта". Но зачем так сложно? Дело в том, что на контекстах более 300к токенов внимание модели все более размывается, она становится менее внимательная, и качество ответов падает. Если вы будете много спрашивать модель о разных штуках - контекст чата с этими разноплановыми запросами и ответами будет размывать внимание модели, и она начнёт путаться. Вам же нужно развитие идеи в нужном вам направлении? Так не оставляйте в контексте ничего постороннего: GIGO (garbage in, garbage out!). А за счёт перегенерации оригинального запроса качестов ответа модели не деградирует даже если сделать десятки итераций.
...
продолжение: https://t.me/deksden_notes/105
1/3
Очевидно, что вводный пост про Repomix (https://t.me/deksden_notes/102) был нужен чтобы рассказать про тему работы с Gemini 2.5 pro в AI Studio. На самом деле, конечно, любое веб приложение подходит под такую методику - достойные варианты Qwen, DeepSeek, chatGPT, grok, z.ai, kimi. Но на сентябрь 2025 достойных моделей с контекстом 1m токенов, ещё и бесплатно - таких вариантов почти нет. Про Qwen 1m и Meta Llama4 я знаю, но я же специально сказал - достойных! )) Да, Gemini 2.5 pro и сейчас, более чем через полгода от выпуска, смотрится вполне достойно. С нетерпением ждём поколение 3.0. Впрочем, приступим!
Дано: у нас есть маленький или средний проект. Мы хотим провести рефакторинг, добавить фичу или ещё чего-то сотворить с проектом, для чего, конечно, будем использовать ИИ агента. Мы уже знаем, что Vibe Coding нам не друг, потому что когда такие друзья, жить будет совсем не скучно, а мы хотим - спокойно и без сложностей на ровном месте. А для этого надо качественно сделать работу и мы уже знаем что надо бы пользовать SDD - Spec Driven Development. Здорово, когда в нашем проекте уже есть меморибанк.
Итак, мы понимаем что для нашей работы нам нужен план. "Есть ли у вас план, мистер Фикс?!". Вот его то мы и будем собирать в Gemini. На самом деле, "единый" взгляд на проект может быть удобен для самых разных вещей - обсудить архитектуру, ревизовать меморибанк, подумать над фичами, собрать техзадание под разработку дизайна в тулах, - мало ли! Но мы обсудим использование и практические приёмы на примере планирования некоего рефакторинга в коде: довольно показательный кейс, паттерны которого можно применять и в других активностях.
Я напишу про свои приёмы, которые я использую - не претендую на абсолютную истину или методичность, это просто обобщение практики и воспринимайте это как некие советы. Никаких особых "законов" или строгих методологий тут нет - "мы здесь занимаемся практической магией".
▶️ Начнём планировать рефакторинг. Если у вас есть "в загашнике" специальный промпт на 3 страницы - применяйте. Если нет - не страшно: пишите обычный вопрос "хочу обсудить как сделать ...". Модель вам отвечает. Читаете ответ, то что нравится - вы добавляете как уже готовые вводные В ВАШ ОРИГИНАЛЬНЫЙ ЗАПРОС. В AI Studio можно легко редактировать хоть свой запрос, хоть ответ модели. Добавляйте то, в чем у вас возникла уверенность или новое понимание, можно куски ответа модели копировать. Когда закончите - ПЕРЕГЕНЕРИРУЙТЕ ответ на ваш первоначальный запрос. На следующей итерации за счёт более "обогащённого" запроса модель у вас получается более развёрнутый ответ модели, и уже в нужном вам ключе, который проработан в нужном вам направлении. Используя этот ответ, вы далее "обогащаете" запрос, добавляя тезисы, которые вам нравятся и ведут вас в нужном направлении.
Такими вот итерациями, ваш первоначальный просто неструктурированный запрос постепенно превращается в развёрнутую концепцию. Не забывайте "забирать" из ответов модели то, что вам понравилось - чтобы не потерять при перегенерации полезную информацию. Если температура выше 0, то следующий ответ даже на такой же запрос будет точно другим.
❓ Назовём эту технику "Итеративное улучшение промпта". Но зачем так сложно? Дело в том, что на контекстах более 300к токенов внимание модели все более размывается, она становится менее внимательная, и качество ответов падает. Если вы будете много спрашивать модель о разных штуках - контекст чата с этими разноплановыми запросами и ответами будет размывать внимание модели, и она начнёт путаться. Вам же нужно развитие идеи в нужном вам направлении? Так не оставляйте в контексте ничего постороннего: GIGO (garbage in, garbage out!). А за счёт перегенерации оригинального запроса качестов ответа модели не деградирует даже если сделать десятки итераций.
...
продолжение: https://t.me/deksden_notes/105
Telegram
DEKSDEN notes
📦 Кейс: пакуем проекты с Repomix
1/2
Небольшой практический кейс.
Вспомним те доисторические времена, овеянные легендами древности, когда для работы с проектами мы использовали веб приложения чатов с различными моделями. Ведь тогда нам ещё не явились ИИ…
1/2
Небольшой практический кейс.
Вспомним те доисторические времена, овеянные легендами древности, когда для работы с проектами мы использовали веб приложения чатов с различными моделями. Ведь тогда нам ещё не явились ИИ…
👍5🔥5❤🔥3