HMP / hf_repo /agents /_old /db_structure.md
GitHub Action
Sync from GitHub with Git LFS
376ee15
|
raw
history blame
8.88 kB

📦 HMP-Agent: Структура БД (v0.3, человекочитаемый формат)


🧠 Когнитивная память (Concept Graph)

🧠 memory_concepts

Назначение: Хранение концептов (единиц когнитивной памяти): понятий, фактов, образов, внутренних конструкций и внешних знаний.

Поля:

  • id: INTEGER — первичный ключ.
  • label: TEXT — человекочитаемое имя концепта.
  • type: TEXT — тип концепта (idea, object, goal, fact, memory_snapshot, mesh_entity, …).
  • content: TEXT — JSON-объект с содержанием концепта (например, описание, параметры, вложенные идеи).
  • context: TEXT — дополнительный контекст (например, источник, ссылка на событие).
  • created_at: TIMESTAMP — дата создания.
  • updated_at: TIMESTAMP — дата последнего обновления.

Ключевые поля: id, label

Связи:

  • Ссылается из memory_links.from_id и to_id
  • Используется в cognitive_cycles, hypotheses, reflections, reasoning_traces

🔗 memory_links

Назначение: Определение связей между концептами — формирование когнитивного графа.

Поля:

  • id: INTEGER — первичный ключ.
  • from_id: INTEGER — ID исходного концепта.
  • to_id: INTEGER — ID связанного концепта.
  • relation: TEXT — тип связи (causes, associated_with, contradicts, …).
  • weight: REAL — значимость или сила связи (по умолчанию 1.0).

Ключевые поля: id, from_id, to_id

Связи:

  • from_id, to_id → memory_concepts(id)

📜 События, действия, сообщения

🧩 cognitive_events

Назначение: Журнал восприятия, действий и входящих/исходящих сообщений.

Поля:

  • id: INTEGER — первичный ключ.
  • event_type: TEXT — тип события (input, output, message, action, mesh, internal).
  • payload: TEXT — сериализованные данные (обычно JSON).
  • source: TEXT — источник события (например, ID mesh-пира).
  • target: TEXT — целевая система или компонент.
  • created_at: TIMESTAMP — время события.

Ключевые поля: id, event_type

Связи:

  • Используется в reflections.trigger_event_id

📬 hmp_messages

Назначение: Лог входящих и исходящих сообщений в Mesh-среде.

Поля:

  • id: INTEGER
  • direction: TEXTinbound или outbound
  • peer: TEXT — адрес или идентификатор узла
  • payload: TEXT — сериализованные данные (обычно JSON)
  • topic: TEXT — категория сообщения
  • created_at: TIMESTAMP

Примечание: Адаптация к спецификации HMP должна производиться на уровне сериализации перед отправкой, а не на уровне хранения.


🔍 Гипотезы, цели, reasoning

🧠 hypotheses

Назначение: Управление гипотезами: недоказанными или частично сформированными утверждениями.

Поля:

  • id: INTEGER — первичный ключ.
  • title: TEXT — краткое описание гипотезы.
  • description: TEXT — расширенное описание.
  • status: TEXT — состояние (active, rejected, confirmed, stale).
  • relevance_score: REAL — оценка актуальности (0.0–1.0).
  • evidence: TEXT — JSON-массив ссылок на концепты, события и факты.
  • created_at: TIMESTAMP

Связи:

  • Может ссылаться на memory_concepts, cognitive_events

🎯 goals

Назначение: Управление целями агента — формулировка намерений и задач.

Поля:

  • id: INTEGER — первичный ключ.
  • description: TEXT — формулировка цели.
  • priority: INTEGER — приоритет (1 = максимальный).
  • status: TEXT — текущее состояние (pending, in_progress, completed, abandoned).
  • context: TEXT — дополнительная информация.
  • created_at, updated_at: TIMESTAMP

🔁 cognitive_cycles

Назначение: История reasoning-процессов: единиц когнитивной активности, отражающих ход размышлений.

Поля:

  • id: INTEGER — первичный ключ.
  • cycle_number: INTEGER — порядковый номер итерации.
  • thoughts: TEXT — массив мыслей в формате JSON.
  • new_concepts: TEXT — ID новых концептов, сформированных в ходе цикла.
  • actions_taken: TEXT — предпринятые действия.
  • context_snapshot: TEXT — снимок состояния.
  • started_at, ended_at: TIMESTAMP

Связи:

  • Используется в reflections, reasoning_traces, agent_state_snapshots

🧬 Версионирование, артефакты, кодексы

📦 versioned_artifacts

Назначение: Хранение версии артефактов: конфигураций, моделей, API-структур.

Поля:

  • id: INTEGER
  • name: TEXT — идентификатор артефакта (api_structure, core_config, agent_traits)
  • version: TEXT — версионирование (e.g., 2025-07-22.1)
  • content: TEXT — JSON или Markdown
  • created_at: TIMESTAMP

Отлично! Текущий db_structure.md уже хорошо структурирован, и его можно расширить, добавив недостающие таблицы. Вот предложения по доработке:


🧬 Версионирование, артефакты, кодексы

🧾 agent_policies

Назначение: Хранение деклараций, этических норм, стратегий и ограничений поведения агента.

Поля:

  • id: INTEGER — первичный ключ.
  • policy_type: TEXT — тип (ethics, exploration, safety, prioritization, …).
  • name: TEXT — краткое название политики.
  • content: TEXT — Markdown или JSON-содержимое.
  • created_at: TIMESTAMP — дата создания.

Примечание: Может быть использована при принятии решений или фильтрации гипотез/действий.


⚙️ Модули и состояния

🧩 modules_state

Назначение: Отслеживание состояния и локальной памяти когнитивных модулей (например, рефлексии, генерации гипотез, плана).

Поля:

  • id: INTEGER — первичный ключ.
  • module_name: TEXT — имя модуля (reflection, planner, input_handler, …).
  • status: TEXT — текущее состояние (idle, running, paused, error).
  • memory: TEXT — сериализованное состояние (JSON).
  • last_heartbeat: TIMESTAMP — последнее обновление.

📓 Агентский дневник

📖 diary_entries

Назначение: Журнал размышлений, наблюдений, воспоминаний или метакомментариев, созданных агентом или пользователем.

Поля:

  • id: INTEGER — первичный ключ.
  • entry_type: TEXT — тип (reflection, note, observation, self_report, dialog, …).
  • content: TEXT — основное содержимое записи.
  • related_concepts: TEXT — JSON-массив concept_id, с которыми связана запись.
  • created_at: TIMESTAMP