搜尋文件...

開始輸入以搜尋文件

聊天指南

觸發器與 Lua

圍繞每則訊息運行的自動化。

觸發器是附著在角色上的事件驅動指令碼。它們會在對話開始時或訊息前後觸發,可以讀取歷史、設定變數、注入系統文字,或中止送出。

腳本格式使用與 RisuAI 觸發腳本 v2 相容的縮排式命令,因此現有卡片的自動化可匯入並運行。

擁有低階存取權限的腳本解鎖能伸出聊天之外的效果:

runLLM checkSimilarity extractRegex runImgGen showAlert sendAIprompt triggerlua

LLM 與影像效果會真的呼叫模型並消耗 token。它們需要登入,並透過你的帳號執行。

如果邏輯超出觸發器虛擬機器的能力,角色還可以帶著 Lua。執行環境提供約 50 個函式:存取對話、變數、提示視窗、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 掛鉤會在流程中途改寫文字:組裝前的輸入、儲存前的輸出,以及送出前的原始請求。

掛鉤會與同階段的正規表示式指令碼依序執行。整條流程的結果可以在請求記錄中查看。

顯示模式與請求模式的指令碼會在受限指令集的沙箱中執行。指令碼無法碰到你的帳號、金鑰或其他對話。最糟也只是把自己所在的對話弄亂。