Improve UX for adding AI Catalog agents to projects
Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.
Summary
Based on a discussion here and on many of @vanessaotto's ideas:
Currently, the UX for adding AI Catalog agents to projects has several limitations that could be improved:
- No visibility of existing item consumers: Users can select a project and receive an error if an agent is already added to that project, rather than seeing the current state upfront
- Limited to single project selection: Users must add agents to projects one at a time
- Missing group support: The UI doesn't yet support adding agents to groups (needed for group inheritance)
- Inconsistent behaviour: The same "Add to project" action behaves differently for public vs private agents
Proposed improvements
Based on the mockups and discussion in !206406 (merged), we should consider:
Better state visibility
- Show whether an Item Consumer already exists for private agents in their parent project
- For public agents, check and display which projects already have the agent added
- Use toggle-like UI elements to show current state rather than just an "Add" button
Multi-select capability
- Allow users to add agents to multiple projects at once
- Reduce the number of interactions needed for bulk operations
Group support preparation
- Design the UI to accommodate both project and group selection
- Prepare for Group inheritance functionality
Consistent UX patterns
- Ensure the same UI patterns work for both public and private agents
- Avoid scenarios where the same button has different behaviors
Mockups
Attached in the design section of this issue as a reference. Also available in the original discussion: !206406 (comment 2786498279)
Technical considerations
- Backend support may be needed to efficiently check existing Item Consumer relationships
- Consider performance implications of checking multiple project states
- Ensure the solution scales well with large numbers of projects/groups
Related
- Originating issue: #569660 (closed)
- Related MR: !206406 (merged)
Edited by 🤖 GitLab Bot 🤖