API 参考:总览与入口
本页讲 dsh-manim-card 对外提供什么。数据结构见数据类型,模型侧的调用契约见宿主工具。
两条对外面
插件有三类使用者,接口按使用者分开,互不重叠:
| 使用者 | 接口 | 形态 | 文档 |
|---|---|---|---|
| 宿主里的模型 | manim_card 工具 | Host 工具,入参一段 Python 源码 | 宿主工具 |
| 聊天界面的使用者 | 卡片、设置面板 | 界面,无需编程 | 在聊天里用、设置面板 |
| 本插件与核心包的开发者 | pnpm 脚本、src/ 分层 | 源码 | 开发与调试 |
本插件不对外提供 Cordis 服务
没有 ctx.get('manim-card') 这条面(2026-10-16 起):本插件不 provide 任何服务——没有别的插件需要消费它。
也不导出可供 import 的 JavaScript 模块:插件之间禁止 import 是宿主的约定。要在自己的项目里用一块同样的画布,直接依赖核心包 manim-live——运行时、画布引擎、支持面都在那个包里,它不认宿主、不认哪个插件在用。
运行时与画布(由核心包提供)
本插件的卡片画布来自核心包,几条与使用相关的行为:
- 画布显示尺寸固定 1280×720,不随容器变化;要改显示大小用 CSS 缩放容器。背景全透明,底色由宿主页面透出。
- 同一页面只有一条 Python 执行队列(解释器、WASM 都是页面级单例):卡片按提交顺序串行渲染,一段长时间运行的代码会阻塞后面的渲染。
- 环境状态(浏览器能力 / 运行时 / 公式样式 / 取包进展)由核心包维护;本插件设置面板直接读它,字段见数据类型。
从哪开始
- 模型调用
manim_card的入参与返回 → 宿主工具 - 环境状态等类型的字段 → 数据类型
- 在自己的项目里用画布(脱离宿主) → 核心包 manim-live 文档