-- ============================================================ -- Muse 后端-04a:核心业务建表 SQL(第一批) -- 更新日期:2026-05-24 -- 目标数据库:MySQL 8.0+ -- 状态:需要与后端-04 Schema 文档对齐,当前为旧实现快照 -- ============================================================ -- -- !! 重要说明 !! -- 本文件当前内容为旧实现快照,尚未与最新的后端-04 Schema 文档对齐。 -- 已知差异包括但不限于: -- 1. Entitlement 模型已改为可变表 + 审计日志(非 append-only ledger) -- 2. MetaSchema 表已迁移至独立 yudao-module-meta 模块(表前缀改为 muse_meta_) -- 3. 知识实体唯一键已加 scope 字段 -- 4. Candidate Decision Envelope 已去掉,简化为候选记录 source_version -- 5. needs_recheck 已从 SourceStatus 枚举中移除 -- 6. source_snapshot 表 DDL 归属已改为 infra 模块 -- 7. API 版本策略已确定为 X-API-Version header 方式 -- 请勿直接执行到 yudao-cloud 目标库,需等后端-04 完全确认后重新生成。 -- -- ============================================================ -- ============================================================ -- 一、Member 模块(Account BC 物理承载)的 Muse 扩展表 -- ============================================================ -- 用户画像/偏好扩展 CREATE TABLE `muse_member_profile` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键', `user_id` BIGINT NOT NULL COMMENT '用户ID,引用 Yudao system_users', `display_name` VARCHAR(100) DEFAULT NULL COMMENT 'Muse 展示名', `avatar_url` VARCHAR(500) DEFAULT NULL COMMENT '头像URL', `bio` VARCHAR(500) DEFAULT NULL COMMENT '个人简介', `writing_preference` JSON DEFAULT NULL COMMENT '创作偏好(JSON)', `notification_preference` JSON DEFAULT NULL COMMENT '通知偏好(JSON)', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', `tenant_id` BIGINT NOT NULL DEFAULT 0 COMMENT '租户ID', PRIMARY KEY (`id`), UNIQUE KEY `uk_user_id` (`user_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Muse 用户画像扩展(member 模块)'; -- 用户权益 CREATE TABLE `muse_member_entitlement` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键', `user_id` BIGINT NOT NULL COMMENT '用户ID', `plan_type` VARCHAR(50) NOT NULL COMMENT '套餐类型:free/basic/pro/enterprise', `plan_started_at` DATETIME DEFAULT NULL COMMENT '套餐开始时间', `plan_expires_at` DATETIME DEFAULT NULL COMMENT '套餐过期时间', `ai_call_quota` INT NOT NULL DEFAULT 0 COMMENT 'AI 调用配额(次/月)', `ai_call_used` INT NOT NULL DEFAULT 0 COMMENT 'AI 调用已用量', `storage_quota_mb` BIGINT NOT NULL DEFAULT 0 COMMENT '存储配额(MB)', `storage_used_mb` BIGINT NOT NULL DEFAULT 0 COMMENT '存储已用量(MB)', -- PLACEHOLDER_SQL_PART2 `kb_count_quota` INT NOT NULL DEFAULT 0 COMMENT '知识库数量配额', `work_count_quota` INT NOT NULL DEFAULT 0 COMMENT '作品数量配额', `export_quota` INT NOT NULL DEFAULT 0 COMMENT '导出配额(次/月)', `features_json` JSON DEFAULT NULL COMMENT '功能开关集合(JSON)', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', `tenant_id` BIGINT NOT NULL DEFAULT 0 COMMENT '租户ID', PRIMARY KEY (`id`), UNIQUE KEY `uk_user_id` (`user_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Muse 用户权益(member 模块)'; -- 用户配额 CREATE TABLE `muse_member_quota` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键', `user_id` BIGINT NOT NULL COMMENT '用户ID', `quota_type` VARCHAR(50) NOT NULL COMMENT '配额类型:ai_call/storage/kb_count/work_count/export', `total_amount` BIGINT NOT NULL DEFAULT 0 COMMENT '总配额', `used_amount` BIGINT NOT NULL DEFAULT 0 COMMENT '已使用量', `reset_cycle` VARCHAR(20) DEFAULT NULL COMMENT '重置周期:monthly/yearly/never', `last_reset_at` DATETIME DEFAULT NULL COMMENT '上次重置时间', `next_reset_at` DATETIME DEFAULT NULL COMMENT '下次重置时间', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', `tenant_id` BIGINT NOT NULL DEFAULT 0 COMMENT '租户ID', PRIMARY KEY (`id`), UNIQUE KEY `uk_user_quota_type` (`user_id`, `quota_type`), KEY `idx_user_id` (`user_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Muse 用户配额(member 模块)'; -- 用量记录 CREATE TABLE `muse_member_usage_record` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键', `user_id` BIGINT NOT NULL COMMENT '用户ID', `usage_type` VARCHAR(50) NOT NULL COMMENT '用量类型:ai_generation/ai_parse/retrieval/export/evaluation', `work_id` BIGINT DEFAULT NULL COMMENT '关联作品ID', `task_id` BIGINT DEFAULT NULL COMMENT '关联任务ID', `token_input` INT DEFAULT 0 COMMENT '输入 token 数', `token_output` INT DEFAULT 0 COMMENT '输出 token 数', `cost_reference` VARCHAR(100) DEFAULT NULL COMMENT '成本参考(非 authority,仅摘要)', `gateway_request_id` VARCHAR(200) DEFAULT NULL COMMENT 'New-API 网关请求ID', -- PLACEHOLDER_SQL_PART3 `correlation_id` VARCHAR(200) DEFAULT NULL COMMENT '关联ID,用于去重和归属', `status` VARCHAR(20) NOT NULL DEFAULT 'completed' COMMENT '状态:completed/failed/compensated', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', `tenant_id` BIGINT NOT NULL DEFAULT 0 COMMENT '租户ID', PRIMARY KEY (`id`), KEY `idx_user_create_time` (`user_id`, `create_time`), KEY `idx_correlation_id` (`correlation_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Muse 用量记录(member 模块)'; -- 安全事件 CREATE TABLE `muse_member_security_event` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键', `user_id` BIGINT NOT NULL COMMENT '用户ID', `event_type` VARCHAR(50) NOT NULL COMMENT '事件类型:login_anomaly/credential_expired/sensitive_export/access_denied_burst/device_change/permission_escalation', `severity` VARCHAR(20) NOT NULL DEFAULT 'info' COMMENT '严重级别:info/warning/critical', `occurred_at` DATETIME NOT NULL COMMENT '事件发生时间', `source_ip` VARCHAR(50) DEFAULT NULL COMMENT '来源IP', `device_info` JSON DEFAULT NULL COMMENT '设备信息(JSON)', `affected_scope` VARCHAR(200) DEFAULT NULL COMMENT '影响范围描述', `description` VARCHAR(500) DEFAULT NULL COMMENT '事件描述', `suggested_actions` JSON DEFAULT NULL COMMENT '建议处理措施(JSON数组)', `acknowledged_at` DATETIME DEFAULT NULL COMMENT '用户确认时间', `acknowledged_action` VARCHAR(50) DEFAULT NULL COMMENT '用户确认动作:acknowledged/password_changed/session_revoked/false_positive', `acknowledge_note` VARCHAR(500) DEFAULT NULL COMMENT '用户确认备注', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', `tenant_id` BIGINT NOT NULL DEFAULT 0 COMMENT '租户ID', PRIMARY KEY (`id`), KEY `idx_user_occurred` (`user_id`, `occurred_at`), KEY `idx_user_severity` (`user_id`, `severity`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Muse 安全事件(member 模块)'; -- New-API 绑定 CREATE TABLE `muse_member_api_binding` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键', `user_id` BIGINT NOT NULL COMMENT '用户ID', `gateway_user_ref` VARCHAR(200) NOT NULL COMMENT 'New-API 网关用户引用(不存明文 token)', `binding_status` VARCHAR(20) NOT NULL DEFAULT 'active' COMMENT '绑定状态:active/expired/revoked/recheck_needed', -- PLACEHOLDER_SQL_PART4 `last_recheck_at` DATETIME DEFAULT NULL COMMENT '上次重验时间', `correlation_id` VARCHAR(200) DEFAULT NULL COMMENT '关联ID', `idempotency_key` VARCHAR(200) DEFAULT NULL COMMENT '幂等键', `failure_code` VARCHAR(50) DEFAULT NULL COMMENT '失败错误码', `failure_message` VARCHAR(500) DEFAULT NULL COMMENT '失败原因', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', `tenant_id` BIGINT NOT NULL DEFAULT 0 COMMENT '租户ID', PRIMARY KEY (`id`), UNIQUE KEY `uk_user_id` (`user_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Muse New-API 绑定(member 模块)'; -- ============================================================ -- 二、Content 模块核心表 -- ============================================================ -- 作品 CREATE TABLE `muse_content_work` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键', `owner_user_id` BIGINT NOT NULL COMMENT '所属用户ID', `title` VARCHAR(200) NOT NULL COMMENT '作品标题', `genre` VARCHAR(50) DEFAULT NULL COMMENT '作品类型/体裁', `summary` TEXT DEFAULT NULL COMMENT '作品简介', `status` VARCHAR(20) NOT NULL DEFAULT 'writing' COMMENT '状态:writing/completed/archived', `work_schema_id` BIGINT DEFAULT NULL COMMENT '关联 MetaSchema ID', `import_status` VARCHAR(20) DEFAULT NULL COMMENT '导入摘要状态', `parse_status` VARCHAR(20) DEFAULT NULL COMMENT '全书解析摘要状态', `word_count` INT NOT NULL DEFAULT 0 COMMENT '总字数(读模型)', `chapter_count` INT NOT NULL DEFAULT 0 COMMENT '章节数(读模型)', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', `tenant_id` BIGINT NOT NULL DEFAULT 0 COMMENT '租户ID', PRIMARY KEY (`id`), KEY `idx_owner_update` (`owner_user_id`, `update_time`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Muse 作品(content 模块)'; -- 章节 CREATE TABLE `muse_content_chapter` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键', `work_id` BIGINT NOT NULL COMMENT '所属作品ID', `title` VARCHAR(200) NOT NULL COMMENT '章节标题', `order_no` INT NOT NULL COMMENT '章节排序', -- PLACEHOLDER_SQL_PART5 `status` VARCHAR(20) NOT NULL DEFAULT 'draft' COMMENT '状态:draft/writing/completed/archived', `goal_snapshot` JSON DEFAULT NULL COMMENT '已确认规划摘要', `outline_snapshot` JSON DEFAULT NULL COMMENT '大纲摘要', `parse_review_status` VARCHAR(20) DEFAULT NULL COMMENT '全书解析章节审阅状态', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', `tenant_id` BIGINT NOT NULL DEFAULT 0 COMMENT '租户ID', PRIMARY KEY (`id`), UNIQUE KEY `uk_work_order` (`work_id`, `order_no`), KEY `idx_work_id` (`work_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Muse 章节(content 模块)'; -- 正文块 CREATE TABLE `muse_content_block` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键', `work_id` BIGINT NOT NULL COMMENT '所属作品ID', `chapter_id` BIGINT NOT NULL COMMENT '所属章节ID', `order_no` INT NOT NULL COMMENT '章节内排序', `content_doc` JSON DEFAULT NULL COMMENT '富文本结构化内容(JSON)', `revision` INT NOT NULL DEFAULT 1 COMMENT '乐观锁版本,保存正文必须带 expectedRevision', `word_count` INT NOT NULL DEFAULT 0 COMMENT '当前字数', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', `tenant_id` BIGINT NOT NULL DEFAULT 0 COMMENT '租户ID', PRIMARY KEY (`id`), UNIQUE KEY `uk_chapter_order` (`chapter_id`, `order_no`), KEY `idx_work_id` (`work_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Muse 正文块(content 模块)'; -- 叙事运行态 CREATE TABLE `muse_content_narrative_state` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键', `work_id` BIGINT NOT NULL COMMENT '所属作品ID', `chapter_id` BIGINT DEFAULT NULL COMMENT '章节ID(章节维度时填写)', `entity_id` BIGINT DEFAULT NULL COMMENT '实体ID(实体维度时填写)', `scope` VARCHAR(20) NOT NULL COMMENT '维度:work/chapter/entity', `state_payload` JSON NOT NULL COMMENT '叙事运行态数据(JSON)', `revision` INT NOT NULL DEFAULT 1 COMMENT '版本', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', `tenant_id` BIGINT NOT NULL DEFAULT 0 COMMENT '租户ID', PRIMARY KEY (`id`), KEY `idx_work_scope` (`work_id`, `scope`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Muse 叙事运行态(content 模块)'; -- ============================================================ -- 三、AI 模块核心表 -- ============================================================ -- PLACEHOLDER_SQL_PART6 -- AI 任务 CREATE TABLE `muse_ai_task` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键', `work_id` BIGINT DEFAULT NULL COMMENT '关联作品ID', `chapter_id` BIGINT DEFAULT NULL COMMENT '关联章节ID', `actor_user_id` BIGINT NOT NULL COMMENT '发起用户ID', `task_type` VARCHAR(50) NOT NULL COMMENT '任务类型:generation/continuation/expansion/polish/detection/planning/parse/evaluation', `agent_version_id` BIGINT DEFAULT NULL COMMENT '使用的 Agent 版本ID', `runtime_envelope_id` BIGINT DEFAULT NULL COMMENT '运行时权限包ID', `status` VARCHAR(20) NOT NULL DEFAULT 'queued' COMMENT '状态:queued/running/completed/failed/canceled', `idempotency_key` VARCHAR(200) NOT NULL COMMENT '幂等键', `input_snapshot` JSON DEFAULT NULL COMMENT '输入上下文摘要(不含敏感全文)', `output_summary` JSON DEFAULT NULL COMMENT '输出摘要', `error_code` VARCHAR(50) DEFAULT NULL COMMENT '失败错误码', `error_message` VARCHAR(500) DEFAULT NULL COMMENT '失败原因', `retry_count` INT NOT NULL DEFAULT 0 COMMENT '重试次数', `started_at` DATETIME DEFAULT NULL COMMENT '开始执行时间', `finished_at` DATETIME DEFAULT NULL COMMENT '完成时间', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', `tenant_id` BIGINT NOT NULL DEFAULT 0 COMMENT '租户ID', PRIMARY KEY (`id`), UNIQUE KEY `uk_idempotency_key` (`idempotency_key`), KEY `idx_work_status` (`work_id`, `status`, `update_time`), KEY `idx_actor_status` (`actor_user_id`, `task_type`, `status`, `update_time`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Muse AI 任务(ai 模块)'; -- AI 候选 CREATE TABLE `muse_ai_candidate` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键', `work_id` BIGINT NOT NULL COMMENT '关联作品ID', `chapter_id` BIGINT DEFAULT NULL COMMENT '关联章节ID', `block_id` BIGINT DEFAULT NULL COMMENT '目标 Block ID', `task_id` BIGINT NOT NULL COMMENT '来源任务ID', `candidate_type` VARCHAR(50) NOT NULL COMMENT '候选类型:suggestion/planning_candidate', `content_snapshot` JSON DEFAULT NULL COMMENT '候选内容快照', `status` VARCHAR(20) NOT NULL DEFAULT 'pending' COMMENT '状态:pending/accepted/rejected/expired/invalidated', `quality_result_id` BIGINT DEFAULT NULL COMMENT '质量门控结果ID', `source_snapshot_id` BIGINT DEFAULT NULL COMMENT '来源快照ID', `authorization_snapshot_id` BIGINT DEFAULT NULL COMMENT '授权快照ID', -- PLACEHOLDER_SQL_PART7 `source_status` VARCHAR(30) DEFAULT NULL COMMENT '来源状态', `decision_archive_id` BIGINT DEFAULT NULL COMMENT '决策归档ID', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', `tenant_id` BIGINT NOT NULL DEFAULT 0 COMMENT '租户ID', PRIMARY KEY (`id`), KEY `idx_work_status` (`work_id`, `status`, `create_time`), KEY `idx_task_id` (`task_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Muse AI 候选(ai 模块)'; -- AI Agent CREATE TABLE `muse_ai_agent` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键', `agent_key` VARCHAR(100) NOT NULL COMMENT '智能体稳定业务键', `agent_name` VARCHAR(200) NOT NULL COMMENT '智能体名称', `agent_type` VARCHAR(20) NOT NULL COMMENT '类型:system/user/market_installed', `owner_user_id` BIGINT DEFAULT NULL COMMENT '所属用户(user 类型时填写)', `description` VARCHAR(500) DEFAULT NULL COMMENT '描述', `status` VARCHAR(20) NOT NULL DEFAULT 'active' COMMENT '状态:active/disabled/archived', `current_version_id` BIGINT DEFAULT NULL COMMENT '当前激活版本ID', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', `tenant_id` BIGINT NOT NULL DEFAULT 0 COMMENT '租户ID', PRIMARY KEY (`id`), UNIQUE KEY `uk_agent_key` (`agent_key`), KEY `idx_type_status` (`agent_type`, `status`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Muse 智能体(ai 模块)';