Overview
This page is the second step in the Azure DevOps setup flow:- Azure DevOps — save a PAT connection.
- Azure DevOps Automation (Assignment Intake) — this page — have Genesis automatically pick up assigned work items and dispatch them to a Genesis agent.
- Azure DevOps Boards Tools — for ad-hoc, manual Boards operations from inside an agent thread.
All Azure DevOps automation controls are admin-scoped. You need Genesis admin access or
manage_all_connections to see the Automation tab in the Azure DevOps connection modal on Config -> Connections. Open + New Connection, choose Azure DevOps under Git and code, or edit an existing Azure DevOps connection to switch tabs.Personal connections keep running as the admin who enabled automation. When you turn on assignment intake with a personal PAT connection, Genesis records your user id as the automation owner and resolves that connection on every poll. The PAT is not converted into a shared credential. Shared connections are also supported.
Prerequisites
Before configuring automation, make sure all of the following are true:- An Azure DevOps PAT connection has been saved in Genesis. See Azure DevOps.
- Work items you want Genesis to pick up are assigned to the PAT identity used by the selected connection.
- You know the Azure DevOps project whose assigned items should be polled.
- You have decided which Genesis agent should orchestrate pickup. The default is
Eve.
How pickup works
On each poll Genesis:- Queries the configured project for open work items assigned to
@me(the connection identity), up to 50 results per pass. - Skips items in terminal states (
closed,completed,done,removed,resolved). - Opens or resumes a stable thread (
azure-devops-<connection>-<work-item-id>) for the configured Genesis agent. - Posts a pickup acknowledgement comment on the work item (tagged
[genesis-azure-devops-automation]). - Dispatches a kickoff prompt into the orchestrator thread and ensures
azure_devops_boards_toolsis active on that thread. - Records every claim, dispatch, duplicate suppression, and failure in the Genesis observation ledger (visible on Requests when enabled).
Setup workflow
1
Save an Azure DevOps connection
In Config -> Connections, create or edit an Azure DevOps PAT connection. Test and save. See Azure DevOps.
2
Assign work in Azure Boards
In Azure DevOps, assign the work items you want Genesis to handle to the same identity as the PAT on your saved connection.
3
Configure assignment automation
Open the Azure DevOps connection modal, select the Automation tab, and set:
- Enable Azure DevOps assignment automation: on.
- Azure DevOps connection: the saved connection (for example
azure_devops.sharedor your personal connection). - Project: the Azure DevOps project to poll (for example
GenesisConnectorTests). - Genesis agent: usually
Eve. - Poll interval (seconds): between
30and3600(default60).
4
Verify end-to-end
Assign a non-terminal test work item to the PAT identity. Use Poll now (after saving) or wait for the next interval. Genesis should acknowledge the assignment on the work item and start orchestrator work in the linked thread on Requests.
Automation parameter reference
These fields are saved on the Automation tab and persisted underticket_automation.azure_devops in APP_CONFIG.
Read-only telemetry returned by
GET /api/config/azure-devops/automation:
run_as_user_id is stored when automation is enabled but is not returned by the GET endpoint.
Troubleshooting
Automation saves but never claims work items
- Enable Azure DevOps assignment automation is on and both connection and project are set.
- The work item is assigned to the PAT identity on the selected connection, not another user.
- The work item is in a non-terminal state.
- The PAT can read work items and post comments in the configured project.

