Inspiration
New contributors often struggle to find a good starting point in open source projects — issues lack context, difficulty is unclear, and there's no guidance on where to begin. ContribGuide Agent turns every issue into an onboarding opportunity.
What it does
- Reads issue descriptions and scans the relevant codebase
- Classifies issues as Good First Issue, Help Wanted, or Advanced
- Applies difficulty labels automatically
- Posts a step-by-step contribution guide as an issue comment
How we built it
Built entirely on the GitLab Duo Agent Platform using YAML configuration — no traditional code. The core agent.yml defines a 5-step prompt flow: retrieve issue context → search codebase → assess complexity → apply labels → generate guide.
A mock Python project ("TaskFlow") was included in the repo for realistic testing. Tools used: read_file, grep, gitlab_blob_search, get_issue, update_issue, create_issue_note.
Challenges we ran into
- YAML-only development was a major paradigm shift — prompt design is the implementation
- No step-through debugging; iteration happened entirely through GitLab Duo Chat
- Auto-triggering on issue creation isn't supported yet; the agent responds to mentions and assignments
- Needed real code and issues in the repo for the agent to produce meaningful analysis
Accomplishments that we're proud of
- Designed a clean 5-step prompt flow that reliably produces useful, beginner-friendly output
- Built a complete working agent without writing any traditional application code
- Created a realistic mock project that enables end-to-end testing within platform constraints
What we learned
- Prompt engineering is architecture — step ordering, context injection, and output constraints matter as much as any code design
- Understanding platform limitations early (project scope, trigger types) saved significant time
- "Simple YAML" is not a weakness when the use case and prompt flow are well-designed
What's next for ContribGuide Agent
- Publish to the GitLab public catalog
- Add label pre-checking and error handling for incomplete issues
- Revisit auto-triggering as platform capabilities expand
- Explore multi-project support if cross-project access becomes available
Built With
- gitlab-ci/cd
- gitlab-duo-agent-platform
- gitlab-duo-chat
- python
- yaml
Log in or sign up for Devpost to join the conversation.