Agent Developer Group

The Agent Developer group is focused on the GitLab Duo Developer foundational flow — improving the flow itself, its evaluation, and flow registry improvements.

Vision

The team that drives core AI/Agent development at GitLab to get and keep it competitive with the rest of the industry when it comes to the quality of the output of the agent, providing the platform for configurability and making sure the agents are as resilient as reasonably possible against prompt injections.

Team Members

Engineering Manager & Engineers

Name Role
Annie YingAnnie Ying Manager, Engineering
Bruno CardosoBruno Cardoso Senior ML Engineer, AI-powered:Custom Models
Cindy HalimCindy Halim Fullstack Engineer
Patrick CyizaPatrick Cyiza Backend Engineer, Create:Source Code
Julie HuangJulie Huang Frontend Engineer
Manoj Memana JayakumarManoj Memana Jayakumar Staff Backend Engineer, AI-Powered:Custom Models
Mohamed HamdaMohamed Hamda Backend Engineer, AI-Powered:Custom Models
Newvick LeeNewvick Lee Backend Engineer, AI-Powered:Custom Models

Product, Design & Quality

Role Person
Product Manager @frwang1

☎️ How to reach us

Depending on the context here are the most appropriate ways to reach out to the Agent Developer Group:

  • Slack channels: #f_duo_developer, #f_flow_components, #dev_agent_developer
  • Slack Groups: @agent-developer-team @flow-components-subteam @duo-developer-subteam

Technical Components 🛠️

Besides the main GitLab repository these are the key technical components we work with:

  1. Duo Workflow Service within AI Gateway 🐍 — our work here centers on the Duo Developer foundational flow:
    1. Improving the Developer Flow itself.
    2. Improving the evaluation of the flow.
    3. Flow registry improvements.

For an understanding of how these components work together, take a look at the architecture.

📦 Team Processes

Goalkeeper Rotation

TBD — the goalkeeper rotation process is still being defined.

Retrospective

TBD — the retrospective process is still being defined.

📆 Regular team meetings

❗️Important: For every meeting, the Agent Developer team’s meeting notes document should be used, and filled with the meeting notes, as well as references to any other sync meeting agendas/notes/recordings which have recently occurred. This will make it easier for people to find any meeting notes.

Team Meetings

  1. Agent Developer Standup (every other Tuesday)

    • When: Every other Tuesday, 14:00 UTC
    • What: A standup-style meeting for the full Agent Developer team to share awareness of what each subteam is working on, surface blockers, and stay aligned across subteams.
  2. Weekly Async Update (every Wednesday)

    • When: Every Wednesday (async, no live meeting)
    • What: Issue-level async updates posted by each team member — same format as before. See Weekly Async Updates for the template.
  3. Subteam Syncs (weekly)

    • When: Weekly cadence per subteam (schedule set by each subteam)
    • What: Deeper technical discussions within each subteam, covering implementation details, design decisions, and progress that benefits from a smaller-group sync.

Shared calendars

TBD.

📚 Agent Developer Board Outline

The Agent Developer team is following a milestone process. All currently prioritized issues are visualized in our milestone board. Overview issues that outline the goal and focus points of past milestone and the current one can be found in the overarching epic.

We aim for ambitious but achievable planning of the current milestone, and only issues in the current milestone should be actively worked on. If there are no more issues available reach out to the EM/PM of the team for clarification.

We work with these statuses for issues:

  1. New: As of yet unclassified issues, which need to be updated to one of the used workflow labels or meta issues such as iteration overview.
  2. Refinement: Issues in this stage have been identified as important to be worked on but are not ready for development yet. This might be due to a variety of reasons such as missing or not finished designs or architectural questions that need to be clarified.
  3. Ready for development: Issues that are ready for implementation are moved to this list.
  4. In dev: When a developer begins work on an issue, they should move it to this list.
  5. Blocked: Issues in this stage currently cannot be further continued as they depend on other work being done first.
  6. In review: After development is complete and submitted to be reviewed, the issue should be moved to this list.
  7. Verification: Following a successful code and UX review, the issue should be moved to this list and the “verification” label should be applied.
  8. Closed: Once the issue is verified and confirmed to be working properly, it should be moved to this list, the “complete” label should be applied, and the issue should be closed.

We use labels to help with understanding the order in which issues should be worked on:

  1. Deliverable: These items are the primary deliverables of an iteration and should therefore be picked up first.
  2. Stretch: We aim to deliver most of these items, but as part of planning ambitiously some of them might slip.

👏 Communication

The Agent Developer Team communicates based on the following guidelines:

  1. Always prefer async communication over sync meetings.
  2. Don’t shy away from arranging a sync call when async is proving inefficient, however always record it to share with team members.
  3. By default communicate in the open.
  4. All work-related communication in Slack happens in the #dev_agent_developer channel.

📋 Weekly Async Updates

We maintain a practice of weekly async status updates to ensure clear communication, track progress effectively, and maintain transparency across our team. This process aligns with our core values by fostering collaboration, driving results, and promoting efficiency through structured communication.

Timing and Frequency

  • Team members post updates every Friday, and share them in the team Slack channel (#dev_agent_developer).
  • Updates are required for all assigned issues that are at least In Dev. For other assigned issues it is up to the assignee to decide whether an update is warranted.
  • Multiple updates may be needed if working on multiple issues

Template

This is the template to use for the updates

## Async Status Update yyyy-mm-dd

- **Progress & Status**: _What progress have you made? What's the current state?_
- **Next Steps**: _What are your planned next actions?_
- **Blockers**: _Are you blocked or need assistance with this?_
- **How confident are you that this will make it to the current milestone?**
    - [ ] Not confident
    - [ ] Slightly confident
    - [ ] Very confident

_Remember to update the status!_

/cc @aying-gl @bastirehm @frwang1

Be sure to tag your engineering manager, product manager, and any team members you are collaborating with.

Best practices

  • Be specific and concise in updates
  • Always include next steps, even if they’re tentative
  • Flag blockers early - don’t wait until they become critical
  • Use the template consistently for easier scanning
  • Link to relevant issues or documentation when appropriate

⏲ Time Off

Team members should add any planned time off in the “Workday” slack app, in accordance with the taking time off policy, including creating a PTO coverage issue.

🤙 Ad-hoc sync calls

We operate using async communication by default. There are times when a sync discussion can be beneficial and we encourage team members to schedule sync calls with the required team members as needed.

📝 Dashboards (internal only)

Last modified June 30, 2026: Add Agent Developer group team page (056ba847)