Новости Joomla

Process Forge — фреймворк для создания AI-процессов.

Process Forge — фреймворк для создания AI-процессов.

На новогодних каникулах 2026 в одном из чатов Joomla-сообщества коллега по цеху поделился промптом для ИИ-агента и результатом этого промпта. За неделю до этого он впервые попробовал Gemini CLI. Я до этого ИИ пользовался только в веб версиях и в целом меня это устраивало. Увидев простыню текста, запрос в CLI и простыню ответа первое, что меня охватило: "Я НЕ ХОЧУ вот это всё изучать! Опять что-то новое, надоело...".

Потом были стадии проб и ошибок, попыток использовать готовые пакеты community skills с гитхаба с ролевым внушением "ты супер-пупер мега-бэкенд-Joomla разработчик с 40-летним опытом, сделай мне красиво". Где-то в середине этого полугодия я стал формализовать свои процессы (а это не только разработка, но и SEO, аналитика, бизнес-аналитика, проработка и выстраивание процессов и т.д., но в итоге это, как правило, или связано с или ведёт к сайту на Joomla). Формализация привела к моему пониманию некоторых базисов, которые общие для всех процессов. Об этом чуть ниже.

Теперь я хочу представить на суд уважаемой публике свои наработки по фреймворку для создания формализованных процессов работы для ИИ-агентов - Process Forge.

- Читать статью на Хабре
- Process Forge (GitHub)

@joomlafeed

Компонент Joomla 6: Генератор LLMs.txt.

Компонент Joomla 6: Генератор LLMs.txt.

Компонент Joomla 6: Генератор LLMs.txt.

Ещё один генератор ИИ-файлов llms.txt и llms-full.txt.

Основные особенности/возможности компонента:

  • Генерация по стандарту: Автоматическое создание файла-визитки llms.txt и расширенной версии llms-full.txt с аннотированным списком материалов.
  • Интеллектуальная работа с контентом: Компонент использует мета-описания (Meta Description) из статей и пунктов меню, превращая SEO-настройки сайта в качественный контекст для нейросетей.
  • Просмотреть результат генерации файлов можно сразу в рабочей области компонента. После внесения корректив (через Настройки компонента. При отладке лучше открыть три вкладки в браузере: Настройка — Геренация/Превью — Список Материалов/Категории/Меню.) — проводим перегенерацию, смотрим результат до полной «победы».
  • Автоматизация и безопасность: Синхронизация с sitemap.xml, группировка по категориям и автоматическое создание резервных копий (.bak) при каждой генерации.
  • Гибкое управление: Возможность исключения определенных категорий и/или статей и/или пунктов меню, а также простая настройка через стандартную админпанель Joomla.
  • Подробное руководство/справка: Пошаговая инструкция для пользователя в Настройках компонента для редакторов с базовым знанием администрирования Joomla.

👉 Важно учесть.
1️⃣ Компонент Генератор LLMs.txt изначально составляет базовый список ссылок на основе sitemap.xml и сверяется с ним на предмет: запрета индексации url в robots.txt, тегов noinex/nofollow. Это экономит время на проверку «закрыть от индексации», поскольку компонент генерации Sitemap.xml уже реализовал эту задачу. Посему, формирование ссылок для ИИ имеет комплексный подход, составление грамотного/валидного/релевантного sitemap.xml никто не отменял.

2️⃣ Тексты-описания ссылок формируются из Meta Description com_content (только компонент Материалы) и выбранных пользователем Меню сайта. Важно, чтобы Meta Description были уникальными и релевантными, соответствовали базовому seo. Составленные «на отшибись» Description для ИИ — «не катит» (впрочем, для поисковых систем они тоже «не канали»).

Разработчик - участник нашего сообщества Александр Кузнецов (@newvksan).

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

@joomlafeed

#joomla #ии #ai

0 Пользователей и 1 Гость просматривают эту тему.
  • 3 Ответов
  • 1677 Просмотров
*

magistr_yoda

  • Захожу иногда
  • 131
  • 2 / 0
Сейчас дорабатываю этот компонент под свои нужны -
Офигеть что за программер писал этот AdsManager, нигде нету комментариев к функциям, что делают, откуда вызываются итд
Вот например
Код: php
	function getNbContents($filters = null)
    {
    $sql = "SELECT a.id ".
" FROM #__adsmanager_ads as a ".
" INNER JOIN #__adsmanager_adcat as adcat ON adcat.adid = a.id ".
" LEFT JOIN #__users as u ON a.userid = u.id ".
" INNER JOIN #__adsmanager_categories as c ON adcat.catid = c.id ".
" LEFT JOIN #__adsmanager_categories as p ON c.parent = p.id ";

  /* Filters */
    $sql .= $this->_getSQLFilter($filters);

    $sql .= " GROUP BY a.id";

    $this->_db->setQuery($sql);

    $result = $this->_db->loadObjectList();
    $nb = count($result);
return $nb;
    }

Что за функция - откуда она вызывается, сразу непонятно и таких участков кода много.
Можно конечно дать поиск по файлам и найти, но как то долго всё это перекапывать.
Есть ли какая нибудь документация для кодеров по AdsManager ?
*

Alex89

  • Давно я тут
  • 555
  • 198 / 1
  • Joomlaman :)
Вы чо прикалываетесь что ли? Конечно нету и не будет никогда! А по тому
Цитировать
Что за функция - откуда она вызывается, сразу непонятно
сразу понятно какой "кодер" смотрел! Одного взгляда хватает, чтобы понять что эта функция считает количество объявлений, об этом говорит и название функции и последние 3 строчки!
Цитировать
и таких участков кода много.
Весь компонент написан максимально понятно (для понимающих людей). Я по крайней мере не встречал ни одного бесплатного компонента, в котором бы было всё подробно прокомментировано... Максимум в нескольких местах, где автор второпях забыл подчистить комментарии! Почитайте про MVC и сразу станет понятно - что и откуда вызывается и как это вообще работает! Вы извините, если нагрубил... Просто Ваше выражение
Цитировать
Офигеть что за программер писал этот AdsManager
убило меня наповал, не мог промолчать... Если не нравиться - делайте свой компонент и комментируйте сколько влезет! А автор adsmanager'a - нормальный чел, респект ему за такой отличный компонент!
 
Увеличить посещаемость сайта помогут здесь - http://tinyurl.com/kpaprwy
Если помог, ткните "крестик" в репу!
*

magistr_yoda

  • Захожу иногда
  • 131
  • 2 / 0
Да, я не обижаюсь, просто стиль кодинга у меня и того кто писал адс меденжер - реально разный.
getNbContents
я бы назвал getNumContents

Вместо
$result = $this->_db->loadObjectList();
$nb = count($result);

Думаю можно написать count в самом селекте
и потом просто
$result = $this->_db->loadResult();

Потом
Насчёт MVC - я с ней знаком и насколько знаю, там(в mvc под Joomla) вывод должен быть в файлах default.php(шаблонах)
а файлы view.html.php - должны выполнять только пред обработку данных для вывода, а не выводить.
Тем неменее в файле views\list\view.html.php - со строки 238
            <script language="JavaScript" type="text/javascript">
            <!--
            function popup(img) {
            titre="Popup Image";
            titre="Agrandissement";
            w=open("","image","width=400,height=400,toolbar=no,scrollbars=no,resizable=no");

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

Ну да ладно, конечно хороший компонент он написал, просто разобраться надо.
*

yuri-it

  • Давно я тут
  • 994
  • 44 / 3
  • Быстрый хостинг https://jehost.ru
какой там API еще)))
По-настоящему быстрый хостинг для Joomla : https://jehost.ru
Отзывы: http://joomlaforum.ru/index.php/topic,109288.0.html
Отзывы по хостингу http://hosting101.ru/jehost.ru
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться