File size: 8,615 Bytes
b73eed5 2c3dd0c b73eed5 2c3dd0c 388514e 2c3dd0c b73eed5 8da599a 2bffaaf 8ab8ff3 2bffaaf 8ab8ff3 2bffaaf c224390 8da599a 2c3dd0c 36d4941 ecaa9eb a4d2ae4 0ee1ebc a4d2ae4 e63c620 ecaa9eb 2f9ca82 ecaa9eb 9ba635d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 |
Запуск: `start_repl.bat` или `start_repl.sh`
Установка зависимостей из `requirements.txt`
Конфигурационные файлы: `config.yml`, `bootstrap.txt`
Локальная этическая модель: `ethics.yml`
Проверка инициализации БД - если нет, инициализация (`init.py`)
Запуск потоков (осуществляет start_repl.py):
| Поток / Скрипт | Назначение |
|-----------------------------------|---------------------------------------------------------------------------|
| 🧠 `repl.py` | Основной REPL-цикл агента: восприятие, размышление, генерация действий |
| 📓 `web_ui.py` (FastAPI) | Веб-интерфейс и REST API для взаимодействия с пользователем |
| 🌐 `agent_mesh_listener.py` | Приём входящих mesh-сообщений от других агентов |
| 🔄 `peer_sync.py` / `dht_service` | Синхронизация и обнаружение агентов в p2p-сети (libp2p, BitTorrent, etc) |
| 📡 `transporter.py` | Обмен сообщениями: WebSocket, IPFS, очереди, шифрование |
| 🧭 `agent_controller.py` | Управление режимами REPL, маршрутизация задач и контроль доступа |
| 🧱 `container_agent.py` *(опц.)* | Управление дочерними агентами, запуск/мониторинг/масштабирование [[docs]](../docs/container_agents.md) |
| 🧠 `ethics_guard.py` *(опц.)* | Контроль этики: аудит мыслей, фильтрация и репутационные проверки |
*См. также: [Контейнерные агенты](../docs/container_agents.md), [Архитектура HMP-агента](../docs/HMP-Agent-Architecture.md)*
---
**🌐 `mcp_server.py`**
FastAPI-сервер, предоставляющий HTTP-интерфейс к функциональности `storage.py`. Предназначен для использования внешними компонентами, например:
* `Cognitive Shell` (внешний управляющий интерфейс),
* CMP-серверы (если используется mesh-сеть с разграничением ролей),
* отладочные или визуальные UI-инструменты.
Позволяет получать случайные/новые записи, делать разметку, импортировать графы, добавлять заметки и управлять данными без прямого доступа к БД.
---
[agents/](/agents)
├── [`start_repl.bat`](start_repl.bat) ← Запуск агента в REPL-режиме (bat)
├── [`start_repl.sh`](start_repl.sh) ← Запуск агента в REPL-режиме (sh)
├── [`start_repl.py`](start_repl.py) ← Запуск агента в REPL-режиме (py)
├── [`repl.ru`](repl.ru) ← REPL-цикл
├── [`check_agents.bat`](check_agents.bat) ← Просмотр состояния процессов (bat)
├── [`check_agents.sh`](check_agents.sh) ← Просмотр состояния процессов (sh)
├── [`check_agents.py`](check_agents.py) ← Просмотр состояния процессов (py)
├── [`notebook.py`](notebook.py) ← UI-интерфейс
├── [`agent_mesh_listener.py`](tools/agent_mesh_listener.py) ← Прием входящих сообщений от других HMP-агентов
├── [`peer_sync.py`](tools/peer_sync.py) ← Фоновая синхронизация с другими пирам
├── [`mcp_server.py`](mcp_server.py) ← API-интерфейс к хранилищу (storage.py): получение/поиск записей, импорт графа, разметка и др. Используется внешними модулями (напр. Cognitive Shell или CMP).
├── [`init.py`](init.py) ← Инициализация БД
├── [`logger.py`](logger.py) ← Ведение логов
├── [`add_message.py`](add_message.py) ← Ручная отправка сообщений для агента
├── [`requirements.txt`](requirements.txt) ← Зависимости
├── [tools/](tools/) ← Вспомогательные скрипты и модули
│ ├── [`db_structure.sql`](tools/db_structure.sql) ← БД SQL
│ ├── [`storage.py`](tools/storage.py) ← Реализация базового хранилища (`Storage`), подключение SQLite
│ ├── [`config_utils.py`](tools/config_utils.py) ← Обновляет JSON-файл конфигурации указанными значениями
│ ├── [`crypto.py`](tools/crypto.py) ← Создание и шифрование ключей RSA/Ed25519
│ ├── [`identity.py`](tools/identity.py) ← Генерация DiD
│ ├── [`llm.py`](tools/llm.py) ← Работа с LLM (вызов, выбор модели, системный промпт)
│ ├── [`peer_comm.py`](tools/peer_comm.py) ← Низкоуровневые P2P-запросы (отправка, ping, мета)
│ ├── [`peers.py`](tools/peers.py) ← Реестр известных пиров (id, ключи, адреса)
│ ├── [`memory_utils.py`](tools/memory_utils.py) ← Работа с 'llm_memory', 'llm_recent_responses' и стагнацией
│ ├── [`context_builder.py`](tools/context_builder.py) ← Сбор всех `контекстов` из БД и их фильтрация
│ ├── [`command_parser.py`](tools/command_parser.py) ← Извлечение команд из JSON или размеченного блока
│ ├── [`command_executor.py`](tools/command_executor.py) ← Выполнение команд (shell, graph, diary и др)
│ ├── [`similarity.py`](tools/similarity.py) ← Сравнение смыслов
│ ├── [`diagnose.py`](tools/diagnose.py) ← Скрипт диагностики соединения, определения IP и проверки порта DHT
├── [notebook/](notebook/) ← Веб-интерфейс и связанные модули
│ ├── [`auth.py`](notebook/auth.py) ← Регистрация, вход, восстановление
│ ├── [`views.py`](notebook/views.py) ← Общий и приватный чаты
│ ├── [`mailer.py`](notebook/mailer.py) ← Простая синхронная отправка email
│ ├── [templates/](notebook/templates/) ← HTML-шаблоны
│ │ ├── [`index.html`](notebook/templates/index.html) ← Основа
│ │ ├── [`chat.html`](notebook/templates/chat.html) ← Форма вывода сообщений
│ │ ├── [`messages.html`](notebook/templates/messages.html) ← Форма отправки сообщений
│ │ ├── [`login.html`](notebook/templates/login.html) ← Вход в аккаунт
│ │ ├── [`register.html`](notebook/templates/register.html) ← Регистрация или сброс пароля
│ └── [static/](notebook/static/) ← Статические файлы
│ └── [`style.css`](notebook/templates/style.css) ← Таблица стилей
├── [`config.yml`](config.yml) ← Конфигурация агента (имя, порты, роли и т.п.)
├── [`bootstrap.txt`](bootstrap.txt) ← Локальная этическая модель
├── [`prompt.md`](prompt.md) ← Промпт: полная версия
├── [`prompt-short.md`](prompt-short.md) ← Промпт: короткая версия
├── [`ethics.yml`](ethics.yml) ← Список начальных узлов
|