Files
blackbird/aibox/subsystems/__init__.py
T
qing 85133868f3 refactor(aibox): 抽离ConversationHistory至subsystems(Wave2阶段1)
- 新增 subsystems/conversation_history.py: 迁移对话历史管理器(318行),MemoryDatabase用TYPE_CHECKING注解避免循环导入
- subsystems/__init__.py: 导出ConversationHistory,更新docstring含Wave2
- aibox.py: 移除ConversationHistory类定义(3706->3388行),仅保留import与类型注解
- 新增 tests/test_conversation_history.py: 41项单测,覆盖构造/当前对话/归档/历史加载/memory_db集成
- 测试基线: 171->212项全过(12.13s),无回归
2026-08-13 16:54:32 +08:00

35 lines
1.1 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
"""
subsystems - aibox 子系统模块(包)
抽离自 aibox.py 的基础设施子系统,按职责分文件。
当前包含(Wave 1):
- executors.py : CommandExecutor + SubprocessCommandExecutor
- prompt_manager.py : PromptManager(单例)
- db.py : MemoryDatabase + MemoDatabase
- skill_manager.py : SkillManager
Wave 2:
- conversation_history.py : ConversationHistory(对话历史管理)
依赖方向:common <- subsystems <- aibox
不反向依赖 aibox 任何符号。
采用"重导出"策略:外部统一用 `from subsystems import MemoryDatabase`,
调用点无需关心具体子模块所在文件。
"""
from .executors import CommandExecutor, SubprocessCommandExecutor
from .prompt_manager import PromptManager
from .db import MemoryDatabase, MemoDatabase
from .skill_manager import SkillManager
from .conversation_history import ConversationHistory
__all__ = [
"CommandExecutor",
"SubprocessCommandExecutor",
"PromptManager",
"MemoryDatabase",
"MemoDatabase",
"SkillManager",
"ConversationHistory",
]