搜索文档...

开始输入以搜索文档

聊天指南

触发器与 Lua

围绕每条消息运行的自动化。

触发脚本

触发器是挂在角色上的事件驱动脚本。它们在聊天开始时或消息前后触发,能读取历史、设置变量、注入系统文本或停止一次发送。

脚本格式使用与 RisuAI 触发脚本 v2 兼容的缩进式命令,因此现有卡片的自动化可导入并运行。

低级效果

拥有低级访问权限的脚本解锁能伸出聊天之外的效果:

runLLM checkSimilarity extractRegex runImgGen showAlert sendAIprompt triggerlua

LLM 与图像效果会调用真实模型并消耗 token;它们需要登录并经由你的账户运行。

Lua 脚本

对于超出触发器 VM 的逻辑,角色可携带 Lua。内嵌运行时暴露约 50 个函数的 API:聊天访问、变量、提醒、LLM 调用等,与 RisuAI 的 Lua 表面兼容。

lua
onOutput = async(function(triggerId)
  local msg = getChat(triggerId, -1)
  if string.find(msg.data, "secret") then
    alertNormal(triggerId, "Secret mentioned!")
  end
end)
listenEdit("editoutput", function(triggerId, data)
  return data:gsub("%s+$", "")
end)

编辑钩子

Lua 可注册在传输途中改写文本的钩子:组装前的你的输入、保存前的模型输出,以及发送前的原始请求。

钩子与同阶段的正则脚本按顺序运行;用请求日志查看整条管线的最终结果。

安全

显示与请求脚本模式运行在命令集受限的沙箱中。脚本无法触及你的账户、密钥或其他对话;一个坏脚本最多也只能搅乱它自己的聊天。

UnoRouter 中的触发脚本与 Lua