[FF] onboarding_guide_agent -- Onboarding agent foundational chat agent
Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.
Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.
Summary
Roll out the Onboarding agent, currently behind the onboarding_guide_agent feature flag.
The flag controls whether the Onboarding agent (AI Catalog item 1003979) appears in the GitLab Duo Chat agent list. It is introduced in !245452 (merged) and ships default off in 19.3 as an experiment.
- DRI: @nfrye
- Team Slack channel: to be confirmed by the DRI before the first production step
Note
Process and guidance live in the docs. This issue is just the commands and a place to track the rollout. Feature flag controls and feature flag lifecycle.
Actor semantics
The gate is applied in ee/app/graphql/resolvers/ai/foundational_chat_agents_resolver.rb:
- On GitLab.com, the actor is the caller's governing root namespace, so
--group=targeting works and individual top-level groups can be opted in. - On GitLab Self-Managed, there is no meaningful namespace actor, so a nil actor is passed and the flag acts as a global gate.
What could go wrong?
Blast radius is small. The flag only controls visibility of one experimental agent in the chat agent picker. The agent is read-only: it cannot create, edit, or commit files, modify pipelines, or change project settings, so there is no data-loss path. The main risk is exposing the agent to a namespace before the Catalog-side prompt changes are confirmed.
Rollout
Run all production /chatops in #production. Background: incremental rollout process, feature actors.
Non-production
/chatops gitlab run feature set onboarding_guide_agent 50 --actors --dev --pre --staging --staging-ref
/chatops gitlab run feature set onboarding_guide_agent true --dev --pre --staging --staging-refProduction, percentage rollout (wait at least 15 min between steps, watch dashboards):
/chatops gitlab run feature set onboarding_guide_agent <percentage> --actorsOr target specific top-level groups instead, which is the expected path for this experiment:
/chatops gitlab run feature set --group=<group-path> onboarding_guide_agent trueBefore global rollout
Confirm the relevant gotchas before going to 100%. See enabling a feature for GitLab.com:
- Docs and version history updated.
- Catalog-side secret-safety guidance confirmed applied to item 1003979.
- Experiment feedback captured in #606350.
- Create the release note. File
doc/releases/19/gitlab-19-X-released/onboarding_guide.mdingitlab-org/gitlabusing the Release Notes Item MR template, in the milestone where this flag goes default-on — not before. Per the template, release notes merge only when the feature is deployed and enabled. Set the milestone on the MR (Danger flags MRs without one), add a Technical Writer as reviewer immediately, and uselevel: secondaryunless we're also adding afeatures.ymlentry inwww-gitlab-com. Precedent: Support Assistant's release note (!243290) sat 43 days without approval and missed its release.
Cleanup
Remove the flag once deemed stable. See cleaning up. Remove the flag and its YAML definition from the codebase, then:
/chatops gitlab run release check <merge-request-url> <milestone>
/chatops gitlab run feature delete onboarding_guide_agent --dev --pre --staging --staging-ref --productionRollback
/chatops gitlab run feature set onboarding_guide_agent false # production
/chatops gitlab run feature set onboarding_guide_agent false --dev --pre --staging --staging-ref # non-production