Minimal ChatGPT Message Logger + Injector + Submitter

Listen for postMessage from parent, log to console, enter it into the chat input, and submit

À partir de 2025-05-12. Voir la dernière version.

// ==UserScript==
// @name         Minimal ChatGPT Message Logger + Injector + Submitter
// @description  Listen for postMessage from parent, log to console, enter it into the chat input, and submit
// @match        https://chatgpt.com/*
// @version 0.0.1.20250512164444
// @namespace https://greasyforks.org/users/1435046
// ==/UserScript==

(function () {
    'use strict';

    window.addEventListener('message', function (event) {

       console.log('Received message from parent window:', event.data);

       // listen specifically for the search-button broadcast
       if (event.data && event.data.type === 'searchButtonClicked') {
           console.log('Search button was clicked');
           return;
       }

        const composer = document.querySelector('.ProseMirror');
        if (!composer || typeof event.data !== 'string') return;

        // 1. Inject the text
        composer.innerText = event.data;

        // 2. Tell ProseMirror/React that the content changed
        composer.dispatchEvent(new InputEvent('input', { bubbles: true }));

        // 3. Simulate pressing Enter to submit
        composer.dispatchEvent(new KeyboardEvent('keydown', {
            bubbles: true,
            cancelable: true,
            key: 'Enter',
            code: 'Enter',
            which: 13,
            keyCode: 13
        }));
    });
})();
长期地址
遇到问题?请前往 GitHub 提 Issues。