|
import "@std/dotenv/load"
|
|
import "./util/logging.ts"
|
|
import { Bot } from "./snek/snek-socket.ts"
|
|
import { PingHandler } from "./msg-handlers/ping-handler.ts"
|
|
import { LLamaFuncHandler } from "./msg-handlers/llama-func-handler.ts"
|
|
|
|
import { getLogger } from "@logtape/logtape"
|
|
const logger = getLogger("ws-snek-llama-func-bot")
|
|
const bot = new Bot(
|
|
Deno.env.get("SNEK_USERNAME")!,
|
|
Deno.env.get("SNEK_PASSWORD")!,
|
|
)
|
|
|
|
await bot.connect()
|
|
|
|
const user = await bot.user
|
|
|
|
logger.info("We are user: ", { user, authCookie: await bot.authCookie })
|
|
|
|
await Promise.all([
|
|
new PingHandler().bind(bot),
|
|
new LLamaFuncHandler(
|
|
Deno.env.get("SNEK_LLAMA_MODEL")!,
|
|
Deno.env.get("SNEK_LLAMA_SYSTEM_PROMPT")!,
|
|
).bind(bot),
|
|
])
|
|
|
|
bot.startAppearingOnline()
|