它会做什么
- 宣告任何模块的触发、动作和数据节点类型
RegisterTriggerType, (中文(简体) ),RegisterActionType, (中文(简体) ),RegisterDataNodeType联合国Unregister*对口单位. - 在自动化模块附加并重放之前进行排队登记,因此负载顺序不重要.
- 列出可用节点类型
ListTriggerTypes, (中文(简体) ),ListActionTypes财务报告和审定财务报表ListDataNodeTypes。 。 。 . - 从代码开始程序 .
InvokeProcedure从手动触发器开始.RunProcedure从任何触发器开始, 如 快点跑 在建造者做. - 船舶程序作为
DeclareProcedure。自动化模块在稳定的ID下创建程序一次,之后再也不会改变. - 保持您的模块独立于执行,
@antelopejs/dms-automation。 。 。 .
安装
将接口添加到宣布节点的模块中 :
pnpm add @antelopejs/interface-dms-automation
如果您的模块没有自动化功能, 请移动接口到 optionalDependencies。由于未加载执行,注册等待一个附件,您的模块继续工作。 如果您的模块需要自动化运行, 请将接口保留在 dependencies。使用广泛的消费者范围,从您创建的界面发布到 <1.0.0,因此软件包管理器可以将其复制。 实施模块将其自身的依赖性限制在下一个接口次要部分以下.
快开始
注册每个节点 start() 并解除注册 stop()数字 :
import { RegisterActionType, UnregisterActionType } from "@antelopejs/interface-dms-automation";
const NOTIFY_ID = "my-module.notify";
export function start(): void {
RegisterActionType({
id: NOTIFY_ID,
name: "Send notification",
description: "Send a notification to a user",
icon: "i-lucide-bell",
inputSchema: {
type: "object",
properties: { userId: { type: "string" }, message: { type: "string" } },
required: ["userId", "message"],
},
outputSchema: { type: "object", properties: { delivered: { type: "boolean" } } },
async execute(input: { userId: string; message: string }, ctx) {
ctx.log("info", "notifying", input);
return { delivered: true };
},
});
}
export function stop(): void {
UnregisterActionType(NOTIFY_ID);
}
触发器也声明需要 cluster 模式。 A 类 "singleton" 触发,如时间表,只向当选领导人开火。 A 类 "replicated" 触发器,比如网钩, 点燃每一个实例。 命名空间节点ID为 <module>.<node>,并保持平面图案,每个港口有一个地产.
兼容性
兼容块 模块读取器 列出每个接口范围 @antelopejs/dms-automation 释放工具。 界面宣布此对等依赖 :
| 软件包 | 支助 | 测试过 |
|---|---|---|
@antelopejs/interface-core | >=0.2.4 <1.0.0 | 0.4.0 |
InvokeProcedure, (中文(简体) ), RunProcedure, (中文(简体) ), DeclareProcedure 编辑 List*Types 函数排入他们的调用,直到一个执行附加。 由于未装入执行文件,退还的承诺仍未兑现。 默认情况下,每个函数的队列最多为1,000个调用,而下一个调用 ProviderQueueFullError。一个排队的呼叫,其呼叫模块停止拒绝 ModuleContextInvalidatedError 当执行时。 前往可用性处, 请检查 GetInterfaceInstances("@antelopejs/interface-dms-automation") 从 @antelopejs/interface-core。 。 。 .
文档
包裹还装了 dms-automation-interface Claude代码技巧 skills/,在 antelopeJs.skills。 。 。 .
捐款
这个包裹住在 AntelopeJS/dms-automation pnpm 工作空间,位于执行它的模块旁边. 读取 捐款额 编辑 仓库读取器 用于开发命令。 在模块执行之前释放此软件包 .