Tasker Bot is a Discord bot designed to help users track and maintain personal objectives with streaks and submission limits. You can add this bot to your own Discord server or app to empower your community with goal tracking and accountability.
Create a new objective for yourself.
Options:
name(string, required): The name of your objective.frequency(string, required): How often you can submit this objective. Choices are:dailyweeklymonthly
Submit an image as proof of completing an objective.
Options:
image(attachment, required): The image to submit as evidence.objective(string, required): The name of the objective you are submitting for (must match an objective you created).
- The bot will enforce the frequency you set for each objective.
- If you try to submit too soon, it will tell you when you can submit again.
- Streaks are tracked and displayed for consecutive completions.
List all your current objectives, including their frequency, streaks, and when you can next submit.
Delete one of your objectives forever.
Options:
name(string, required): The name of the objective you want to delete.
Rename one of your objectives.
Options:
current_name(string, required): The current name of the objective you want to rename.new_name(string, required): The new name for the objective.
This command allows you to change the name of an existing objective while preserving all its data including streak count, submission history, and frequency settings.
- Personal Objectives: Each user can create and manage their own objectives.
- Submission Limits: Objectives can be submitted daily, weekly, or monthly.
- Streak Tracking: Keep track of your consecutive completions for extra motivation.
- Image Proof: Require an image as evidence for each submission.
- Permanent Deletion: Remove objectives you no longer want to track.
You can add Tasker Bot to your Discord server or apps section and start using these commands right away!
You can run Tasker Bot on your own server using Docker and Docker Compose. This is the recommended way to deploy for personal or private use.
- Docker
- Docker Compose
- A publicly accessible server or domain name
- Discord bot application set up in the Discord Developer Portal
-
Clone the repository:
git clone https://github.com/rsomonte/taskerbot.git cd taskerbot -
Create a
.envfile: Copy your Discord bot credentials into a.envfile in the project root:APP_ID=your_discord_app_id DISCORD_TOKEN=your_discord_bot_token PUBLIC_KEY=your_discord_public_key BOT_TOKEN=your_discord_bot_token PORT=3000
-
Configure Discord Developer Portal:
- Go to your Discord Developer Portal
- Select your bot application
- Navigate to "General Information" and set the Interactions Endpoint URL to:
https://your-domain.com/interactions - Replace
your-domain.comwith your actual server's domain or IP address
-
Start the bot:
docker-compose up -d
The bot will be available on port 3000. Make sure this port is accessible from the internet so Discord can send interaction events to your bot.
The SQLite database will be stored in the data/ directory and persisted between restarts.
To update your bot, pull the latest code and rebuild:
git pull
docker-compose up -d --buildTo stop the container:
docker-compose downAll objectives and related data are stored in a database managed by the bot owner. While your data is not shared with third parties, the server administrator has access to the stored information. Please use the bot with this in mind if privacy is a concern.



