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