claude-code
codeaashu/claude-codeПолный исходный код официального CLI Anthropic — Claude Code, утёкший 31 марта 2026 года. Содержит ~1900 файлов, 512 000+ строк на TypeScript. Включает MCP-сервер для интерактивного изучения кодовой базы.
Установка
git clone https://github.com/codeaashu/claude-code.gitREADME
Claude Code — Утёкший исходный код
Полный исходный код CLI Claude Code от Anthropic, утёкший 31 марта 2026 года
Оригинальный немодифицированный утёкший исходный код сохранён в ветке
backup.
Содержание
- Как произошла утечка
- Что такое Claude Code?
- Документация
- Изучение через MCP-сервер
- Структура директорий
- Архитектура
- Ключевые файлы
- Технологический стек
- Паттерны проектирования
- Настройка GitPretty
- Участие в проекте
- Отказ от ответственности
Как произошла утечка
Chaofan Shou (@Fried_rice) обнаружил, что опубликованный npm-пакет Claude Code содержал .map-файл, ссылающийся на полный необфусцированный TypeScript-исходник — доступный для скачивания в виде zip-архива из R2-хранилища Anthropic.
«Исходный код Claude Code утёк через map-файл в их npm-реестре!»
Что такое Claude Code?
Claude Code — официальный CLI-инструмент Anthropic для взаимодействия с Claude прямо из терминала: редактирование файлов, выполнение команд, поиск по кодовой базе, управление git-процессами и многое другое. Этот репозиторий содержит утёкшую директорию src/.
| Дата утечки | 2026-03-31 |
| Язык | TypeScript (strict) |
| Среда выполнения | Bun |
| Терминальный UI | React + Ink |
| Масштаб | ~1 900 файлов · 512 000+ строк кода |
📚 Документация
Подробные руководства находятся в директории docs/:
| Руководство | Описание |
|---|---|
| Архитектура | Основной конвейер, последовательность запуска, управление состоянием, рендеринг, поток данных |
| Справочник инструментов | Полный каталог всех ~40 инструментов агента с категориями и моделью разрешений |
| Справочник команд | Все ~85 slash-команд, организованных по категориям |
| Руководство по подсистемам | Детальный разбор Bridge, MCP, разрешений, плагинов, скиллов, задач, памяти, голоса |
| Руководство по изучению | Навигация по кодовой базе — пути изучения, grep-паттерны, ключевые файлы |
См. также: CONTRIBUTING.md · MCP Server README
🔍 Изучение через MCP-сервер
Репозиторий поставляется с MCP-сервером, который позволяет любому MCP-совместимому клиенту (Claude Code, Claude Desktop, VS Code Copilot, Cursor) интерактивно изучать полный исходный код.
Установка из npm
MCP-сервер опубликован как warrioraashuu-codemaster на npm — клонировать репозиторий не нужно:
# Claude Code
claude mcp add warrioraashuu-codemaster -- npx -y warrioraashuu-codemasterБыстрая установка (из исходников)
git clone https://github.com/codeaashu/claude-code.git ~/claude-code \
&& cd ~/claude-code/mcp-server \
&& npm install && npm run build \
&& claude mcp add claude-code-explorer -- node ~/claude-code/mcp-server/dist/index.js# 1. Клонируем репозиторий
git clone https://github.com/codeaashu/claude-code.git
cd claude-code/mcp-server
# 2. Устанавливаем зависимости и собираем
npm install && npm run build
# 3. Регистрируем в Claude Code
claude mcp add claude-code-explorer -- node /absolute/path/to/claude-code/mcp-server/dist/index.jsЗамените /absolute/path/to/claude-code на фактический путь к клонированному репозиторию.
VS Code — добавьте в .vscode/mcp.json:
{
"servers": {
"claude-code-explorer": {
"type": "stdio",
"command": "node",
"args": ["${workspaceFolder}/mcp-server/dist/index.js"],
"env": { "CLAUDE_CODE_SRC_ROOT": "${workspaceFolder}/src" }
}
}
}Claude Desktop — добавьте в конфигурационный файл:
{
"mcpServers": {
"claude-code-explorer": {
"command": "node",
"args": ["/absolute/path/to/claude-code/mcp-server/dist/index.js"],
"env": { "CLAUDE_CODE_SRC_ROOT": "/absolute/path/to/claude-code/src" }
}
}
}Cursor — добавьте в ~/.cursor/mcp.json аналогичную конфигурацию, указав абсолютные пути.
Отказ от ответственности
Данный репозиторий публикуется исключительно в образовательных целях. Весь исходный код принадлежит Anthropic. Если вы являетесь представителем Anthropic и хотите, чтобы этот репозиторий был удалён — свяжитесь с владельцем репозитория напрямую.