תוספים
קוד JavaScript משלכם, שרץ סביב כל הודעה.
תוסף הוא קוד JavaScript שרץ כשהודעה יוצאת או חוזרת. השתמשו בו כדי לכתוב טקסט מחדש, לנהל מונים או להזריק הערות להנחיה.
תוספים הם גלובליים: ברגע שהופעלו, תוסף רץ בכל שיחה. נהלו אותם תחת Plugins בתפריט השיחה. הדביקו קוד או ייבאו קובץ .js.
רשום מטפל לאחד מארבעה רגעים:
input request output display
המטפל מקבל את הטקסט ומחזיר את התחליף. אם לא מוחזר דבר, הטקסט נשאר כמות שהוא.
uno.registerHandler("output", (text) => {
return text.replace(/\bcolour\b/g, "color");
});המטפלים רצים בסדר ולעולם לא חוסמים תשובה. מטפל שזורק שגיאה או חורג מחמש שניות מדולג, והטקסט המקורי עובר.
בתוך מטפל, האובייקט uno קורא וכותב את השיחה. כל קריאה מחזירה הבטחה.
const name = await uno.getName();
const last = await uno.getUserLastMessage();
await uno.setChatVar("mood", "curious");
const mood = await uno.getChatVar("mood");המכלול המלא כולל הודעות צ'אט, שדות דמות ופרסונה, משתני שיחה, רשומות ספר עולם, הרחבת מאקרו, ספירת אסימונים ובקשת https עם הגבלת קצב.
סקריפטים שנכתבו עבור JanitorAI רצים כמות שהם, עם אותו אובייקט הקשר. מה שהם משאירים ב-character.personality וב-character.scenario הופך להנחיה של אותו תור.
if (context.chat.last_message.toLowerCase().indexOf("storm") !== -1) {
context.character.scenario += "\nA storm is rolling in.";
}גם הכללים שלהם חלים: המצב מתאפס בכל תור, לכן כתוב מחדש לתרחיש כל מה שברצונך לשמר.
תוספים רצים במסגרת מבודדת ללא גישה לשיחות, לקבצים, לעוגיות או לחשבון שלך. הם אינם יכולים לקרוא את הדף או לשלוח בקשות רשת משלהם.
כל מה שתוסף מגיע אליו עובר דרך ה-API שלמעלה. עם זאת, התקינו רק קוד שאתם סומכים עליו: תוסף יכול לכתוב מחדש את מה שאתם שולחים וקוראים.