Giter VIP home page Giter VIP logo

chatgpt-advanced's People

Contributors

ingumsky avatar interstellard avatar kyleskimo avatar leoodz avatar levvy055 avatar mrmontazer avatar nasko-5 avatar notlin4 avatar okkidwi avatar qunash avatar thefourcraft avatar vladykus avatar wahengchang avatar yijiunchin avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

chatgpt-advanced's Issues

For students, researchers, and everyone else - Search operators

It would be such a leap in functionality to include the option to construct custom search operators such as site: and "", allowing the user to filter the web search to just websites within domains such as .edu and .org, (or specific URLs) as well as only web results from pages that contain the "DOI:" phrase. For the time being, it does not even work well with custom prompts. It would be useful to be able to include anything like:

site:.edu AND site:.org AND "DOI:"

Optimally, it would be just two more fields in the footer bar: one for multiple site: operators separated by commas, and one for the "must contain" operators <""> separated by commas.

Mobile Responsive

Hi, I am using the plugin in my mobile browser, can you please also support mobile responsive, please?
or we can add the config in the setting page, letting users to choose which item display on the webiste

Auto-disable Search on the web

Could a new switch be added to auto-disable Search on the web ?

This plugin is fantastic for utilizing CHATGPT for getting the latest data and answering questions, but often times after searching for results, I forget to close the Search on the web and continue using CHATGPT for other Q&A.

Thank you for your hard work and making CHATGPT even better!

Compability with the ShareGPT extension

The only problem now is that "Generate share link" button that ShareGPT has doesn't show up when I am using Chatgpt-advanced. I kinda wish the two extensions were compatible with each other.

Layout problem caused by model selection box in chatGPT Plus is blocking pagination buttons.

I am having an issue with chatGPT Plus. When I activate it, a model selection box appears at the top of the screen, which causes a layout problem. The selection box blocks the view of the pagination buttons located under the prompt. This makes it difficult for me to use the feature. Could you please fix this issue so that the prompt and pagination buttons are visible at the same time? Thank you.
image

Bring back the button to toggle the Web Search off

Please
We all deserve this, and we all need this. Sometimes the web search results are not helpful or destroy the question. You must turn off this extension every time you don't want to search the web.

UI fix

Please align the controls with existing ones, this alone worsens the text selection UX, making it hard to select the bottom most text of the response.

Ability to Create Custom Prompts Without Internet Search

Discussed in #53

Originally posted by guidevops February 8, 2023
Dear WebChatGPT Team,

I am a user of the WebChatGPT browser extension and I love the Prompt Editor feature. However, I would like to create custom prompts without the requirement of an internet search.

I would greatly appreciate it if this feature could be added to the extension. It would allow me to create more versatile and customized prompts to better fit my needs.

Thank you for your hard work and dedication in creating such a great tool. I look forward to hearing back from you.

Uncaught TypeError: Cannot read properties of null (reading 'addEventListener')

let isWebAccessOn = true;
let isProcessing = false;
var numWebResults = 1;

chrome.storage.sync.get(["num_web_results", "web_access"], (data) => {
numWebResults = data.num_web_results;
isWebAccessOn = data.web_access;
});

window.addEventListener("load", function () {

const threadLayout = document.querySelector("[class^='ThreadLayout__NodeWrapper']");
try {
    setTitle();
    addCapabilitiesDescription();
} catch (e) { console.log(e); }

threadLayout.addEventListener("DOMNodeInserted", (event) => {
    try {
        if (event.target.classList[0].startsWith("shared__Wrapper")) {
            setTitle();
            addCapabilitiesDescription();
        }

        if (event.target.classList[0].startsWith("ConversationItem__ActionButtons")) {
            addCopyButton(event.target);
        }
    } catch (e) { console.log(e); }
});

});

function setTitle() {
const title = document.querySelector("[class^='shared__Title']");
if (title) {
title.textContent = "ChatGPT Advanced";
}
}

function addCapabilitiesDescription() {

addListItem("Advanced: Copy generated messages to clipboard");
addListItem("Advanced: Augment your prompts with web search results");

function addListItem(text) {
    const capability = document.querySelectorAll("[class^='shared__Capability']")[1];
    const listItem = capability.querySelector("[class^='shared__ListItem']");
    const li = document.createElement("li");
    li.className = listItem.className;
    li.style.borderWidth = "1px";
    li.textContent = text;
    // add it to the list as the first item:
    listItem.parentNode.insertBefore(li, listItem.parentNode.firstChild);
}

}

function addCopyButton(actionButtons) {
actionButtons.style.flexDirection = "column";
actionButtons.style.alignItems = "center";

const copyButton = document.createElement("button");
const svgCopy = '<svg stroke="currentColor" fill="none" stroke-width="2" viewBox="0 0 24 24" stroke-linecap="round" stroke-linejoin="round" class="w-4 h-4" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><rect x="8" y="2" width="8" height="4" rx="1" ry="1"></rect></svg>';
const svgDone = '<svg stroke="currentColor" fill="none" stroke-width="2" viewBox="0 0 24 24" stroke-linecap="round" stroke-linejoin="round" class="w-4 h-4" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg"><polyline points="20 6 9 17 4 12"></polyline></svg>'

copyButton.innerHTML = svgCopy;
copyButton.classList.add("copy-button");

copyButton.addEventListener("click", () => {
    const message = actionButtons.parentElement.textContent;
    navigator.clipboard.writeText(message);

    copyButton.innerHTML = svgDone;
    setTimeout(() => {
        copyButton.innerHTML = svgCopy;
    }, 2500);

});
actionButtons.appendChild(copyButton);

}

var textareaWrapper = document.querySelector("[class^='PromptTextarea__TextareaWrapper']");
var textarea = document.querySelector("textarea");

textarea.addEventListener("keydown", function (event) {
if (event.key === 'Enter' && isWebAccessOn && !isProcessing) {

    isProcessing = true;

    // showCommandsList(false);

    let query = textarea.value;
    textarea.value = "";

    fetch(`https://ddg-webapp-aagd.vercel.app/search?max_results=${numWebResults}&q=${query}`)
        .then(response => response.json())
        .then(results => {
            let formattedResults = results.map(result => `"${result.body}"\nSource: ${result.href}`).join("\n\n");

            formattedResults = formattedResults + `\n\nGiven these web results, answer the following question: ${query}`;

            textarea.value = formattedResults;

            // simulate pressing enter on the textarea
            textarea.focus();
            const enterEvent = new KeyboardEvent('keydown', { bubbles: true, cancelable: true, key: 'Enter', code: 'Enter' });
            textarea.dispatchEvent(enterEvent);

            isProcessing = false;
        });
}

});

var toolbarDiv = document.createElement("div");
toolbarDiv.classList.add("chatgpt-adv-toolbar", "gap-3");
toolbarDiv.style.padding = "0em 0.5em 0em 0.5em";

// Web access switch
var toggleWebAccessDiv = document.createElement("div");
toggleWebAccessDiv.innerHTML = '

Search on the web';
toggleWebAccessDiv.classList.add("chatgpt-adv-toggle-web-access");
chrome.storage.sync.get("web_access", (data) => {
toggleWebAccessDiv.querySelector(".chatgpt-adv-toggle-checkbox").checked = data.web_access;
});
toolbarDiv.appendChild(toggleWebAccessDiv);

var checkbox = toggleWebAccessDiv.querySelector(".chatgpt-adv-toggle-checkbox");
checkbox.addEventListener("click", function () {
isWebAccessOn = checkbox.checked;
chrome.storage.sync.set({ "web_access": checkbox.checked });
});

// reset thread button
var resetButton = document.createElement("button");
resetButton.className = "chatgpt-adv-reset-button btn flex gap-2 justify-center btn-neutral";
resetButton.style.padding = "0.5em";
resetButton.innerHTML = 'Reset Thread';
toolbarDiv.appendChild(resetButton);

resetButton.addEventListener("click", () => {
const anchors = document.querySelectorAll('a');

let resetThreadAnchor = Array.from(anchors).find(anchor => anchor.innerText === 'Reset Thread');

const mouseEvent = new MouseEvent('click', { view: window, bubbles: true, cancelable: true });
resetThreadAnchor.dispatchEvent(mouseEvent);
textarea.focus();

});

textareaWrapper.parentNode.insertBefore(toolbarDiv, textareaWrapper);

var divider = document.createElement("hr");

var optionsDiv = document.createElement("div");
optionsDiv.classList.add("p-4", "space-y-2");

var title = document.createElement("h4");
title.innerHTML = "Advanced Options";
title.classList.add("pb-4", "text-lg", "font-bold");

var labelDiv = document.createElement("div");
labelDiv.classList.add("flex", "justify-between");

var label = document.createElement("label");
label.innerHTML = "Web results";

var value = document.createElement("span");
chrome.storage.sync.get("num_web_results", (data) => {
value.innerHTML = data.num_web_results;
});
label.appendChild(value);

labelDiv.appendChild(label);
labelDiv.appendChild(value);

var numWebResultsSlider = document.createElement("input");
numWebResultsSlider.type = "range";
numWebResultsSlider.min = 1;
numWebResultsSlider.max = 10;
numWebResultsSlider.step = 1;
chrome.storage.sync.get("num_web_results", (data) => {
numWebResultsSlider.value = data.num_web_results;
});
numWebResultsSlider.classList.add("w-full");

numWebResultsSlider.oninput = function () {
numWebResults = this.value;
value.innerHTML = numWebResults;
chrome.storage.sync.set({ "num_web_results": this.value });
};

optionsDiv.appendChild(title);
optionsDiv.appendChild(labelDiv);
optionsDiv.appendChild(numWebResultsSlider);

var navMenuItem = document.querySelector('[class^="Navigation__NavMenuItem"]');
var navMenu = navMenuItem.parentNode;
navMenu.appendChild(divider);
navMenu.appendChild(optionsDiv);

`chatGPTpublish` wants to integrate with this repo.

I have tried to make a chrome extention to publish chatGPT chat to GitHub for other people to read and take that as reference but as I dont have much experience developing a chrome extention I was not able to implement it correctly.

Can you ingest the code into this repo so that there is a button that says publish to github and by pressing that button we can publish our current chat to our pre-defined github repo.

Here you can take these two repos of mine and can totally take all the code from it to use in this repo's development and you can add my name in the contributors in this repo.

https://github.com/hemangjoshi37a/ChatGPTPublish
https://github.com/hemangjoshi37a/my_chat_with_chatGPT

I have all the code needed to automate the process to converting html to json and then publishing to github repo using python. That is mentioned in these two repos.

Thanks.

Issue with page layout using extension

Hi,

I'm having an issue with the page layout while using this extension. It appears that the added div with information about the extension is breaking the bottom part of the page layout, which is then covering some parts of ChatGPT responses and the appearance of the extension itself (Search on the web button).

image

After some troubleshooting with the developer tools, I found that deleting the info box fixes the problem, and it seems to work as intended.

image

Browser: Brave Nightly, Edge (ver. 110.0.1587.46)
ChatGPT variant: PLUS
Display: 1080p and 2560x1440
Dev tools logs are empty.

[question]Checkpoint

What Checkpoint do you use?

I have read, that a checkpoint does cost anything. So do you pay this b yourself?

Would be interested in an answer. Thank you.

Duplicating options row.

Hi,
Loving the work you have done. However occasionally when I open C'GPT I get the row with the options at the bottom of the screen repeating three times.
Just like this:
image
image
image

This has only just started to happen in the last 3 or 4 days. I think it may be down to the font I use across all my webpages. Which is: opendyslexic, mono variant.

But I'm no expert, so I'm probably wrong.
First time posting on GH so I hope the images work.

Thanks again for your hard work.
Mike

it does not work

I have tried for many times, without success. Could you help to investiage?

University Library

I'm a graduate student in college and wanted to know if a similar advanced toolbar could be created that could connect and search only the university library.

Feature request: customized instructions

Hi, congratulations for the wonderful idea you had in making this browser extension, is the best thing I installed since ChatGPT has been released.

I would like to customize Web ChatGPT instruction set given to ChatGPT, for three reasons:

  1. I am Italian, and I would like ChatGPT to answer in Italian, and I can achieve this only if I translate the instructions in my language (or I can leave them in English and add "Answer in Italian" line).

  2. More important, sometimes I would like to make ChatGPT just shortly sum up what the Google results say. For example, let's say that I search 10 results for "Ukraine war news", and I don't want ChatGPT to say "result 1 says this, result 2 says this other, etc." but I just want to know a summary of all of the news in a few sentences: if I just could customize your extension, I could achieve this result.

  3. Also, every user could share his experiences and customizations.

Thanks for reading

Interested in the google search part

Hi qunash,
Is it possible that you can also open source the part of code for searching (https://ddg-webapp-aagd.vercel.app)? Wondering if we can make each result longer.

: )

Option to disable citations

Hi
Thanks for this extensions, it is great!
It is possible to add one option to remove citations numbers?

Not working as expected!

Hello, thanks for this extension.

The browsing seams working fine, but there are no button to disable it as mentioned in the README

image

Blocked by Cisco Umbrella

It would be nice to be able to use identifiable search entities.

ddg-webapp-aagd.vercel.app

is being identified as malware.

Please share Server-Script - stay transparency

Thanks for this nice Plugin.
Could you please provide the Server-Script / Implementation you made at your vercel-server, so that user can setup their own script for it.
I am not saying that you are up to no good, but you know the maxim for the internet: trust nobody when it comes to your sensitive data.

I think many users would appreciate to be able to run that script at their own servers / pc's.

Issue with appearance

It looks like the prompt below the search box is now repeated three times (I think today is the first time that it's happened to me).

image

image

Thank you anyway for the work, it is a really useful add-on.

Layout issue.

I love the extension! Here's the issue, I just recently signed up for ChatGPT Plus. It adds a model dropdown list, which causes the flexbox to be applied to your div to make them inline instead of stacked. Please take a look at the screenshot. I read another similar issue here but have yet to install any other ChatGPT extensions. So that's unlikely related. I'm very grateful for your work so far!
image

[2+1 Feature Requests] Custom text for web search query & Custom length for web result texts.

Hey,
Really great extension!
While using, I thought of some features that would probably be helpful to a lot of people. Maybe under an "advanced settings" section.

  1. The ability to let the user change what specific text is searched on the web. I don't know if it currently just searches your prompt, or only parts of it. I feel like being able to set a specific search term can greatly improve web results, and therefore the quality of ChatGPT's output.

  1. The ability to let the user decide on the length of web results that are fed to the AI. AFAIK it searches for the most viable information, which is good. However, I feel like especially with more "complex", or long to explain topics using longer texts containing more information is better than using more, but shorter texts. I don't know, however, if that is implementable in the current setup.

Thanks for doing such amazing work
Have a nice day :)

Support for Firefox

I have tried it, and I need to modify the manifest.json, but this is not compatible with the version here.

Do I need to fork a version to help you upload it to Firefox AMO? Or what should I do?

Minimalistic Options Please !

Hi there!
First of all let me say that this is one of the coolest extensions out there!
How I wish it would also scape the data from those sites, not just the headers and such, but until then...

OpenAI just released their history management, that with some other extensions, the side panel is fully packed
currently the Advanced Option take almost half of my sidebar,
If you can please, make the Advanced Options be collapsable, smaller and more minimalistic, or at least, be hidden when i toggle off "search the web". (atleast that last one) should be simple right?

Thanks a lot! and have a good one !

Feature Request: Add Buttons to add preset prompts.

I keep having to copy and paste from other websites to have the AI pretend to be something, and feel like it would be useful right at the current screen, under the slider. I was trying to code it but I am not experienced in javascript.

General purpose search engine

Following from issue #36, I have just discovered that no API is required.

Just use a prompt like this:

This webpage shows a list of web search results. For each result, you can find the URL of the result just before it. Using that URL, create an overview of the topic in the search bar. The overview should be made with a list of items, with each item referring to a specific result. Cite the result in the form [number] and summarize in at least two sentences how ad why the item contributes to the advancement of the knowledge or of techniques in the topic. The top 10 results should be included in the list.

Web search result: https://www.startpage.com/do/search?lui=english&language=english&query=today+news&cat=news&sc=tidmtJCmjbvf20&t=device&segment=startpage.udog&with_date=d
Topic: Today News

It retrieves the top 10 news of today from startpage without any API.

I think that this extension can just do this trick as a general-purpose method (put the link of the whole page with the results in the prompt, without using any API). In addition, finer control for ddg or semantic scholar could be provided via API.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.