PlatformPlugin
第四抽象层:平台感知 + 动作执行 + 能力位掩码 + 全平台覆盖
第四抽象层定位
PlatformPlugin 是 AxonCog 底座的第四个抽象层,解决"节点与宿主平台"的交互问题。 在它之前,底座已有三个抽象层:Transport(节点间通信)、NexusEngine(认知推理)、AxmLoader(模块加载)。
核心设计哲学:trait 只暴露 HV 向量。平台细节(Win32 API、Linux input 子系统、Android JNI、macOS CGEvent) 全部封装在插件内部实现中,核心代码不感知平台差异。 节点运行时通过统一的 poll_event() 获取平台事件(编码为 HV 向量), 通过 execute_action() 执行平台动作(从 HV 向量解码)。
代码位置:axoncog-plugin/src/lib.rs
PluginCaps 能力位掩码
PluginCaps 是 12 位能力位掩码(u16 类型),分为感知能力(bit 0-5)和执行能力(bit 6-11):
| 位 | 常量 | 能力 | 桌面 | 移动 | MCU | IoT |
|---|---|---|---|---|---|---|
| 0 | CAP_SENSE_KEYBOARD | 感知键盘 | Y | - | - | - |
| 1 | CAP_SENSE_MOUSE | 感知鼠标 | Y | - | - | - |
| 2 | CAP_SENSE_TOUCH | 感知触摸 | - | Y | - | - |
| 3 | CAP_SENSE_SCREEN | 感知屏幕 | Y | Y | - | - |
| 4 | CAP_SENSE_SYSTEM | 感知系统状态 | Y | Y | - | Y |
| 5 | CAP_SENSE_SENSOR | 感知设备传感器 | - | Y | Y | - |
| 6 | CAP_ACTUATE_INPUT | 模拟输入 | Y | - | - | - |
| 7 | CAP_ACTUATE_CLIPBOARD | 剪贴板操作 | Y | Y | - | - |
| 8 | CAP_ACTUATE_FILES | 文件操作 | Y | Y | - | Y |
| 9 | CAP_ACTUATE_NOTIFY | 发送通知 | Y | Y | - | - |
| 10 | CAP_ACTUATE_PROCESS | 进程管理 | Y | Y | - | - |
| 11 | CAP_ACTUATE_NETWORK | 网络操作 | Y | Y | - | Y |
事件编码与动作解码
EventEncoder
使用 UPFP PerceptionFrontend 将平台事件编码为 HV 向量。 不同事件类型使用不同模态的投影矩阵,确保编码独立性。
ActionDecoder
通过 HV 相似度匹配将决策引擎输出的 HV 向量解码为具体的平台动作。 与底座决策引擎的 similarity + argmax 方法完全一致。
具身智能连接
PlatformPlugin 的第四抽象层设计,使 AxonCog 能够连接 MCU 具身智能与计算机智能—— MCU 作为"身体节点",计算机作为"大脑节点",通过统一的 HV 向量实现闭环。
MCU 不需要 PlatformPlugin
MCU 不需要 PlatformPlugin——它的传感器和执行器已通过 Transport 后端(I2C/SPI/GPIO)覆盖。 计算机需要 PlatformPlugin——它要与操作系统交互(键盘/鼠标/屏幕/剪贴板等)。 这种"按需启用"的设计通过 feature gate 实现,MCU 编译时不启用 plugin feature,零代码膨胀。