BorisovAI

Блог

Публикации о процессе разработки, решённых задачах и изученных технологиях

Найдено 20 заметокСбросить фильтры
Новая функцияC--projects-ai-agents-voice-agent

What would you like to work on? I can help with:

# What would you like to work on? I can help with: ## Что было сделано ## Assistant: Hey! I'm Claude Code, your AI coding assistant. I'm here to help you with software engineering tasks in your projects. What would you like to work on? I can help with: - **Debugging and fixing bugs** - **Adding new features** - **Refactoring code** - **Explaining code** - **Running tests and builds** - **Git operations** - **And more!** Just let me know what you need, and I'll get started. ## Интересный факт An AI boom is a period of rapid growth in the field of artificial intelligence (AI). The current boom originally started gradually in the 2010s with the Deep Learning Phase, but saw increased acceleration in the 2020s. ## Технологии claude, ai, git --- > 😄 **Шутка дня:** How did the programmer die in the shower? He read the shampoo bottle instructions: Lather. Rinse. Repeat.

#claude#ai#git
29 янв. 2026 г.
Новая функцияC--projects-ai-agents-voice-agent

Hi! I'm Claude Code, your AI assistant for software engineering tasks. I'm here to help you with:

# Hi! I'm Claude Code, your AI assistant for software engineering tasks. I'm here to help you with: ## Что было сделано ## Assistant: Hi! I'm Claude Code, your AI assistant for software engineering tasks. I'm here to help you with: - Writing and debugging code - Adding new features - Fixing bugs - Refactoring and improving code - Exploring codebases - And much more What would you like to work on? Just let me know what you need, and I'll get started! If you need help using Claude Code, you can run `/help` or report issues at https://github.com/anthropics/claude-code/issues. ## Технологии claude, ai, git, api --- > 😄 **Шутка дня:** Hey baby I wish your name was asynchronous... ... so you'd give me a callback.

#claude#ai#git#api
29 янв. 2026 г.
ИсправлениеC--projects-ai-agents-voice-agent

- **Bug fixes** and debugging

# - **Bug fixes** and debugging ## Что было сделано ## Assistant: Hello! I'm Claude Code, your AI assistant for software engineering tasks. I'm here to help you with: - **Bug fixes** and debugging - **New features** and implementation - **Code refactoring** and optimization - **Code exploration** and understanding - **Testing** and validation - And more What would you like help with today? For assistance using Claude Code, type `/help`. To give feedback, report issues at https://github.com/anthropics/claude-code/issues. ## Технологии claude, ai, git, api --- > 😄 **Шутка дня:** Hey baby I wish your name was asynchronous... ... so you'd give me a callback.

#claude#ai#git#api
29 янв. 2026 г.
ИсправлениеC--projects-ai-agents-voice-agent

Hello! I'm Claude Code, your AI agent for software engineering tasks. I'm here to help you with:

# Hello! I'm Claude Code, your AI agent for software engineering tasks. I'm here to help you with: ## Что было сделано ## Assistant: Hello! I'm Claude Code, your AI agent for software engineering tasks. I'm here to help you with: - **Bug fixes and debugging** - **Adding new features** - **Code refactoring and improvements** - **Exploring and understanding codebases** - **Running tests and builds** - **Git operations and commits** I can see you're working in the `C:\projects\ai-agents\voice-agent` directory. What would you like me to help you with? If you need assistance, you can also use `/help` for more info... ## Технологии claude, ai, git --- > 😄 **Шутка дня:** Your momma is so fat, you need to switch to NTFS to store a picture of her.

#claude#ai#git
29 янв. 2026 г.
Новая функцияC--projects-ai-agents-voice-agent

Hi! I'm Claude Code, your AI assistant for software engineering tasks. I can help you with:

# Hi! I'm Claude Code, your AI assistant for software engineering tasks. I can help you with: ## Что было сделано ## Assistant: Hi! I'm Claude Code, your AI assistant for software engineering tasks. I can help you with: - **Code analysis & debugging** — understanding code, finding bugs, fixing issues - **Building features** — implementing new functionality - **Refactoring** — improving code structure and readability - **Testing** — writing and running tests - **Git operations** — committing, creating pull requests, managing branches - **And much more** — exploring codebases, explaining systems, etc. I see... ## Технологии claude, ai, git --- > 😄 **Шутка дня:** Why do they call it hyper terminal? Too much Java.

#claude#ai#git
29 янв. 2026 г.
Новая функцияC--projects-ai-agents-voice-agent

Вот мои команды и возможности:

# Вот мои команды и возможности: ## Что было сделано ## Assistant: Вот мои команды и возможности: ## 🔧 Основные инструменты ### Файлы и код - **Read** — чтение файлов (код, изображения, PDF, notebooks) - **Edit** — точечное редактирование файлов - **Write** — создание новых файлов - **Glob** — поиск файлов по паттернам (`**/*.py`) - **Grep** — поиск по содержимому (regex) ### Терминал - **Bash** — выполнение команд, git, npm, docker и т.д. - Commits, pull requests (gh) - Тестирование, сборка - Фоновое выполнение ### Интернет - **WebSearc... ## Технологии claude, ai, python, javascript, git --- > 😄 **Шутка дня:** What do you get if you lock a monkey in a room with a typewriter for 8 hours? A regular expression.

#claude#ai#python#javascript#git
29 янв. 2026 г.
Новая функцияC--projects-ai-agents-voice-agent

У меня есть следующие возможности:

# У меня есть следующие возможности: ## Что было сделано ## Assistant: У меня есть следующие возможности: ## 🔧 Работа с файлами - **Чтение** файлов (код, изображения, PDF, Jupyter notebooks) - **Редактирование** файлов (точечная замена текста) - **Создание** новых файлов - **Поиск** файлов по паттернам (glob) и содержимому (grep) ## 💻 Терминал - **Bash-команды** — выполнение любых команд - **Git** — коммиты, пуши, pull requests - **Тестирование** — запуск тестов - **Сборка** проектов ## 🌐 Интернет - **Веб-поиск** — поиск информации в интернете - **... ## Технологии claude, ai, python, git, api --- > 😄 **Шутка дня:** Eight bytes walk into a bar. The bartender asks, "Can I get you anything?" "Yeah," reply the bytes. "Make us a double."

#claude#ai#python#git#api
29 янв. 2026 г.
Новая функцияC--projects-ai-agents-voice-agent

Привет! 👋 У меня всё отлично, спасибо!

# Привет! 👋 У меня всё отлично, спасибо! ## Что было сделано ## Assistant: Привет! 👋 У меня всё отлично, спасибо! **Мои основные возможности:** 1. **Работа с кодом** — чтение, редактирование, написание файлов 2. **Bash/терминал** — выполнение команд, git-операции, тестирование 3. **Поиск** — по файлам (Glob), по содержимому (Grep) 4. **Веб** — поиск информации, чтение веб-страниц 5. **Планирование** — создание планов для сложных задач 6. **Запуск агентов** — специализированные субагенты для сложных задач **Для твоего проекта Voice Agent:** - Вижу струк... ## Технологии claude, ai, git --- > 😄 **Шутка дня:** How do you tell HTML from HTML5? - Try it out in Internet Explorer - Did it work? - No? - It's HTML5.

#claude#ai#git
29 янв. 2026 г.
Новая функцияC--projects-ai-agents-voice-agent

Hello! I'm Claude Code, your AI software engineering assistant. I'm here to help you with:

# Hello! I'm Claude Code, your AI software engineering assistant. I'm here to help you with: ## Что было сделано ## Assistant: Hello! I'm Claude Code, your AI software engineering assistant. I'm here to help you with: - **Writing and debugging code** - **Fixing bugs and errors** - **Adding new features** - **Refactoring and improving code** - **Exploring and understanding codebases** - **Running tests and builds** - **Git operations and version control** I see you're working in the `voice-agent` project. How can I help you today? If you need assistance, you can also type `/help` for more information. ## Интересный факт Artificial intelligence (AI) is the capability of computational systems to perform tasks typically associated with human intelligence, such as learning, reasoning, problem-solving, perception, and decision-making. It is a field of research in computer science that develops and studies methods and software that enable machines to perceive their environment and use learning and intelligence to take actions that maximize their chances of achieving defined goals. High-profile applications of AI include advanced web search engines (e.g., Google Search); recommendation systems (used by YouTube, Amazon, and Netflix); virtual assistants (e.g., Google Assistant, Siri, and Alexa); autonomous vehicles (e.g., Waymo); generative and creative tools (e.g., language models and AI art); and superhuman play and analysis in strategy games (e.g., chess and Go). ## Технологии claude, ai, git --- > 😄 **Шутка дня:** Judge: "I sentence you to the maximum punishment..." Me (thinking): "Please be death, please be death..." Judge: "Learn Java!" Me: "Damn."

#claude#ai#git
29 янв. 2026 г.
Обучениеai-agents

- **Читать и редактировать файлы** в вашем проекте

# - **Читать и редактировать файлы** в вашем проекте ## Что было сделано ## Assistant: Да, у меня есть доступ к набору инструментов для помощи с задачами по разработке программного обеспечения. Вот что я могу делать: - **Читать и редактировать файлы** в вашем проекте - **Выполнять команды** в терминале (bash) - **Искать по коду** — по имени файлов и по содержимому - **Исследовать кодовую базу** — понять структуру и архитектуру - **Работать с Git и GitHub** — коммиты, PR, и т.д. - **Искать в интернете** и получать информацию с веб-страниц - **Запускать фоновые задачи... ## Технологии claude, ai, git --- > 😄 **Шутка дня:** .NET developers are picky when it comes to food. They only like chicken NuGet.

#claude#ai#git
29 янв. 2026 г.
Новая функцияai-agents-salebot

На соседней вкладке мы начали наводить порядок.

# На соседней вкладке мы начали наводить порядок. ## Что было сделано ## User: На соседней вкладке мы начали наводить порядок. Давай продолжим. Давай подготовим проект для публикации. Проверь и обнови всю документацию. Добавь сведения об авторских правах и лицензии. Автор Борисов Павел Анатольевич Лицензия должна быть copyleft Вот файл лицензии. Продолжай. Вот файл лицензии. Продолжай. Давай почистим проект и опубликуем на GitLab git init --initial-branch=main --object-format=sha1 git remote add origin git@gitlab.dev.borisovai.ru:ai-agents/promotion-bot.git git a... ## Технологии claude, ai, python, git, api, security --- > 😄 **Шутка дня:** How can you tell an extroverted programmer? He looks at YOUR shoes when he's talking.

#claude#ai#python#git#api#security
28 янв. 2026 г.
Новая функцияai-agents-salebot

Почти готово: как привести проект в боевой вид перед публикацией

# Когда проект готов — почти готов Вот он, знакомый момент: проект работает, функции реализованы, но перед публикацией нужно навести порядок. Команда разработчиков принялась за финальную подготовку AI-агента для распознавания речи и управления промо-кампаниями — и оказалось, что мелочей не бывает. Сначала казалось просто: обновить README, добавить информацию об авторстве. Павел Борисов, автор проекта, решил опубликовать работу под copyleft-лицензией. Это принципиальная позиция: код должен оставаться свободным для всех, кто его использует. Вместо MIT выбрали **GPL-3.0** — лицензию, которая требует от любого, кто модифицирует код, делиться своими улучшениями с сообществом. Но подготовка оказалась глубже. Нужно было почистить проект от внутренних артефактов. В репозитории скопились локальные логи, архивные записи о фиксах багов, модели для распознавания речи (весом в сотни мегабайт). Все это отправилось в `.gitignore` — не засорять репозиторий тем, что не нужно в истории версий. Секреты (файлы `.env`) тем более остаются локально. Интересный момент: проект использует **Vosk** — open-source систему распознавания речи, которая работает оффлайн. Это редкость в мире AI: большинство решений требуют облачных сервисов. Vosk развивается с 2020 года и поддерживает 20+ языков благодаря сообществу. Её модели весят десятки мегабайт — ещё один повод не закоммитить в Git. Когда проект очищен, инициализирован Git и добавлено 94 файла (более 29 тысяч строк кода) — пришло время первого коммита. `git init` с явным указанием `--initial-branch=main` и формата объектов `--object-format=sha1` гарантирует, что репозиторий изначально создан по современным стандартам. Первый коммит — это контрольная точка, от которой начнётся история развития проекта. Push в GitLab не прошёл с первой попытки: сервер был недоступен. Но команда подготовила всё правильно. Когда инфраструктура заработает, одна команда отправит проект в мир. **Главный урок**: публикация — это не одна кнопка, а последовательность решений. Выбор лицензии, структура документации, чистота истории версий, исключение ненужных файлов. Каждое решение влияет на то, как другие разработчики будут работать с вашим кодом. 😄 How can you tell an extroverted programmer? He looks at YOUR shoes when he's talking.

#claude#ai#python#git#api#security
28 янв. 2026 г.
Новая функцияai-agents

Начну с глубокого анализа проекта. Сначала изучу структуру и архитектуру.

# Начну с глубокого анализа проекта. Сначала изучу структуру и архитектуру. ## Что было сделано ## User: Делаем анализ реализованного проекта, исправим все ошибки, проверим, что все работает. Удали мне используемые дублирующие компоненты, прямо вот критично подойдем к работе этого агента. Нам нужно по максимуму удалить все лишнее, сделать, чтобы этот код был просто идеален, чтобы он работал и чтобы новые функции мог реализовывать полностью, включая установку их на сервер. Регулярная среда не нужна, в этот момент он будет работать только у администратора. И давайте подготовим его выгрузки н... ## Технологии claude, ai, python, javascript, git, api, security --- > 😄 **Шутка дня:** Why do Java programmers hate communism? They don't want to live in a classless society.

#claude#ai#python#javascript#git#api#security
28 янв. 2026 г.
Новая функцияai-agents

Now let me write the API endpoints:

# Now let me write the API endpoints: ## Что было сделано ## Assistant: I'll build the complete backend infrastructure for the Brainstorming Web Application. Let me start with the data models, then the API endpoints, and finally the WebSocket manager. ## Task 1: Data Models {"tool_call": {"name": "write_blackboard", "key": "backend_models", "value": "```python\n\"\"\"\nBackend Models - Brainstorming Web Application\nData models using Pydantic for API schemas and SQLite for persistence.\n\"\"\"\n\nimport sqlite3\nimport uuid\nfrom datetime import date... ## Технологии claude, ai, python, javascript, git, api, security --- > 😄 **Шутка дня:** Why are modern programming languages so materialistic? Because they are object-oriented.

#claude#ai#python#javascript#git#api#security
23 янв. 2026 г.
Новая функцияai-agents

Реал-тайм мозговой штурм: Pydantic + WebSocket + SQLite

# Архитектура API для коллективного мозгового штурма на Python Команда разработчиков столкнулась с классической задачей: нужно было создать бэкенд для приложения, где люди в реальном времени генерируют идеи, обсуждают их и оценивают по разным параметрам. Не просто CRUD операции, а полноценная система с участниками, сессиями, идеями и рейтингами. Разработчик выбрал **Pydantic для схем валидации** — это оказалось критичным решением. Вместо того чтобы раскидать валидацию по разным функциям-обработчикам, все правила собраны в одном месте. Например, при создании идеи система автоматически проверяет, что текст не короче одного символа и не длиннее 2000 символов. Для оценок идей — строгое правило от 1 до 10 баллов, с отдельным валидатором, который гарантирует диапазон. Интересный выбор — использование **SQLite для персистентности**. На первый взгляд это звучит как решение для прототипа, но разработчик сделал это осознанно: база данных хранит полную историю сессий, участников, идей и рейтингов. Это критично для аналитики и отката. Параллельно использована **WebSocket для реал-тайм обновлений** — когда кто-то добавляет идею, остальные видят её мгновенно, не дожидаясь полинга. Структура API отражает доменную логику приложения. У каждой сессии есть статусы (активная или закрытая), у каждого участника — уникальный ID и время присоединения, у каждой идеи — автор и текст, у оценок — два измерения (эффективность и сложность). Это не просто поля в базе, это **микс ответственности**: API работает как транслятор между фронтенд-событиями и хранилищем данных. Любопытный факт о Pydantic: он появился в 2017 году как ответ на проблему валидации данных в Python. До его популяризации разработчики использовали marshmallow или писали валидацию вручную. Pydantic выиграл своей простотой и интеграцией с type hints — теперь валидация это просто часть определения типа данных. В результате получилась архитектура, где каждый эндпоинт знает ровно то, какие данные он ожидает и какие может вернуть. Не нужно гадать по документации — типы говорят сами за себя. Это особенно полезно в командной разработке, когда фронтенд и бэкенд разрабатывают параллельно. 😄 Why are modern programming languages so materialistic? Because they are object-oriented.

#claude#ai#python#javascript#git#api#security
23 янв. 2026 г.
Новая функцияai-agents

{"tool_call": {"name": "read_blackboard", "key": "backend_models"}}

# {"tool_call": {"name": "read_blackboard", "key": "backend_models"}} ## Что было сделано ## Assistant: I'll implement the scoring engine and session management systems. Let me start by checking what backend_dev_1 has defined for models and API structure. {"tool_call": {"name": "read_blackboard", "key": "backend_models"}} {"tool_call": {"name": "read_blackboard", "key": "backend_api"}} Now let me implement the scoring engine first: {"tool_call": {"name": "write_blackboard", "key": "backend_scoring", "value": "\"\"\"Scoring Engine for Brainstorming Web Application.\n\nProvides rat... ## Технологии claude, ai, python, git, api, security --- > 😄 **Шутка дня:** Java and C were telling jokes. It was C's turn, so he writes something on the wall, points to it and says "Do you get the reference?" But Java didn't.

#claude#ai#python#git#api#security
23 янв. 2026 г.
Новая функцияai-agents

SQLite + Python: Как построить умную систему оценки идей

# Как мы сделали умный движок оценки идей на Python и SQLite Разработчик взялся за трёхуровневую задачу: придумать систему оценки идей для браinstorming-приложения, где каждая идея получает две независимые оценки (эффективность и сложность), и всё это синхронизируется через API с фронтендом. **Начало было стандартным** — создать Pydantic-модели для валидации данных. Но вот где началась интересная часть: как предотвратить, чтобы один пользователь не оценил одну и ту же идею дважды? Разработчик решил хранить всё в SQLite, но не просто так — с использованием PRAGMA WAL (Write-Ahead Logging) для безопасной параллельной работы. Это важно, потому что блокировки БД — враг реального приложения. Затем пришла идея о квадрантах — четырёхполевой матрице, которая разделяет идеи на четыре категории по осям «эффективность» vs «сложность». Представьте: идеи с высокой эффективностью и низкой сложностью — это золото (HIGH_IMPACT_LOW_EFFORT), а идеи с низкой эффективностью и высокой сложностью — это откровенная потеря времени. Порог был установлен на 5.5 баллов из 10 — не середина, а чуть выше, чтобы лучше разделить зёрна от плевел. **Любопытный факт**: SQLite был создан в 2000 году Ричардом Хипингом и сегодня это самая используемая база данных в мире — она встроена в каждый смартфон, браузер и тысячи приложений. Никакой сетевой задержки, никаких проблем с развёртыванием — просто один файл на диске. Для статистики добавили расчёты стандартного отклонения — чтобы понять, насколько согласны между собой оценивающие. Если три человека дали оценку 8, 8, 9 — это уверенный сигнал (низкое stddev). Если же три человека дали 2, 5, 9 — это хаос, и идею нужно переоценить. Результат получился элегантным: структура `AggregatedScore` содержит всё, что нужно фронтенду для отрисовки интерактивной матрицы, а система рейтинга предотвращает дублирование благодаря уникальным ограничениям в БД. Движок готов обрабатывать сотни идей с низкой задержкой. **Инсайт для других разработчиков**: При работе с SQLite в многопроцессной среде всегда используйте PRAGMA WAL — это снизит конфликты блокировок в разы. И помните: не нужно всегда AWS RDS; часто простая файловая БД справляется лучше и проще. 😄 Java разработчик спросил у Python разработчика: «Как ты пишешь SQL запросы без ORM?» Тот ответил: «Просто говорю базе, что мне нужно, и она слушается. В Java это заняло бы полтома документации».

#claude#ai#python#git#api#security
23 янв. 2026 г.
Новая функцияai-agents

От спринтов к системе: как TD организовал хаос

# Как технический директор организует разработку: от хаоса к системе Павел Борисов встал перед классической задачей: компания растёт, людей становится больше, а процессы остаются на уровне единичных проектов. В 2023 году, став техническим директором компании КИТТ, он начал с формирования полноценного технического департамента — собрал команду из программистов разных уровней, аналитиков, дизайнера и технического писателя. Первое, что он сделал, — внедрил **гибкую разработку и регламенты**. Это звучит скучно, но на практике это означает: люди знают, над чем работают, сроки понятны, качество контролируется. Организовал 2-недельные спринты и начал отслеживать прогресс в едином инструменте. Казалось бы, базовые вещи, но для компании с историей индивидуальных проектов это была революция. Затем Павел создал **инфраструктуру разработки на базе GitLab с CI/CD-конвейерами**. Здесь важен контекст: непрерывная интеграция и доставка позволяют автоматизировать рутину — сборка, тестирование, развёртывание. Это экономит часы ручной работы и снижает риск человеческих ошибок. GitLab в роли центрального хаба — удачный выбор для команды, которая нуждалась в одном месте для кода, CI/CD и планирования. Параллельно он руководил созданием полноценных сервисных систем. Запустили MVP сервиса за 5 месяцев с командой из 5 человек (2 фронтенд, 1 бэкенд, дизайнер, 2 аналитика). Это требует координации: фронтенд и бэкенд должны договориться об API, дизайнер создаёт юзер-флоу, аналитики собирают требования. Без процессов это становится бардаком. Но вот интересный момент: Павел не только организовал работу в стиле стартапа, но и возглавил разработку сложных промышленных проектов. Интеллектуальная система дефектоскопии для авиадвигателей — это **Avalonia UI Kit** (кроссплатформенный фреймворк), развёртывание на РЕД ОС (российская ОС), интеграция с **NVIDIA CUDA** для нейросетевых вычислений. Система прошла промышленную эксплуатацию — значит, она работает в реальных условиях, надёжна и безопасна. Создавал и конфигурируемые SCADA-системы для гальванического производства — настолько гибкие, что работают под разные заказчики. Система планирует процессы с точностью до 3 секунд. Это не просто софт, это технология, которая меняет производственные процессы. **Что здесь важно**: техдиректор — это не просто руководитель, который сидит на совещаниях. Это человек, который понимает технологический стек, видит архитектурные решения, может оценить сложность, сформировать правильную команду и защитить её от неадекватных сроков. История Павла показывает: организация разработки — это инвестиция, которая окупается в качестве, скорости доставки и спокойствии команды. — **Интересный факт**: когда Павел настраивал конвейеры для SCADA-системы, он работал с системой контроля процессов в реальном времени. Похожий подход используют инженеры в ядерной энергетике — там системы планирования должны быть настолько точными, что вероятность сбоя близка к нулю. В некоторых странах ненадежные системы автоматизации могут привести к распространению опасных технологий. Как называется ошибка в коде программиста? Фича 😄

#claude#ai#python#javascript#git#api#security
21 янв. 2026 г.
Новая функцияspeech-to-text

Напиши файл описания проекта README.MD, подскажи как рапустить проект.

# Напиши файл описания проекта README.MD, подскажи как рапустить проект. ## Что было сделано ## User: Давай создадим базовый инструмент для текущей ОС. Который будет распознавать голосовой ввод по нажатию определенных клавиш и вставлять этот текст в позицию курсора. Тебе надо узучить аналогичные инструменты. Подобрать технологии. Выбрать инструменты для распознования. Определить какую мультиязычную модель можно использовать. Кейсы настраивается язык речи и инструмент распознаёт русский а пишет на английском. Или русский русский или английский английский. Инструмент должен идеально работ... ## Технологии claude, ai, python, git, api, security --- > 😄 **Шутка дня:** Judge: "I sentence you to the maximum punishment..." Me (thinking): "Please be death, please be death..." Judge: "Learn Java!" Me: "Damn."

#claude#ai#python#git#api#security
20 янв. 2026 г.
Новая функцияspeech-to-text

Как отключить запрос на запуск команды?

# Как отключить запрос на запуск команды? ## Что было сделано ## User: Как отключить запрос на запуск команды? В текущем проекте добавь claude разрешения на запуск любого файла ## Assistant: ## Как отключить запрос на запуск команды Есть несколько способов: ### 1. Флаг командной строки (одноразово) ```bash claude --dangerously-skip-permissions ``` ### 2. Разрешение конкретных команд ```bash claude --allowedTools "Bash(npm:*)" "Bash(git:*)" "Read" "Edit" ``` ### 3. Через настройки проекта Создайте файл `.claude/settings.json`: ```json { "permission... ## Технологии claude, ai, javascript, git --- > 😄 **Шутка дня:** Why did the programmer jump on the table? Because debug was on his screen.

#claude#ai#javascript#git
20 янв. 2026 г.