diff --git a/models/hermes_agent.json b/models/hermes_agent.json deleted file mode 100644 index dc35d88..0000000 --- a/models/hermes_agent.json +++ /dev/null @@ -1,166 +0,0 @@ -{ - "hermes_memory": { - "summary": "Enhanced memory storage with intelligent filtering and user isolation", - "fields": { - "id": {"type": "string", "primary_key": true, "description": "Unique memory identifier"}, - "user_id": {"type": "string", "required": true, "description": "User ID for multi-user isolation"}, - "target": {"type": "string", "required": true, "description": "Memory target: 'memory' or 'user'"}, - "content": {"type": "text", "required": true, "description": "Memory content"}, - "priority": {"type": "integer", "default": 50, "description": "Priority score (0-100) for intelligent filtering"}, - "access_count": {"type": "integer", "default": 0, "description": "Number of times this memory has been accessed"}, - "last_accessed": {"type": "datetime", "nullable": true, "description": "Last access timestamp for relevance ranking"}, - "created_at": {"type": "datetime", "required": true, "description": "Creation timestamp"}, - "updated_at": {"type": "datetime", "required": true, "description": "Last update timestamp"} - }, - "indexes": [ - ["user_id", "target"], - ["user_id", "priority", "last_accessed"], - ["user_id", "created_at"] - ], - "codes": {} - }, - "hermes_skills": { - "summary": "User-isolated skills storage with full CRUD operations", - "fields": { - "id": {"type": "string", "primary_key": true, "description": "Unique skill identifier"}, - "user_id": {"type": "string", "required": true, "description": "User ID for multi-user isolation"}, - "name": {"type": "string", "required": true, "description": "Skill name"}, - "description": {"type": "text", "nullable": true, "description": "Skill description"}, - "category": {"type": "string", "nullable": true, "description": "Skill category"}, - "version": {"type": "string", "default": "1.0.0", "description": "Skill version"}, - "content": {"type": "text", "required": true, "description": "Skill content (SKILL.md format)"}, - "created_at": {"type": "datetime", "required": true, "description": "Creation timestamp"}, - "updated_at": {"type": "datetime", "required": true, "description": "Last update timestamp"} - }, - "indexes": [ - ["user_id", "name"], - ["user_id", "category"], - ["user_id", "created_at"] - ], - "codes": {} - }, - "hermes_sessions": { - "summary": "Session metadata with user isolation for conversation history", - "fields": { - "id": {"type": "string", "primary_key": true, "description": "Unique session identifier"}, - "user_id": {"type": "string", "required": true, "description": "User ID for multi-user isolation"}, - "title": {"type": "string", "nullable": true, "description": "Session title"}, - "preview": {"type": "text", "nullable": true, "description": "Session preview text"}, - "tags": {"type": "string", "nullable": true, "description": "Comma-separated session tags"}, - "started_at": {"type": "datetime", "required": true, "description": "Session start timestamp"}, - "ended_at": {"type": "datetime", "nullable": true, "description": "Session end timestamp"}, - "duration_seconds": {"type": "integer", "nullable": true, "description": "Session duration in seconds"} - }, - "indexes": [ - ["user_id", "started_at"], - ["user_id", "title"], - ["user_id", "tags"] - ], - "codes": {} - }, - "hermes_remote_skills": { - "summary": "SSH remote skills configuration with deployment tracking", - "fields": { - "id": {"type": "string", "primary_key": true, "description": "Unique remote skill identifier"}, - "user_id": {"type": "string", "required": true, "description": "User ID for multi-user isolation"}, - "name": {"type": "string", "required": true, "description": "Remote skill name"}, - "host": {"type": "string", "required": true, "description": "SSH host address"}, - "port": {"type": "integer", "default": 22, "description": "SSH port"}, - "username": {"type": "string", "required": true, "description": "SSH username"}, - "remote_path": {"type": "string", "default": "~/.skills", "description": "Remote skills directory path"}, - "auth_method": {"type": "string", "default": "key", "description": "Authentication method: 'key' or 'password'"}, - "ssh_key_path": {"type": "string", "nullable": true, "description": "Path to SSH private key file"}, - "description": {"type": "text", "nullable": true, "description": "Remote skill description"}, - "category": {"type": "string", "nullable": true, "description": "Remote skill category"}, - "version": {"type": "string", "default": "1.0.0", "description": "Remote skill version"}, - "enabled": {"type": "boolean", "default": true, "description": "Whether the remote skill is enabled"}, - "last_deployed": {"type": "datetime", "nullable": true, "description": "Last deployment timestamp"}, - "last_executed": {"type": "datetime", "nullable": true, "description": "Last execution timestamp"}, - "created_at": {"type": "datetime", "required": true, "description": "Creation timestamp"}, - "updated_at": {"type": "datetime", "required": true, "description": "Last update timestamp"} - }, - "indexes": [ - ["user_id", "name"], - ["user_id", "host", "username"], - ["user_id", "enabled"], - ["user_id", "created_at"] - ], - "codes": {} - }, - "hermes_workflows": { - "summary": "Workflow definitions with orchestration parameters", - "fields": { - "id": {"type": "string", "primary_key": true, "description": "Unique workflow identifier"}, - "user_id": {"type": "string", "required": true, "description": "User ID for multi-user isolation"}, - "name": {"type": "string", "required": true, "description": "Workflow name"}, - "description": {"type": "text", "nullable": true, "description": "Workflow description"}, - "workflow_type": {"type": "string", "default": "sequential", "description": "Workflow type: sequential, parallel, or hybrid"}, - "max_concurrent_tasks": {"type": "integer", "default": 3, "description": "Maximum concurrent tasks for parallel workflows"}, - "timeout_seconds": {"type": "integer", "default": 1800, "description": "Workflow timeout in seconds"}, - "retry_count": {"type": "integer", "default": 2, "description": "Default retry count for tasks"}, - "status": {"type": "string", "default": "active", "description": "Workflow status: active, inactive, archived"}, - "created_at": {"type": "datetime", "required": true, "description": "Creation timestamp"}, - "updated_at": {"type": "datetime", "required": true, "description": "Last update timestamp"} - }, - "indexes": [ - ["user_id", "name"], - ["user_id", "workflow_type"], - ["user_id", "status"], - ["user_id", "created_at"] - ], - "codes": {} - }, - "hermes_tasks": { - "summary": "Task definitions with dependencies and execution parameters", - "fields": { - "id": {"type": "string", "primary_key": true, "description": "Unique task identifier"}, - "user_id": {"type": "string", "required": true, "description": "User ID for multi-user isolation"}, - "workflow_id": {"type": "string", "required": true, "description": "Associated workflow ID"}, - "task_name": {"type": "string", "required": true, "description": "Task name"}, - "task_type": {"type": "string", "required": true, "description": "Task type: skill, tool, memory, session_search, custom"}, - "skill_name": {"type": "string", "nullable": true, "description": "Skill name (for skill tasks)"}, - "tool_name": {"type": "string", "nullable": true, "description": "Tool name (for tool tasks)"}, - "parameters_json": {"type": "text", "nullable": true, "description": "JSON-encoded task parameters"}, - "depends_on": {"type": "string", "nullable": true, "description": "ID of task this depends on"}, - "parallel_group": {"type": "string", "nullable": true, "description": "Parallel group identifier for hybrid workflows"}, - "timeout_seconds": {"type": "integer", "default": 300, "description": "Task timeout in seconds"}, - "retry_count": {"type": "integer", "default": 2, "description": "Task-specific retry count"}, - "order_index": {"type": "integer", "default": 0, "description": "Execution order index"}, - "created_at": {"type": "datetime", "required": true, "description": "Creation timestamp"}, - "updated_at": {"type": "datetime", "required": true, "description": "Last update timestamp"} - }, - "indexes": [ - ["user_id", "workflow_id"], - ["user_id", "task_type"], - ["user_id", "parallel_group"], - ["user_id", "order_index"], - ["depends_on"] - ], - "codes": {} - }, - "hermes_executions": { - "summary": "Execution records with status tracking and results", - "fields": { - "id": {"type": "string", "primary_key": true, "description": "Unique execution identifier"}, - "user_id": {"type": "string", "required": true, "description": "User ID for multi-user isolation"}, - "workflow_id": {"type": "string", "required": true, "description": "Associated workflow ID"}, - "task_id": {"type": "string", "nullable": true, "description": "Associated task ID (null for workflow executions)"}, - "execution_status": {"type": "string", "default": "pending", "description": "Execution status: pending, running, completed, failed, cancelled"}, - "start_time": {"type": "datetime", "nullable": true, "description": "Execution start timestamp"}, - "end_time": {"type": "datetime", "nullable": true, "description": "Execution end timestamp"}, - "duration_seconds": {"type": "integer", "nullable": true, "description": "Execution duration in seconds"}, - "result_json": {"type": "text", "nullable": true, "description": "JSON-encoded execution result"}, - "error_message": {"type": "text", "nullable": true, "description": "Error message if execution failed"}, - "retry_count": {"type": "integer", "default": 0, "description": "Number of retries attempted"}, - "created_at": {"type": "datetime", "required": true, "description": "Creation timestamp"}, - "updated_at": {"type": "datetime", "required": true, "description": "Last update timestamp"} - }, - "indexes": [ - ["user_id", "workflow_id"], - ["user_id", "execution_status"], - ["user_id", "start_time"], - ["user_id", "created_at"] - ], - "codes": {} - } -} \ No newline at end of file diff --git a/models/hermes_executions.json b/models/hermes_executions.json deleted file mode 100644 index 46d4086..0000000 --- a/models/hermes_executions.json +++ /dev/null @@ -1,138 +0,0 @@ -{ - "summary": [ - { - "name": "hermes_executions", - "title": "Hermes Agent Executions", - "primary": "id", - "catelog": "entity" - } - ], - "fields": [ - { - "name": "id", - "title": "Execution ID", - "type": "str", - "length": 32, - "nullable": "no", - "comments": "Primary key - UUID format" - }, - { - "name": "user_id", - "title": "User ID", - "type": "str", - "length": 32, - "nullable": "no", - "comments": "Owner user ID for multi-user isolation" - }, - { - "name": "workflow_id", - "title": "Workflow ID", - "type": "str", - "length": 32, - "nullable": "no", - "comments": "Parent workflow ID" - }, - { - "name": "task_id", - "title": "Task ID", - "type": "str", - "length": 32, - "nullable": "no", - "comments": "Executed task ID" - }, - { - "name": "execution_status", - "title": "Execution Status", - "type": "str", - "length": 16, - "nullable": "no", - "default": "pending", - "comments": "Status: pending, running, completed, failed, cancelled" - }, - { - "name": "start_time", - "title": "Start Time", - "type": "timestamp", - "nullable": "yes", - "comments": "Execution start timestamp" - }, - { - "name": "end_time", - "title": "End Time", - "type": "timestamp", - "nullable": "yes", - "comments": "Execution end timestamp" - }, - { - "name": "duration_seconds", - "title": "Duration Seconds", - "type": "long", - "nullable": "yes", - "comments": "Total execution duration in seconds" - }, - { - "name": "result_json", - "title": "Result JSON", - "type": "text", - "nullable": "yes", - "comments": "JSON result of task execution" - }, - { - "name": "error_message", - "title": "Error Message", - "type": "text", - "nullable": "yes", - "comments": "Error message if execution failed" - }, - { - "name": "retry_count", - "title": "Retry Count", - "type": "short", - "length": 2, - "nullable": "no", - "default": "0", - "comments": "Number of retries attempted" - }, - { - "name": "created_at", - "title": "Created At", - "type": "timestamp", - "nullable": "no", - "comments": "Creation timestamp" - }, - { - "name": "updated_at", - "title": "Updated At", - "type": "timestamp", - "nullable": "no", - "comments": "Last update timestamp" - } - ], - "indexes": [ - { - "name": "idx_executions_user_id", - "idxtype": "index", - "idxfields": ["user_id"] - }, - { - "name": "idx_executions_workflow_id", - "idxtype": "index", - "idxfields": ["workflow_id"] - }, - { - "name": "idx_executions_task_id", - "idxtype": "index", - "idxfields": ["task_id"] - }, - { - "name": "idx_executions_status", - "idxtype": "index", - "idxfields": ["execution_status"] - }, - { - "name": "idx_executions_created", - "idxtype": "index", - "idxfields": ["created_at"] - } - ] -} \ No newline at end of file diff --git a/models/hermes_memory.json b/models/hermes_memory.json new file mode 100644 index 0000000..dcd7f7b --- /dev/null +++ b/models/hermes_memory.json @@ -0,0 +1,99 @@ +{ + "summary": [ + { + "name": "hermes_memory", + "title": "Persistent memory storage with user isolation and intelligent filtering", + "primary": "id", + "catelog": "entity" + } + ], + "fields": [ + { + "name": "id", + "title": "Memory ID", + "type": "str", + "length": 32, + "nullable": "no", + "comments": "Unique memory entry identifier" + }, + { + "name": "user_id", + "title": "User ID", + "type": "str", + "length": 32, + "nullable": "no", + "comments": "User who owns this memory entry" + }, + { + "name": "target", + "title": "Memory Target", + "type": "str", + "length": 20, + "nullable": "no", + "comments": "Target: memory or user" + }, + { + "name": "content", + "title": "Memory Content", + "type": "text", + "nullable": "no", + "comments": "Actual memory content" + }, + { + "name": "priority", + "title": "Priority", + "type": "short", + "length": 3, + "nullable": "no", + "default": "50", + "comments": "Memory priority (0-100) for intelligent filtering" + }, + { + "name": "access_count", + "title": "Access Count", + "type": "long", + "nullable": "no", + "default": "0", + "comments": "Usage statistics for optimization" + }, + { + "name": "last_accessed", + "title": "Last Accessed", + "type": "timestamp", + "nullable": "yes", + "comments": "Last access timestamp for relevance ranking" + }, + { + "name": "created_at", + "title": "Created At", + "type": "timestamp", + "nullable": "no", + "comments": "Creation timestamp" + }, + { + "name": "updated_at", + "title": "Updated At", + "type": "timestamp", + "nullable": "no", + "comments": "Last update timestamp" + } + ], + "indexes": [ + { + "name": "idx_hermes_memory_user", + "idxtype": "index", + "idxfields": ["user_id", "priority"] + }, + { + "name": "idx_hermes_memory_target", + "idxtype": "index", + "idxfields": ["target"] + }, + { + "name": "idx_hermes_memory_priority", + "idxtype": "index", + "idxfields": ["priority", "last_accessed"] + } + ], + "codes": [] +} \ No newline at end of file diff --git a/models/hermes_remote_skills.json b/models/hermes_remote_skills.json new file mode 100644 index 0000000..1f4e3c8 --- /dev/null +++ b/models/hermes_remote_skills.json @@ -0,0 +1,123 @@ +{ + "summary": [ + { + "name": "hermes_remote_skills", + "title": "Remote skills SSH configuration with user isolation", + "primary": "id", + "catelog": "entity" + } + ], + "fields": [ + { + "name": "id", + "title": "Remote Skill ID", + "type": "str", + "length": 32, + "nullable": "no", + "comments": "Unique remote skill identifier" + }, + { + "name": "user_id", + "title": "User ID", + "type": "str", + "length": 32, + "nullable": "no", + "comments": "User who owns this remote skill configuration" + }, + { + "name": "host", + "title": "SSH Host", + "type": "str", + "length": 255, + "nullable": "no", + "comments": "SSH server hostname or IP address" + }, + { + "name": "port", + "title": "SSH Port", + "type": "long", + "nullable": "no", + "default": "22", + "comments": "SSH server port" + }, + { + "name": "username", + "title": "Username", + "type": "str", + "length": 100, + "nullable": "no", + "comments": "SSH username" + }, + { + "name": "auth_method", + "title": "Authentication Method", + "type": "str", + "length": 20, + "nullable": "no", + "default": "key", + "comments": "Authentication method: key or password" + }, + { + "name": "ssh_key_path", + "title": "SSH Key Path", + "type": "str", + "length": 255, + "nullable": "yes", + "comments": "Path to SSH private key file (for key auth)" + }, + { + "name": "description", + "title": "Description", + "type": "text", + "nullable": "yes", + "comments": "Description of the remote host" + }, + { + "name": "is_active", + "title": "Is Active", + "type": "short", + "nullable": "no", + "default": "1", + "comments": "Whether configuration is active (1=true, 0=false)" + }, + { + "name": "last_connected", + "title": "Last Connected", + "type": "timestamp", + "nullable": "yes", + "comments": "Last successful connection timestamp" + }, + { + "name": "created_at", + "title": "Created At", + "type": "timestamp", + "nullable": "no", + "comments": "Creation timestamp" + }, + { + "name": "updated_at", + "title": "Updated At", + "type": "timestamp", + "nullable": "no", + "comments": "Last update timestamp" + } + ], + "indexes": [ + { + "name": "idx_hermes_remote_skills_user", + "idxtype": "index", + "idxfields": ["user_id", "host"] + }, + { + "name": "idx_hermes_remote_skills_host", + "idxtype": "unique", + "idxfields": ["user_id", "host", "port", "username"] + }, + { + "name": "idx_hermes_remote_skills_active", + "idxtype": "index", + "idxfields": ["is_active"] + } + ], + "codes": [] +} \ No newline at end of file diff --git a/models/hermes_sessions.json b/models/hermes_sessions.json new file mode 100644 index 0000000..5d02f84 --- /dev/null +++ b/models/hermes_sessions.json @@ -0,0 +1,97 @@ +{ + "summary": [ + { + "name": "hermes_sessions", + "title": "Session metadata with user isolation", + "primary": "id", + "catelog": "entity" + } + ], + "fields": [ + { + "name": "id", + "title": "Session ID", + "type": "str", + "length": 32, + "nullable": "no", + "comments": "Unique session identifier" + }, + { + "name": "user_id", + "title": "User ID", + "type": "str", + "length": 32, + "nullable": "no", + "comments": "User who owns this session" + }, + { + "name": "session_title", + "title": "Session Title", + "type": "str", + "length": 200, + "nullable": "yes", + "comments": "Human-readable session title" + }, + { + "name": "start_time", + "title": "Start Time", + "type": "timestamp", + "nullable": "no", + "comments": "Session start timestamp" + }, + { + "name": "end_time", + "title": "End Time", + "type": "timestamp", + "nullable": "yes", + "comments": "Session end timestamp" + }, + { + "name": "is_active", + "title": "Is Active", + "type": "short", + "nullable": "no", + "default": "1", + "comments": "Whether session is active (1=true, 0=false)" + }, + { + "name": "metadata", + "title": "Metadata", + "type": "text", + "nullable": "yes", + "comments": "JSON metadata about the session" + }, + { + "name": "created_at", + "title": "Created At", + "type": "timestamp", + "nullable": "no", + "comments": "Creation timestamp" + }, + { + "name": "updated_at", + "title": "Updated At", + "type": "timestamp", + "nullable": "no", + "comments": "Last update timestamp" + } + ], + "indexes": [ + { + "name": "idx_hermes_sessions_user", + "idxtype": "index", + "idxfields": ["user_id", "start_time"] + }, + { + "name": "idx_hermes_sessions_active", + "idxtype": "index", + "idxfields": ["user_id", "is_active"] + }, + { + "name": "idx_hermes_sessions_time", + "idxtype": "index", + "idxfields": ["start_time", "end_time"] + } + ], + "codes": [] +} \ No newline at end of file diff --git a/models/hermes_skills.json b/models/hermes_skills.json new file mode 100644 index 0000000..6ebea06 --- /dev/null +++ b/models/hermes_skills.json @@ -0,0 +1,98 @@ +{ + "summary": [ + { + "name": "hermes_skills", + "title": "Skills repository with user isolation", + "primary": "id", + "catelog": "entity" + } + ], + "fields": [ + { + "name": "id", + "title": "Skill ID", + "type": "str", + "length": 32, + "nullable": "no", + "comments": "Unique skill identifier" + }, + { + "name": "user_id", + "title": "User ID", + "type": "str", + "length": 32, + "nullable": "no", + "comments": "User who owns this skill" + }, + { + "name": "name", + "title": "Skill Name", + "type": "str", + "length": 100, + "nullable": "no", + "comments": "Skill name" + }, + { + "name": "description", + "title": "Description", + "type": "text", + "nullable": "yes", + "comments": "Skill description" + }, + { + "name": "content", + "title": "Skill Content", + "type": "text", + "nullable": "no", + "comments": "Full skill content (SKILL.md format)" + }, + { + "name": "category", + "title": "Category", + "type": "str", + "length": 50, + "nullable": "yes", + "comments": "Skill category" + }, + { + "name": "is_active", + "title": "Is Active", + "type": "short", + "nullable": "no", + "default": "1", + "comments": "Whether skill is active (1=true, 0=false)" + }, + { + "name": "created_at", + "title": "Created At", + "type": "timestamp", + "nullable": "no", + "comments": "Creation timestamp" + }, + { + "name": "updated_at", + "title": "Updated At", + "type": "timestamp", + "nullable": "no", + "comments": "Last update timestamp" + } + ], + "indexes": [ + { + "name": "idx_hermes_skills_user", + "idxtype": "index", + "idxfields": ["user_id", "name"] + }, + { + "name": "idx_hermes_skills_name", + "idxtype": "unique", + "idxfields": ["user_id", "name"] + }, + { + "name": "idx_hermes_skills_category", + "idxtype": "index", + "idxfields": ["category"] + } + ], + "codes": [] +} \ No newline at end of file diff --git a/models/hermes_tasks.json b/models/hermes_tasks.json deleted file mode 100644 index b78bc07..0000000 --- a/models/hermes_tasks.json +++ /dev/null @@ -1,153 +0,0 @@ -{ - "summary": [ - { - "name": "hermes_tasks", - "title": "Hermes Agent Tasks", - "primary": "id", - "catelog": "entity" - } - ], - "fields": [ - { - "name": "id", - "title": "Task ID", - "type": "str", - "length": 32, - "nullable": "no", - "comments": "Primary key - UUID format" - }, - { - "name": "user_id", - "title": "User ID", - "type": "str", - "length": 32, - "nullable": "no", - "comments": "Owner user ID for multi-user isolation" - }, - { - "name": "workflow_id", - "title": "Workflow ID", - "type": "str", - "length": 32, - "nullable": "no", - "comments": "Parent workflow ID" - }, - { - "name": "task_name", - "title": "Task Name", - "type": "str", - "length": 128, - "nullable": "no", - "comments": "Human-readable task name" - }, - { - "name": "task_type", - "title": "Task Type", - "type": "str", - "length": 32, - "nullable": "no", - "comments": "Type: skill, tool, memory, session_search, custom" - }, - { - "name": "skill_name", - "title": "Skill Name", - "type": "str", - "length": 64, - "nullable": "yes", - "comments": "Referenced skill name (for skill type tasks)" - }, - { - "name": "tool_name", - "title": "Tool Name", - "type": "str", - "length": 64, - "nullable": "yes", - "comments": "Referenced tool name (for tool type tasks)" - }, - { - "name": "parameters_json", - "title": "Parameters JSON", - "type": "text", - "nullable": "yes", - "comments": "JSON parameters for task execution" - }, - { - "name": "depends_on", - "title": "Depends On", - "type": "str", - "length": 32, - "nullable": "yes", - "comments": "Task ID this task depends on (for sequential workflows)" - }, - { - "name": "parallel_group", - "title": "Parallel Group", - "type": "str", - "length": 32, - "nullable": "yes", - "comments": "Group ID for parallel execution" - }, - { - "name": "timeout_seconds", - "title": "Timeout Seconds", - "type": "long", - "nullable": "no", - "default": "300", - "comments": "Task timeout in seconds" - }, - { - "name": "retry_count", - "title": "Retry Count", - "type": "short", - "length": 2, - "nullable": "no", - "default": "2", - "comments": "Number of retries for failed task" - }, - { - "name": "order_index", - "title": "Order Index", - "type": "short", - "length": 4, - "nullable": "no", - "default": "0", - "comments": "Execution order index" - }, - { - "name": "created_at", - "title": "Created At", - "type": "timestamp", - "nullable": "no", - "comments": "Creation timestamp" - }, - { - "name": "updated_at", - "title": "Updated At", - "type": "timestamp", - "nullable": "no", - "comments": "Last update timestamp" - } - ], - "indexes": [ - { - "name": "idx_tasks_user_id", - "idxtype": "index", - "idxfields": ["user_id"] - }, - { - "name": "idx_tasks_workflow_id", - "idxtype": "index", - "idxfields": ["workflow_id"] - }, - { - "name": "idx_tasks_task_type", - "idxtype": "index", - "idxfields": ["task_type"] - }, - { - "name": "idx_tasks_order", - "idxtype": "index", - "idxfields": ["workflow_id", "order_index"] - } - ] -} \ No newline at end of file diff --git a/models/hermes_workflows.json b/models/hermes_workflows.json deleted file mode 100644 index 9922fb2..0000000 --- a/models/hermes_workflows.json +++ /dev/null @@ -1,118 +0,0 @@ -{ - "summary": [ - { - "name": "hermes_workflows", - "title": "Hermes Agent Workflows", - "primary": "id", - "catelog": "entity" - } - ], - "fields": [ - { - "name": "id", - "title": "Workflow ID", - "type": "str", - "length": 32, - "nullable": "no", - "comments": "Primary key - UUID format" - }, - { - "name": "user_id", - "title": "User ID", - "type": "str", - "length": 32, - "nullable": "no", - "comments": "Owner user ID for multi-user isolation" - }, - { - "name": "name", - "title": "Workflow Name", - "type": "str", - "length": 128, - "nullable": "no", - "comments": "Human-readable workflow name" - }, - { - "name": "description", - "title": "Description", - "type": "text", - "nullable": "yes", - "comments": "Workflow description" - }, - { - "name": "workflow_type", - "title": "Workflow Type", - "type": "str", - "length": 32, - "nullable": "no", - "default": "sequential", - "comments": "Type: sequential, parallel, or hybrid" - }, - { - "name": "max_concurrent_tasks", - "title": "Max Concurrent Tasks", - "type": "short", - "length": 3, - "nullable": "no", - "default": "3", - "comments": "Maximum number of concurrent tasks (1-10)" - }, - { - "name": "timeout_seconds", - "title": "Timeout Seconds", - "type": "long", - "nullable": "no", - "default": "1800", - "comments": "Total workflow timeout in seconds" - }, - { - "name": "retry_count", - "title": "Retry Count", - "type": "short", - "length": 2, - "nullable": "no", - "default": "2", - "comments": "Number of retries for failed tasks" - }, - { - "name": "status", - "title": "Status", - "type": "str", - "length": 16, - "nullable": "no", - "default": "active", - "comments": "Workflow status: active, inactive, archived" - }, - { - "name": "created_at", - "title": "Created At", - "type": "timestamp", - "nullable": "no", - "comments": "Creation timestamp" - }, - { - "name": "updated_at", - "title": "Updated At", - "type": "timestamp", - "nullable": "no", - "comments": "Last update timestamp" - } - ], - "indexes": [ - { - "name": "idx_workflows_user_id", - "idxtype": "index", - "idxfields": ["user_id"] - }, - { - "name": "idx_workflows_status", - "idxtype": "index", - "idxfields": ["status"] - }, - { - "name": "idx_workflows_name", - "idxtype": "index", - "idxfields": ["name"] - } - ] -} \ No newline at end of file