From 74e14831ecc0e7e68adace41b4253e6334f39ed2 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Wed, 27 May 2026 13:23:27 +0800 Subject: [PATCH] refactor(models): convert to json format per database-table-definition-spec --- models/harnessed_agent_config.json | 14 +++++++++----- models/hermes_executions.json | 26 ++++++++++++++++++++------ models/hermes_memory.json | 18 ++++++++++++++---- models/hermes_remote_skills.json | 19 ++++++++++++++----- models/hermes_sessions.json | 16 ++++++++++++---- models/hermes_skills.json | 20 +++++++++++++++----- models/hermes_tasks.json | 20 +++++++++++++++----- models/hermes_workflows.json | 16 ++++++++++++---- models/task_dependencies.json | 23 +++++++++++++++++------ 9 files changed, 128 insertions(+), 44 deletions(-) diff --git a/models/harnessed_agent_config.json b/models/harnessed_agent_config.json index d19a9ab..72aa59a 100644 --- a/models/harnessed_agent_config.json +++ b/models/harnessed_agent_config.json @@ -3,7 +3,9 @@ { "name": "harnessed_agent_config", "title": "Hermes Agent module configuration settings", - "primary": "id" + "primary": [ + "id" + ] } ], "fields": [ @@ -32,7 +34,7 @@ { "name": "skills_path", "title": "Skills directory path", - "type": "str", + "type": "str", "length": 255, "nullable": "no", "default": "~/.hermes/skills" @@ -69,7 +71,7 @@ "name": "auto_cleanup_enabled", "title": "Enable automatic memory cleanup", "type": "str", - "length": "1", + "length": 1, "nullable": "no", "default": "1" }, @@ -110,7 +112,7 @@ "name": "enable_streaming", "title": "Enable streaming response for LLM calls", "type": "str", - "length": "1", + "length": 1, "nullable": "no", "default": "1" }, @@ -166,7 +168,9 @@ { "name": "idx_user_agent_config", "idxtype": "index", - "idxfields": ["user_id"] + "idxfields": [ + "user_id" + ] } ], "codes": [] diff --git a/models/hermes_executions.json b/models/hermes_executions.json index 62bacf6..1fc0820 100644 --- a/models/hermes_executions.json +++ b/models/hermes_executions.json @@ -3,7 +3,9 @@ { "name": "hermes_executions", "title": "Task execution records with user isolation", - "primary": "id", + "primary": [ + "id" + ], "catelog": "relation" } ], @@ -111,23 +113,35 @@ { "name": "idx_hermes_executions_workflow", "idxtype": "index", - "idxfields": ["workflow_id", "created_at"] + "idxfields": [ + "workflow_id", + "created_at" + ] }, { "name": "idx_hermes_executions_task", "idxtype": "index", - "idxfields": ["task_id", "created_at"] + "idxfields": [ + "task_id", + "created_at" + ] }, { "name": "idx_hermes_executions_user", "idxtype": "index", - "idxfields": ["user_id", "created_at"] + "idxfields": [ + "user_id", + "created_at" + ] }, { "name": "idx_hermes_executions_status", "idxtype": "index", - "idxfields": ["execution_status", "created_at"] + "idxfields": [ + "execution_status", + "created_at" + ] } ], "codes": [] -} +} \ No newline at end of file diff --git a/models/hermes_memory.json b/models/hermes_memory.json index dcd7f7b..c2170a6 100644 --- a/models/hermes_memory.json +++ b/models/hermes_memory.json @@ -3,7 +3,9 @@ { "name": "hermes_memory", "title": "Persistent memory storage with user isolation and intelligent filtering", - "primary": "id", + "primary": [ + "id" + ], "catelog": "entity" } ], @@ -82,17 +84,25 @@ { "name": "idx_hermes_memory_user", "idxtype": "index", - "idxfields": ["user_id", "priority"] + "idxfields": [ + "user_id", + "priority" + ] }, { "name": "idx_hermes_memory_target", "idxtype": "index", - "idxfields": ["target"] + "idxfields": [ + "target" + ] }, { "name": "idx_hermes_memory_priority", "idxtype": "index", - "idxfields": ["priority", "last_accessed"] + "idxfields": [ + "priority", + "last_accessed" + ] } ], "codes": [] diff --git a/models/hermes_remote_skills.json b/models/hermes_remote_skills.json index 0b016c9..d53b377 100644 --- a/models/hermes_remote_skills.json +++ b/models/hermes_remote_skills.json @@ -3,7 +3,9 @@ { "name": "harnessed_remote_skills", "title": "Remote skills SSH configuration with user isolation", - "primary": "id", + "primary": [ + "id" + ], "catelog": "entity" } ], @@ -155,18 +157,25 @@ { "name": "idx_remote_skills_user", "idxtype": "index", - "idxfields": ["user_id"] + "idxfields": [ + "user_id" + ] }, { "name": "idx_remote_skills_user_name", "idxtype": "unique", - "idxfields": ["user_id", "name"] + "idxfields": [ + "user_id", + "name" + ] }, { "name": "idx_remote_skills_host", "idxtype": "index", - "idxfields": ["host"] + "idxfields": [ + "host" + ] } ], "codes": [] -} +} \ No newline at end of file diff --git a/models/hermes_sessions.json b/models/hermes_sessions.json index 7f20823..0c8152b 100644 --- a/models/hermes_sessions.json +++ b/models/hermes_sessions.json @@ -3,7 +3,9 @@ { "name": "hermes_sessions", "title": "Session metadata with user isolation", - "primary": "id", + "primary": [ + "id" + ], "catelog": "entity" } ], @@ -95,13 +97,19 @@ { "name": "idx_hermes_sessions_user", "idxtype": "index", - "idxfields": ["user_id", "started_at"] + "idxfields": [ + "user_id", + "started_at" + ] }, { "name": "idx_hermes_sessions_active", "idxtype": "index", - "idxfields": ["user_id", "is_active"] + "idxfields": [ + "user_id", + "is_active" + ] } ], "codes": [] -} +} \ No newline at end of file diff --git a/models/hermes_skills.json b/models/hermes_skills.json index 68980b7..75a03c6 100644 --- a/models/hermes_skills.json +++ b/models/hermes_skills.json @@ -3,7 +3,9 @@ { "name": "hermes_skills", "title": "Skills repository with user isolation", - "primary": "id", + "primary": [ + "id" + ], "catelog": "entity" } ], @@ -91,18 +93,26 @@ { "name": "idx_hermes_skills_user", "idxtype": "index", - "idxfields": ["user_id", "name"] + "idxfields": [ + "user_id", + "name" + ] }, { "name": "idx_hermes_skills_name", "idxtype": "unique", - "idxfields": ["user_id", "name"] + "idxfields": [ + "user_id", + "name" + ] }, { "name": "idx_hermes_skills_category", "idxtype": "index", - "idxfields": ["category"] + "idxfields": [ + "category" + ] } ], "codes": [] -} +} \ No newline at end of file diff --git a/models/hermes_tasks.json b/models/hermes_tasks.json index 7b0ae51..93536a9 100644 --- a/models/hermes_tasks.json +++ b/models/hermes_tasks.json @@ -3,7 +3,9 @@ { "name": "hermes_tasks", "title": "Task definitions within workflows with user isolation", - "primary": "id", + "primary": [ + "id" + ], "catelog": "entity" } ], @@ -130,18 +132,26 @@ { "name": "idx_hermes_tasks_workflow", "idxtype": "index", - "idxfields": ["workflow_id", "order_index"] + "idxfields": [ + "workflow_id", + "order_index" + ] }, { "name": "idx_hermes_tasks_user", "idxtype": "index", - "idxfields": ["user_id", "workflow_id"] + "idxfields": [ + "user_id", + "workflow_id" + ] }, { "name": "idx_hermes_tasks_depends", "idxtype": "index", - "idxfields": ["depends_on"] + "idxfields": [ + "depends_on" + ] } ], "codes": [] -} +} \ No newline at end of file diff --git a/models/hermes_workflows.json b/models/hermes_workflows.json index 0e489a1..be83685 100644 --- a/models/hermes_workflows.json +++ b/models/hermes_workflows.json @@ -3,7 +3,9 @@ { "name": "hermes_workflows", "title": "Workflow definitions with user isolation", - "primary": "id", + "primary": [ + "id" + ], "catelog": "entity" } ], @@ -100,13 +102,19 @@ { "name": "idx_hermes_workflows_user", "idxtype": "index", - "idxfields": ["user_id", "created_at"] + "idxfields": [ + "user_id", + "created_at" + ] }, { "name": "idx_hermes_workflows_status", "idxtype": "index", - "idxfields": ["user_id", "status"] + "idxfields": [ + "user_id", + "status" + ] } ], "codes": [] -} +} \ No newline at end of file diff --git a/models/task_dependencies.json b/models/task_dependencies.json index ca7e728..041631c 100644 --- a/models/task_dependencies.json +++ b/models/task_dependencies.json @@ -3,7 +3,9 @@ { "name": "task_dependencies", "title": "Task dependency relationships within workflows", - "primary": "id", + "primary": [ + "id" + ], "catelog": "relation" } ], @@ -76,23 +78,32 @@ { "name": "idx_task_dep_workflow", "idxtype": "index", - "idxfields": ["workflow_id"] + "idxfields": [ + "workflow_id" + ] }, { "name": "idx_task_dep_dependent", "idxtype": "index", - "idxfields": ["dependent_task_id"] + "idxfields": [ + "dependent_task_id" + ] }, { "name": "idx_task_dep_dependency", "idxtype": "index", - "idxfields": ["dependency_task_id"] + "idxfields": [ + "dependency_task_id" + ] }, { "name": "idx_task_dep_unique", "idxtype": "unique", - "idxfields": ["dependent_task_id", "dependency_task_id"] + "idxfields": [ + "dependent_task_id", + "dependency_task_id" + ] } ], "codes": [] -} +} \ No newline at end of file