API 文档
Neo-MoFox 为插件开发者提供了一套完整的 API 接口,涵盖消息收发、LLM 调用、数据库操作、事件系统、日志记录等核心功能。
设计理念
所有 API 都采用扁平化设计,函数命名清晰直观,支持关键字参数调用,提供开箱即用的类型提示。
API 模块总览
| 模块 | 说明 |
|---|---|
| Action API | Action 组件查询、Schema 获取与缓存 |
| Adapter API | 适配器查询与状态检查 |
| Agent API | Agent 组件查询与可用工具管理 |
| Chat API | Chatter 组件查询、实例管理与流绑定 |
| Command API | 命令匹配、注册与帮助信息 |
| Config API | 插件配置的加载与重载 |
| Database API | CRUD、查询构建、聚合统计、分页、批量迭代 |
| Event API | 事件发布、处理器注册与临时监听器 |
| LLM API | LLM 请求创建、模型集获取与工具注册 |
| Log API | 日志记录器创建 |
| Media API | 图片/表情识别与信息管理 |
| Message API | 消息查询、计数与可读格式化 |
| Permission API | 用户身份标识生成 |
| Plugin API | 插件加载与查询 |
| Prompt API | 提示词模板注册与系统提醒 |
| Router API | HTTP Router 查询与挂载信息 |
| Send API | 文本、图片、Markdown 发送与广播 |
| Service API | Service 组件查询 |
| Storage API | JSON 存储与 PluginDatabase |
| Stream API | 聊天流缓存管理与上下文操作 |
通用约定
异步调用
所有涉及 I/O 操作的 API 都是异步函数,必须使用 await 调用:
python
# ✅ 正确
messages = await get_recent_messages(stream_id=stream_id)
# ❌ 错误:返回 coroutine 对象
messages = get_recent_messages(stream_id=stream_id)类型提示
所有 API 函数都提供完整的类型注解,建议启用类型检查工具(Pylance、mypy)。
错误处理
python
try:
await send_text(stream_id=stream_id, platform=platform, content="Hello")
except Exception as e:
logger.error(f"发送失败: {e}")