• UnoRouterUNOROUTER
Documentação
  • Guia do chat
Primeiros passos
  • Primeiros passos
Personagens e mundo
  • Personagens
  • Personas
  • Lorebooks
  • Cartões
Prompting
  • Presets
  • Template de prompt
  • Chats em grupo
Scripting
  • Macros (CBS)
  • Scripts regex
  • Gatilhos e Lua
  • Plugins
Contexto e mídia
  • Memória e contexto
  • Imagens
  • Provedores personalizados
Seus dados
  • Seus dados
  • Backup e restauração
Navegar
  • Modelos
  • Classificações
  • Inspetor
  • Preços
  • Chat
  • Status

Buscar documentação...

Comece a digitar para buscar documentação

PlataformaIntegraçõesChat
Guia do chat

Plugins

Seu próprio JavaScript, rodando com segurança em cada mensagem.

Um plugin é JavaScript que você escreve e que roda sempre que uma mensagem sai ou chega. Use para reescrever texto, manter seus próprios contadores ou inserir notas no prompt.

Plugins são globais: uma vez ativados, rodam em todas as conversas. Você os gerencia em Plugins, no menu do chat, onde pode colar código ou importar um arquivo .js.

Registre um manipulador para um destes quatro momentos:

input request output display

O manipulador recebe o texto e devolve a substituição. Não devolver nada deixa o texto intacto.

text
uno.registerHandler("output", (text) => {
  return text.replace(/\bcolour\b/g, "color");
});

Os manipuladores rodam em ordem e nunca travam uma resposta: o que falhar ou passar de cinco segundos é ignorado, e o texto original segue.

Dentro de um manipulador, o objeto uno lê e escreve a conversa. Cada chamada devolve uma promise.

text
const name = await uno.getName();
const last = await uno.getUserLastMessage();
await uno.setChatVar("mood", "curious");
const mood = await uno.getChatVar("mood");

O conjunto completo cobre mensagens do chat, campos de personagem e persona, variáveis da conversa, entradas do lorebook, expansão de macros, contagem de tokens e uma requisição https com limite de frequência.

Scripts escritos para o JanitorAI funcionam como estão. Eles recebem o mesmo objeto context, e o que deixarem em character.personality e character.scenario vira o prompt daquele turno.

text
if (context.chat.last_message.toLowerCase().indexOf("storm") !== -1) {
  context.character.scenario += "\nA storm is rolling in.";
}

As regras deles também valem: o estado é reiniciado a cada turno, então reescreva no cenário tudo o que quiser manter.

Plugins rodam em um quadro isolado, sem acesso às suas conversas, arquivos, cookies ou login. Não conseguem ler a página nem fazer as próprias requisições de rede.

Tudo o que um plugin alcança passa pela API acima, então ele só vê o que um manipulador recebe. Ainda assim, instale apenas código confiável: um plugin pode reescrever o que você envia e o que você lê.

Gatilhos e LuaMemória e contexto

Nesta página

O que são plugins
Ganchos
A API uno
Scripts do JanitorAI
O que um plugin não pode fazer