## πŸ“¦ 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: TEXT` β€” `inbound` ΠΈΠ»ΠΈ `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`