himbot/README.md
2023-07-09 17:39:58 -06:00

148 lines
2.5 KiB
Markdown

# HimBot
A discord bot written in Typescript.
## It's dangerous to go alone! Take this!
- Install Nodejs 18 or later [here](https://nodejs.org/en/download) (required)
- The pnpm package manager `npm i -g pnpm` (recommended)
## Structure
Commands and Listeners are all stored in named files within the src/commands and src/listeners directories respectively.
## Running Locally
- Copy .env.example and rename to .env
- Create a Discord Bot with all gateway permissions enabled
- Generate a token for this discord bot and paste it in the .env for DISCORD_TOKEN
- Generate and provide an OpenAPI token and paste it in the .env for OPENAI_API_KEY
- Generate and provide a StabilityAI token and paste it in the .env for STABILITY_API_KEY
- Run `pnpm dev` to run locally
## Adding the bot to a server
Use the following link (replacing DISCORD_CLIENT_ID with your own bot's client ID of course...) to add your bot:
https://discord.com/oauth2/authorize?client_id=DISCORD_CLIENT_ID&scope=bot&permissions=8
## Commands
### ask
### Description
A command that returns the answer to your prompt for OpenAI's GPT 3.5 turbo model.
#### Usage
`/ask prompt:prompt_text`
### borf
### Description
A command that returns a random picture of a dog.
#### Usage
`/borf`
### credits
### Description
A command that returns number of Stable Diffusion credits that are available.
#### Usage
`/credits`
### dad
### Description
A command that returns a random dad joke.
#### Usage
`/dad`
### disclosure
### Description
A command that a disclosure statement for data processing.
#### Usage
`/disclosure`
### fancypic
### Description
A command that returns 1-2 AI generated images using the SDXL 0.9 model.
#### Usage
`/fancypic prompt:prompt_text amount:1`
### meow
### Description
A command that returns a random picture of a cat.
#### Usage
`/meow`
### pic
### Description
A command that returns 1-4 AI generated images using the SDXL beta model.
#### Usage
`/pic prompt:prompt_text amount:1`
### ping
### Description
A command that returns the latency for the bot, and the latency for the Discord API. Useful for bot debugging.
#### Usage
`/ping`
### quack
### Description
A command that returns a random picture of a duck.
#### Usage
`/quack`
### support
### Description
A command that returns a Stripe link that can be used to fund credits for the AI commands.
#### Usage
`/support`
### wryna
### Description
A command that returns "my nickname in highschool" response given your prompt
#### Usage
`/wryna nickname:butts`