Warning: fopen(/www/sites/update.greasyfork.icu/index/store/temp/d15ad54748af5072c83a66a449b52775.js): failed to open stream: No space left on device in /www/sites/update.greasyfork.icu/index/scriptControl.php on line 65
// ==UserScript==
// @name Claude 3.6 renamer
// @namespace http://tampermonkey.net/
// @version 1.6
// @license MIT
// @description Fix the name for Claude "3.5 Sonnet (New)". Make it "3.6 Sonnet" as it should have been released
// @author Gerry - https://x.com/gerry
// @match *://claude.ai/*
// @grant none
// @downloadURL https://update.greasyfork.icu/scripts/514569/Claude%2036%20renamer.user.js
// @updateURL https://update.greasyfork.icu/scripts/514569/Claude%2036%20renamer.meta.js
// ==/UserScript==
(function() {
'use strict';
// Function to replace the desired text on the page
function replaceText() {
// Define the target text and replacement HTML using a regular expression
const targetRegex = /3\.5 Sonnet \(New\)/g;
const replacementHtml = "3.6 Sonnet";
// Get all elements that contain text nodes
const elements = document.querySelectorAll("*:not(script):not(style)");
elements.forEach(element => {
element.childNodes.forEach(child => {
if (child.nodeType === Node.TEXT_NODE && targetRegex.test(child.textContent)) {
const span = document.createElement('span');
span.innerHTML = child.textContent.replace(targetRegex, replacementHtml);
element.replaceChild(span, child);
}
});
});
}
// Run the replacement function after the page has loaded
window.addEventListener('load', replaceText);
// Observe changes in the DOM to re-run the replacement if necessary
const observer = new MutationObserver(function(mutations) {
mutations.forEach(function(mutation) {
if (mutation.type === 'childList' || mutation.type === 'characterData') {
replaceText();
}
});
});
// Start observing the body for changes
observer.observe(document.body, {
childList: true,
characterData: true,
subtree: true
});
})();