Ф'ючерси
Сотні безстрокових контрактів
TradFi
Золото
Одна платформа для світових активів
Опціони
Hot
Торгівля ванільними опціонами європейського зразка
Єдиний рахунок
Максимізуйте ефективність вашого капіталу
Демо торгівля
Вступ до ф'ючерсної торгівлі
Підготуйтеся до ф’ючерсної торгівлі
Ф'ючерсні події
Заробляйте, беручи участь в подіях
Демо торгівля
Використовуйте віртуальні кошти для безризикової торгівлі
Запуск
CandyDrop
Збирайте цукерки, щоб заробити аірдропи
Launchpool
Швидкий стейкінг, заробляйте нові токени
HODLer Airdrop
Утримуйте GT і отримуйте масові аірдропи безкоштовно
Launchpad
Будьте першими в наступному великому проекту токенів
Alpha Поінти
Ончейн-торгівля та аірдропи
Ф'ючерсні бали
Заробляйте фʼючерсні бали та отримуйте аірдроп-винагороди
Інвестиції
Simple Earn
Заробляйте відсотки за допомогою неактивних токенів
Автоінвестування
Автоматичне інвестування на регулярній основі
Подвійні інвестиції
Прибуток від волатильності ринку
Soft Staking
Earn rewards with flexible staking
Криптопозика
0 Fees
Заставте одну криптовалюту, щоб позичити іншу
Центр кредитування
Єдиний центр кредитування
Центр багатства VIP
Преміальні плани зростання капіталу
Управління приватним капіталом
Розподіл преміальних активів
Квантовий фонд
Квантові стратегії найвищого рівня
Стейкінг
Стейкайте криптовалюту, щоб заробляти на продуктах PoS
Розумне кредитне плече
Кредитне плече без ліквідації
Випуск GUSD
Мінтинг GUSD для прибутку RWA
Аналіз коду Claude: чому він є зручнішим за інші інструменти штучного інтелекту для програмування?
31 березня 2026 року дослідник з безпеки Chaofan Shou виявив, що пакет Claude Code, опублікований Anthropic у npm, не має розпакованих source map файлів.
Це означає: повний TypeScript-вихідний код Claude Code — 512 тис. рядків, 1903 файли — просто так виставлено в інтернет.
Звісно, я не можу за кілька годин прочитати стільки коду, тож я взяв із собою три питання, щоб вивчити ці вихідники:
Чим насправді відрізняється Claude Code від інших інструментів для програмування з ШІ?
Чому відчуття від написання коду в ньому «краще, ніж у інших»?
Що саме заховано в 510 тис. рядках коду?
Після прочитання моя перша реакція була такою: це не просто помічник для програмування з ШІ — це операційна система.
I. Спочатку розкажу історію: якщо вам треба найняти віддаленого програміста
Уявіть, що ви наймаєте віддаленого програміста й даєте йому віддалений доступ до вашого комп’ютера.
Що б ви зробили?
Якщо ваш підхід як у Cursor: ви садите його поруч із собою, кожного разу, коли він має ввести команду, ви глянете, натиснете «Дозволити». Прямолінійно й грубо, але вам треба постійно стежити.
Якщо ваш підхід як у GitHub Copilot Agent: ви даєте йому абсолютно нову віртуальну машину, і він може там як завгодно крутитити. Коли закінчить — він комітить код, а ви перевіряєте й потім мерджите. Безпечно, але він не бачить вашого локального середовища.
Якщо ваш підхід як у Claude Code:
Ви даєте йому напряму використовувати ваш комп’ютер — але налаштовуєте йому надточну систему перевірок безпеки. Він може або не може робити певні дії, для яких операцій потрібна ваша згода, які він може виконувати сам, навіть якщо він захоче використати rm -rf — це має пройти 9 шарів перевірки, перш ніж виконати.
Це три повністю різні філософії безпеки:
Чому Anthropic обрав найскладніший шлях?
Тому що лише так, ШІ зможе працювати у вашому терміналі, у вашому середовищі та з вашими налаштуваннями — і це є «справді допомогти вам написати код», а не «написати фрагмент коду у чистій кімнаті, а потім скопіювати його вам».
Але якою є ціна? Вони зробили для цього 510 тис. рядків коду.
II. Claude Code, який ви уявляєте, vs Claude Code, який насправді є
Більшість людей думає, що інструменти програмування з ШІ працюють так:
Ввід користувача → виклик LLM API → повернення результату → показ користувачеві
Claude Code насправді працює так:
Ввід користувача
→ динамічне збирання 7 шарів системних промптів
→ ін’єкція Git-стану, домовленостей у проєкті, історичної пам’яті
→ 42 інструменти, кожен зі своїм окремим посібником з використання
→ LLM вирішує, який інструмент застосувати
→ 9 шарів безпечних перевірок (AST-парсинг, ML-класифікатор, перевірка в пісочниці…)
→ конкурентний розбір прав (локальна клавіатура / IDE / Hook / AI-класифікатор одночасно змагаються)
→ 200ms затримка проти випадкового натискання
→ виконання інструмента
→ результат стрімінгом повертається
→ контекст майже на максимум? → трирівневе стиснення (мікростиснення → автоматичне стиснення → повне стиснення)
→ потрібна паралельність? → генерація роєм під-Agentів
→ цикл, доки завдання не буде завершено
Усі, мабуть, дуже цікаві, що це таке з наведеного вище. Не поспішаймо — давайте розберемо це по черзі.
III. Перший секрет: промпт не «написують», його «збирають» із частин
Відкрийте src/constants/prompts.ts — ви побачите таку функцію:
Побачили той SYSTEM_PROMPT_DYNAMIC_BOUNDARY?
Це межа для кешування. Вміст над межею статичний, і Claude API може його кешувати, заощаджуючи витрати на токени. Вміст під межею динамічний — ваша поточна Git-гілка, ваша конфігурація проєкту CLAUDE.md, ваші вподобання, про які ви вже повідомляли… В кожній розмові це різне.
Що це означає?
Anthropic сприймає промпти як вихід компілятора, оптимізуючи їх. Статична частина — це «скомпільований бінарний код», динамічна — «параметри виконання». Переваги такі:
Економія: статична частина йде через кеш, без повторного виставлення рахунку
Швидкість: при попаданні в кеш ці токени не треба обробляти
Гнучкість: динамічна частина дозволяє кожній розмові відчувати поточне середовище
У кожного інструмента є власний «посібник з використання»
Ще більше мене шокувало те, що в кожній директорії інструмента є файл prompt.ts — це посібник з використання, написаний спеціально для LLM.
Подивіться BashTool (src/tools/BashTool/prompt.ts, близько 370 рядків):
Це не документація для людей, це правила поведінки для AI. Кожного разу, коли Claude Code запускається, ці правила ін’єктяться в системний промпт.
Ось чому Claude Code ніколи не робить git push --force «самовільно», тоді як деякі інструменти роблять — не тому, що модель розумніша, а тому, що правила вже чітко прописані в промптах.
І ще: внутрішні версії Anthropic відрізняються від того, що використовуєте ви
У коді багато таких гілок:
ant — це внутрішній співробітник Anthropic. У них версії з детальнішими вказівками щодо стилю коду («не писати коментарі, якщо WHY не очевидне»), більш агресивні стратегії виводу («метод перевернутої піраміди»), а також деякі експериментальні функції, які все ще проходять A/B тестування (Verification Agent, Explore & Plan Agent).
Це означає, що сам Anthropic — найбільший користувач Claude Code. Вони користуються своїм продуктом, щоб розробляти власний продукт.
IV. Другий секрет: 42 інструменти, але ви бачили лише вершину айсберга
Відкрийте src/tools.ts — ви побачите реєстр реєстрації інструментів:
42 інструменти, але більшість з них ви ніколи не побачите напряму. Бо багато інструментів завантажуються із затримкою — вони додаються через ToolSearchTool лише тоді, коли LLM цього потребує.
Навіщо так робити?
Тому що щоразу, коли додається ще один інструмент, система промптів має містити ще один фрагмент опису, а токени коштують грошей. Якщо вам треба лише, щоб Claude Code змінив одну лінію коду, йому не потрібно завантажувати «планувальник задач» і «менеджер командної співпраці».
Є ще одне розумніше рішення:
Якщо встановити CLAUDE_CODE_SIMPLE=true, Claude Code залишить лише три інструменти: Bash, читання файлів, редагування файлів. Це бекдор для мінімалістів.
Усі інструменти виходять з одного фабричного механізму
Зверніть увагу на значення за замовчуванням: isConcurrencySafe за замовчуванням false, isReadOnly за замовчуванням false.
Це називається fail-closed: якщо автор інструмента забув оголосити безпечні властивості, система вважає, що це «небезпечний інструмент, який може писати». Краще бути надто консервативним, ніж пропустити ризик.
«Спершу прочитай, потім змінюй» — залізне правило
FileEditTool перевірить, чи вже ви прочитали цей файл через FileReadTool. Якщо ні, одразу повідомляє про помилку, не дозволяє змінювати.
Ось чому Claude Code не робить так, як деякі інструменти: «вигадати код із нічого й перекрити ваші файли» — його примушують спершу зрозуміти, а вже потім змінювати.
V. Третій секрет: система пам’яті — чому вона може «пам’ятати вас»
У тих, хто користувався Claude Code, є відчуття: ніби він справді вас знає.
Ви говорите йому «не мокайте базу даних у тестах», і наступного разу він не буде робити mock. Ви говорите йому «я back-end інженер, я новачок у React» — і коли він пояснює front-end код, він використовує аналогії з back-end.
За цим стоїть повна система пам’яті.
Використання AI для пошуку пам’яті
Claude Code використовує інший AI (Claude Sonnet), щоб вирішити, які спогади релевантні поточній розмові.
Це не збіг ключових слів і не пошук за векторами — це коли маленька модель швидко сканує всі файли пам’яті: їх заголовки та описи, обирає до 5 найбільш релевантних, а потім у повному обсязі ін’єктить їх у контекст поточної розмови.
Стратегія: «точність важливіша за повноту» — краще пропустити потенційно корисну пам’ять, ніж вставити нерелевантну й забруднити контекст.
Режим KAIROS: «сновидіння» вночі
Це частина, яка найбільше здається мені науковою фантастикою.
У коді є властивість, яка називається KAIROS. У цьому режимі пам’ять у довгих сесіях зберігається не в структурованих файлах, а в додаткових журналах за датами. А потім навик /dream працює «вночі» (у період низької активності) — він конденсує ці сирі журнали в структуровані тематичні файли.
AI під час «сну» впорядковує пам’ять. Це вже не інженерія — це біомімікрія.
VI. П’ятий секрет: це не один Agent, а їх група
Коли ви просите Claude Code зробити складне завдання, він може непомітно зробити таку річ:
Він генерує під-Agent.
І цей під-Agent має жорстко вбудоване «самоусвідомлення», щоб не дати йому рекурсивно генерувати більше під-Agentів:
Цей фрагмент коду говорить: «Ти — робітник, а не менеджер. Не думай наймати людей — працюй сам».
Режим Coordinator: менеджерський режим
У режимі координатора Claude Code стає лише чистим оркестратором задач: сам не робить роботу, а лише розподіляє:
Ключовий принцип записаний у коментарях до коду:
«Parallelism is your superpower» лише для задач із рідким дослідженням: паралельно. Для завдань із записом файлів: групувати за файлами й запускати послідовно (щоб уникнути конфліктів).
Надоптимізація Prompt Cache
Щоб максимально підвищити влучання кешу в під-Agentів, усі результати інструментів з fork-підагентів використовують однаковий текст-заповнювач:
«Fork started—processing in background»
Чому? Бо prompt cache в Claude API базується на відповідності префіксів на рівні байтів. Якщо префікс байтів для 10 під-Agentів повністю збігається, то лише першому потрібен «холодний старт», а наступні 9 одразу потрапляють у кеш.
Це оптимізація, яка щороку економить кілька центів на кожному виклику, але у масштабному використанні може зекономити величезні кошти.
VII. Шостий секрет: три рівні стискання, щоб діалог «ніколи не виходив за межі»
У всіх LLM є обмеження контекстного вікна. Чим довша розмова, тим більше історичних повідомлень; зрештою вона обов’язково перевищить ліміт.
Claude Code для цього спроєктував три рівні стиснення:
Перший рівень: мікростиснення — мінімальна ціна
Мікростиснення торкається лише старих результатів викликів інструментів — замінює вміст «файлу на 500 рядків, прочитаного 10 хвилин тому» на [Old tool result content cleared].
Промпти та основна лінія діалогу зберігаються повністю.
Другий рівень: автоматичне стиснення — активне «скорочення»
Коли споживання токенів наближається до контекстного вікна на 87% (розмір вікна - 13,000 buffer), автоматично спрацьовує. Є запобіжник: після 3 послідовних невдалих спроб стиснення припинити спроби, щоб уникнути нескінченного циклу.
Третій рівень: повне стиснення — підсумок від AI
Нехай AI згенерує стислий підсумок усієї розмови, а потім замінить усі історичні повідомлення на цей підсумок. Під час генерації підсумку є сувора стартова інструкція:
Навіщо така суворість? Бо якщо під час підсумовування AI знову почне викликати інструменти, це створить ще більше витрат токенів — і вийде навпаки. Цей промпт говорить: «Твоє завдання — підсумувати, не роби нічого іншого».
Бюджет токенів після стиснення:
· Відновлення файлів: 50,000 токенів
· Ліміт на кожен файл: 5,000 токенів
· Вміст навичок: 25,000 токенів
Ці числа не взяті «з повітря» — вони є балансом між «зберегти достатньо контексту, щоб продовжувати працювати далі» і «вивільнити достатньо місця, щоб приймати нові повідомлення».
VIII. Прочитавши ці вихідники, що я зрозумів
90% роботи AI Agent — це те, що відбувається поза «AI»
У 510 тис. рядків коду частина, яка реально викликає LLM API, може бути менше ніж 5%. А що ж тоді решта 95%?
· Перевірки безпеки (18 файлів лише для одного BashTool)
· Система прав (рішення у 4 станах allow/deny/ask/passthrough)
· Керування контекстом (три рівні стискання + пошук пам’яті AI)
· Відновлення після помилок (запобіжник, експоненційний backoff, Transcript-персистентність)
· Координація багатьох Agentів (оркестрація роєм + обмін через email)
· UI-взаємодія (140 React-компонентів + IDE Bridge)
· Оптимізація продуктивності (стабільність prompt cache + паралельне підзавантаження під час старту)
Якщо ви створюєте продукт з AI Agent, то ось що ви справді маєте вирішити. Не питання в тому, чи модель достатньо розумна, а в тому, чи ваше «лісами»/скелею достатньо надійна.
Добрий промпт-інжиніринг — це системна інженерія
Це не так: написали гарний промпт — і все. У Claude Code промпти — це:
· 7 рівнів динамічного збирання
· Кожен інструмент має незалежний посібник з використання
· Точно розділені межі кешу
· Внутрішня версія та зовнішня версія мають різні набори інструкцій
· Сортування інструментів фіксоване, щоб зберігати стабільність кешу
Це інженерне керування промптами, а не ремесло.
Проєктування для провалів
Кожна зовнішня залежність має відповідну стратегію невдач:
Anthropic сприймає Claude Code як операційну систему
42 інструменти = системні виклики + система прав = керування правами користувача + система навичок = app store + протокол MCP = драйвери пристроїв + рій Agentів = керування процесами + стискання контексту = керування пам’яттю + Transcript-персистентність = файлова система
Це не «чат-бот із кількома інструментами», це операційна система, де LLM — ядро.
Підсумок
510 тис. рядків коду. 1903 файли. 18 файлів безпеки — лише для одного Bash-інструмента.
9 шарів перевірок — лише щоб AI безпечно допоміг вам виконати одну команду.
Ось відповідь Anthropic: щоб AI був справді корисним, ви не можете тримати його в клітці, але й не можете відпустити «на голому» без захисту. Вам треба побудувати для нього повну систему довіри.
А ціна цієї системи довіри — 510 тис. рядків коду.
Посилання на оригінал
Натисніть, щоб дізнатися про вакансії від律动BlockBeats
Ласкаво просимо приєднатися до офіційної спільноти 律动 BlockBeats:
Telegram-канал з підпискою: https://t.me/theblockbeats
Telegram-чат: https://t.me/BlockBeats_App
Офіційний акаунт у Twitter: https://twitter.com/BlockBeatsAsia