I am currently a Jira admin. One of my colleagues has mistakenly activated ROVO. Now I am not able to disable the ROVO. How can I do that? Due to that, I am unable to downgrade the standard plan to the free plan in my Confluence.
hi @Citrusbug Technolabs
As far as i know you can’t fully disable ROVO because Rovo Search and Studio are now part of the Atlassian platform, but you can turn off its AI features (like Agents and Chat) for Jira, Confluence, etc. Go to admin.atlassian.com → Organization → Settings → AI Settings / AI-enabled Apps and remove AI from each app. This usually resolves issues like downgrading plans. If the downgrade option is still blocked after that, you’ll need to contact Atlassian Support. Also keep in mind that you need to be organization admin, and there’s no user-level opt-out.
I EFFING HATE THIS "ROVO AI" BS.EVERY TIME I OPEN A JIRA WORK ITEM OR NAVIGATE TO A PAGE THERE IS SOME NEW PROMPT FROM THE "AI"."WOULD YOU LIKE TO SEE MORE USELESS AI SLOP SUGGESTIONS ABOUT THIS TOPIC?"NO!STOP!LEAVE ME ALONE!
Hello!I don't know who designs your UX but they really need to work harder and with caution.I'm on a Confluence page and I'd like to find a text in it. I press CTRL+F (Windows) and search for a text, the browser finds it, but I can't read the context of the found string because of this unwanted "Ask Rovo Define Comment" panel. No, I don't want to click to un-select the found string, I'd like to press Enter to move to the next found string if I want to. To do so, I'd like to read the text on the page... and this ugly feature just doesn't let me.No, I don't want to ask our admin to turn off the AI feature. I just don't want this modal popup to hide the useful text from me.Can you please advise? Or more likely, just turn off unwanted features by default and let the users turn them on if they want to.Thanks.
Agreed. The cognitive distraction caused by the Rovo slop bombardment makes for a truly dispiriting experience. This is compounded by the arrogant absence of any way to disable this unwelcome intrusion, meaning there's no escape until we can move elsewhere.
I found this slop being shoved in my face too and the annoyance went to 11. So I cobbled together this tampermonkey/greasemonkey userscript just now to hunt for the offending page elements and remove them. You'll need to actively research those and how to install and use it etc. "Works for me!".This script will keep cycling every three seconds (trivial in javascript timescales but good for humans) because the elements don't stay dead depending on what Atlassian scripts are running. I also find 'click' and 'scroll' are generally good events to target a scan etc.If more annoyances come along (popups!) or they change the attributes, just add more xpath searches for the latest attribute updates. It's a bit whack-a-mole sometimes. Once an element is matched, it'll remove it and the levels above it that you specify. I generally like to remove the wrapping divs etc entirely as refreshing scripts then won't have the anchor they were searching for. Such a pity.
Hint: This is also how you remove social media site ads and buttons etc. I have one of these per site I use. The logic is part of my generic page cleanup toolkit I use, so that's why iframes are targeted too, some sites bury things pretty deep.I wonder if 'they' will let it stay posted
// ==UserScript==// @name Rovoff-and-dAI// @include *://*.atlassian.com/*// @include *://*.atlassian.net/*// @namespace https://atlassian.com// @description Get rid of useless AI garbage// @version 1.0// @run-at document-idle// @grant unsafeWindow// ==/UserScript==// 1.0 Initial versionfunction mod_xpath(xpath, levels_to_kill, reason, action) { try { var target_elements = document.evaluate(xpath, document, null, XPathResult.UNORDERED_NODE_ITERATOR_TYPE, null); if (target_elements) { var target_element = null; while(target_element = target_elements.iterateNext()) { if (action == 'hide') { target_element.style.display = 'none'; } else if (action == 'show') { target_element.style.display = 'block'; } else { // remove let nuke_dis = target_element; if (levels_to_kill > 1) { // loop for many layers for (var layer = 0; layer < levels_to_kill; layer++) { while (nuke_dis.firstChild) nuke_dis.removeChild(nuke_dis.firstChild); // bye bye spam nuke_dis = nuke_dis.parentNode; } } else { // just delete the one node target_element.parentNode.removeChild(target_element); } } } } } catch(err) { ; }}function tidy() { mod_xpath("//div[@data-icon = 'rovo-atlassian-intelligence']", 2, 'dAI', 'remove'); mod_xpath("//div[@data-spotlight-target = 'rovo-ai-button']", 2, 'dAI', 'remove'); // Confluence hovering button mod_xpath("//span[@data-testid = 'app-navigation-ai-mate']", 1, 'dAI', 'remove'); // Confluence ask button mod_xpath("//button[@data-testid = 'ai-agents-button.button']", 1, 'dAI', 'remove'); // Jira ticket agent button mod_xpath("//div[@data-testid = 'ai-agent-sessions.title-container']", 2, 'dAI', 'remove'); // Jira ticket agent box mod_xpath("//span[@data-testid = 'atlassian-navigation.ui.conversation-assistant.app-navigation-ai-mate']", 1, 'dAI', 'remove');}tidy();setTimeout(tidy, 3000);(function () { var events = [ "scroll", "load", "click", "DOMContentLoaded" ]; var iframes = document.getElementsByTagName('iframe'); for(var e = 0; e < events.length; e++) { window.addEventListener(events[e], () => { tidy(); setTimeout(tidy, 3000); }); if (iframes) { for (var i = 0; i < iframes.length; i++) { iframes[i].addEventListener(events[e], () => { tidy(); setTimeout(tidy, 3000); }); } } }})();
After a days use, found more annoyances to nuke.
function tidy() { mod_xpath("//div[@data-icon = 'rovo-atlassian-intelligence']", 2, 'dAI', 'remove'); mod_xpath("//div[@data-spotlight-target = 'rovo-ai-button']", 2, 'dAI', 'remove'); // Confluence hovering button mod_xpath("//span[@data-testid = 'app-navigation-ai-mate']", 1, 'dAI', 'remove'); // Confluence ask button mod_xpath("//div[@data-testid = 'browser-extension-banner']", 1, 'dAI', 'remove'); // Confluence get extension box mod_xpath("//textarea[@placeholder = 'Ask Rovo anything']", 4, 'dAI', 'remove'); // Confluence search Rovo text entry mod_xpath("//span[@data-testid = 'placeholder-test-id']", 2, 'dAI', 'remove'); // Confluence typing override mod_xpath("//button[@data-testid = 'editor-toolbar__ask-rovo']", 3, 'dAI', 'remove'); // Confluence editor toolbar slop button mod_xpath("//button[@data-testid = 'ai-agents-button.button']", 1, 'dAI', 'remove'); // Jira ticket agent button mod_xpath("//div[@data-testid = 'ai-agent-sessions.title-container']", 2, 'dAI', 'remove'); // Jira ticket agent box mod_xpath("//span[@data-testid = 'atlassian-navigation.ui.conversation-assistant.app-navigation-ai-mate']", 1, 'dAI', 'remove'); mod_xpath("//div[text()='Connect apps']", 2, 'mold growth', 'remove'); // Data stealing vectors mod_xpath("//span[@class = 'atlcommWidgets-bb-points-label']", 2, 'performative junk', 'remove'); // Engagement points are for 8 yr olds mod_xpath("//button[@aria-describedby = 'try-this-recommendation-lozenge']", 3, 'upsell spam', 'remove'); // Jira left col pay-for spam}
Hi,Indeed is it very annoying all these useless notifications, to not be able to have by default all artificial "intelligence" deactivated for the user, to push hardly AI features (cleary a marketing decision to satisfy the AI hype), and not let the users turn them on if they want.Much more annoying is all these water and electricity consumption for nothing, all these memory and CPU used for nothing, all hardware cost exploding, and all the carbon emissions linked with it.
I hope a quick decision of Atlassian to change that. It lets me the impression that there was not a pilot with key companies before offering these AI features.Regards
You're doing god's work.
Found one to add:
mod_xpath("//button[@data-testid = 'context-menu-rovo-chat-button']", 1, 'dAI', 'remove'); // Confluence toolbar slop button
that is the rovo button if you mark text in a normal view in confluence.
Changing 1 to 3 removes all 3 buttons Rovo, Define, Remix
It looks like you're new here. Sign in or register to get started.