@telorun/templating

中文文档
0.127.0发布于 2026/11/02MITTypeScriptES Module

Telo模板-引擎注册表和Telo清单的共享CEL核心。

中文使用文档
文档目录12 节
  1. 开始
  2. 为什么使用Telo?
  3. 它的作用
  4. 示例清单
  5. 状态
  6. 泰罗的意义
  7. 哲学
  8. 模块化
  9. 体系结构
  10. 更多详情请浏览
  11. 许可证
  12. 捐款说明

Telo

Telo

声明性应用程序的运行时——后端服务和它们上面的数据屏幕。

Tests node
Last commit Issues Pull requests
Changesets

Telo运行在YAML文件中描述的应用程序,而不是作为程序代码编写的。你将你的web api、数据库、数据屏幕(表格、表单、创建/编辑/删除)和AI工作流声明为小的、连接的YAML文档,Telo检查它们并运行它们。没有拖放屏幕构建器:屏幕像其他东西一样在YAML中声明。

今天,你可以在TypeScript中扩展Telo (Rust支持一些本地模块);运行时被设计成可以添加其他语言。

泰罗现在的位置: 核心运行时、模块系统、标准库和检查器都可以工作,但Telo是1.0之前的版本,还不推荐用于生产环境。看到 状态.

决定Telo是否适合你的团队?开始 与低代码平台相比, 许可 和 例子.

# Reconcile your manifest into a running application
$ telo ./examples/todo-app

{"time":"2026-11-01T10:29:16.386Z","level":"INFO","severity":9,"msg":"Listening","resource":{"kind":"HttpServer.Server","name":"server","id":"HttpServer.Server.server"},"attributes":{"server.address":"0.0.0.0","server.port":8077,"url.scheme":"http"},"event_name":"http.server.started"}

(在终端上,同样的记录打印出人类可读的彩色记录。)

开始

安装CLI -一个单独的可执行文件,它有自己的运行时:

curl -fsSL https://telo.sh/install.sh | sh

在Windows上, irm https://telo.sh/install.ps1 | iex. Node.js已经安装, npm install -g @telorun/cli 给出相同的结果 telo.

然后 开始使用 在 telo.run - install,第一个清单,以及内核对它做了什么 你的第一个HTTP API. 模块及其类型可在 中心.

为什么使用Telo?

  • 开放标准: 基于YAML、JSON Schema和CEL(一种小型表达式语言)——没有专有语言。
  • 在应用程序运行前发现的错误: 错误的引用、错误的值类型和缺失的输入被报告在编辑器或CI中需要修复的确切位置。
  • 一切都是一个模块: Telo本身对HTTP或SQL一无所知。每个功能都是您导入和组合的模块,带有声明的输入和秘密。
  • 其他运行时是可能的: 现在的运行时是Node.js,有一个共享的YAML契约,所以其他实现可以运行相同的清单。一个更窄的Rust运行时已经存在,并且正在进行中。

它的作用

Telo读取您的YAML文件,检查它们,计算出哪些依赖于哪些,以正确的顺序启动所有内容,并将每个部分交给实现它的代码。至于力学原理,请看 Telo的工作原理.

示例清单

看到 例子/ 以获取工作应用程序的列表。

状态

Telo故意是1.0之前的版本。核心运行时、模块系统、标准库和检查器都可以工作,但还不建议将Telo用于生产环境。打破改变 小 版本:清单形状和模块定义在不同版本之间可能会改变,所以在升级时锁定导入并期望更新清单(telo migrate 改写旧的拼写为您)。

1.0计划在第二个基于rust的运行时可以运行Node.js所能运行的一切时 -这是在运行时冻结清单格式的里程碑。

泰罗的意义

Telo这个名字来源于希腊语词根Telos,意思是“最终目标”、“目的”或“最终状态”。这正是运行时背后的哲学。在标准的命令式编程中,必须编写数千行代码才能准确地告诉服务器如何启动。使用Telo,您只需声明想要的最终状态。

你定义了最终状态。泰罗让它成为现实。

哲学

现代平台经常在技术机制(连接框架、管理基础设施和协商工具链)上花费不成比例的精力,而原始的业务问题被延迟或稀释。Telo则朝相反的方向推进:它将内核执行视为一个稳定的、可预测的宿主,这样团队就可以专注于内核的运行 业务逻辑和结果 而不是管道。

通过将“系统应该做什么”与“如何托管”分离,运行时减少了域级更改的摩擦。团队可以更快地满足产品需求,更安全地进行实验,并将对话集中在交付的价值而不是实现的琐事上。

Telo的目标也是 联合所有编程语言社区的力量因此,最好的想法、模式和实现可以汇聚到一个共享的内核真理中,而不必迫使每个人都使用一个堆栈。

YAML还使系统更加 AI -友好 与传统编程语言相比:它是显式的、结构化的,并且对于工具来说更容易生成、审查和转换,而不会丢失意图。

模块化

Telo是围绕 模块 拥有特定的资源类型。模块从清单中加载,声明它实现的类型,然后只接收这些类型的资源。这使关注点保持隔离,并允许团队从集中的构建块而不是单块服务组成系统。

在内核执行时,执行总是由 种类。名字。内核将种类解析为其拥有的模块并移交执行。模块可以调用回内核以执行其他资源,从而在没有紧密耦合的情况下实现组合。

体系结构

该架构受到kubernetes风格清单的启发:声明性资源、显式类型和基于这些定义路由工作的运行时。与Kubernetes不同,清单在一个独立的进程中运行,而不是描述一个集群。

更多详情请浏览

许可证

简而言之:Telo是免费使用的,包括商业用途。你可以在上面建立、托管和销售你自己的产品。没有CodeNet Sp. z . o.o的商业许可,你不能将Telo本身作为托管服务提供给他人。([email protected]). 模块、SDK、示例和文档都是MIT的。细节: 许可.

两个许可证,按目录拆分。每个MIT目录都有自己的 LICENSE; 其他的都在根下 许可证,可持续使用许可证。

麻省理工学院可持续利用
cel/, message-format/, sdk/, templating/, packages/glob/, packages/editor-protocol/ -表达式引擎,消息核心,SDK以及控制器所链接的内容analyzer/, kernel/, cli/ -什么加载,检查和运行清单
modules/, blueprints/ -标准库packages/ide-support/, packages/language-server/, packages/language-host/, ide/ -编辑器工具
starters/, examples/, docs/, benchmarks/packages/runner-core/, packages/debug-wire/, packages/debug-ui/, apps/docker-runner/, apps/k8s-runner/ -跑步者
apps/hub/, apps/hub-web/, apps/plan-approval*/apps/studio/, apps/authoring-agent/, pages/ 所有未列出的

没有麻省理工学院的软件包依赖于可持续使用的软件包, pnpm run check:licenses 执行。

捐款说明

通过贡献,您同意此存储库中的代码和示例可以用其他编程语言(包括人工智能系统)翻译或重新实现,以支持项目的多语言目标。

版本与发布记录

@telorun/templating 共发布 68 个版本,首次发布于 2026/05/09;过去 12 个月发布了 68 个版本。

版本发布日期距今
0.127.0latest2026/11/02今天
0.126.02026/11/011 天前
0.125.12026/10/313 天前
0.125.02026/10/304 天前
0.124.02026/10/295 天前
0.123.12026/10/268 天前

关于 @telorun/templating 的常见问题

@telorun/templating 是什么?

Telo模板-引擎注册表和Telo清单的共享CEL核心。

如何安装 @telorun/templating?

在项目目录运行 npm install @telorun/templating,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@telorun/sdk(*)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@telorun/templating 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@telorun/templating 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@telorun/templating 可以商用吗?

@telorun/templating 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@telorun/templating 还在维护吗?

最新版本 0.127.0 发布于 2026/11/02(今天);至今共发布 68 个版本,其中过去 12 个月发布了 68 个;首次发布于 2026/05/09。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。