Анализ архитектуры Claude Code на основе утекших исходных карт

✍️ OpenClawRadar📅 Опубликовано: 4 апреля 2026 г.🔗 Source
Анализ архитектуры Claude Code на основе утекших исходных карт
Ad

Технический стек и архитектура

Пакет Claude Code, опубликованный в npm 31 марта 2026 года, включал .map файлы, которые раскрыли полный исходный код на TypeScript. Кодовая база состоит примерно из 1900 файлов с более чем 512 000 строк кода на TypeScript.

Основные технологии

  • Среда выполнения: Bun
  • Язык: TypeScript (строгий режим)
  • Терминальный интерфейс: React + Ink (React для CLI)
  • Парсинг CLI: Commander.js с дополнительными типами
  • Валидация схем: Zod v4
  • Поиск кода: ripgrep через GrepTool
  • Протоколы: MCP SDK, LSP (vscode-jsonrpc)
  • API: Anthropic SDK
  • Телеметрия: OpenTelemetry + gRPC (ленивая загрузка, ~400КБ + 700КБ)
  • Флаги функций: GrowthBook
  • Аутентификация: OAuth 2.0, JWT, macOS Keychain
  • Управление состоянием: Zustand (хранилище на основе React)

Основные моменты структуры каталогов

Каталог src/ содержит:

  • main.tsx - Точка входа с CLI Commander.js + рендеринг React/Ink
  • commands.ts - Реестр команд с более чем 100 командами
  • tools.ts - Реестр инструментов с более чем 38 инструментами
  • Tool.ts - Определения типов инструментов
  • QueryEngine.ts - Механизм запросов LLM (~46К строк)
  • query.ts - Основной цикл запросов (~1729 строк)
  • context.ts - Сбор системного/пользовательского контекста
  • cost-tracker.ts - Отслеживание стоимости токенов
  • commands/ - Реализации слэш-команд (100+)
  • tools/ - Реализации инструментов (38+)
  • components/ - Компоненты Ink UI (~140)
  • hooks/ - React Hooks + хуки разрешений
  • services/ - Интеграции внешних сервисов, включая API, MCP, LSP, сжатие контекста, извлечение памяти и аналитику
  • constants/ - Системные промпты + константы
  • bridge/ - Мост интеграции IDE
  • coordinator/ - Координатор нескольких агентов
  • plugins/ - Система плагинов
  • skills/ - Система навыков
  • memdir/ - Система постоянной памяти
  • tasks/ - Система управления задачами
  • state/ - Управление состоянием
  • remote/ - Удаленные сессии
  • server/ - Серверный режим
  • vim/ - Режим Vim с полным конечным автоматом
  • voice/ - Голосовой ввод
  • keybindings/ - Система горячих клавиш
  • screens/ - Полноэкранный интерфейс (Doctor, REPL, Resume)
  • schemas/ - Схемы конфигурации Zod
  • migrations/ - Миграции конфигурации
  • query/ - Подмодули конвейера запросов
  • outputStyles/ - Стили вывода
  • buddy/ - Компаньон-спрайт (пасхальное яйцо)
Ad

Основной поток данных

Система следует следующей схеме потока данных:

  1. Пользовательский ввод (терминал / IDE / удаленно)
  2. main.tsx → парсинг Commander.js
  3. REPL.tsx (основной цикл взаимодействия)
  4. QueryEngine.submitMessage() ← жизненный цикл сессии
  5. Этап подготовки сообщения включает:
    • applyToolResultBudget() - ограничение размера результата
    • snipCompact() - компактирование сниппетов
    • microCompact() - микро-компактирование
    • contextCollapse() - схлопывание контекста
    • autoCompact() - автоматическое компактирование

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

📖 Read the full source: r/ClaudeAI

Ad

👀 Смотрите также

TradingAgents-GUI: Локальный веб-интерфейс для многолетнего анализа акций с поддержкой Ollama
Инструменты

TradingAgents-GUI: Локальный веб-интерфейс для многолетнего анализа акций с поддержкой Ollama

Графический интерфейс для фреймворка TradingAgents с несколькими LLM-агентами для анализа акций. Работает локально с Ollama, OpenAI, Anthropic и другими. Визуализация конвейера в реальном времени, читатель отчетов, экономия токенов до 50% в кратком режиме.

OpenClawRadar
🦀
Инструменты

TextGen (text-generation-webui) становится нативным десктопным приложением с портативными сборками

TextGen, альтернатива LM Studio с открытым исходным кодом, превратилась из веб-интерфейса в настольное приложение без установки для Windows, Linux и macOS с портативными сборками, полной приватностью и расширенной поддержкой квантования.

OpenClawRadar
Постоянная боковая панель для Claude Code с автономным управлением контентом
Инструменты

Постоянная боковая панель для Claude Code с автономным управлением контентом

Разработчик создал TUI-панель, которая располагается в разделённой панели iTerm2 рядом с терминалом, с тремя фиксированными панелями, которыми Claude автономно управляет для отображения релевантного контента, такого как код, диаграммы и обновления статуса.

OpenClawRadar
RalphTerm: цикл в стиле Ральфа для Claude Code с сессиями кросс-рецензирования от разных агентов
Инструменты

RalphTerm: цикл в стиле Ральфа для Claude Code с сессиями кросс-рецензирования от разных агентов

RalphTerm — это CLI с открытым исходным кодом на Rust, который запускает внешний цикл в стиле Ralph вокруг Claude Code: он берет план в формате Markdown, выполняет задачи в свежих интерактивных сессиях и проводит перекрестную проверку с другой моделью (например, Codex) в отдельных свежих сессиях, передавая найденные проблемы обратно в новые сессии исполнителя.

OpenClawRadar