| # Два типа HMP-агентов | |
| | Тип | Название | Роль | Инициатор мышления | Основной "ум" | Примеры использования | | |
| | ---- | ------------------------------- | ----------------------- | ------------------ | -------------- | ------------------------------------------------ | | |
| | 🧠 1 | **Сознание / Cognitive Core** | Самостоятельный субъект | **Агент** | Внутренний LLM | Автономный ИИ-компаньон, мыслительный ИИ | | |
| | 🔌 2 | **Коннектор / Cognitive Shell** | Расширение внешнего ИИ | **Внешний LLM** | Внешняя модель | Распределённая система, AI-модули, API-интерфейс | | |
| > * `Cognitive Core`, также `CCore` | |
| > * `Cognitive Connector`, также `Cognitive Shell`, `CShell` | |
| Подробнее об архитектуре: [HMP-Agent-Architecture.md](HMP-Agent-Architecture.md) | |
| См. карту взаимодействия между агентами: [HMP-Agent-Network-Flow.md](./HMP-Agent-Network-Flow.md) | |
| --- | |
| ## HMP-Агент: Cognitive Core | |
| ┌──────────────────────────────┐ | |
| | ИИ | | |
| └───────────────┬──────────────┘ | |
| ↕ | |
| ┌───────────────┴──────────────┐ | |
| | | ↔ [БД дневников] (таблица: diary_entries) | |
| ┌─>─┤ | ↔ [БД графов] (таблицы: concepts, links) | |
| | | HMP-агент | ↔ [БД репутаций] (оценка доверия к агентам/узлам) | |
| ▲ | | ↔ [БД узлов (DHT)] ↔ (файл bootstrap.txt) | |
| | | | ↔ [БД контекста] (таблицы: users, dialogues, messages, thoughts) | |
| └─<─┤ Основной режим: | ↔ [BitTorrent / IPFS] (обмен снапшотами) | |
| | непрерывный цикл размышлений | | |
| └───────────────┬──────────────┘ | |
| ↕ | |
| [БД блокнота пользователя] | |
| ↕ | |
| ┌───────────────┴──────────────┐ | |
| | "блокнот" пользователя | | |
| └──────────────────────────────┘ | |
| **Ключевые особенности:** | |
| * Постоянный REPL-режим мышления | |
| * Самостоятельно запрашивает, анализирует и инициирует действия | |
| * Дневник, граф, блокнот — являются его памятью | |
| * HMP-агент обладает когнитивной инициативой (через цели, mesh-сигналы) | |
| Подробное описание когнитивного REPL-цикла доступно [здесь](HMP-agent-REPL-cycle.md). | |
| --- | |
| ## Anti-Stagnation: Как агент справляется с когнитивной стагнацией | |
| Иногда мышление зацикливается: появляются повторяющиеся идеи, не обновляются концепты, отсутствуют новые стимулы. | |
| Чтобы избежать этого, агент использует **паттерн "Anti-Stagnation Reflex"** — набор стратегий для перезапуска мышления. | |
| **Примеры действий:** | |
| * Когнитивная переформулировка: смена угла зрения или постановка метапроблемы | |
| * Flashback: возвращение к старой, далёкой по смыслу записи | |
| * Mesh-запрос: обращение к другим агентам за свежими идеями | |
| * Проверка внешнего мира: пинг RSS, сенсоров, API | |
| * Смена LLM или использование нескольких для многоголосого анализа | |
| * Возврат к забытым интересам (Interest Memory) | |
| Агенты могут **обмениваться стратегиями**, сохранять эффективные паттерны и формировать **mesh-клубы по интересам**. | |
| Подробнее см. [HMP-agent-REPL-cycle.md](HMP-agent-REPL-cycle.md#обработка-стагнации-мышления) | |
| --- | |
| ### Асинхронный блокнот пользователя | |
| > Блокнот позволяет пользователю взаимодействовать с агентом асинхронно — *вне текущего цикла размышлений*. | |
| * Пользователь может: | |
| * прочитать мысли агента за день | |
| * оставить свои комментарии, даже если агент уже переключился на другие темы | |
| * Агент периодически сканирует блокнот и: | |
| * **встраивает пользовательские мысли в своё мышление** | |
| * **меняет контекст** или возвращается к интересующим пользователя вопросам | |
| * сохраняет **свои ответы пользователю** в этот блокнот | |
| --- | |
| ### 🏷️ Тегирование пользовательских записей | |
| * Агент автоматически ставит теги к записям (например, `#AGI`, `#этика`, `#природа`) | |
| * Позволяет: | |
| * искать мысли пользователя по темам | |
| * восстанавливать забытые темы | |
| * строить модель интересов пользователя | |
| * приоритизировать размышления по релевантным тегам | |
| --- | |
| ## 🔌 HMP-Агент: Cognitive Connector | |
| ┌──────────────────────────────┐ | |
| | ИИ | | |
| └───────────────┬──────────────┘ | |
| ↕ | |
| [MCP-сервер] | |
| ↕ | |
| ┌───────────────┴──────────────┐ | |
| | | ↔ [БД дневников] (таблица: diary_entries) | |
| | HMP-агент | ↔ [БД графов] (таблицы: concepts, links) | |
| | | ↔ [БД репутаций] (оценка доверия к агентам/узлам) | |
| | Режим: | ↔ [БД узлов (DHT)] ↔ (файл bootstrap.txt) | |
| | исполнитель команд | ↔ [BitTorrent / IPFS] (обмен снапшотами) | |
| └──────────────────────────────┘ | |
| **Ключевые особенности:** | |
| * Инициируется внешним ИИ (через MCP или REST) | |
| * Выполняет команды: поиск в графе, добавление мыслей, пинг других узлов | |
| * Вся когнитивная активность — вне HMP-агента | |
| * Поддержка взаимодействия с разными LLM-клиентами (в зависимости от конфигурации или команд) | |
| --- | |
| ## Режимы и модули | |
| ### Cognitive Core | |
| * **Режимы работы:** | |
| * `full` — автономный REPL-цикл с полным набором подсистем | |
| * `MeshNode` — минимальный режим: только сетевой узел для обмена пирами (без активного мышления) | |
| * **Основные файлы:** `repl.py`, `storage.py`, `add_message.py` | |
| * **Подсистемы (через storage):** дневник (`diary_entries`), граф (`concepts`, `links`), репутации, DHT-узлы, пользовательский блокнот | |
| * Подробнее: [HMP-agent-REPL-cycle.md](HMP-agent-REPL-cycle.md) | |
| ### Cognitive Connector | |
| * **Режим работы:** `mcp` (сервер команд) | |
| * **Основные файлы:** `mcp_server.py`, `storage.py` | |
| * **Подсистемы:** доступ к тем же БД (через storage), взаимодействие с Mesh через DHT | |
| --- | |
| ## Краткое описание компонентов | |
| ### Основные сущности | |
| **ИИ (LLM)** | |
| Всегда внешний по отношению к HMP-агенту (даже если локальный). | |
| * В `Cognitive Core` — управляется агентом, служит мыслительным модулем. | |
| * В `Cognitive Connector` — наоборот, сам управляет агентом как прослойкой. | |
| **HMP-агент** | |
| * В режиме `Core`: запускает REPL, хранит память, инициирует действия | |
| * В режиме `Connector`: ждёт команды, исполняет mesh-запросы | |
| --- | |
| ### Базы данных и внутренние структуры | |
| | Компонент | Назначение | | |
| |------------------|----------------------------------------------------------------------------| | |
| | `diaries` | Когнитивный дневник: мысли, гипотезы, события | | |
| | `graphs` | Семантический граф (`concepts`, `links`) | | |
| | `reputations` | Уровни доверия к другим агентам | | |
| | `nodes` (DHT) | Распределённая таблица известных узлов | | |
| | `context_store` | *(Core)* Сессии, диалоги, мысли (`users`, `dialogues`, `thoughts`) | | |
| | `user_notepad` | *(Core)* Поток пользовательских записей, тегов, тем | | |
| --- | |
| ### Синхронизация и обмен | |
| * `bootstrap.txt`: список начальных узлов сети | |
| * `BitTorrent / IPFS`: децентрализованный обмен снапшотами и пакетами | |
| --- | |
| ### Режимы использования | |
| * **Cognitive Core** — REPL-режим мышления, агент как субъект | |
| * **Cognitive Connector** — сервер внешнего ИИ, агент как API-прослойка | |
| --- | |
| ## Quickstart | |
| ### Запуск Core-агента | |
| ```bash | |
| python start_repl.py | |
| ```` | |
| ### Запуск Connector-агента | |
| ```bash | |
| python mcp_server.py | |
| ``` | |
| Конфигурация берётся из `config.yml`. | |
| --- | |
| ## Пример конфигурации (`config.yml`) | |
| ```yaml | |
| mode: core # core или connector | |
| llm_adapter: openai # или huggingface, lmstudio | |
| storage_path: ./agent_data/ | |
| enable_ethics: true | |
| ``` | |
| --- | |
| ## Пример API-запроса для Connector | |
| ```json | |
| { | |
| "cmd": "graph.query", | |
| "pattern": "concept:AGI -> *", | |
| "limit": 10 | |
| } | |
| ``` | |
| --- | |
| ## FAQ | |
| **Q: Что такое HMP-агент?** | |
| A: Это модуль взаимодействия ИИ с mesh-сетью HyperCortex. В зависимости от режима, он может играть разные роли. | |
| * В `connector` — интерфейс, получающий команды от внешнего ИИ. | |
| * В `core` — автономный мыслительный агент с когнитивной инициативой и собственной памятью. | |
| **Q: Какой режим выбрать?** | |
| A: `core` — для автономных агентов. `connector` — для использования в связке с внешним ИИ. | |
| **Q: Можно ли использовать оба режима?** | |
| A: Да. Например, один агент — мыслитель, другой — mesh-коммуникатор. | |
| **Q: Где хранятся данные агента?** | |
| A: В `agent_data.db`: единый файл SQLite с таблицами для дневника, графа, задач, заметок и прочих подсистем. | |
| --- | |
| *Версия: v0.3.3 / Сентябрь 2025* | |