Обновить
512K+

Open source *

Открытое программное обеспечение

494,83
Рейтинг
Сначала показывать
Порог рейтинга

Ситуация, знакомая многим: MAX ставить не хочется, а приходится. Работа, знакомые, школьные чаты — и вот у тебя на телефоне живёт приложение, которому ты не доверяешь, и которое работает в фоне тогда, когда ему захочется.

Мне хотелось чтобы MAX вообще не было ни на моём телефоне, ни в моём браузере — а переписка при этом приходила туда, где я и так сижу. В Telegram.

Так появился Telemax — мост между MAX и Telegram.

Что понадобится

Сервер — любая VPS на Ubuntu/Debian. Требования скромные, хватит самой дешёвой.

Свой Telegram-бот — создаётся за минуту в @BotFather, токен вставляется при настройке. Бот твой, живёт на твоём сервере, никакого общего чужого бота — данные идут только через твою инфраструктуру.

Telegram-группа с включёнными темами, куда ты добавишь этого бота админом. Она и станет твоим «окном» в MAX.

Номер MAX, на который мост авторизуется (в том числе если на аккаунте стоит пароль-2FA).

Про безопасность и доступ — два уровня:

Снаружи бот глухой. На любое сообщение или команду из другого чата (личка боту, чужая группа, куда его попытались добавить) он просто молчит. Работает только внутри твоей группы.

Внутри группы — разграничение. Обычные участники могут читать и писать (можно спокойно добавить людей в группу, чтобы вести общее обсуждение). А вот команды боту — только для админа.

Честная оговорка: тот, кого ты добавил в Telegram-группу, видит там все MAX-чаты, а не один. Так что доступ к самой группе — вещь чувствительная.

В ТГ это выглядит так:

Что уже работает в обе стороны:

— текст, фото, файлы, голосовые, видео и видео-кружки;
— стикеры — и статичные, и анимированные;
— геолокация и контакты;
— опросы — создание и голосование;
— удаление сообщений;
— реакции;
— пересылка;
— поиск контакта MAX по номеру или нику — и новая личка в один тап, не заходя в MAX;

уведомления о звонках (входящий / пропущенный / завершённый — текстом, без передачи звука: для аудио нужен WebRTC, это вне рамок).

Плюс мелочи для удобства: 🎛 пульт управления кнопками прямо в Telegram (пауза моста, бан надоевших чатов, обновление в один тап), авторизация в личке бота — код из SMS и пароль-2FA не попадают в группу. С версии 0.4 мост полностью headless: ни одного открытого порта наружу.

Из интересного: анимированные стикеры ТГ по умолчанию МАХ не принимает, поэтому они конвертируются в короткие видео - можно завалить максчатланинов своими стикерпаками )

Как развернуть

На чистом Ubuntu-сервере — одна команда:

curl -fsSL https://raw.githubusercontent.com/Trollobot/Telemax/main/install.sh | bash

Дальше скрипт сам поставит Docker, склонирует проект, сгенерирует ключи и по шагам проведёт настройку: попросит токен Telegram-бота (создаётся в @BotFather) и сам определит id твоей группы. Вход в MAX — команда /login в личке бота. Настройки потом меняются повторным запуском setup.sh — там теперь целое меню.

Честно про ограничения, чтобы никто не питал иллюзий:

Это не end-to-end. Переписка идёт через серверы MAX и Telegram — как и в любом обычном мессенджере. Мост ничего в этом плане не «шифрует поверх», он просто переносит сообщения. Переписка оседает на твоём сервере — в логах и в истории Telegram-группы. Безопасность этого сервера (доступ, шифрование диска) — на тебе.

Это неофициально. Проект не связан с MAX, работает поверх твоего собственного аккаунта на твой страх и риск.

Сыровато, но живо. Один разработчик — зато с момента этого поста вышло уже полтора десятка обновлений: от подписанных релизов до отказа от root в контейнере.

Специально открытый исходник — чтобы можно было посмотреть, что внутри, и гонять на своём сервере, а не на чьей-то инфраструктуре:

github.com/Trollobot/Telemax

Зы: на следующий день после поста Гит забанили — разбираюсь с поддержкой.

Проект от этого не остановился: живёт на собственном зеркале с HTTPS, а каждый релиз подписан ключом — обновления проверяют подпись, так что доверять транспорту и не требуется. Установка, пока GitHub в бане:

curl -fsSL https://zergont-gate.duckdns.org/install.sh | bash

Теги:
Всего голосов 30: ↑25 и ↓5+22
Комментарии48
redb.Core
redb.Core

«Это написал Клод» — комментарий из-за рубежа, и почему идее хранилища больше двадцати лет (даже если так было бы, то клод выпивая тонные кофе это всё родил ...)

Под англоязычной версией статьи про SQLite-провайдер на dev.to появился комментарий в духе «даже без "load-bearing" и тире через всё предложение видно, что это писал Клод». Не первый раз слышу что-то подобное, так что решил ответить не в комментариях, а отдельным постом заодно расскажу то, что давно собирался: откуда вообще взялась идея хранилища, на котором всё это стоит.

Сначала честно про долю ИИ

Не скрываю и не буду: текст статей да, пишу в паре с Клодом, я не копирайтер и не техрайтер по профессии. Но код библиотек другая история. Скелет и инженерные решения — мои, всегда были моими. Клод дописывает рутину поверх уже заданного паттерна, полирует, ловит ошибки, пишет тесты и комментарии. Изобретать архитектуру и решать неочевидные компромиссы — не его работа, это разные навыки, и Клод хорош ровно в первом, не во втором.

Показательный пример сам релиз 3.6.0: баги, которые в него вошли, нашёл не Клод, а реальная эксплуатация. Модель не может споткнуться о краевой случай, который проявляется только под живой нагрузкой с непредсказуемым вводом такое не ловится по аналогии с соседним кодом.

А теперь откуда это всё вообще взялось

Основная идея хранилища не изобретение последних месяцев. Первая версия появилась в 2004 году, когда я писал на Delphi за двадцать с лишним лет до того, как Клод вообще начал существовать.

Задача была дать объекту динамические поля на ходу, не фиксируя их жёстким классом заранее. Delphi для этого уже нёс нужный кусок RTTI (Run-Time Type Information): каждый класс несёт метаданные о своих полях и свойствах, доступные в рантайме, не только на этапе компиляции. Поверх этого интерфейс IDispatch из COM: GetIDsOfNames резолвит имя поля в DISPID, Invoke вызывает по этому DISPID, передавая значение через VARIANT. Вместе это давало то, чего не даёт обычный жёсткий класс: объект мог обзавестись полем, которого не существовало на момент компиляции, а вызывающая сторона спросить о нём по имени и получить настоящий типизированный ответ.

Система прожила у меня внутри собственных проектов много лет, никуда не публикуясь. За это время она полностью пережила Delphi и COM переехала на .NET, механизм сменился до неузнаваемости (никакого VARIANT, никакого DISPID сейчас это типизированные колонки в Postgres/MSSQL/SQLite, которые я уже разбирал построчно в статье про 13 таблиц), а вопрос остался ровно тем же: как дать объекту гибкий набор полей, не потеряв возможность спросить "а какого оно вообще типа".

Отсюда, кстати, и название RTTI-based storage, не маркетинговый термин, а прямое родство с тем самым механизмом Delphi. И не EAV там никогда не было обезличенной колонки "значение", RTTI всегда знало настоящий тип.

Клод помогал полировать это перед тем, как это увидело свет публично. Сама идея и её первое воплощение старше Клода на десятилетия.

Цикл про redb:

Всё лежит в публичных репозиториях redbase-app. Предлагаю не гадать по стилю прозы, а склонировать к себе и прогнать нейронкой глубоко, очень глубоко. И приглашаю на дискуссию: если найдёте что-то, что выглядит как архитектурное решение именно от модели, а не от человека, который держит всю систему в голове годами с удовольствием обсужу предметно.

Теги:
Всего голосов 5: ↑4 и ↓1+5
Комментарии0

Micropatches | GitHub

Уже давно заметил, что если навигироваться в Obsidian через зажатие стрелок, то через какое-то время появляется жесточайший лаг.

Решил сделать профилирование. Получилось довольно продуктивно. По пути кинул баг-репорты Fakelink и Excalidraw, чтобы они улучшили производительность в конкретных местах. На удивление проблемы решились в тот же день. Видимо, мало кому из разработчиков нравится, когда их плагин тормозит :)

Но главное узкое место оказалось в обработке зажатых клавиш редактором CodeMirror, который работает под капотом самого Obsidian. Апдейты начинают накапливаться, не успевают обрабатываться, и в итоге лаг линейно растёт со временем вплоть до зависания.

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

Сейчас в плагине есть следующие микропатчи:

  1. Исправляет лаг при зажатии стрелок

  2. Держит курсор примерно в центре для удобства чтения

  3. Скрывает светофор на macOS

  4. По умолчанию открывает поиск в Bases

  5. Убирает анимации в интерфейсе

Если у вас есть идеи, какие ещё можно сделать микропатчи, то буду рад их рассмотреть.

Теги:
Всего голосов 3: ↑3 и ↓0+5
Комментарии0

В команде VideoLan (разработчики открытого проекта VLC Media Player) предупредили пользователей о регрессии, проявляющейся в ОС Windows 11. Симптомы проблемы: 30-секундное зависание перед началом воспроизведения некоторых видов файлов, включая MP3. Регрессия объясняется ошибкой, допущенной в приложении Microsoft Defender и проявляющейся после установки последнего обновления Windows 11. Из‑за ошибки каталог с кэшем плагинов VLC был помещён Microsoft Defender в карантин. Для ошибки рекомендуется переустановить VLC, очистить или перегенерировать кэш плагинов командой «vlc ‑-reset‑plugins‑cache». Также проблема может быть решена через добавление vlc.exe в список исключений Microsoft Defender.

Теги:
Всего голосов 5: ↑5 и ↓0+8
Комментарии1

Червь Shai-Hulud вернулся в npm и получил настоящую подпись

4 августа в npm вышла новая версия keyv, небольшой библиотеки для работы с хранилищами. Внутри был вредоносный код, и через час он появился в cacheable, flat-cache, cache-manager и остальных пакетах того же автора, а оттуда пошел дальше по чужим учетным записям. Сутки спустя специалисты Aikido насчитали 444 зараженных пакета.

Опознать волну было несложно. Червь складывал краденое в публичные репозитории с описанием «Shai-Hulud: Here We Go Again». Wiz относит образец к тому же семейству, что и прошлогодние.

Атакующий получил доступ к учетной записи мейнтейнера и выпустил зараженные версии от его имени. В них он добавил загрузчик setup.mjs, файл с замаскированным вредоносным кодом и настройку preinstall в package.json. Она заставляла npm запускать загрузчик еще во время обычной установки пакета.  

setup.mjs определял, на какой системе работает машина. Если на ней не было Bun (среды для выполнения JavaScript), то он скачивал ее легитимную версию 1.3.13 из официального списка релизов. Затем через Bun запускался Math_Symbol.js. Этот файл собирал токены, ключи и другие секреты, доступные на машине разработчика или сервере сборки. Используя токены публикации червь выпускал зараженные версии пакетов, которыми мог распоряжаться их владелец. Таким образом червь шел не только по дереву зависимостей, но и по полномочиям мейнтейнеров. Очередной зараженный пакет попадал в следующую среду сборки, получал доступ уже к ее секретам и повторял тот же сценарий.

Интересно то, что зараженные версии попали в реестр с настоящей подписью. Год назад экосистема ответила на первую волну Shai-Hulud внедрением доверенных публикаций, при котором пакет собирается в общем сборочном конвейере, а вместе с ним публикуются сведения о происхождении сборки. На августовских версиях эта проверка проходила, и подмены после сборки действительно не было. Вредоносный код лежал в самом репозитории, поэтому конвейер честно собрал и заверил то, что там было.

Второе наблюдение этой волны — это попытка закрепиться там, куда пакетный менеджер уже не смотрит. Получив доступ к репозиториям, червь дописывал в них служебные настройки редактора и ИИ-агента так, что код запускался при обычной работе с проектом, например при его открытии. Запрет скриптов установки, который npm включил по умолчанию этим летом, обрубает главный путь заражения, но эту ветку он не видит. Она живет в конфигурации инструментов, куда дерево зависимостей не заглядывает.

Заражённые версии из реестра уже убрали, а теги последних релизов откатили. Но для машины, куда пакет успел встать 4 августа, это мало что меняет. Секреты уехали в тот же день и работают, пока их не отозвали.

Как в таком случае защитить цепочку поставки?

Новые версии внешних пакетов лучше вовсе не пускать в сборки в день публикации. Период охлаждения хотя бы на 14 дней дает время заметить подозрительный релиз. Доступ к публичным реестрам стоит пропускать через внутренний репозиторий или прокси, чтобы известная вредоносная версия не попала к разработчикам и в сборочные системы. Подробнее о таких рубежах контроля мы писали в статье «Атаки на цепочку поставки ПО: виды угроз и как с ними бороться».

Когда запись об уязвимости уже появилась в базах данных, композиционный анализ помогает найти проекты, сборки и контейнерные образы, где могла оказаться конкретная версия, если не применялся период охлаждения. Дальше важно очистить внутренний кэш, проверить изменения в CI, редакторах и ИИ-агентах, а также отозвать секреты, к которым имел доступ раннер. Удаление пакета из реестра этого уже не сделает.

Подписывайтесь на CodeScoring в Telegram, VK, YouTube и Макс.

Теги:
Всего голосов 5: ↑5 и ↓0+9
Комментарии0

redb ecosystem
вышла версия 3.5.0(1) nuget
в ней Локальная база на клиенте
также новый коннектор redb.Route.As2 github
добавлены EIP паттерны
Message History EIP 
XSLT transformation
Routing Slip EIP 

посмотреть можно здесь github.com/redbase-app

хабр

Теги:
Всего голосов 2: ↑2 и ↓0+5
Комментарии0

ElegantGPT

Начал значительно чаще пользоваться ChatGPT, так как на GPT-5.6 Sol High качество ответов стало меня устраивать. Вдобавок, он по умолчанию работает примерно в том же стиле, что и Perplexity Computer. Только нет никаких дурацких кредитов.

Единственное, что меня серьёзно напрягало – это то, как выглядел чат. Чёрный фон, полная депрессия. Поэтому сделал свою тему. Естественно, частично наследовал Base16 Dark и поставил любимое семейство IBM шрифтов.

Читаемость повысилась. С чатом стало приятнее работать. Кстати, предыдущую тему для Habr я тоже переработал.

Тема бесплатная, устанавливается через Stylus (Firefox / Chrome).

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии1

Представлен открытый проект torlink, который умеет искать и работать с торрентами из проверенных источников. Запускается командой npx torlnk. Одновременно проверяет FitGirl, YTS, The Pirate Bay, 1337x, Nyaa и другие источники, а результаты показывает вместе с размером и числом сидов. Выбранный файл скачивается в фоне, а после завершения автоматически встаёт на раздачу.

«Найти торрент в наши дни — сплошная головная боль. Один сайт — это минное поле из поддельных кнопок загрузки. Другой скрывает настоящую ссылку под всплывающим окном, которое открывает ещё две вкладки. И после всего этого половина результатов — это неработающие сайты с нулевым количеством раздающих. Torlink — это программа для поиска торрентов, которая работает в вашем терминале, не требует никакой настройки и конфигурации. Один поиск проверяет короткий, тщательно отобранный список надёжных источников, и всё, что вы выберете, загрузится прямо на ваш компьютер. Файлы ваши, сохранены в папке загрузок», — пояснил автор проекта.

Теги:
Всего голосов 7: ↑7 и ↓0+11
Комментарии1

Представлен открытый проект Memora, который сохраняет работу Codex и Claude Code между сессиями. Внутри решения находится локальная база SQLite или синхронизация через S3, R2 и Cloudflare D1. Есть также семантический поиск, TODO, документы и связи между воспоминаниями. ИИ-агент запрашивает тему и получает готовый комплект данных: важный контекст, незакрытые задачи, связанные факты и ссылки на источники. Причём всю память можно открыть как интерактивный граф и изучать через встроенный RAG-чат.

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии1

Nvidia представила открытый проект Nemotron VoiceChat. Это голосовой ИИ‑агент, способный открывать любые инструменты по команде пользователя в реальном времени:

  • Nemotron говорит с вами без пауз и умеет в эмоции;

  • разрешает вам перебивать себя с задержкой всего 480 мс;

  • умеет вызывать инструменты посреди диалога — поиск в сети, календарь и так далее;

  • поддерживает сложные сценарии использования;

  • обучен на 550 тысячах часов речь;

  • умеет слушать, говорить, прерывать ответы и вызывать инструменты в рамках одного диалога.

Теги:
Всего голосов 4: ↑3 и ↓1+5
Комментарии2

Для MacBook вышло открытое приложение Himekuri, которое позволяет переворачивать календарь на рабочем столе. Бумага на календаре мнётся, рвётся и улетает вниз экрана. Причём вернуть ее обратно уже нельзя. Закрепить проект можно на рабочем столе, поверх всех окон или использовать как обычное приложение.

Теги:
Всего голосов 2: ↑2 и ↓0+4
Комментарии1

Представлен первый релиз эмулятора терминала под необычным названием Shitty. Автор проекта считает его «серьёзным эмулятором терминала с глупым названием». Код решения написан с помощью ИИ-ассистента на C++23 (сbundled libstd, требующей -std=c++26) и распространяется под двойной лицензией MIT и GPL-3.0. Поддерживаются macOS и Linux.

Проект делает ставку на обеспечение низких задержек, быстрого запуска и предсказуемого потребления ресурсов: состояние терминала обрабатывается на CPU, а отрисовка выполняется через бэкенды на базе Vulkan в Linux и Metal в macOS, без использования стороннего графического тулкита. При тестировании производительности вывод 100 МБ ASCII через терминал Shitty показывает ~118 МБ/с, обгоняя alacritty (0.81 с против 0.96 секунд), kitty и ghostty. На «случайных байтах» с некорректным UTF-8 отрыв от alacritty ещё заметнее (~51 МБ/с против ~31 МБ/с). Корректность работы Shitty обеспечивается более чем 5000 тестами, собранными из десятка с лишним внешних наборов — kitty, esctest, vttests из xterm, vttest, tack, libvterm, libtsm, alacritty, ghostty, contour, konsole, mosh. Тесты выполняются с проверкой работы на реальном PTY.

Теги:
Всего голосов 2: ↑2 и ↓0+4
Комментарии1

Представлен открытый проект pdf-inspector на Rust от команды Firecrawl. Это PDF-парсер, который умеет быстро обрабатывать страницы документов. Проект преобразует содержимое в Markdown, но при этом сохраняет структуру документа и таблицы. Решение работает без ограничений, код опубликован под лицензией MIT.

Теги:
Всего голосов 7: ↑6 и ↓1+7
Комментарии0

Ближайшие события

Local Fonts | GitHub

Разработал плагин, который делает шрифты частью Obsidian-хранилища. Шрифты переезжают вместе с заметками и работают локально на компьютере и телефоне без отдельной установки.

Работает просто. Кидаете шрифты в папку fonts в корне хранилища:

📂 My Vault
├── 📁 .obsidian
└── 📂 fonts/
    ├── 📁 IBM-Plex-Sans/
    │   ├── 🔤 Regular.woff2
    │   ├── 🔤 Regular.ttf
    │   └── 🔤 Bold.woff2
    ├── 📁 IBM-Plex-Mono/
    │   └── 🔤 Regular.otf
    └── 📁 Noto Color Emoji/
        ├── 😀 COLRv1.woff2
        └── 😀 SVG.woff2

После этого в настройках отдельно выбираете шрифты для текста, интерфейса, заголовков, кода и эмодзи.

Поддерживаются .ttf, .otf, .woff и .woff2. В настройках отображаются доступные начертания. Там же можно проверить, применился ли выбранный шрифт.

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии0

PyPI готовится закреплять префиксы имен пакетов за организациями

29 июня 2026 года был принят PEP 752. Он описывает механизм, с помощью которого пакетные репозитории смогут закреплять префиксы имен за определенными организациями. Например, новые пакеты с префиксом google-cloud- смогут публиковать только организации, получившие соответствующее право.

Сейчас пространство имен PyPI остается плоским. Если название свободно, пользователь может зарегистрировать пакет, который выглядит частью известного проекта, например, google-cloud-something, opentelemetry-something или apache-airflow-providers-something. Знакомый префикс повышает доверие к названию, хотя реального отношения к организации у пакета может не быть.

PEP 752 предлагает закреплять за владельцем как сам префикс, так и новые названия, которые включают префикс и дефис после него. Попытка опубликовать такой пакет без разрешения будет завершаться ошибкой. При этом уже существующие проекты можно не блокировать. Репозиторий вправе разрешить их владельцам выпускать новые версии и после появления защищенного префикса.

Синтаксис имен не изменится, поэтому дорабатывать pip, uv и другие менеджеры пакетов ради обычной установки не потребуется. Вместе с тем в API репозитория появятся сведения о связи проекта с защищенным префиксом. В дальнейшем менеджеры пакетов и прокси смогут учитывать их в собственных политиках.

Принятый PEP пока описывает стандарт, а не уже работающую функцию PyPI. Правила подачи и рассмотрения заявок вынесены в PEP 755, который остается черновиком. Срок запуска механизма также пока не объявлен.

PEP 752 переносит часть проверки на самый ранний этап, когда в репозитории только появляется новое имя. Для семейств пакетов вроде google-cloud-* или apache-airflow-providers-* это позволяет остановить постороннего издателя до того, как правдоподобно названная подделка станет доступна пользователям.

У такой защиты есть довольно четкие ограничения. Право на префикс подтверждает, что издатель может использовать такое имя в конкретном репозитории, но ничего не говорит о безопасности содержимого. Если учетную запись доверенного издателя скомпрометируют или он сам выпустит вредоносную версию, резервирование не поможет. На другой репозиторий выданное право тоже не распространяется.

Когда механизм заработает, новые метаданные можно будет использовать не только на страницах PyPI. Менеджеры пакетов и корпоративные прокси смогут пропускать пакеты с защищенным префиксом, только если издатель имеет на него право. Это точечная защита от одного семейства атак на имена; остальные сценарии неймсквоттинга мы разбирали в статье «Атаки на цепочку поставки ПО: виды угроз и как с ними бороться».

Подписывайтесь на CodeScoring в Telegram, VK, YouTube и Макс.

Теги:
Всего голосов 4: ↑4 и ↓0+6
Комментарии0

Проект nosubscription.org содержит библиотеку с 1000+ альтернативами платным программам, включая открытые и бесплатные проекты. Есть удобный поиск и разбивка по категориям.

Теги:
Всего голосов 5: ↑4 и ↓1+5
Комментарии0

Представлен открытый проект WebKit CSSFontFace Exploit for PS4/PS5, который прошивает игровую консоль меньше чем за минуту. Работает через подмену кода в браузере: пока WebKit пытается считать CSS-код страницы, запускается эксплойт системы. Решение запускается на прошивках с версиями от 6.00 до 11.02 и совместимо с kernel-эксплойтом для версий 7.00–11.02, позволяя запускать HEN и другие пэйлоды. Минусы проекта: перепрошивку придётся активировать при каждом перезапуске консоли.

Теги:
Всего голосов 5: ↑5 и ↓0+7
Комментарии0

Собрал 52 гайда по AI: от первой модели в Ollama до своего агента

Дисклеймер: я не AI-исследователь и не senior ML-инженер. Я обычный разработчик, который решил разобраться в теме — и понял, что хороших сводных материалов катастрофически не хватает.

Большинство статей либо «что такое нейросети за 5 минут» (бесполезно), либо «запускаем LLM с нуля на кластере из 8 A100» (неприменимо). Между этими крайностями — пропасть.

Я решил собрать то, чего мне самому не хватало: практический хендбук, который ведёт от полного нуля до работающих агентов. Без воды, без маркетинга, без «ChatGPT заменит программистов».

Весь проект — 52 файла, ~6 часов чтения. Уровни: зелёный (начало) → красный (глубоко).

Репозиторий: https://github.com/bestdeejay-design/awesome-ai-handbook

О чём это вообще

Хендбук покрывает пять разделов:

Zero Level — база. Что такое LLM, как они устроены (без математики), облако vs локальный запуск, как выбирать железо (RAM, VRAM, квантование), глоссарий на 35 терминов. Рассчитан на тех, кто вчера открыл терминал.

Local Models — установка Ollama, выбор моделей под задачу (Qwen, Llama, Mistral…), квантование (Q4/Q5/Q8), сравнение инструментов, бенчмарки на Apple Silicon, продвинутая настройка (Modelfile, кастомные API, окружение).

AI Agents — архитектура, паттерны (ReAct, Multi-Agent), фреймворки (LangGraph, CrewAI), память, system prompts, safety, туториалы: первый агент, команда агентов, кодинг-агент.

Use Cases — реальные сценарии: кодинг с Continue/Aider, RAG с Open WebUI и ChromaDB, автоматизация с n8n, Telegram-боты, контент-пайплайны.

Resources — сообщества (Reddit, Discord), курсы (EN/RU), ссылки на всё полезное.

Почему это не очередной awesome-list

Я намеренно не делал просто список ссылок. Каждый файл — это полноценный материал с:

  • Контекстом и пояснениями

  • Сравнением вариантов (например, когда выбрать Ollama, а когда LM Studio)

  • Командами, которые можно скопировать и выполнить

  • Предостережениями (грабли, на которые сам наступал)

Пример. В разделе про квантование не просто таблица методов, а объяснение: на что влияет Q4 vs Q8, как считать VRAM под свою задачу, и когда квантование ломает ответы модели.

Или раздел про агентов — не ссылка на документацию LangChain, а пошаговые туториалы с реальным кодом: от «агент с одним инструментом» до «команда агентов с очередью задач».

Структура проекта

awesome-ai-handbook/
├── basics/           # 🟢 нулевой уровень (9 файлов)
├── local-models/     # 🔵 локальные модели (11 файлов)
├── agents/           # 🤖 AI агенты (17 файлов)
├── use-cases/        # 💼 применение (5 файлов)
└── resources/        # 📖 ссылки и курсы (5 файлов)

Каждый раздел — законченная тема. Можно читать подряд или прыгать в конкретный файл по каталогу (catalog.md). Уровни сложности маркированы цветом — от зелёного (ничего не знаю) до красного (пишу код).

Кому это будет полезно

  • Разработчикам, которые хотят использовать AI в работе, но не знают с чего начать

  • Тем, кто уже запустил Ollama, но хочет разобраться глубже — с агентами, RAG, пайплайнами

  • Тем, кто ищет альтернативу ChatGPT и хочет запустить модель локально, но не уверен в выборе

  • Тем, кто читал пять статей про AI-агентов и всё ещё не понимает, как их собрать

Почему Open Source

Хендбук лежит на GitHub под MIT-лицензией. Я планирую поддерживать его актуальным — модели и инструменты меняются быстро, и это не работа одного человека.

Если найдёте ошибку, устаревшую информацию или захотите добавить свой раздел — открывайте issue или PR. Я за мердж-реквесты с чаем и печеньками.

Ссылки

Надеюсь, кому-то сэкономит недели поиска. Если понравилось — киньте звезду на GitHub, для проекта это лучшая поддержка.

Теги:
Всего голосов 14: ↑14 и ↓0+17
Комментарии6

Представлен открытый архитектурный инструмент Pascal Editor (3D building editor built with React Three Fiber and WebGPU), который работает прямо в браузере. Рисуем стены, перекрытия и крыши, ставим двери, окна и мебель, собираем несколько этажей и переключаемся между 2D‑планом и 3D. Готовый дом можно разобрать по этажам, пройтись по нему от первого лица и выгрузить в другие редакторы. Также к проекту можно подключить Codex и Claude Code и попросить ИИ создавать элементы здания.

Теги:
Всего голосов 4: ↑4 и ↓0+6
Комментарии0

Представлен открытый SSH‑менеджер Termix, который работает без подписок или рекламы. Проект включает в себя как стандартные функции, так и расширенные:

  • 2FA для защиты доступа к серверам;

  • удобный интерфейс, разработанный на React и Tailwind CSS;

  • терминал SSH с разделением экрана, управлением SSH‑туннелями;

  • удалённый редактор файлов с подсветкой синтаксиса;

  • мониторинг вообще всех ресурсов серверов;

  • менеджер Docker и Podman‑контейнеров.

Теги:
Всего голосов 2: ↑2 и ↓0+4
Комментарии0