尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Temps 插件系统开发指南:基于 Plugin SDK 编写自定义外部插件的完整教程
【免费下载链接】tempsAI-native open-source alternative to Vercel Sentry PostHog Pingdom Resend E2B. 440 CLI operations with drop-in skills for Claude Code, Codex OpenCode — deployments, analytics, session replay, error tracking, OpenTelemetry, email, sandboxes AI gateway in one self-hosted Rust binary.项目地址https://gitcode.com/gh_mirrors/temp/temps点击查看免费下载Temps 是一个 AI-native 的开源自托管平台用单个 Rust 二进制文件集成部署、分析、错误追踪、会话回放、邮件与 AI 网关等能力。本文是面向新手的 Temps 插件开发教程你将基于官方 Plugin SDK从零编写、本地调试并安装一个自己的自定义外部插件。为什么需要 Temps 插件Temps 控制台已内置仪表盘、分析、监控等模块但业务千差万别——你可能想在每次部署成功后自动跑性能审计、自动提交搜索引擎索引或把部署事件接入内部工单系统。插件系统正是为此设计每个外部插件是一个独立二进制进程由 Temps 主进程扫描、拉起并管理生命周期你只需关注自己的业务逻辑。插件系统架构Temps 如何加载一个外部插件Temps 主进程会扫描~/.temps/plugins/目录为每个插件完成五步工作拉起子进程启动插件二进制通过一次性管道下发握手密钥读取 JSON 清单从标准输出读取插件 manifest名称、版本、导航、事件订阅等建立数据通道向插件的/_temps/channel打开 WebSocket 双向通道代理 API 路由把/api/x/{插件名}/*的请求转发到插件的 Unix socket挂载插件 UI解压插件内嵌的 UI 资源并注册控制台侧边栏导航。这套握手与权限契约的完整设计见 external-plugin-sdk-boundary.mdRust 侧 SDK 的入口在 lib.rs。两条开发路线TypeScript 或 Rust路线SDK 位置适合场景TypeScript Bun官方推荐sdks/node/packages/plugin-sdk/新插件首选可走源码仓库分发流程Rust 原生crates/temps-plugin-sdk/追求性能、与平台深度集成TypeScript 路线围绕两个核心 APIrunPlugin定义插件、createManifest构建清单见 index.ts。Rust 路线只需实现ExternalPlugintrait提供清单 axum 路由再用一行temps_plugin_sdk::main!宏接管整个进程生命周期。第一步创建插件项目脚手架一条命令即可生成可独立构建的 TypeScript 插件项目bunx --bun temps-sdk/cli plugin init my-plugin --name your-scope/my-plugin生成后请检查并替换占位的作者、版本与描述并务必提交 lockfile。完整的脚手架与运行时约定见官方技能文档 SKILL.md。第二步声明插件清单manifestmanifest 是插件与 Temps 之间的握手契约TypeScript 示例runPlugin({ manifest: () createManifest(my-plugin, 0.1.0) .displayName(My Plugin) .requestPermissions(events_read) .addNav(My Plugin, puzzle, /my-plugin) .build(), // handler / onEvent ... });清单关键字段定义见 manifest.rsname/version插件唯一标识与语义化版本nav侧边栏入口图标、路由路径、排序events订阅的平台事件如deployment.succeeded权限声明插件只是申请权限管理员安装时才真正授予。第三步用本地插件模拟器调试Temps CLI 内置了无需真实 Temps 服务、数据库或 Docker 的本地模拟器实现位于 apps/temps-cli/src/commands/plugin/dev/# 启动插件前台运行输出 loopback 预览地址 bunx --bun temps-sdk/cli plugin dev ./dist/my-plugin --session dev --grant events_read # 另一个终端发送真实的部署事件 bunx --bun temps-sdk/cli plugin dev emit deployment.succeeded --session dev --url https://example.com # 查看状态 / 撤销授权 bunx --bun temps-sdk/cli plugin dev status --session dev --json bunx --bun temps-sdk/cli plugin dev grants set --session dev --clear模拟器提供模拟的主机 API、Mock AI 与确定性事件 fixture让你在没有服务器的情况下验证 UI、事件回调和权限撤销逻辑。设计细节见 plugin-dev-runner-plan.md。第四步响应部署事件与调用 AITemps 通过 WebSocket 通道把平台事件推送给订阅了事件的插件。典型的部署后自动化模式在清单中订阅deployment.succeeded收到事件后只做入队不要阻塞事件通道做长任务在分配的ctx.dataDir下持久化工作记录推荐 SQLite保证重启后可恢复。需要 AI 能力时一律走 Temps 主机的代理通道SDK 中的PluginAiClientProvider 凭据不会暴露给插件配额、并发与超时由平台统一管理。第五步安装到 Temps 控制台并分发在真实实例上可通过控制台 Plugins 页或 CLI 从公开源码仓库安装bunx --bun temps-sdk/cli plugin install 仓库地址 --ref commit-sha --grant events_read几个必须知道的要点主机安装器会在干净检出上离线编译不会执行你的 build 脚本因此 UI 构建产物必须随仓库提交--ref可指定分支、标签或 commit每次操作都会记录解析到的 commit想让插件进入公共插件目录需向插件目录仓库提交一条注册记录流程见 publishing.md。实战参考Lighthouse 性能审计插件仓库自带一个完整的 Rust 示例插件部署成功后自动运行 Lighthouse 审计跟踪 LCP、FCP、TBT、CLS 等核心指标并支持分数回归告警。它演示了插件系统的完整能力面事件订阅deployment.succeeded/deployment.ready、React 控制台 UI 内嵌、SQLite 持久化与 OpenAPI 文档生成。入口代码见 main.rs前端在 web/。仓库中还有 Google 索引、IndexNow 推送等示例插件可作参考。新手常见误区清单❌往 stdout 打日志stdout 是协议通道诊断信息一律走 stderr❌自授权限manifest 声明 ≠ 已授予每次调用前查询运行时权限❌把数据写进主机数据库插件数据应存放在分配的dataDir❌认为插件是沙箱外部插件以主机 OS 账户运行manifest 权限保护的是平台 API 而非文件系统❌收到事件就宣称任务完成事件送达只代表交付成功任务完成需要业务侧确认。关键资料速查资料路径Rust 插件 SDKcrates/temps-plugin-sdk/TypeScript 插件 SDKsdks/node/packages/plugin-sdk/主机侧插件运行时crates/temps-external-plugins/清单契约定义crates/temps-core/src/external_plugin/manifest.rs权限边界设计docs/design/external-plugin-sdk-boundary.md本地模拟器设计docs/design/plugin-dev-runner-plan.md官方插件开发技能文档skills/temps-plugin/赞分享【免费下载链接】tempsAI-native open-source alternative to Vercel Sentry PostHog Pingdom Resend E2B. 440 CLI operations with drop-in skills for Claude Code, Codex OpenCode — deployments, analytics, session replay, error tracking, OpenTelemetry, email, sandboxes AI gateway in one self-hosted Rust binary.项目地址https://gitcode.com/gh_mirrors/temp/temps点击查看免费下载相关推荐重新定义你的宝可梦冒险Universal Pokemon Randomizer ZX深度探索重新定义你的宝可梦冒险Universal Pokemon Randomizer ZX深度探索 你是否曾想过那些熟悉的宝可梦游戏能否带来全新的体验Unive开发工具RxDB 插件开发指南从零编写自定义插件的完整实践RxDB 插件开发指南从零编写自定义插件的完整实践 导读 RxDB 是一个运行在所有 JavaScript 运行时上的 local first 数据库其强大数据库NoSQL嵌入式数据库实时数据库Alacritty插件开发编写自定义功能的完整指南Alacritty插件开发编写自定义功能的完整指南 Alacritty作为一款基于OpenGL的现代终端模拟器以其卓越的性能和跨平台特性赢得了众多开发者的青桌面应用上一篇ONNX Runtime Web WebNN EP 算子支持指南覆盖清单、版本区间与底层实现解析下一篇使用 VictoriaLogs 采集 OpenShift 集群日志从部署、RBAC 到 ClusterLogForwarder 的完整实战指南创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

lucide-react 怎么装、怎么改:React 图标库从安装到迁移的完整指南

lucide-react 怎么装、怎么改:React 图标库从安装到迁移的完整指南

lucide-react 怎么装、怎么改:React 图标库从安装到迁移的完整指南 【免费下载链接】lucide Beautiful & consistent icon toolkit made by the community. Open-source project and a fork of Feather Icons. 项目地址: https://gitcode.com/GitHub_Trending…

📅 2026/10/26 1:39:07
ClipCap中文Caption端到端实现:从Prefix映射到Flickr30k训练

ClipCap中文Caption端到端实现:从Prefix映射到Flickr30k训练

简介:本资源是面向人工智能方向学习者与课程设计者的Python实践项目,完整复现了ClipCap论文提出的图像描述生成模型,解决跨模态对齐这一核心挑战,适用于计算机视觉与自然语言处理交叉领域的入门到进阶学习。压缩包共54个文件&…

📅 2026/10/26 1:39:07
goshs:红队与开发者的全能文件服务器

goshs:红队与开发者的全能文件服务器

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📅 2026/10/26 1:39:07
MORE NEWS

更多资讯

📰

高效打卡系统:从行为心理学到数字化实践

1. 项目概述2026年1月20日打卡这个看似简单的标题,实际上蕴含着现代人对于时间管理、习惯养成和自我监督的深层需求。作为一个长期坚持每日打卡的实践者,我发现打卡行为已经从最初的工作考勤工具,演变成了一种生活方式和自我提升的有效手段。…

📰

ImageNet-1k数据集下载与处理全流程指南

1. ILSVRC2012与ImageNet-1k数据集背景解析ImageNet-1k(又称ILSVRC2012)是计算机视觉领域最具影响力的基准数据集之一,源于2009年启动的ImageNet项目。这个数据集包含1000个物体类别,训练集有128万张图像,验证集5万张&…

📰

SPARK测评平台:智能化人才评估与团队诊断解决方案

1. 专业测评服务的行业痛点与破局思路测评服务行业正面临前所未有的转型压力。传统测评模式存在三个致命缺陷:测评工具陈旧导致效率低下,数据分析方法单一难以挖掘深层价值,服务交付形式僵化无法满足个性化需求。这些问题直接影响了测评结果的…

📰

Linux内核模块开发指南:从原理到实践

1. Linux内核模块概述在Linux系统开发领域,内核模块(Loadable Kernel Module, LKM)是扩展操作系统核心功能的关键机制。作为在Linux内核空间运行的可加载代码单元,它允许我们在不重新编译整个内核的情况下动态添加或移除功能。这种…

📰

C++17推导指引与std::to_array实现解析

1. 理解C17中的推导指引机制在C17标准中,推导指引(Deduction Guides)是一项重要的语言特性改进,它允许我们为类模板提供额外的模板参数推导规则。这项特性的引入,从根本上解决了C模板类型推导在某些场景下的局限性。推…

📰

JavaFX Ensemble实战:控件示例、模块启动与调优避坑

简介:JavaFX Ensemble 是 Oracle 官方随 JDK 演示包一同发布的示例程序完整工程,面向刚接触 JavaFX 的开发者,以及需要快速查阅控件用法的界面编写者,可解决控件如何配置、样式如何定制、动画与媒体效果如何实现等具体疑问。整包共…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬