TGViewer
SimpleAGI SimpleAGI @simple_agi · 346 subscribers
Post #149 307
Выпал из телеги, но в оповещениях видел разбор полетов про Harness, а это причина моего "вылета"☹️

Harness - слой, который задаёт модели среду. Какие тулы есть, что знает всегда, какая память переживает /clear, когда обязана остановиться или спросить.

Без harness каждая сессия начинается с нуля:
«Привет, у нас Next.js 15, не трогай .env, тесты гоняем так».
С harness это один раз описывается и работает.

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


Окно контекста конечно. И деградирует задолго до формального потолка - на 1M-моделях качество падает уже к 200K (Chroma Research). Anthropic называет это context rot(гниение контекста).

Поэтому знания раскладываем по слоям. Слой - это про цену в токенах и вероятность, что знание окажется в контексте в нужный момент.

Пять слоёв, от дорогого к дешёвому:

1. Каждый turn каждой сессии - `AGENT.md`, `CLAUDE.md`
2. На событие - hooks: `session_start`, `tool_use`, `stop`
3. На контекст - `skills/`, `rules/` с `paths:`
4. Когда позвали - `agents/`, `commands/`, MCP
5. Когда прочитали руками - `docs/`, ADR


Правило «в проекте нет Anthropic API» - слой 1, иначе модель попробует и сломается.
Детали оформления devlog - слой 3, нужны только когда реально пишет.

⸻

Отдельная история - безопасность. Удобно делить на три типа границ.

Trust gate - можно ли это вообще делать. Whitelist действий, заданный до начала работы.
allow: ["Read"] в settings.

Information gate - что модель видит прямо сейчас. Это и есть слои выше. CLAUDE.md - всегда. Skill - после триггера. Devlog - только если явно прочитала.

Containment - что сломается, если actor всё-таки ошибся. Не предотвращает ошибку, а сужает blast radius.
- Subagent со свежим контекстом и tools: [Read, Grep] физически не может писать.
- Git worktree изолирует эксперимент.
- Bubblewrap/Seatbelt отделяет процесс от системы.

⸻

В новом гайде Anthropic есть прямая фраза:

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

Если модель умеет X нативно - не надо расширять harness под X. С каждой новой моделью объём .claude/ должен сокращаться, а не расти.

Удаляй старое, не добавляй лишнее.

P.S.
Пост Валеры по теме
Гайд Anthropic: https://www.anthropic.com/engineering/harness-design-long-running-apps
Telegram Валера Ковальский Харнесы умирают? После панельной дискуссии про вайбкодинг в офисе Туту с Серёжей, Андреем, Максимом и Женей у меня появилось большое желание встретится с Андреем и поговорить в спокойной обстановке, результатом разговора стал мем в канале про который мы…
  • 🔥 3
More from @simple_agi
  1. Oct 6, 2026Переписал stausline для claude code на новомодный mode с большей интерактивностью и плюшка…
  2. Oct 6, 2026Ребят, спасибо за 69 сохранений, мне безумно приятно! Очень надеюсь, что впереди будет мно…
  3. Oct 5, 2026Post #197
  4. Oct 3, 2026Как и ожидалось - разблокировка аккаунта маловероятна. В моем случае- исключена. Еще и выг…
  5. Oct 2, 2026Если кто знает, как завести новый акк и полностью выпилить телеметрию, как что настроить в…
  6. Oct 2, 2026Похоже, 1 октября Anthropic провела крупную волну блокировок Claude На данный момент уже е…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →