2.4 KiB
Chronicle
Chronicle is a multi-purpose chat bot.
It currently supports Matrix, but has ambitions of supporting Discord in the future.
Chronicle is still heavily work-in-progress, and the hobby of an occasionally productive fellow.
Features
- Ping (returns Pong!; good for testing connectivity)
- Dice Roller (
!roll 2d4
->Roll: 2d4 ([2, 1]) ==> 3
) - 8-ball (
!8ball Will I win the lottery?
-->Try again later
) - More to come!
Planned Features
- Ad-hoc simple custom commands (
!addcommand hello Hey there!
-->!hello
-->Hey there!
) - Simple calculator (
!calc 8 + (9-10)
-->Calc: 8 + (9 - 10) ==> 7
) - Simple games (Blackjack, High/Low)
- A "mystery" game (Kind of like Clue! or Noir Syndrome)
- A "progress quest" like game (time-based character auto-progression)
- Expanded custom commands (allow for commands with arguments)
- Enabling of add-on features (ie., everything mentioned above) per room
- Establish/restrict command permissions per user/role per room.
- Change the command prefix (from default
!
to whatever you'd like!) - Run in a Docker container!
Development
You can run your own instance of Chronicle with a few steps:
- Fork the repository, and clone it locally
- Setup a bot user in Matrix, and get it's "Access Token" (or use your own).
- Export the access token to CHRONICLE_ACCESS_TOKEN for ease of use
- Run
bundle update
to install dependencies. - Run
bundle exec chronicle -d <your-homeserver-address-here> CHRONICLE_ACCESS_TOKEN
- Invite the bot user to a room, and
!ping
to make sure it's working! - Update the
allowed_commands
variable to add additional commands (for now).
Contribute
If you are interested in contributing to Chronicle, first let me say thanks! Next, please follow these steps:
- Fork the repository, and perform any changes you'd like.
- Submit a pull request, explaining the changes.
- Work with me to get those changes merged.
Chronicle is a hobby project, and as such I may not be immediately responsive to any requests. Please do not be discouraged! I will try to address any issues or pull requests in a reasonable time.
Issues
If you find something amiss with Chronicle, please submit an issue! I will try to address it in a reasonable time.
Contact
If you're interested in discussing Chronicle, you can speak with me on Matrix! I'm Vagabond.