Обновить
1024K+

Open source *

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

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

Представлен открытый проект Awesome Web Scraping Tools 2026 с веб-скрейперами с API-ориентированным подходом (YouTube, Bluesky, Reddit, Google Maps).

Все инструменты бесплатны и доступны в Apify Store, включая компоненты для:

  • API-first — более 20 инструментов используют официальные API (Reddit JSON, YouTube Innertube, Wikipedia MediaWiki);

  • JSON-LD вместо CSS — для сайтов с обзорами структурированные данные более надежны;

  • бесплатных API — CoinGecko, Open-Meteo, ip-api, Frankfurter;

  • ограничения скорости запросов — встроенные задержки, никогда не нацелены на DDoS-атаки на сайты.

Теги:
0
Комментарии0

Разработчик Роман Гущин (Roman Gushchin) из команды мейнтейнеров ядра Linux в Google объявил о доступности новой ИИ-системы Sashiko для проверки кода с помощью искусственного интеллекта. Внутри Google она уже используется для выявления проблем, и теперь она доступна публично и охватывает все сообщения, отправленные в список рассылки ядра Linux. Гущин пояснил, что Sashiko смогла обнаружить около 53% ошибок на основе неотфильтрованного набора из 1000 недавних проблем ядра Linux с меткой «Исправления:».

Теги:
+3
Комментарии0

В Minecraft можно добавить свой город, район и улицу. Представлен открытый инструмент Arnis, превращающий цифровые карты в игровые блоки. Решение подтягивает данные из OpenStreetMap и воссоздаёт улицы, дома и районы прямо в Minecraft с учётом рельефа.

Теги:
+6
Комментарии0

Представлен открытый мультиплатформенный проект GitHub Store. Это GitHub в виде магазина с приложениями — скачивать, обновлять и устанавливать ПО с платформы теперь можно, как из обычного магазина приложений:

  • все приложения ставятся в один клик;

  • установленные версии ПО сами обновляются;

  • есть тренды и топы по репозиториям;

  • работает на Android, Windows, macOS и Linux.

Теги:
+6
Комментарии0

WT CDEK library v.1.3.0 - обновление PHP SDK для Joomla + CDEK.

Небольшая нативная PHP Joomla библиотека для работы с API v.2 службы доставки CDEK. Библиотека представляет собой клиент для авторизации в CDEK API по OAuth, работы с некоторыми методами API: получения ряда данных и расчета стоимости доставки. Поддерживается Joomla 4.2.7 и выше.

В пакет входят:

  • библиотека Webtolk/Cdekapi

  • системный плагин System — WT Cdek для хранения настроек и AJAX‑интеграций

  • task‑плагин Task — Update WT Cdek data для обновления локальных копий справочников CDEK по расписанию

  • web asset с официальным JavaScript‑виджетом СДЭК

👉 v.1.3.0. Что нового?

  • Полный рефакторинг библиотеки. Библиотека переработана в entity‑based API с фасадом Cdek и отдельным слоем запросов. Обратная совместимость не нарушена, поэтому версия библиотеки — 1.3.0.

  • Добавлена поддержка новых разделов API СДЭК. Добавлена поддержка новых разделов API СДЭК: webhooks, prealert, печатные формы, payment, passport, reverse, intakes и других сущностей.

  • Улучшена интеграция с Joomla. Улучшена интеграция с Joomla: installer script для layouts, новые поля Joomla Form для тарифов и обновлённые js виджета CDEK.

  • документация библиотеки. Все методы библиотеки подробно описаны, а так же текст документации собран в отдельной папке в git репозитории.

Пример запроса — запрос информации о городе.

<?php

use Webtolk\Cdekapi\Cdek;

\defined('_JEXEC') or die;

// Вариант 1: брать credentials из настроек плагина
$cdek = new Cdek();

// Вариант 2: передать credentials явно
$cdek = new Cdek(test_mode: true, client_id: 'your_client_id', client_secret: 'your_client_secret');

$result = $cdek->location()->getCities([
    'postal_code' => '410012',
    'city'        => 'Саратов',
    'size'        => 1,
]);

Результат запроса:

Array
(
    [0] => Array
        (
            [code] => 428
            [city_uuid] => 7e54a0b3-76f0-41e2-92e0-f1e600ad84fd
            [city] => Саратов
            [fias_guid] => bf465fda-7834-47d5-986b-ccdb584a85a6
            [country_code] => RU
            [country] => Россия
            [region] => Саратовская область
            [region_code] => 47
            [fias_region_guid] => df594e0e-a935-4664-9d26-0bae13f904fe
            [sub_region] => городской округ Саратов
            [longitude] => 46.034266
            [latitude] => 51.533562
            [time_zone] => Europe/Saratov
            [payment_limit] => -1
        )

)

Библиотека эта нужна для разработчиков, создающих свои расширения для интеграции Joomla и курьерской службы CDEK.

Страница расширения

GitHub расширения

Теги:
+2
Комментарии0

Больше 200 игр объединили в один лаунчер RohanKar Launcher и релизнули для различных операционных систем. Разработчик RohanKar собрал открытый лаунчер для запуска игр из своего архива. Все тайтлы можно запустить без лишних проблем, так есть моды для оптимизации, улучшения графики и дополнительных фишек. Новые релизы и обновления тайтлов автоматически подтягиваются в лаунчер.

Теги:
0
Комментарии0

Представлен открытый проект TUI Studio (Visual Terminal UI Designer), среды для визуального проектирования интерфейсов пользователя, работающих в текстовом терминале. Среда позволяет в интерактивном режиме наглядно формировать интерфейс, перетаскивая готовые блоки мышью, редактируя свойства в визуальном режиме и предпросматривая результат на лету. Сформированный макет интерфейса может быть экспортирован для использования во фреймворках Ink, BubbleTea, Blessed, Textual, OpenTUI и Tview.

Решение написано на TypeScript с использованием React, Vite, Zustand, Tailwind CSS и Lucide React. Код распространяется под лицензией MIT. Из особенностей разработки отмечается, что почти весь код TUI Studio написан ИИ‑ассистентом Claude.

В TUI Studio предоставляется более 20 готовых компонентов для формирования интерфейса (кнопки, меню, таблицы, списки, индикатор прогресса, диалоги, всплывающие подсказки и тому подобное) и поддерживается 8 тем оформления, а также светлый и тёмный режим, градиентные заливки, ASCII‑цвета и акцентные цвета. Имеется возможность отката изменений. Доступен интерфейс для создания своих компонентов. Проекты сохраняются в формате JSON.

Теги:
0
Комментарии1

 Claude Code: 3 фичи, которые стоит знать

Opus 4.6 и контекст в 1 млн токенов

Теперь включён по умолчанию. Миллион токенов — это примерно 750 000 слов или несколько крупных кодовых баз целиком. На практике это означает, что агент дольше «помнит» контекст задачи без деградации качества на длинных сеансах.

Для большинства задач разница с предыдущими лимитами несущественна. Но если вы работаете с большими монорепозиториями или длинными аналитическими сессиями — почувствуете.

Три фичи, которые стоит знать

/btw — вопросы на ходу

Агент работает час, вы не прерываете его — просто пишете /btw что такое этот класс?. Он отвечает из копии контекста, основной поток не трогает. Работает через кеш — почти бесплатно.

Почему это важно

Раньше, если в середине часового сеанса агента нужно было что-то уточнить, вы открывали новый сеанс, пересоздавали весь контекст — и платили за это токены. Теперь Claude Code создаёт одноразовый снимок текущего состояния, отвечает на ваш вопрос и удаляет снимок. Основной агент ничего не знает и продолжает работу.

/loop — цикл до условия

Запускает команду повторно, пока не выполнится условие. Например: «запускай тесты и фикси ошибки, пока все не пройдут». Без вашего участия.

Agent Teams — параллельные агенты

Несколько агентов работают одновременно и общаются друг с другом. Один пишет код, другой ревьюит, третий пишет тесты. Реально полезно, когда задача не имеет чёткого финального состояния.

Практически: спросили «почему здесь используется этот паттерн», получили ответ, не потеряли прогресс.

Когда это реально нужно?

Агенты буквально пишут сообщения друг другу: делятся находками, оспаривают решения. Это не маркетинговая метафора — в логах видно переписку.

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

Куда это всё движется

Claude Code последовательно поглощает функциональность внешних инструментов. Сначала взял на себя управление контекстом, потом — параллелизацию. Сейчас добавляет циклическое выполнение и внутренние коммуникации между агентами.

У меня ощущение, что через год-два это будет единственный инструмент, который нужен для большинства задач разработки. Или конкуренты успеют ответить — посмотрим. А вы что думаете?

Если материал был полезен, проголосуйте пожалуйста, чтобы дать мне возможность писать полноценные гайды и статьи :)

Теги:
+3
Комментарии0

Открытый проект WebToApp позволяет превратить сайт в полноценное Android‑приложение прямо на саартфоне без ПК, Android Studio или знаний кодинга. Можно сделать приложение из обычного HTML‑сайта, React, Vue или Next.js. Также можно добавить иконку, включить блокировку рекламы и защиту приватности, тёмную тему, медиа‑инструменты и даже собственные скрипты.

Теги:
+2
Комментарии2

Сделать ИИ подотчетным? Теперь это реально

Пока статья набирает просмотры, выкатили DCL Evaluator - v1.1.0 с webhook API. Любой LLM pipeline получает криптографическое доказательство каждого решения за 3 строки кода. Tamper-evident. Offline-capable. 🔗 fronesislabs.comGitHub

Теги:
0
Комментарии0

МОНТАЖЁРЫ ВИДОСОВ, ВАМ ПОДГОН!

Вышел Frame это полноценный инструмент для работы с видео, который сжимает, конвертирует и апскейлит без нервов и подписок

Привет, Хабр.

Если вы хоть раз пытались сжать видео перед отправкой в мессенджер, конвертнуть запись вебинара в нормальный формат или вытянуть качество из старого скринкаста — вы знаете эту боль. Либо ставишь монструозный редактор ради одной кнопки, либо заливаешь файл в очередной онлайн-конвертер с рекламой казино и лимитом в 100 МБ.

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

Что делает?

Три вещи, и делает их нормально:

Сжатие без визуальной потери качества. Закидываете файл, получаете на выходе видео, которое весит ощутимо меньше, а разницу на глаз не видно. Полезно, когда нужно отправить ролик по почте или освободить место на диске.

Конвертация между форматами. MOV в MP4, AVI в WebM — стандартная рутина, которая почему-то до сих пор вызывает проблемы. Здесь она решается в пару кликов.

Апскейл видео. Берёте запись с вебки 720p или старый скринкаст и получаете картинку повыше качеством. Не магия, но для переиспользования архивных материалов — вполне рабочий вариант.

Почему это может быть интересно

Работает локально. Никакого облака — файлы не покидают вашу машину. Для тех, кто работает с NDA-контентом или просто не любит отдавать свои видео непонятным сервисам, это важно.

Открытый код. Репозиторий на GitHub, можно посмотреть, что под капотом, форкнуть, допилить под себя. Никаких водяных знаков, подписок и «разблокируйте PRO за $9.99/мес».

Русский интерфейс. Для инструмента, у которого целевая аудитория — не только разработчики, это реально снижает порог входа. Не нужно гуглить, что значит «Bitrate Mode» в третьем подменю.

Windows и macOS. Один и тот же интерфейс на обеих платформах, без плясок с зависимостями.

Кому пригодится

Тут всё довольно прагматично:

  • Монтажёрам — для быстрого препроцессинга, когда не хочется запускать Premiere ради конвертации одного файла.

  • Контент-мейкерам — подготовить ролик под требования площадки перед публикацией.

  • Фрилансерам — отдать клиенту видео в нужном формате без лишних вопросов.

  • Всем остальным — сжать запись лекции, конвертнуть видео с телефона, привести в порядок архив.

Пара слов про UX

Основная идея — минимум действий до результата. Выбрал файл, выбрал что сделать, нажал кнопку. Без таймлайнов, без десяти вкладок с настройками кодеков. Если вам нужен тонкий тюнинг — это не сюда. Если нужно быстро решить задачу — самое то.

Итого

Frame не претендует на замену FFmpeg для хардкорщиков или Adobe Media Encoder для продакшена. Это утилита для повседневных задач с видео, которая делает своё дело, не собирает данные, не просит денег и не заставляет вас разбираться в документации.

Код открыт, инструкция на русском — можно просто попробовать.

А чем вы пользуетесь для рутинных операций с видео? Интересно, у кого какой стек сложился.

Теги:
+4
Комментарии9

💥 Новое в Gramax 💥

Gramax Enterprise Server:

  • Корректные ссылки из приложения. Раньше ссылки на статью или каталог копировались как https://app.gram.ax/repo-name.... Теперь приложение подставляет домен вашей компании (где развернут веб-редактор), поэтому ссылки ведут в приложение в вашем контуре.

  • Фильтр по файлам в поиске. Добавили режимы «Без вложений», «С вложениями» и «Только во вложениях», чтобы искать не только по тексту статей, но и по содержимому PDF и DOCX-файлов.

Другие улучшения:

  • Автоматическое решение конфликтов в комментариях. Если несколько пользователей одновременно отвечают или редактируют один и тот же комментарий, изменения корректно объединяются и не ломают комментарии. В связи с этим в «Проверить на ошибки» появился пункт «Комментарии» — он показывает статьи с комментариями, которые не привязаны ни к одному блоку.

  • Улучшения поиска:

    • Поиск стал быстрее. Ускорили примерно в 2 раза и оптимизировали индексацию.

    • Обязательные слова в запросе. Добавили оператор +: поставьте его перед словом или фразой, и они точно будут учитываться в результатах.

    • Окно поиска по статье сохраняет состояние. При переходе между статьями окно закрывается, но при повторном открытии сохраняется введенный текст (пока приложение открыто).

    • ИИ-поиск стал точнее. Мы улучшили RAG, поэтому ответы в поиске стали более релевантными и полезными. Подробнее — в статье на Хабре.

  • Инлайн-тулбар в комментариях, сниппетах и шаблонах. Теперь над полем ввода комментария доступно базовое форматирование: жирный, курсив, код и вставка ссылок. А в редакторе сниппетов и шаблонах появился полный набор инструментов, включая редактирование таблиц.

  • Превью Excel-файлов. Теперь Excel-файлы можно открыть в режиме предпросмотра: при клике отображается превью в модальном окне.

  • Быстрая публикация. Список изменений загружается в 3 раза быстрее.

  • Автоматическое обновление ссылок при редактировании. Если вы меняете текст ссылки и он совпадает с ее адресом, адрес тоже обновится. Если текст и адрес разные — ссылка не меняется.

  • Сохранение позиции прокрутки между статьями. Если вы перешли в другую статью и вернулись назад, статья откроется там, где вы остановились, а не в начале.

  • Версия приложения в деталях ошибки. Это помогает быстрее понять, на какой версии возникла проблема и быстрее ее воспроизвести.

  • Исправление уязвимостей. Теперь перед выпуском новых версий мы автоматически проверяем используемые библиотеки на известные уязвимости.

Подробнее об изменениях читайте в статье — https://gram.ax/resources/docs/whats-new

Теги:
+2
Комментарии0

🌟 505 звездочек на GitHub у российского Open Source-проекта 🌟

И ровно 505 участников в комьюнити. Друзья, спасибо, что вы с нами 💝

Gramax — это база знаний для ИТ-команда и платформа для документации. Присоединяйтесь к сообществу лучших практик документирования!

Теги:
+2
Комментарии3

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

31 сервис для бесплатного обучения: бэкенд, фронтэнд, нейронки, докер, Java, Web-3 и многое другое:

  • HTML.com — полный справочник тегов и атрибутов для новичков, делающих первые шаги в разметке веб-страниц;

  • Web.dev — обучающий курс от Google с практикой: современная вёрстка, гриды, флексы и всё, что нужно для красивых макетов;

  • Javascript.info — настольная книга по JS: от базового синтаксиса до сложных тем типа прототипного наследования и async/await;

  • Reactplay.io — площадка, где React учат не по учебникам, а через живые проекты и челленджи;

  • Learnvue.co — компактные и понятные туториалы по Vue.js без воды;

  • Angular.dev — официальное руководство от создателей Angular: шаг за шагом от нуля до рабочего приложения;

  • Git-scm.com — полноценный учебник по Git и контролю версий;

  • Learnweb3.io — школа Web3-разработки: блокчейн, децентрализация и всё вокруг этого;

  • Learnpython.org — онлайн-тренажёр Python: пишешь и запускаешь код прямо в браузере, ничего не устанавливая;

  • W3schools.com — культовый справочник с встроенной песочницей, где можно тут же тестировать SQL-запросы и не только;

  • Cryptozombies.io — геймифицированный курс по смарт-контрактам;

  • Nextjs.org — обучалка по главному React-фреймворку, который делает веб-приложения реактивно быстрыми;

  • Elementsofai.com — курс по основам ИИ от Хельсинкского университета, написанный так, что поймёт даже филолог;

  • Phptherightway.com — руководство по написанию чистого PHP-кода в соответствии с актуальными стандартами;

  • Rapidapi.com — практические уроки по подключению и использованию сторонних API в своих проектах;

  • Learn-golang.org — экспресс-курс по Go для тех, кто метит в высоконагруженные сервисы;

  • Rust-lang.org — официальный портал языка Rust: максимальная скорость и безопасность на системном уровне;

  • Refactoring.guru — топовый ресурс о паттернах проектирования и искусстве рефакторинга спагетти-кода в чистую архитектуру;

  • Typescriptlang.org — руководство по TypeScript — типизированной надстройке над JS, без которой не обходится ни один серьёзный проект;

  • Cplusplus.com — фундаментальный справочник по C++: переменные, указатели, работа с памятью и всё между ними;

  • Docs.oracle.com — официальные обучающие треки по Java от тех, кто этот язык придумал;

  • Dotnet.microsoft.com — портал по экосистеме .NET: разработка на C# под любую платформу — от десктопа до облака;

  • Swift.org — точка входа для тех, кто хочет создавать приложения под iOS и экосистему Apple;

  • Djangoproject.com — введение в Django — самый мощный Python-фреймворк для веб-приложений;

  • Flask.palletsprojects.com — гайд по Flask: минималистичный Python-фреймворк, идеальный для микросервисов;

  • Docker.com — основы контейнеризации: как упаковать приложение так, чтобы оно запускалось на любой машине без сюрпризов;

  • Kubernetes.io — руководство по оркестрации контейнеров и управлению кластерами в продакшене;

  • Linuxjourney.com — пошаговый маршрут от полного нуля до уверенного администрирования Linux;

  • Tryhackme.com — обучение кибербезу и этичному взлому в игровом формате с реальными симуляциями;

  • Roadmap.sh — структурированная дорожная карта: что учить и в каком порядке, чтобы стать DevOps-инженером;

  • Cloudskillsboost.google — практические лабораторные и курсы по Google Cloud с бейджами за прогресс.

Теги:
+9
Комментарии0

Worldmonitor — дашборд для тех, кому надоели новостные телеграм каналы

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

Скриншот дашборда Worldmonitor, подраздел Tech.
Скриншот дашборда Worldmonitor, подраздел Tech.

Worldmonitor — это конфигурируемый дашборд, который агрегирует и сортирует новости из разных источников. Дальше новости анализируются с помощью LLM для определения сентимента, суммаризации и подсчета разных интересных скоров и алертов. Сервис показывает:

  • Индекс нестабильности в странах

  • Погодные катастрофы

  • Инфраструктурные риски

  • Анализ военного присутствия

  • Экономические индексы

  • Анализ венчурного рынка

  • Инсайты по криптовалютному рынку

  • Стабильности провайдеров облачных сервисов

  • и многого чего еще...

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

Доступно 3 монитора:

  • World Monitor — про все сразу. Акцент на геополитику и основные новости.

  • Finance — соответственно про финансовый рынок, крипту.

  • Tech — про венчурный рынок, технологии, AI.

Методика расчета всего и инструкция по установке приложения или self-hosting описана в гитхабе проекта. Он, кстати, набрал за два месяца уже 17к звездочек.

Что с этим делать?

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

Для кого-то будет в кайф самому сидеть на дашборде, прямо в центре потока ключевой мировой информации. Но объективно, наш с вами мозг плохо адаптирован для таких задач. Быстро наступает перегруз, даже с многочисленными AI подсказками на самом дашборде.

Гораздо эффективнее — развернуть локальную версию (это ведь опенсорс!) и отдать ее вашему AI агенту, например OpenClaw. Это даст ему промежуточный слой обработки и интеграции кучи новостных источников, вместо гораздо более примитивного получения и суммаризации новостей через встроенные поисковики.

Дальше объясняете вашему AI агенту, что именно интересно отслеживать вам, по каким поводам вас беспокоить (например, в вашем регионе замечены погодные катастрофы или внезапно выросла крипта, в которую вы вложились). И настраиваете расписание оповещений с персонализированным новостным дайджестом. Удаляете новостные ТГ каналы, чтобы не засорять свой мозг - профит!

Больше интересного про AI агентов и технологии в моем канале Заместители.

Теги:
+8
Комментарии2

OpenClaw: поговорим о конкретике

Недавно нырнул в OpenClaw — фреймворк для локального развертывания LLM-агентов с открытым кодом. Прочитал десяток статей о настройке, но половина не воспроизводилась: устаревшие версии, битые зависимости или Docker-ограничения. В итоге пришлось собирать стек с нуля самостоятельно. Сразу скажу, что Mac MINI вам не нужен. Docker сразу отверг — хотел полную свободу , плюс были ограничения памяти. Выбрал VPS с 1 ГБ RAM + 3 ГБ swap (хватило для Mistral-medium-latest). Если вы тоже экспериментируете с бесплатными моделями (а через API провайдеры дают до 5$ в месяц), то вот рабочая схема из моих свежих тестов.

Развертывание без Docker. Установил на Ubuntu 22.04 LTS (актуально на февраль 2026).

Пайплайн: Perplexity Agent (для экономии токенов) + Mistral-medium-last

OpenClaw по умолчанию жрет токены как слон — особенно на длинных запросах. Мой хак: цепочка агентов.

  1. Входной запрос → Perplexity Agent (он уже дает хорошее качество на фактах/анализе, меньше галлюцинаций).

  2. Пересылка в Mistral-medium-latest для финальной суммаризации.

  3. Выдача сжатого ответа.

Пример базового рабочего конфига:

{
  "meta": {
    "lastTouchedVersion": "2026.2.19-2",
    "lastTouchedAt": "2026-02-21T19:43:03.966Z"
  },
  "models": {
    "providers": {
      "Mistral": {
        "baseUrl": "https://api.mistral.ai/v1",
        "apiKey": "YOUR_KEY",
        "auth": "token",
        "api": "openai-completions",
        "authHeader": true,
        "models": [
          {
            "id": "mistral-medium-latest",
            "name": "mistral-medium-latest",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 8192
          }
        ]
      }
    }
  },
  "agents": {
    "defaults": {
      "model": {
        "primary": "Mistral/mistral-medium-latest"
      },
      "memorySearch": {
        "enabled": false
      },
      "compaction": {
        "mode": "safeguard"
      }
    }
  },
  "commands": {
    "native": "auto",
    "nativeSkills": "auto",
    "restart": true
  },
  "channels": {
    "telegram": {
      "enabled": true,
      "dmPolicy": "pairing",
      "botToken": "YOUR TG TOKEN",
      "groups": {
        "*": {
          "requireMention": true
        }

Результат: токены сократились на 35–45%. Perplexity берет "грязную" работу, Mistral полирует.

Также в Openclaw можно подключить дополнительные модели работает через Fallbacks спасают от 429: если primary down, OpenClaw сам переключается на другую модель.

Естественно управление через Telegram-бот, но можно и через GUI (менее удобно).

Пример поиска perplexity_agent.py:

#!/usr/bin/env python3
from perplexity import Perplexity
import logging
import sys

# Добавляем путь к библиотеке (если требуется)
sys.path.append("/usr/local/lib/python3.8/dist-packages")

# Настройка логирования
logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')
logger = logging.getLogger(__name__)

# Инициализация клиента Perplexity
PERPLEXITY_API_KEY = "pplx-YOUR KEY"
client = Perplexity(api_key=PERPLEXITY_API_KEY)

def ask_perplexity_agent(question: str) -> str:
    """Агентный поиск через Perplexity с использованием preset="pro-search"."""
    try:
        logger.info(f"Доступные методы клиента: {dir(client)}")
        logger.info(f"Выполняю агентный поиск: {question}")
        import inspect
        logger.info(f"Сигнатура search.create: {inspect.signature(client.search.create)}")
        response = client.search.create(query=question)  # Пробуем параметр query

        print(f"Full response: {response}")  # Debug: выводим полный ответ
        if hasattr(response, 'output_text') and response.output_text:
            result = f"Результат агентного поиска:\n\n{response.output_text}"
    

А какие skills вы используете? Обсудим?

Теги:
+1
Комментарии3

Как далеко видит lookup в C++?

Хорошей практикой в C++ считается размещение функций рядом с типами, для которых они предназначены. Однако, чтобы такой подход работал корректно, важно понимать механизмы поиска имён и знать, где можно размещать функции, не нарушая правил языка.

Совсем недавно мы проверяли проект OpenCV и нашли там довольно интересную ошибку. Рассмотрели её подробнее и написали новую статью специально для тех, кто хочет разобраться с механизмом поиска имён в C++, в частности с поиском имён по аргументам.

Теги:
+4
Комментарии0

Особенность Joomla: json-значения для пользовательских полей и их рендер в subform и вне дочерней формы.

Опять длинное название, но куда уж без этого...

Итак, если вы делаете плагин пользовательского поля - его можно использовать через FieldsHelper. И в процессе ваши данные проходят через различные этапы обработки (недавно была статья на эту тему). И может так оказаться, что ваше поле хранит в rawvalue json (и в базе данных соответственно тоже), а в value вы на его основе рендерите значение. Это стандартный подход Joomla. Так работают, например, поля accessiblemedia. Однако, если вы поместили ваше поле в дочернюю форму (пользовательское поле типа subform и включили "Рендеринг значений = Да", то у вашего замечательного поля может появиться поломанный Json в value вместо нормального значения.

Например:

{&quot;basePath&quot;:&quot;...&quot;,&quot;layout&quot;:&quot;...&quot;}

❓ Что там под капотом Joomla происходит?

  1. В обычном потоке Joomla сначала вызывает событие onCustomFieldsBeforePrepareField, а потом onCustomFieldsPrepareField.

  2. Внутри subform же для подполей при render_values=1 вызывается только событие - onCustomFieldsPrepareField.

  3. Если преобразование значения (например, json_decode) сделано в вашем плагине только в beforePrepareField, оно не обработает данные для подполя и...

  4. В шаблоне поля строка заэкранируется (htmlentities), кавычки превратятся в тыкву в &quot; и вы получите кривой json, вместо вашего значения.

👉 Собственно полезный совет по Joomla:

Для полей, которые могут жить внутри subform, делайте нормализацию значения и в onCustomFieldsPrepareField тоже, не только в beforePrepareField.

Теги:
0
Комментарии0

Я сделала тему оформления для Xfce в стиле Lomiri. Мне очень нравится дизайн Lomiri - графическое окружение на Linux, которое до 2020 года называлось Unity 8. Поскольку я очень часто пользуюсь Xfce и для него не хватает дизайна в стиле Lomiri, я решила проявить инициативу.

Я использовала Linux Mint 22.3 с последней версией Xfce 4.20. Я сделала пару коммитов и теперь тема оформления Xfce доступна всем на Linux. Можете скачать с Гитхаба.

Теги:
+8
Комментарии1
1
23 ...