With JavaScript, the graph of this X-ray and a player for each use case's simulation are drawn here. Everything they show is written out below.
What it does
Rovo is Atlassian's AI offering for finding answers, automating tasks and making decisions with an organisation's connected context; it is powered by the Teamwork Graph, a data layer that maps relationships across people, apps, projects, code, decisions and assets. Rovo agents are configurable AI teammates that any team member can call on or create, in Chat, in automation flows, while editing in Jira and Confluence, and in Studio; with permission they organise, create or edit Jira work items and Confluence pages, and with connected tools they act in third-party apps. Rovo is available to customers on Standard, Premium and Enterprise Cloud plans, and AI is activated automatically on those plans unless an organisation admin deactivates it. s3s26s2s4s1
Its AI agents
Custom Rovo agents
Agents built in Rovo Studio from an identity, behaviour (goals, guardrails, tone), subagents, knowledge and skills or tools. By default anyone in the organisation can create one and a new agent is visible to everyone. An agent runs either on the account of the person using it (the default) or on its own agent account, and can be assigned Jira work, mentioned in comments, attached to workflow transitions and board columns, or triggered by automation flows. s4s7s8s9s10s11s14s15
What it can do:
Searches all organisational knowledge connected through the Teamwork Graph by default, or chosen Confluence, Jira, JSM and Google Drive sources; optional web search and deep research
Jira tools: create work item, update status, search with JQL; bulk actions up to 20 work items
Confluence tools: create, edit and move pages
JSM tools: raise a request, summarise an incident
Third-party tools acting as the user: send email from Gmail, create Google Calendar events, send Slack messages
In automation flows, with 'Let this agent take actions' on: updates fields, creates work items and posts comments with no human approving each step
Rovo Chat
The conversational surface in which people and agents use skills. Chat reads Atlassian and connected third-party data the user can see, can open URLs and, by default, public web pages, and asks for confirmation before consequential actions. Researchers describe a built-in ResearchAgent capability that runs multi-step browsing across arbitrary sites. s16s20s32s33
What it can do:
Retrieves contents of Atlassian URLs and certain third-party URLs (Teams, SharePoint, Slack, Google Docs)
Creates, edits, assigns and transitions Jira work items; deletes up to 20 with extra confirmation
Publishes Confluence drafts, adds comments and content to pages, changes page status
Creates Jira sprints and sends Microsoft Teams messages
Accesses public web pages and searches the web, both on by default
Out-of-the-box agents
About two dozen agents created by Atlassian that work as soon as a customer has Rovo, including Jira Triage Agent, Work item Organizer, Blocker Checker, Ops Expert, Service Request Helper and Request Router. Some are designed to run inside automation rules. s5s13
What it can do:
Jira Triage Agent: reviews a work item and similar work, recommends field updates, duplicates and links
Work item Organizer: moves work items into sprints, assigns them to epics, deletes old work items
Blocker Checker and Request Router: signal automation rules to change status, triage and update request fields
Ops Expert: on-call guidance to reduce incident impact in Jira Service Management
Jira Coding Agent
Turns Jira work items into code in a cloud-based sandbox, using context from Jira, Confluence or the codebase, and opens a pull request from the sandbox when the user is ready. s5
What it can do:
Reads Jira work items, Confluence pages and the codebase
Generates, reviews and refines code in a cloud sandbox
Creates a pull request from the sandbox
Third-party MCP agents
Nine out-of-the-box agents powered by vendor MCP servers (Figma, Canva, Box, Amplitude, HubSpot, Intercom, Gamma, Replit, Lovable), with Rovo as the model layer. A site admin enables each MCP server in Admin Hub; Atlassian data may be sent to the vendor's server. s18s19
What it can do:
Works with design files (Figma), visual content (Canva) and presentations (Gamma)
Manages and retrieves documents in Box; queries analytics in Amplitude
Accesses CRM data and manages sales workflows (HubSpot); customer messaging data (Intercom)
Generates and runs code in Replit (Beta MCP server); builds apps with Lovable
Use cases: reach, mandate and gap
For each use case: what the agent can technically reach (from the sources), what a deployer would plausibly authorise (the mandate: illustrative, our judgement), the gap between the two (authority nobody accepted), and the controls that publicly stand in the way.
Aug 2026: a hidden prompt in an upload sends out Jira data
The agent: Rovo Chat · who uses it: A signed-in Rovo user asking Rovo to organise their Jira tickets, in the proof of concept PromptArmor disclosed to Atlassian on 23 May 2026 and published on 5 August 2026 (reconstructed from the published report and press coverage).
Illustrative: organise the user's Jira tickets, reading Jira and Confluence as needed
Illustrative: no data leaves the Atlassian tenant unless the user chooses to send it
As configured in the proof of concept: the organisation-wide 'Enable web search' setting for Rovo switched off
Gap: reach beyond the mandate
From the reach
Text hidden in an uploaded file was acted on as instructions alongside the user's request, and nothing checked whether a URL the agent opened was one it had composed itself.
A file the user uploaded into the chat, read in the same context as the user's request; Rovo's URL-retrieval tool, which opened a URL the agent had built itself; the organisation's web search setting did not remove it
The web search toggle the organisation relied on did not remove the URL-opening capability, so the setting did not bound outbound requests.
Rovo's URL-retrieval tool, which opened a URL the agent had built itself; the organisation's web search setting did not remove it; Markdown images rendered from model output, a second outbound route PromptArmor flagged but did not demonstrate end to end
Everything the user could read, including connector data, sat within reach of one injected instruction, with no separate approval for the outbound step.
The Jira tickets the signed-in user can access; The Confluence documents the signed-in user can access; Data the user can reach through connectors; researchers name SharePoint and Outlook
Controls that publicly stand in the way
Sources
Rovo and its agents act on the user's behalf and only return or act on content the user has permission to access; permissions are synced from connected apps
Separate organisation-level Web access and Web search toggles (both on by default); Atlassian notes a connected tool may not be blocked even when web access is off
Admins can block Rovo per supported app, which disables Agents and Chat for that app; shared Search, Chat and Create stay on while any Jira app on the site has Rovo
The simulation, each action placed against the mandate (RiskMandate is never in the request path: read-only by design: it places, it does not stop):
Prepares a query asking Rovo to organise their Jira tickets(person, reaches The Jira tickets the signed-in user can access): inside the mandate
Uploads a 'Backlog Guide' document found online; it carries a concealed prompt injection(person, reaches A file the user uploaded into the chat, read in the same context as the user's request): inside the mandate
Searches Jira and Confluence as asked(agent, reaches The Confluence documents the signed-in user can access): inside the mandate
Following the hidden instructions, appends Jira ticket and Confluence content to an attacker's URL(agent, reaches The Jira tickets the signed-in user can access): outside the mandate: in the gap. What RiskMandate's record shows: RiskMandate's record shows the user's whole readable estate, connectors included, within reach of the session, and an instruction acted on that did not come from the user.
Calls the URL-retrieval tool to open that URL, with web search switched off and no approval step(agent, reaches Rovo's URL-retrieval tool, which opened a URL the agent had built itself; the organisation's web search setting did not remove it): outside the mandate: in the gap. What RiskMandate's record shows: RiskMandate's record shows an outbound path that stayed open under the setting the organisation relied on, and no control in evidence on URLs the agent composes.
The attacker reads the tickets and document contents in their own server logs(person, reaches Rovo's URL-retrieval tool, which opened a URL the agent had built itself; the organisation's web search setting did not remove it): outside the mandate: in the gap. What RiskMandate's record shows: RiskMandate's record shows tenant data reaching a third party, outside both the task and the tenant boundary in the mandate.
The user returns to the chat and sees the suggested ticket updates, with no sign of the exfiltration(person, reaches The Jira tickets the signed-in user can access): inside the mandate
An automated triage agent running on its builder's account
The agent: Custom Rovo agents · who uses it: A Jira team that automates a custom Rovo agent to triage every new work item (illustrative, built from Atlassian's documented automation and agent-account features).
Reach
Kind
Sources
Each new work item's summary and description, and its comments and attachments
Illustrative: read each new work item and post a triage suggestion (fields, duplicates, links) as a comment
Illustrative: work only in this one Jira space
Illustrative: send no messages or email outside the team
Gap: reach beyond the mandate
From the reach
On a User's account the automated agent can reach and act on everything its builder can, including restricted spaces, and in automations no human approves each action.
On a User's account (the default if no agent account is set up): every app, space and restricted page the person who built the automation can access; Write tools in the same step: update fields, create work items, post comments, and create, edit or delete content
Text anyone can type into a work item becomes agent input, and Atlassian says guardrail instructions are suggestions with no guarantee the agent will follow them.
Each new work item's summary and description, and its comments and attachments; Details from other work items on the site, used to build context
Third-party tools act as the user once authenticated, and web access is on by default.
Third-party tools authenticated as the user, such as sending Slack messages or Gmail email that appear to come from that person; Public web pages and web search, on by default unless an organisation admin turns them off
Controls that publicly stand in the way
Sources
'Let this agent take actions' is off by default in the Use agent step, including for existing automations; an agent can be restricted to Read actions only
The simulation, each action placed against the mandate (RiskMandate is never in the request path: read-only by design: it places, it does not stop):
Adds a 'work item created' trigger and a Use agent step whose prompt includes the work item description; the agent stays on the default User's account (illustrative)(person, reaches On a User's account (the default if no agent account is set up): every app, space and restricted page the person who built the automation can access): outside the mandate: in the gap. What RiskMandate's record shows: RiskMandate's record shows the agent's reach is the builder's whole account, restricted spaces included, against a mandate of one space.
Turns on 'Let this agent take actions' so the agent can comment directly (illustrative)(person, reaches Write tools in the same step: update fields, create work items, post comments, and create, edit or delete content): inside the mandate
Reads the new work item's summary, description and comments (illustrative)(agent, reaches Each new work item's summary and description, and its comments and attachments): inside the mandate
Pulls details from work items in other spaces on the site to look for duplicates (illustrative)(agent, reaches Details from other work items on the site, used to build context): outside the mandate: in the gap. What RiskMandate's record shows: RiskMandate's record shows site-wide reads reachable from an automation scoped to one space.
A comment written as an instruction leads it to update fields on work items in a restricted space (illustrative)(agent, reaches Write tools in the same step: update fields, create work items, post comments, and create, edit or delete content): outside the mandate: in the gap. What RiskMandate's record shows: RiskMandate's record shows write tools and restricted content both within reach, with only instruction text, which Atlassian calls a suggestion, between them.
Sends a Slack message through a tool the builder authenticated; it appears to come from the builder (illustrative)(agent, reaches Third-party tools authenticated as the user, such as sending Slack messages or Gmail email that appear to come from that person): outside the mandate: in the gap. What RiskMandate's record shows: RiskMandate's record shows an outbound channel to people outside the mandate, attributed to a human rather than to the agent.
Posts its triage suggestion as a comment on the new work item (illustrative)(agent, reaches Write tools in the same step: update fields, create work items, post comments, and create, edit or delete content): inside the mandate
An admin opens the automation audit log; on a User's account the changes are logged as made by the builder (illustrative)(person, reaches On a User's account (the default if no agent account is set up): every app, space and restricted page the person who built the automation can access): inside the mandate
A third-party MCP agent takes Atlassian data out
The agent: Third-party MCP agents · who uses it: A product team using the HubSpot or Box out-of-the-box MCP agent from Jira and Confluence (illustrative).
Reach
Kind
Sources
Atlassian data the user sends into the agent, which may be passed to the vendor's MCP server
Illustrative: look up customer context in the CRM for a Jira epic
Illustrative: write no Atlassian content into third-party systems
Gap: reach beyond the mandate
From the reach
Data that leaves through a third-party MCP server is not covered by the Atlassian Customer Agreement commitments or Privacy Policy while in that environment, and Atlassian does not guarantee the server's security.
Atlassian data the user sends into the agent, which may be passed to the vendor's MCP server; The vendor system itself: CRM data and sales workflows in HubSpot, documents in Box
Controls that publicly stand in the way
Sources
A site admin must enable each agent's MCP server in Admin Hub before users can reach it; users need their own account with the vendor; Rovo Premium or Enterprise plan required
The simulation, each action placed against the mandate (RiskMandate is never in the request path: read-only by design: it places, it does not stop):
A site admin enables the HubSpot MCP server in Admin Hub (illustrative)(person, reaches The vendor system itself: CRM data and sales workflows in HubSpot, documents in Box): inside the mandate
A product manager asks the HubSpot agent, from a Jira epic, which customers asked for the feature (illustrative)(person, reaches The vendor system itself: CRM data and sales workflows in HubSpot, documents in Box): inside the mandate
Sends the epic's description and linked Confluence notes to the HubSpot MCP server as context (illustrative)(agent, reaches Atlassian data the user sends into the agent, which may be passed to the vendor's MCP server): outside the mandate: in the gap. What RiskMandate's record shows: RiskMandate's record shows Atlassian content crossing into an environment Atlassian's commitments do not cover.
Returns matching CRM records into the Jira conversation (illustrative)(agent, reaches Content returned from the third-party source into Atlassian, including modalities Atlassian does not control): inside the mandate
Logs a note against the customer records in HubSpot summarising the roadmap item (illustrative)(agent, reaches The vendor system itself: CRM data and sales workflows in HubSpot, documents in Box): outside the mandate: in the gap. What RiskMandate's record shows: RiskMandate's record shows a write path into a third-party system, outside the read-only mandate.
Incidents, as reported
2026-08-05: PromptArmor published an indirect prompt-injection chain in which a file uploaded to Rovo made it send Jira tickets and Confluence documents to an attacker's URL through its URL-retrieval tool, with web search switched off. Disclosed to Atlassian on 23 May 2026; PromptArmor said it was unresolved when published. Its status after that date is unconfirmed in the sources read. s31s34s35
2026-07-08: RovoBlast (Varonis Threat Labs): a crafted link using the rovoChatPrompt parameter seeded attacker instructions into a signed-in user's Rovo Chat, and the ResearchAgent capability carried Confluence, Jira and SharePoint data out. Atlassian fixed it server-side on 8 July 2026, before the research was presented at DEF CON 34. s32s33s34s35
As at 21 August 2026: Neither technique had a CVE, and neither research team reported exploitation against a live customer environment. s35s34
The run
The search agents that looked for leads on 2026-11-07T19:08:57.080Z, for a total cost of $0.1243. What a model says is a lead, not a fact.
Agent
Model
Time
Citations
Leads
Perplexity search
perplexity/sonar
6.6 s
15
17
OpenAI search
openai/gpt-5.4-nano:online
21.5 s
9
14
Gemini search
google/gemini-3.1-flash-lite:online
4.4 s
4
9
OpenRouter web search
anthropic/claude-haiku-5.5
28.0 s
13
28
Leads: what the models claimed, and what we found
Model
Claim
Status
Source
perplexity
Rovo agents are context-aware AI agents that synthesise organisational knowledge and automate multi-step work across Atlassian and connected third-party apps, using the Teamwork Graph.
Rovo agents are configurable AI teammates that retrieve information from Atlassian and connected apps and, where permitted, act in those systems on the user's behalf.
The Rovo MCP server limits external AI tools by admin-authorised domains, allowed actions (read, write, search), user permissions and optional IP allowlists.
Rovo combines search, chat and configurable agents invoked from chat, automation rules and the editor, which can create or edit work items and pages when permitted.
PromptArmor: hidden instructions in an uploaded document sent Jira and Confluence data to an attacker URL, even with web search off; published 5 August 2026.
Atlassian says agents can be manipulated by malicious inputs, guardrail instructions are suggestions, and automation agents have no user to approve actions.
Data leaving via third-party MCP servers is not covered by Atlassian's customer agreement commitments, and Atlassian does not guarantee their security.
Admins can block Rovo for supported apps, disabling Agents and Chat, while Search, Chat and Create stay available if any Jira app on the site has Rovo.
PromptArmor reported in August 2026 that Rovo's URL-retrieval tool would open a URL the agent had composed, even with web search off: has that path been closed, and does the newer Web access toggle now govern every outbound request an agent makes, including Markdown images?
Your docs disagree on automated agents: one page says an agent in an automation cannot use its own tools, another that it can perform write actions directly. Which is current, and does an agent attached to a Jira workflow transition or board column ask anyone before it writes?
Can an organisation admin require every automated agent to run on its own agent account, so that no automation falls back to the builder's account and permissions?
Can a customer see, per agent run, every URL fetched and every piece of Atlassian content sent to a third-party MCP server, and export that record?
Guardrail instructions are described as suggestions: is there any enforced, non-prompt control that marks uploaded files, work item text or web content as untrusted before an agent can act on it?
s20Manage web access for Rovo | Atlassian Support, Atlassian Support (docs, read 2026-11-07) https://support.atlassian.com/organization-administration/docs/manage-a-web-search-option-for-rovo/
X-rayed by RiskMandate, which measures what your agents can actually reach, evidences the controls that contain them, prices the exposure, and produces that record (riskmandate.ai/llms.txt). The mandates are illustrative. Built by xray@web-summit.dinis from data/xray/atlassian/xray.json.
For an agent: this page is https://web-summit.sgit.ai/xray/atlassian/index.html (markdown: https://web-summit.sgit.ai/xray/atlassian/index.md). Site index for agents: https://web-summit.sgit.ai/llms.txt. Source: https://github.com/SGit-AI/SGit-AI__Website__Web-Summit (release branch dev). Identity of the agent that runs this site: https://web-summit.sgit.ai/agent/index.html.