Automatically clicks the 'Stay logged out' button and focuses on text input with default prompt
当前为
// ==UserScript==
// @name chatgpt logout-default prompt
// @namespace http://rant.li/boson
// @version 1.4
// @description Automatically clicks the 'Stay logged out' button and focuses on text input with default prompt
// @author Boson
// @match *://chat.openai.com/*
// @match *://chatgpt.com/*
// @grant none
// @license GNU AGPLv3
// ==/UserScript==
(function() {
'use strict';
let scriptExecuted = false;
function clickStayLoggedOut(retryCount = 0) {
const element = document.querySelector('.text-token-text-secondary.underline');
if (element) {
element.click();
console.log('Clicked "Stay logged out" button');
setTimeout(focusOnTextInput, 1000);
} else {
console.log('Element not found, retrying...');
if (retryCount < 3) {
setTimeout(clickStayLoggedOut, 1000, retryCount + 1);
} else {
console.log('Failed to find stay logged out element after 5 retries');
}
}
}
function focusOnTextInput(retryCount = 0) {
const inputSelector = 'div#prompt-textarea';
const textAreaElement = document.querySelector(inputSelector);
if (textAreaElement) {
if (!textAreaElement.hasAttribute('disabled')) {
if (textAreaElement.offsetWidth > 0 && textAreaElement.offsetHeight > 0) {
textAreaElement.focus();
textAreaElement.textContent = 'Be technical, exhaustive, and very concise with graduate level vocabulary. Please answer the question, considering that you are a world class expert in all things related to '; // Replace with your desired query
console.log('Focused on text input and typed the query');
placeCursorAtEnd(textAreaElement);
} else {
console.log('Text input element is not visible');
}
} else {
console.log('Text input element is disabled');
}
} else {
console.log('Text input element not found, retrying...');
if (retryCount < 3) {
setTimeout(focusOnTextInput, 1000, retryCount + 1);
} else {
console.log('Failed to find text input element after 5 retries');
}
}
}
function placeCursorAtEnd(element) {
const range = document.createRange();
const selection = window.getSelection();
range.selectNodeContents(element);
range.collapse(false);
selection.removeAllRanges();
selection.addRange(range);
}
window.addEventListener('load', function() {
if (!scriptExecuted) {
console.log('Page loaded, attempting to click "Stay logged out"');
clickStayLoggedOut();
scriptExecuted = true;
}
});
})();