feat:合并memory配置,优化webui交互和展示

This commit is contained in:
SengokuCola
2026-05-06 18:13:14 +08:00
parent 3bdc2a9f70
commit ad5b5889e2
28 changed files with 921 additions and 726 deletions

View File

@@ -27,7 +27,6 @@ from .official_configs import (
LogConfig,
MaimMessageConfig,
MCPConfig,
MemoryConfig,
MessageReceiveConfig,
PersonalityConfig,
PluginRuntimeConfig,
@@ -57,7 +56,7 @@ MODEL_CONFIG_PATH: Path = (CONFIG_DIR / "model_config.toml").resolve().absolute(
LEGACY_ENV_PATH: Path = (PROJECT_ROOT / ".env").resolve().absolute()
A_MEMORIX_LEGACY_CONFIG_PATH: Path = (CONFIG_DIR / "a_memorix.toml").resolve().absolute()
MMC_VERSION: str = "1.0.0-pre.11"
CONFIG_VERSION: str = "8.10.8"
CONFIG_VERSION: str = "8.10.9"
MODEL_CONFIG_VERSION: str = "1.15.3"
logger = get_logger("config")
@@ -84,9 +83,6 @@ class Config(ConfigBase):
expression: ExpressionConfig = Field(default_factory=ExpressionConfig)
"""表达配置类"""
memory: MemoryConfig = Field(default_factory=MemoryConfig)
"""记忆配置类"""
a_memorix: AMemorixConfig = Field(default_factory=AMemorixConfig)
"""A_Memorix 长期记忆子系统配置"""

View File

@@ -392,6 +392,23 @@ def try_migrate_legacy_bot_config_dict(data: dict[str, Any]) -> MigrationResult:
migrated_any = True
reasons.append("visual.visual_style_removed")
memory = _as_dict(data.pop("memory", None))
if memory is not None:
a_memorix = _as_dict(data.get("a_memorix"))
if a_memorix is None:
a_memorix = {}
data["a_memorix"] = a_memorix
integration = _as_dict(a_memorix.get("integration"))
if integration is None:
integration = {}
a_memorix["integration"] = integration
for key, value in memory.items():
integration.setdefault(key, value)
migrated_any = True
reasons.append("memory->a_memorix.integration")
keyword_reaction = _as_dict(data.get("keyword_reaction"))
if keyword_reaction is not None:
if _drop_empty_keyword_rules(keyword_reaction, "keyword_rules"):

View File

@@ -467,8 +467,8 @@ class TargetItem(ConfigBase):
"""聊天流类型group群聊或private私聊"""
class MemoryConfig(ConfigBase):
"""记忆配置"""
class AMemorixIntegrationConfig(ConfigBase):
"""A_Memorix 与 Maisaka 集成配置"""
__ui_parent__ = "a_memorix"
@@ -1038,6 +1038,9 @@ class AMemorixConfig(ConfigBase):
__ui_label__ = "长期记忆"
__ui_icon__ = "brain"
integration: AMemorixIntegrationConfig = Field(default_factory=AMemorixIntegrationConfig)
"""Maisaka 集成配置"""
plugin: AMemorixPluginConfig = Field(default_factory=AMemorixPluginConfig)
"""子系统状态"""