Новости 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 Гость просматривают эту тему.
  • 5 Ответов
  • 13316 Просмотров
*

dmsoh

  • Захожу иногда
  • 195
  • 8 / 0
Недавно обновлял компонент самой первой версии Павла Зотова на последнюю версию от Alex Revo, поэтому могу поделиться некоторым опытом.

Собственно как и рекомендует автор были обновлены все файлы, и выполнены запросы
Код
ALTER TABLE `jos_autobb_messages` ADD `company` VARCHAR( 100 ) CHARACTER SET cp1251 COLLATE cp1251_general_ci NOT NULL AFTER `name` ;
ALTER TABLE `jos_autobb_messages` ADD `fuelinputcity` DECIMAL(4,1) NOT NULL DEFAULT '0' AFTER `engine`;
ALTER TABLE `jos_autobb_messages` ADD `fuelinputcountry` DECIMAL(4,1) NOT NULL DEFAULT '0' AFTER `fuelinputcity`;
ALTER TABLE `jos_autobb_messages` ADD `fuelinputboth` DECIMAL(4,1) NOT NULL DEFAULT '0' AFTER `fuelinputcountry` ;
ALTER TABLE `jos_autobb_messages` ADD `lastViewIP` varchar( 20 ) ;
ALTER TABLE `jos_autobb_messages` ADD `power` INT( 11 ) NOT NULL DEFAULT '0' AFTER `volume` ;
ALTER TABLE `jos_autobb_messages` ADD `ip` VARCHAR( 20 ) NULL DEFAULT NULL AFTER `lastViewIP`;
ALTER TABLE `jos_autobb_messages` ADD `banned` TINYINT( 1 ) NOT NULL DEFAULT '0';
ALTER TABLE `jos_autobb_messages` ADD `speed` INT( 3 ) NOT NULL AFTER `power` ;
ALTER TABLE `jos_autobb_messages` ADD `en`TINYINT( 1 ) NOT NULL AFTER `views` ;
ALTER TABLE `jos_autobb_messages` ADD `cr`TINYINT( 1 ) NOT NULL AFTER `en` ;
ALTER TABLE `jos_autobb_messages` CHANGE `en` `en` TINYINT( 1 ) NOT NULL DEFAULT '0',
CHANGE `cr` `cr` TINYINT(1 ) NOT NULL DEFAULT '0';

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

В версиях Alex Revo изображения храняться в отедельных папках, в версих - П. Зотова все хранилось в одной папке.


Этот код перекладывает изображения в подпапки

Код
<?
require ('/home/..../public_html/beta/configuration.php');
$dbcon=mysql_connect($mosConfig_host,$mosConfig_user,$mosConfig_password);
mysql_select_db($mosConfig_db, $dbcon);

$dbcon="SELECT  title   FROM  jos_autobb_photos where (msgid >= 2099) AND (msgid <= 2150)";

$result = mysql_query ($dbcon) or die (mysql_error());
$n = mysql_numrows($result);

if($n>0){
$i=0;
while($i<$n){
$myrow=mysql_fetch_array($result);
if ($myrow["title"])  {
                $zpl  = $myrow["title"];
                $exl=explode("-", $myrow["title"]);
                mkdir($exl [1], 0777);
   

                         
if (copy('/home/...../public_html/components/com_autobb/photos/'.$zpl.'', '/home/..../public_html/beta/components/com_autobb/photos/'.$exl[1].'/'.$zpl.''))
{ echo "ОК </br>"; }
else
{ echo "Ошибка при копировании"; }

}

$i++;
}

 echo "Копирование успешно выполнено!";

}


?>


Следующий код  модифицирует пути к изображениям в БД
Код
<?

require ('/home/..../public_html/beta/configuration.php');
$dbcon=mysql_connect($mosConfig_host,$mosConfig_user,$mosConfig_password);
mysql_select_db($mosConfig_db, $dbcon);

$dbcon="SELECT  title   FROM  jos_autobb_photos where (msgid >= 2099) AND (msgid <= 8297)";

$result = mysql_query ($dbcon) or die (mysql_error());
$n = mysql_numrows($result);

if($n>0){
$i=0;
while($i<$n){
$myrow=mysql_fetch_array($result);
if ($myrow["title"])  {
                $zpl  = $myrow["title"];
                $exl=explode("-", $myrow["title"]);
$zdr = $exl[1];
$zdr .= "/$zpl";

echo $zdr;

$dbrez ="UPDATE jos_autobb_photos SET title = '".$zdr."' WHERE title = '".$zpl."' ";
$resms = mysql_query ($dbrez) or die (mysql_error());
           
}

$i++;
}

 echo "Изменение успешно выполнено!";

}


?>


Коды из этих листингов использовались в отдельных php - файлах.
Замечу что описанные операции выполнялись достаточно долго (копировалось около 8000 тысяч объявлений), поэтому вводились диапазоны объявлений.
Замечу, что код будет работать гораздо быстрее, если переделать проверки и  возложить их на MySQL.
« Последнее редактирование: 01.10.2008, 03:54:33 от dmsoh »
*

Alex Revo

  • Moderator
  • 1995
  • 109 / 0
На сколько я помню последняя версия компонента от Павла Зотова хранит фото из объявлений в каждой папке, как и в версиях AutoBB REV, так что приведенные рецепты будут полезны пользователям, действительно, самых первых версий компонента. +1
*

dzaharov

  • Осваиваюсь на форуме
  • 43
  • 0 / 0
Отличный код, только подскажите как его запустить на выполнение?
Т.е. я сделал файл с данным кодом, например copy.php
А откуда/как его запускать? В строке браузера появляется просто пустое окно....
Кстати, в пути /home/..../public_html/beta/components/com_autobb/photos/ зачем нужна папка beta? Я её удалил, чтобы копировалось сразу в рабочий компонент autobb/photos/
*

dmsoh

  • Захожу иногда
  • 195
  • 8 / 0
Отличный код, только подскажите как его запустить на выполнение?
Т.е. я сделал файл с данным кодом, например copy.php
А откуда/как его запускать? В строке браузера появляется просто пустое окно....
Кстати, в пути /home/..../public_html/beta/components/com_autobb/photos/ зачем нужна папка beta? Я её удалил, чтобы копировалось сразу в рабочий компонент autobb/photos/


Файл copy.php должен находиться в той папке куда вы хотите скопировать фото. Я специально создал отдельный каталог чтобы в случае если что-то пойдет не так не испортить рабочий каталог с фотографиями компонента, тоже самое рекомендую и вам. А в последствии заменяете рабочий каталог компонента на каталог куда копировали фотографии.

Обратите также внимание на путь к конфигурационному файлу require ('/home/..../public_html/beta/configuration.php'); - скрипт использует данные для соединения с БД и без него код работать не будет.

Запускаете скрипт из строки браузера обычным образом site.ru/components/com_autobb/new_photos/copy.php в результате в каталоге new_photos должны окзаться фотографии упорядоченные по подпапкам.

Затем запускаете второй код - который преобразует пути в БД.

И еще сегодня заметил одну проблему - в админке выскакивает ошибка permission denied unlink(/.....) при попытке удалить объявление, фотографии которого были скопированы вышеуказанным образом. Догадываюсь, что возможно проблема в UID пользователей.

Т.е. после копирования владельцем файлов стал пользователь abdmsoh. А те объявы, которые создает  autobb - у них владелец apache.

Alex Revo может быть вы поможете решить проблему, возможно процедура копирования файлов не совсем корректная?
*

Alex Revo

  • Moderator
  • 1995
  • 109 / 0
Проверьте права на папку и файлы после такого копирования. Попробуйте рекурсивно поставить всем 777, а затем удалить какое-нить старое объявление с фото.
*

dmsoh

  • Захожу иногда
  • 195
  • 8 / 0
Оказалось, проблема хостинга, т.к. владельцем файлов при переносе стал пользователь NoBody.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Не сохраняются данные при настройки компонента autobb

Автор FLYERok

Ответов: 4
Просмотров: 2519
Последний ответ 13.12.2011, 16:28:51
от FLYERok
Дополнительные функции компонента

Автор artefakt

Ответов: 1
Просмотров: 2378
Последний ответ 25.09.2011, 12:29:03
от artefakt
создать новую категорию ТС.

Автор A28

Ответов: 2
Просмотров: 2552
Последний ответ 29.06.2011, 12:08:30
от Alex Revo
Когда приблизительно планируется выход компонента для J1.6?

Автор xander kej

Ответов: 6
Просмотров: 3130
Последний ответ 08.06.2011, 17:51:05
от yuri-it
Ошибки компонента

Автор holodniu

Ответов: 9
Просмотров: 2989
Последний ответ 28.02.2011, 16:35:14
от holodniu