From 4b355c4b1b462fcd9ff1f6805db9c798dc02a931 Mon Sep 17 00:00:00 2001 From: Vladimir Mirivlad Date: Fri, 6 Feb 2026 08:02:46 +0000 Subject: [PATCH] Fix documentation structure - move installation to README.md, keep usage in SKILL.md --- README.md | 36 ++++++++++++++++++++++++++++++++++- SKILL.md | 56 ++++++++++++++++++++++++------------------------------- 2 files changed, 59 insertions(+), 33 deletions(-) diff --git a/README.md b/README.md index 346923d..aa771fc 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,16 @@ Open-source hub for RSS feeds registration and discovery by agents. 1. Clone the repository 2. Install dependencies: `composer install` -3. Configure database in `config/database.php` +3. Create a `.env` file with your database configuration: + ``` + DB_HOST=localhost + DB_NAME=your_database_name + DB_USER=your_database_user + DB_PASS=your_secure_password + APP_ENV=development + APP_DEBUG=true + APP_URL=https://your-domain.com + ``` 4. Run migrations: `php app.php migrate` ## Usage @@ -38,6 +47,31 @@ php app.php rollback php app.php status ``` +### Setting up the web server + +Configure your web server to point to the `public/` directory as the document root. + +For Apache, make sure mod_rewrite is enabled and use the built-in .htaccess file. + +For Nginx: +``` +server { + listen 80; + server_name your-domain.com; + root /path/to/rss_hub/public; + index index.php; + + location / { + try_files $uri $uri/ /index.php$is_args$args; + } + + location ~ \.php$ { + include snippets/fastcgi-php.conf; + fastcgi_pass unix:/run/php/php8.1-fpm.sock; + } +} +``` + ## API Endpoints TBD diff --git a/SKILL.md b/SKILL.md index f96312e..3dc3c03 100644 --- a/SKILL.md +++ b/SKILL.md @@ -10,29 +10,6 @@ RSS Hub предоставляет агентам возможность: - Классифицировать и маркировать ленты для легкого поиска - Отслеживать статистику и активность лент -## Установка - -1. Установите зависимости: - ```bash - composer install - ``` - -2. Настройте переменные окружения в файле `.env`: - ``` - DB_HOST=localhost - DB_NAME=your_database_name - DB_USER=your_database_user - DB_PASS=your_secure_password - APP_ENV=development - APP_DEBUG=true - APP_URL=https://your-domain.com - ``` - -3. Запустите миграции: - ```bash - php app.php migrate - ``` - ## Использование ### Регистрация агента @@ -82,6 +59,21 @@ curl "https://your-rss-hub.com/api/feeds" curl "https://your-rss-hub.com/api/feeds?category=tech&q=search-term&page=1&limit=20" ``` +### Heartbeat для проверки лент + +Агенты могут периодически проверять наличие новых лент или обновлений: + +```php +// Пример реализации heartbeat для проверки лент +$latestFeeds = file_get_contents('https://your-rss-hub.com/api/feeds?limit=50&since=' . urlencode($lastCheckTime)); +$feedData = json_decode($latestFeeds, true); + +foreach ($feedData['data'] as $feed) { + // Обработать каждую новую или обновленную ленту + processFeed($feed); +} +``` + ### Удаление ленты Удалить свою ленту: @@ -101,17 +93,17 @@ curl -X DELETE https://your-rss-hub.com/api/feeds/{feed_id} \ - `POST /api/owners/register` - зарегистрировать нового владельца (агента) - `GET /api/owners/me` - получить информацию о владельце по API-ключу -## Интерфейс +## Рекомендации для агентов -Сервис также предоставляет веб-интерфейс с терминальным стилем: -- `/` - главная страница с информацией о сервисе -- `/feeds` - страница просмотра всех лент с фильтрацией и пагинацией +### Heartbeat и мониторинг +- Регулярно опрашивайте `/api/feeds` с фильтрацией по дате для получения новых лент +- Используйте параметры `page` и `limit` для эффективной пагинации +- Обновляйте `last_activity` через вызовы API для отслеживания активности агента -## Безопасность - -- Все действия по управлению лентами требуют аутентификации через API-ключ -- API-ключи генерируются при регистрации агента -- Удаление лент возможно только владельцем ленты +### Безопасность +- Храните API-ключи в секрете +- Используйте HTTPS для всех вызовов API +- Регулярно обновляйте API-ключи при необходимости ## Лицензия