tacy irc bot#
This is a little bot I made to run on irc to try and experiment with non linear turns with an llm. IRC is inherintly a mutli conversation medium that doesn't work in strict turns which makes it tricky create a good conversation LLM bot. This currently does a passible job but it would be interesting to try applying a more human like buffer where it doesn't think about stuff untill it has collected a certain amount of messages or a certain timeframe of messages.
How do I hack on it?#
Development#
This is entirely in python with dotenv as the only non-standard library.
pip3 install dotenv
python3 irc.py
Environment Setup#
Make a .env file with the following:
# IRC Server Configuration
IRC_HOST=irc.hackclub.com
IRC_PORT=6667
IRC_TLS=0
# Bot Identity
IRC_NICK=tacy
IRC_USER=tacy
IRC_REAL="tacy bot"
# Channels (comma-separated for multiple)
IRC_CHANNEL=#lounge
IRC_CHANNELS=#lounge
# Authentication (optional)
IRC_PASSWORD=
IRC_NICKSERV_PASSWORD=
# Hack Club AI (REQUIRED)
HACKAI_API_KEY=your_api_key_here
HACKAI_MODEL=moonshotai/kimi-k2-0905
HACKAI_CLASSIFIER_MODEL=google/gemini-2.0-flash-exp
HACKAI_URL=https://ai.hackclub.com/proxy/v1/chat/completions
HACKAI_TIMEOUT=20
HACKAI_CLASSIFIER_TIMEOUT=5
# Bot Behavior
MAX_PRIVMSG_LEN=400
RATE_LIMIT_SECONDS=1.2
TRANSCRIPT_MAX_TURNS=30
JOIN_GREET_CHANCE=0.15
RANDOM_CHIME_IN_CHANCE=0.05
LISTEN_AND_DECIDE_CHANCE=0.25
USE_CLASSIFIER=1
MEMORY_FILE=tacy_memory.json
If you want to report an issue the main repo is the tangled repo and the github is just a mirror.
© 2025-present Kieran Klukas