[{"data":1,"prerenderedAt":278},["ShallowReactive",2],{"\u002Fblog\u002Fopencode-productive-stack\u002F:ru":3,"\u002Fblog\u002Fopencode-productive-stack\u002F-surround:ru":174,"blog-all-posts:ru":175},{"id":4,"title":5,"author":6,"body":10,"date":156,"description":157,"extension":158,"image":159,"locale":160,"meta":161,"minRead":162,"navigation":163,"original":164,"path":165,"pinned":164,"seo":166,"source":167,"sourceUrl":23,"stem":168,"tags":169,"updated":159,"__hash__":173},"blog\u002Fblog\u002Fopencode-productive-stack.ru.md","Стабильно, быстро, продуктивно, дёшево: полный отчёт по моему AI Coding-стеку",{"name":7,"avatar":8},"Chen Dahuang",{"src":9,"alt":7},"\u002Favatar.jpg",{"type":11,"value":12,"toc":147},"minimark",[13,28,35,38,43,51,54,58,61,67,73,79,85,91,97,101,104,111,115,118,121,134,140,144],[14,15,16],"blockquote",{},[17,18,19,20,27],"p",{},"Ключевая мысль впервые опубликована в ",[21,22,26],"a",{"href":23,"rel":24},"https:\u002F\u002Fx.com\u002Frealchendahuang\u002Fstatus\u002F2086611065920733305",[25],"nofollow","X","; эта статья — полный отчёт по конфигурации.",[17,29,30,31],{},"Сначала вывод: ",[32,33,34],"strong",{},"OpenCode + OpenChamber + подписка DeepSeek V4 Flash через OpenCode Go + подписка DeepSeek V4 Flash через Ollama Cloud.",[17,36,37],{},"Этой связкой я долго пользуюсь на полной нагрузке, и она даёт четыре качества: стабильность, скорость, продуктивность, дешевизна. Держал открытыми подряд 15 проектов, все одновременно писали код — квота просела совсем чуть-чуть.",[39,40,42],"h2",{"id":41},"почему-именно-opencode-openchamber","Почему именно OpenCode + OpenChamber",[17,44,45,46,50],{},"Как выбирал — написано в ",[21,47,49],{"href":48},"\u002Fblog\u002Fagent-harness-selection","другой статье","; здесь только причины на уровне результата. OpenCode — сейчас самый сбалансированный мультимодельный движок: открытый код, много Provider, зрелые Client\u002FServer, десктоп и Subagent. OpenChamber — Harness GUI с самым вылизанным фронтендом среди опенсорсных, что я встречал: автор поддерживает его с огромной заботой, изящно, стабильно, и редкие мелкие баги на долгосрочное использование не влияют вообще.",[17,52,53],{},"Веб-интерфейс + PWA — от десктопного клиента почти не отличишь, обновления вообще без ручной работы.",[39,55,57],{"id":56},"конфиг-строится-вокруг-трёх-запросов","Конфиг строится вокруг трёх запросов",[17,59,60],{},"Моя конфигурация OpenCode построена вокруг трёх вещей: управление Context, система памяти, внешние возможности.",[17,62,63,66],{},[32,64,65],{},"1. opencode-dcp (открытый код) — динамическая обрезка Context."," Когда Context доходит до порога, старое содержимое автоматически сжимается в технические выжимки: ключевая информация сохраняется, шум выбрасывается, дубли чистятся, а малополезные вещи вроде ошибок инструментов удаляются из Context. Длинные сессии без переполнения Context, экономия денег и token — это фундамент, на котором длинные задачи могут крутиться целый день.",[17,68,69,72],{},[32,70,71],{},"2. opencode-goal-plugin — управление целями."," Добавляет длинным задачам режим Goal: если агент уходит в сторону, его можно вернуть.",[17,74,75,78],{},[32,76,77],{},"3. Hermes Memory — многоуровневая память (если будет спрос, выложу в открытый код)."," Самый тяжёлый мой плагин: я перенёс на OpenCode механизм многоуровневой памяти агента Hermes — предпочтения пользователя, проектные решения и прошлые уроки запоминаются между сессиями. Новый проект не начинается с нуля.",[17,80,81,84],{},[32,82,83],{},"4. context7-MCP."," Свежая официальная документация библиотек и фреймворков — без ручных раскопок.",[17,86,87,90],{},[32,88,89],{},"5. grep-MCP."," Поиск реального использования по всему коду GitHub — куда надёжнее, чем писать по памяти.",[17,92,93,96],{},[32,94,95],{},"6. open-computer-use — автоматизация рабочего стола."," Позволяет ИИ напрямую управлять приложениями macOS: клики, ввод, прокрутка, перетаскивание, скриншоты, чтение дерева доступности. Особенно хорош на этапах тестирования и приёмки.",[39,98,100],{"id":99},"счётчик-расходов-как-тратятся-две-подписки","Счётчик расходов: как тратятся две подписки",[17,102,103],{},"DeepSeek V4 Flash — ядро соотношения цена\u002Fкачество этого стека: действительно умная и действительно дешёвая модель. Подписка OpenCode Go закрывает основной воркфлоу, подписка Ollama Cloud работает вторым каналом для распределения нагрузки — обе подписки вместе стоят дешевле одного mainstream-плана Coding от первого производителя, а выдают больше.",[17,105,106,107,110],{},"Фразу «модель в сторонней оболочке тупеет» надо разбирать: ",[32,108,109],{},"корень деградации — оболочка, которая не делает Harness Engineering под модель",", а не сам факт смены оболочки. Поддержка открытых моделей в OpenCode — первая лига, DeepSeek V4 Flash работает в нём стабильно и быстро — именно поэтому я не боюсь навалить на него 15 проектов.",[39,112,114],{"id":113},"урок-держись-родной-связки","Урок «держись родной связки»",[17,116,117],{},"В чатах часто спрашивают: а есть ли универсальный AI Coding-десктоп? Который принимает любые подписки и не тупит ни одну модель?",[17,119,120],{},"Поспрашивал друзей, которые каждый день крепко возятся с этим, — вывод единодушный: такого нет. Держись родной связки.",[122,123,124,128,131],"ul",{},[125,126,127],"li",{},"GPT → Codex: прямая официальная подписка, самый стабильный нативный scheduling.",[125,129,130],{},"Gemini → AntiGravity: потолок скорости, длинные окна без затыков.",[125,132,133],{},"DeepSeek, GLM и прочие открытые модели → дружелюбные к открытым моделям Harness вроде OpenCode \u002F ZCode.",[17,135,136,137],{},"Засунешь модель в неподходящую оболочку — почти наверняка получишь деградацию, тормоза и неработающую подписку. ",[32,138,139],{},"Каждая модель должна сидеть там, где ей удобнее всего, — их комбинация и есть твой стек.",[39,141,143],{"id":142},"напоследок","Напоследок",[17,145,146],{},"Этот стек крутится уже несколько месяцев, и главное ощущение — не сэкономленные деньги, а то, что не страшно открывать задачи. Потому что он стабильный и дешёвый, 15 проектов открываю без нервов. Ценность набора инструментов в итоге меряется тем, сколько работы ты готов на него навалить.",{"title":148,"searchDepth":149,"depth":149,"links":150},"",2,[151,152,153,154,155],{"id":41,"depth":149,"text":42},{"id":56,"depth":149,"text":57},{"id":99,"depth":149,"text":100},{"id":113,"depth":149,"text":114},{"id":142,"depth":149,"text":143},"2026-09-09","OpenCode + OpenChamber + две подписки DeepSeek V4 Flash: 15 проектов одновременно пишут код, а квота почти не двигается. Полная выкладка конфигурации — обрезка Context, многоуровневая память, автоматизация рабочего стола и урок «держись родной связки».","md",null,"ru",{},8,true,false,"\u002Fblog\u002Fopencode-productive-stack",{"title":5,"description":157},"x","blog\u002Fopencode-productive-stack.ru",[170,171,172],"OpenCode","ИИ-программирование","Настройка","xBAmC2kThnATJqOejce6R7FWHtnS4eswOAW4mwVc4mg",[159,159],[176,184,193,202,209,216,222,224,232,238,245,254,261,269],{"path":48,"title":177,"description":178,"date":179,"minRead":180,"tags":181},"Помучившись с Pi Agent, OMP, Codex и ZCode: почему я в итоге выбрал OpenCode + OpenChamber","Ретроспектива выбора Agent Harness: три критерия — GUI-опыт, привязка к вендору и свобода доработки — отсеяли Pi Agent, OMP, Codex и ZCode, и в итоге я остановился на ядре OpenCode + интерфейсе OpenChamber.","2026-08-06",6,[182,183],"AI Agent","Выбор инструментов",{"path":185,"title":186,"description":187,"date":188,"minRead":180,"tags":189},"\u002Fblog\u002Fcloudflare-broke-stack","Лучшие практики инди-разработки 2026: „нищебродский“ стек Cloudflare „всё в одном“","Технологический стек инди-разработчика с нулевой стоимостью: код пишет Codex, версиями управляет GitHub, платежи принимает Stripe, фронтенд на TanStack Start, бэкенд на Hono + Workers, база данных D1, хранилище R2, кэш KV — и всё это крутится на Cloudflare.","2026-06-15",[190,191,192],"Cloudflare","Инди-разработка","Технологический стек",{"path":194,"title":195,"description":196,"date":197,"minRead":180,"tags":198},"\u002Fblog\u002Fdeepseek-api-web-search","В API DeepSeek встроен веб-поиск — официальный поиск на халяву через Responses API","DeepSeek встроил веб-поиск прямо в API: вызываешь deepseek-v4-flash через интерфейс Responses и объявляешь инструмент web_search. Никакой интеграции со сторонним поисковиком, никакого ключа поискового API не нужно.","2026-08-05",[199,200,201],"DeepSeek","API","AI-инструменты",{"path":203,"title":204,"description":205,"date":197,"minRead":206,"tags":207},"\u002Fblog\u002Fdeepseek-v4-flash-review","DeepSeek V4 Flash — стабильный релиз, проверка на практике: дёшево, быстро, контекст 1M, встроенный поиск","Несколько дней погружался в стабильный релиз DeepSeek V4 Flash: невероятно дёшево, молниеносно быстро, контекст 1M, официальный встроенный веб-поиск, полностью открытый код. Единственная слабость — мультимодальность, но её можно закрыть связкой с другими моделями.",7,[199,208,201],"Обзор модели",{"path":210,"title":211,"description":212,"date":188,"minRead":162,"tags":213},"\u002Fblog\u002Ffree-cloudflare","Как бесплатным пользователям выжать Cloudflare досуха — на что реально хватает бесплатного тарифа?","Бесплатного тарифа Cloudflare хватает почти на всю личную интернет-инфраструктуру: DNS, CDN, Pages, Workers, KV, D1, R2, почта, Tunnel, AI Gateway и не только.",[190,214,215],"Бесплатный тариф","Деплой",{"path":217,"title":218,"description":219,"date":156,"minRead":162,"tags":220},"\u002Fblog\u002Fmodel-harness-decoupling","Собственный Harness производителя — не всегда лучший выбор: в эпоху открытых моделей модель и Harness выбирают раздельно","Пишешь на Claude — берёшь Claude Code? В эпоху открытых моделей этот инстинкт пора обновить. Преимущество первого производителя реально, но обучить хорошую модель и построить хороший Harness — две разные инженерные задачи. Эта статья объясняет, почему модель и Harness теперь можно выбирать по отдельности, и даёт карту позиционирования пяти Harness.",[182,221,183],"Harness",{"path":165,"title":5,"description":157,"date":156,"minRead":162,"tags":223},[170,171,172],{"path":225,"title":226,"description":227,"date":228,"minRead":229,"tags":230},"\u002Fblog\u002Fproduct-faxin-principle","Принцип изначального намерения: почему инди-разработчику нужно учиться отпускать","Зачем ты начинаешь? Для кого ты начинаешь? Какую проблему на самом деле хочешь решить? Острота продукта — в том, что ты осмеливаешься отрезать.","2026-06-20",10,[231,191],"Продуктовое мышление",{"path":233,"title":234,"description":235,"date":228,"minRead":162,"tags":236},"\u002Fblog\u002Fproduct-pain-vs-itch","Не обольщайся, когда пользователи говорят «круто»: болевые точки против зуда","Словесное одобрение ничего не стоит. Единственный жёсткий критерий спроса — за что пользователь готов платить.",[231,237],"Оценка спроса",{"path":239,"title":240,"description":241,"date":179,"minRead":242,"tags":243},"\u002Fblog\u002Fqwen-vision-for-deepseek","Даём DeepSeek мультимодальность: подход Qwen-3.7-Flash vision","У DeepSeek V4 Flash нет мультимодальности — что делать с пониманием изображений? После обзора рынка самый выгодный по цене вариант сейчас — Qwen-3.7-Flash: распознавание одной картинки стоит почти ничего, и в паре с V4 Flash дыра закрывается.",5,[199,244,208],"Мультимодальность",{"path":246,"title":247,"description":248,"date":249,"minRead":250,"tags":251},"\u002Fblog\u002Fsub-store-cloudflare","Я перенёс агрегацию прокси-подписок на Cloudflare","Объединяет несколько прокси-сервисов и собственные ноды в одну подписку, а правила маршрутизации настраиваются на стороне сервера — клиенту остаётся только подписаться.","2026-06-28",4,[190,252,253],"Обход блокировок","Open-source проект",{"path":255,"title":256,"description":257,"date":156,"minRead":206,"tags":258},"\u002Fblog\u002Ftui-cognitive-bandwidth","TUI убивает вашу когнитивную пропускную способность: «гик-фильтру» в AI Coding пора разбиться","Куча AI Coding Agent наперебой выпускают TUI, заталкивают взаимодействие обратно в терминальную парадигму 80-х и называют это «иммерсивностью» и «уважением к программистам». Эта статья разбирает три механизма, которыми TUI системно снижает когнитивную пропускную способность, — и объясняет, почему Web UI — правильный ответ.",[171,259,260],"Дизайн взаимодействия","Эссе",{"path":262,"title":263,"description":264,"date":265,"minRead":180,"tags":266},"\u002Fblog\u002Fvalue-not-external","Спорить о том, есть ли у чего-то ценность, — само по себе бесполезно","Нашу ценность не определяет никто. В эпоху ИИ как человеку понимать себя?","2026-06-18",[267,268],"Размышления об ИИ","Гуманистическое эссе",{"path":270,"title":271,"description":272,"date":273,"minRead":274,"tags":275},"\u002Fblog\u002Fx-growth-1000-followers","Набрал 1000+ подписчиков чуть больше чем за день — вот что я делал","В июне я всерьёз занялся своим аккаунтом в X и за чуть более чем день набрал 1000+ подписчиков. Этот пост фиксирует, что я делал и какие получал отклики.","2026-06-16",12,[276,277],"Ведение X","Рост контента",1789752316573]