SuperAPI AI 工具集

building-canvases

数据与分析

查看项目

更新于 10-16 03:45

技能介绍

用途:本技能负责 PostHog 自由式画布的选择与创作生命周期。画布是运行在 PostHog 沙箱 iframe 中的客户端浏览器应用,源码存放在 PostHog 而非代码仓库,只能通过 canvas-* 工具读写,不要写入本地文件,发布才等于保存。用户请求看板、文档、表单、可视化或托管在 PostHog 的小应用时即视为画布任务。

目标解析:任务给出 canvas id 时它就是目标;否则用 canvas-list 列出任务所在渠道的画布,若有可复用则在其上继续,没有才用 canvas-create 在同一渠道新建并起简短描述性标题。不要自行遍历渠道选择目标,#me 不是默认位置;未指明画布与渠道时先询问。

实现方式:按需加载配套技能——building-react-quill-canvases(仪表盘、数据看板、表单、工具、类应用状态,负责允许的导入、Quill 组合、主题、图表、加载与错误状态、日期选择器);building-html-canvases(文档、文章、实验、生成式图形、canvas/WebGL,负责语义标记、浏览器 API、动画清理、非 Quill 主题);涉及数据时加载 querying-canvas-data;每个画布都加载 validating-and-publishing-canvases。可混合两种实现方式。

主要能力:画布可包含预置块(数字、目标、趋势、排行榜、漏斗、留存、已保存洞察、实时事件流、SQL 表、过滤器、对比与刷新控件、标注)。通过 editable() 把卡片、图表等作为整体块编辑,并用 params 暴露标题、事件、阈值、颜色等可改值,字段类型包括 text、longtext、number、boolean、select、event(s)、property、insight、color;默认值需与属性默认一致。图片使用公共媒体库 URL,先查后传,origin 需加入 capabilities.network.origins。

运行时:ph.state 提供持久键值记忆(user 私有、shared 团队共享,JSON、约 64KB、每 scope 256 键);ph.actions.invoke 以查看者身份写入 PostHog;ph.connectors.call 用查看者自己的连接读取第三方数据;ph.agent.request 经查看者确认后请求改动。所有调用须在 capabilities 中声明,未声明会被校验拒绝或运行时拒绝。动作须绑定明确用户手势。

迭代与发布:用 canvas-source-retrieve 读取源码并记下 current_version_id。首次发布用 canvas-publish-create 且 expected_current_version_id: null;已上线时用 canvas-edit-create 以 str_replace 增量修改并传当前版本号;替换整个项目才用 publish。用户要求草稿/预览/评审时用 canvas-draft-create。用 canvas-validate-create 反复校验并修复所有 error 级诊断。发布或编辑响应含 build.build_status,否则用 canvas-builds-retrieve 轮询约 2 分钟,失败则读诊断修复重存,不要以失败构建收尾。回复结尾说明画布所在渠道并用工具返回的 url 字段链接(勿自行拼接)。

限制:不要新增 npm 包,裸导入限于平台固定集合,仅可相对导入项目文件;保持平台依赖映射不变。不要用 fetch 或自建 PostHog 客户端取数;不要让参数携带函数或查询结果。媒体 URL 公开无鉴权,禁止上传密钥、凭据、客户数据或敏感截图,图片需小于 4MB 且为受支持格式,禁止把图片字节 base64 塞入工具调用。不要声称 API 不支持的持久化。旧式请求模式仅作提示,以用户实际请求为准。其他细节如具体价格或平台范围暂未提供。