juzeon / SydneyQt

A cross-platform desktop client for the jailbroken New Bing AI Copilot (Sydney ver.) built with Go and Wails (previously based on Python and Qt).
The Unlicense
856 stars 78 forks source link
bing bing-ai bing-chat binggpt chatbot chatgpt edge edgegpt go golang gpt jailbreak jailbroken new-bing reverse-engineering sydney wails wails-app wails2

SydneyQt

SydneyQt

Static Badge GitHub release (with filter) GitHub all releases GitHub Workflow Status (with event) GitHub License

SydneyQt - A desktop client for the jailbroken New Bing AI | Product Hunt

A cross-platform desktop client for the jailbroken New Bing AI Copilot (Sydney ver.) built with Go and Wails (previously based on Python and Qt).

简体中文

Features

Download

You can download binaries from the release page for Windows, Linux and macOS, or build it yourself according to the Build section.

Platform information:

Usage

  1. Put your cookies.json in the same folder as the executable file ($HOME/Library/Application Support/SydneyQt for macOS):
    • Install the Cookie-Editor extension for Chrome or Firefox (Recommend Chrome rather than Firefox since we use Chrome's network stack to bypass Bing's firewall and CAPTCHA)
    • Log in: https://copilot.microsoft.com/
    • Go to: https://edgeservices.bing.com/edgesvc/chat
    • Open the extension
    • Grant permission for All sites
    • Click Export on the bottom right, then Export as JSON (This saves your cookies to clipboard)
    • Paste your cookies into a file cookies.json, created in the same directory as the executable file.
    • Note: make sure you can use the web chat before exporting the cookie.
  2. Run the program.

Please follow the instructions in the next section to solve common issues.

Common issues

Proxy

Setting up a proxy is a must for users from mainland China.

  1. Go to settings in and try different proxy types. For example: http://127.0.0.1:7890, socks5://127.0.0.1:7890 (assuming 7890 is the port to your proxy here).
  2. If you use Clash or a similar proxy software, make sure that domains with the suffix bing.com are routed through the proxy. Some proxy providers may add bing.com to the direct rule, which means it will bypass the proxy.
  3. If this doesn't work either, leave the proxy blank, and try using Proxifier or Clash TUN mode.

Region pollution

For Chinese users only.

If the first time you open the Bing website without a proxy, it will redirect you to cn.bing.com and pollute your cookies, which means you will no longer access Bing AI with those cookies, even if you use a proxy afterwards. In case of region pollution, configure the proxy rules to make sure Bing will be accessed via proxy first and then clear all cookies from your browser or just open a privacy browsing window and log in your Microsoft account again and export the cookies finally.

Wss Reverse Proxy

Bing bans specific countries from accessing the Bing AI (to be specific, sydney.bing.com), so in that case you need to set up a wss reverse proxy with Cloudflare Workers. Here are the steps to do that:

Click me 1. Go to [this link](https://dash.cloudflare.com/) and sign in or sign up for a Cloudflare account. 2. In the sidebar, select `Workers & Pages`. 3. On the page that opens, click `Create application`. 4. Choose `Create Worker`. 5. Give your worker a name and click `Deploy`. 6. On the worker detail page, click `Quick edit`. 7. Copy all the code from [here](https://raw.githubusercontent.com/juzeon/SydneyQt/v2/worker.js) and paste it over the existing code in `worker.js`. Then click `Save and deploy`. 8. Copy the worker domain that looks like `xxxx-xxxx-xxxx.xxxx.workers.dev` (not a URL like `https://xxxx-xxxx-xxxx.xxxx.workers.dev/`, please remove the prefixes and suffixes) and paste it as `Wss Domain` in the settings page. Then click `Save`.

Cookie expiration

The cookies you set up before may expire from time to time. You can check the status of your cookies in the chat page of the software. In case of expiration, just redo the cookies importing steps in the Usage section.

CAPTCHA

Starting from v2.4.0, SydneyQt will launch a local Selenium browser to try resolving the CAPTCHA automatically, and use a Bypass Server instead if configured.

If this does not work, please follow these steps:

  1. Check if the cookies have expired. If so, re-importing them.
  2. After making sure the cookies are valid, open Bing Web in your browser and sending a random message. You should see a CAPTCHA challenge. If not, verify that the current user matches the cookies.json file. Complete the CAPTCHA and go back to the software. It should work fine now.

If you experience infinite CAPTCHA loops, you can try the following steps:

  1. Install Bing for mobile on your phone.

  2. Log in with your Microsoft account.

  3. Send a message to New Bing.

Make sure your proxy IP does not change. If you use Clash, disable load-balancing or round-robin modes and stick to one node only. Otherwise you will need to manually solve the CAPTCHA in your browser frequently.

Build

Environment: Go 1.21+, Node.js 16+

You can follow the development guidelines from Wails.

Here's the TL;DR version:

  1. Install Go and Node.js.
  2. Install Wails: go install github.com/wailsapp/wails/v2/cmd/wails@latest.
  3. Clone the project: git clone https://github.com/juzeon/SydneyQt.
  4. Run the building command: wails build.

Developer Notes

Use debug_options_sets.json to overwrite optionsSets, e.g:

[       
    "fluxsydney",
    "iyxapbing",
    "iycapbing",
    "clgalileoall",
    "gencontentv3",
    "nojbf"
]

Web API

Thanks to @PeronGH we now have a Web API. Check out for more details.

Screenshots

Star History

Star History Chart

Acknowledgement

https://github.com/acheong08/EdgeGPT

https://github.com/InterestingDarkness/EdgeGPT/tree/sydney

https://github.com/Harry-zklcdc/go-proxy-bingai