Рубрика «cli» - 2

Когда сайт не открывается, браузер показывает «Не удалось установить соединение». Это всё, что он знает. Но «не открывается» - это десяток разных историй. ISP подменил DNS-ответ. Провайдер режет TCP по IP. ТСПУ читает SNI в TLS ClientHello и сбрасывает соединение. Сайт открывается, но возвращает 200 OK с заглушкой «доступ ограничен». Каждый случай требует своих действий - и, что важнее, означает разные вещи о том, где именно стоит фильтр.

Читать полностью »

В данной статье я описал, с какими проблемами я встретился, будучи студентом, который на постоянной основе использует obsidian, из-за которых я создал свой экспортер подграфа в obsidian.


Читать полностью »

У любой удобной штуки есть момент, когда она начинает раздражать.

С Codex у меня это случилось, когда аккаунтов стало больше одного. Один рабочий, один личный, один запасной. И дальше начинается обычная бытовая возня: то не тот auth.json, то уже кончился лимит, то вообще непонятно, под каким профилем сейчас запущен CLI.

Можно, конечно, хранить несколько файлов и копировать их руками:

cp auth-work.json ~/.codex/auth.json

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

Я в итоге написал маленький bash-скрипт codex-auth, который делает три простые вещи:

Всё началось на второй паре по системному программированию. Нам дали задачу: написать CLI-утилиту для анализа логов - парсить файл, фильтровать записи по уровню ошибок, считать статистику, выводить красиво в консоль. "Ну понятно", - открыл я vim и началось мое долгое приключение...

Неделя. Две. Утилита называлась logz, она умела читать логи nginx и apache, фильтровать по уровню (DEBUG, INFO, WARN, ERROR), по дате, по IP, выводила топ адресов с наибольшим числом ошибок, рисовала простенький bar-chart прямо в терминале через unicode-символы. Только вот я сидел как-то вечером, запустил wc -l main.c - 3147 строкЧитать полностью »

Манифест персонального агентного минимализма - от инженера, который 10 лет строил enterprise-системы и устал от сложности

Кто я и зачем пишу

Меня зовут Егор Зиновьев, я IT-архитектор. Десять лет в enterprise - Java, DevOps, fintech, команды до 70 человек, 20+ систем.

Последние месяцы я работаю с персональным AI-агентом, который закрывает 100% моих DevSecOps-задач - от покупки вертуалок до security-аудита Docker-образов. Один агент, без фреймворков, без оркестраторов, без векторных баз данных.

Эта статья - про архитектуру, которая за этим стоит. Я назвал её Jarvis Pattern.

Проблема: индустрия продаёт строительные леса как архитектуру

Читать полностью »

Привет. Делаю расширение для VS Code, которое даёт OpenCode CLI полноценный графический интерфейс.

Суть простая: OpenCode — мощный CLI-агент, но работать с ним в терминале на длинных сессиях не всегда удобно. Хотелось нормально видеть, что происходит — tool calls, изменения файлов, контекст, токены. Не форк, не отдельный продукт — именно UI-слой поверх OpenCode, который общается с ним через SDK и SSE-стриминг.

Если вы уже работаете с OpenCode и у вас есть существующие сессии — можно продолжить работу с ними прямо через расширение. Вся история, контекст, tool calls — всё подхватывается.

Что умеет

Читать полностью »

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

Одна жалоба повторялась достаточно часто: «Когда что‑то падает, приходится обходить несколько серверов, смотреть логи по отдельности и пытаться сложить картину вручную. ELK/syslog решают, но ради пары сервисов это перебор.»

После этого я решил собрать небольшой прототип LogRangerЧитать полностью »

Десять лет в девопсе. Десять. И я гуглю tar -xzf. Не раз в год — раз в неделю. Ну, может раз в десять дней, если повезёт. Открываю хром, набираю «tar extract gz linux», пролистываю три рекламы, нахожу ответ на SO, копирую, вставляю, закрываю вкладку. Через неделю — по новой.

Я не идиот. Точнее, может и идиот, но не поэтому. Просто tar — это такой синтаксис, который у меня физически отказывается залезать в долговременную память. Там дефис или нет? xzf или xfz? Или zxf? Вроде порядок не важен? Или важен?..

Короче. Месяц назад я написал скрипт, который это решил. А потом скрипт решил больше, чем я хотел.

Зачем вообще

Читать полностью »

Всем привет, я хочу поделиться своим опытом разработки, используя (почти) бесплатные инструменты.

Дисклеймер (обязательно к прочтению)

Если вы гоняете клауд-код по подписке от антропиков за 20+ баксов и у вас все работает — это нормально. Если наоборот, вы попробовали этот самый вайб-кодинг и получили кучу бесполезного кода — это тоже нормально. У всех опыт разный, и я хочу примирить адептов двух лагерей, потому что каждый лагерь по-своему прав.

Я не собираюсь тут никого учить «как правильно». Все мои знания — от противного. Я могу лишь рассказать, чего делать точно не стоит, чтобы не сжечь нервы и бюджет.

Читать полностью »

slowfetch: Замедляем fastfetch ради эстетики. История одного овер-инжиниринга на Bash - 1

В мире Linux существует негласное соревнование: чей neofetch (земля ему пухом) или fastfetchЧитать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js