A simple Bluesky bot to make sense of the noise, with responses powered by Gemini, similar to Grok.
1import * as messages from "./handlers/messages";
2import { env } from "./env";
3import { bot } from "./core";
4import consola from "consola";
5import { IncomingChatPreference } from "@skyware/bot";
6
7const logger = consola.withTag("Entrypoint");
8
9logger.info("Logging in..");
10
11try {
12 await bot.login({
13 identifier: env.HANDLE,
14 password: env.APP_PASSWORD,
15 });
16
17 logger.success(`Logged in as @${env.HANDLE} (${env.DID})`);
18
19 await bot.setChatPreference(IncomingChatPreference.All);
20 bot.on("message", messages.handler);
21
22 logger.success("Registered events (message)");
23} catch (e) {
24 logger.error("Failure to log-in: ", e);
25 process.exit(1);
26}