Inspiration

In the midst of group project season, my telegram group chats were constantly being flooded with messy information. Even when messages are pinned, they are troublesome to keep scrolling back to. Even when tasks lists are manually collated, it is difficult to keep track of each deadline, when things are completed, and still gets lost among the pinned messages. If I was out of a conversation for just a few minutes, I could have missed out on a lot of decisions made.

What it does

Groupros is a Telegram bot that sits in a student project group. It works quietly in the background, spotting commitments in everyday chat and saving them to a task list. It then sends private reminders the day before and three hours before each deadline, letting owners extend a deadline if necessary. Groupros also indexes the conversation so past discussions can be retrieved and summarised when asked to. It can also extracts every deadline, deliverable and presentation detail from a project brief document, planning a timeline of milestones the group can claim as tasks. It also help a member catchup with the discussion by summarising what they missed. It could also turn a Zoom transcript into minutes with decisions and action items ready to add as tasks.

How we built it

Using an OpenRouter API in OpenCode, I vibecoded this project in about 9 phases, tackling 1 feature per phase. After the completion of each phase, I would test the changes in Telegram chats, and debug if necessary before proceeding.

Challenges we ran into

In the early stages of this project, I realised that there was a risk of the bot becoming more of a 'contribution tracker', or sort of a 'surveillance' bot, which could result in tensions among the group. This was a possible unintentional side effect that I did not want, so I had to take a different approach to some features. None of the features would track any contribution statistics, reminders and progress tracking are all kept in private messages.

Accomplishments that we're proud of

Upon the completion of the bot, I tried it on a test chats with my friends where we would simulate discussions about group projects that we have together. The core feature that I was most afraid for, the task detection feature, actually worked quite well. The system prompt for the LLM was sensitive enough, so the bot could understand some slang and acronyms like 'tmr', 'nxt wk', yet did not overly detect tasks.

What we learned

I learned that vibe coding is not simply entering a prompt and letting AI do everything for you. Prompt engineering was especially important for the AI to understand the specificities of features, without adding too much of its own input, or missing out the build of some ideas. Testing and debugging in phases was also crucial for my project, as it helped to identify a lot of bugs that could have resulted from edge cases. The content of a group project chat is extremely open-ended and unpredictable, which made heavy testing necessary.

What's next for Groupros

My future plan for Groupros is to firstly further improve the accuracy when detecting tasks, or answering the /ask commands. Secondly, I would like to add to the complexity of the /plan feature, turning Groupros into more of a coach that guides a group through a group project. Instead of it being simply a coordination tool, it could map out a more project-specific timeline that the group could work towards. Additionally, the bot could be even more personalised. In private messages, the bot could guide a specific user on how to prioritise their tasks, based on their deadlines and the heaviness of each task.

Built With

  • claude
  • opencode
  • python
  • railway
  • supabase
Share this project:

Updates

Submission history