EZGPT.APP 4.0 for Chrome and Edge 116 or newer
http://localhost:1234/v1 preselected. Change the preset in Settings if you use something else.The side panel is the main window. It stays open while you click around the page or switch tabs, and a streaming reply keeps going. Open it with the toolbar icon or Ctrl+Shift+E.
The top bar holds, left to right: the chat-list toggle (☰), the provider dropdown, the model dropdown, then New chat (+), Open in tab and Settings (gear).
When you want more room, click Open in tab in the top bar. The full tab shows the same chats with the chat list as a permanent left column. Both views share one set of settings and one chat history.
The popup and detached window from 3.x no longer exist. They were removed because clicking the page closed the popup and stopped streaming.
A provider is a server endpoint. Add as many as you like in Settings → Providers with Add provider. The form has Preset, Name, Base URL, API key, System prompt, Context window and Default model, plus Discover models and Test connection buttons and Save provider. Choosing a preset fills in the base URL for you. Each provider card has Use, Edit and Delete.
On first run one provider is seeded for you, LM Studio (local) at http://localhost:1234/v1, so the panel opens straight into chat. If you ever delete every provider, the panel opens on Settings with "Add a model server to start."
http://localhost:1234/v1, no key. The default preset.http://localhost:11434/v1, no key. Setting OLLAMA_ORIGINS is not needed once you allow the origin.https://api.openai.com/v1, needs your API key./v1.Use the machine's IP or hostname in place of localhost, for example http://192.168.1.50:1234/v1. In LM Studio tick "Serve on local network". For Ollama set OLLAMA_HOST=0.0.0.0 on the server machine so it listens on the LAN.
Test connection sends one small request to confirm the URL and key work. Discover models asks the server for its model list and fills the model dropdown. Both call only the server you configured.
Settings → Providers → Add provider → choose the preset, for example Ollama, which fills in http://localhost:11434/v1 → optionally Discover models → Save provider. The browser then asks to allow access to that address. Pick the new provider from the top-bar provider dropdown, or click Use on its card.
The system prompt is sent at the start of every chat with that provider. The context window tells EZGPT.APP how much history it can send. Older messages are trimmed when a chat grows past it. Set it to your model's real limit.
4.0 asks for nothing at install. Access to an address is requested the first time it is needed:
localhost:1234;The browser shows a prompt such as "Allow access to localhost:1234". Allow it and the request goes through. You can review or revoke these grants at any time from the extension's details page under Site access.
The top bar has a provider dropdown and, to its right, a model dropdown listing the models discovered for that provider. Pick a model from the model dropdown. The choice is stored per chat, so different chats can use different models on the same provider without touching settings. Both dropdowns are locked while a reply is streaming.
If the list is empty, open Settings → Providers, Edit the provider and click Discover models, or check that the server has a model loaded. The provider's Default model is used for new chats.
Alt+1 through Alt+9 switch between your providers in the order they appear in Settings.
Two ways to give the model the page you are looking at:
Attached text appears as a chip on your message. It is sent with that message and stored in the chat like any other text. Nothing is read from a page until you do one of these things.
Usually no prompt appears, because your click grants the extension one-off access to that tab. When it does not, the extension shows a short explanation before the browser asks, and you can decline.
Browser pages such as chrome://extensions, the Web Store and PDF viewers cannot be read. You will see "This page can't be read" instead.
Models such as DeepSeek-R1, Qwen3, QwQ and gpt-oss think before they answer. EZGPT.APP shows that thinking in a collapsible block above the reply, whether the server sends it as a reasoning_content or reasoning field or inline as <think> tags. The block is collapsed by default. The thinking is not sent back to the model on the next turn.
Paste an image from the clipboard, drop a file onto the panel, or use the attach button. The image is shown on your message and sent to the model. Use a vision model such as Qwen-VL, LLaVA, Pixtral or GPT-4o. A text-only model will ignore or reject the image.
Images are stored in your browser's IndexedDB and are included in full backups.
Click the sliders icon in the composer's tool row to open the Parameters dialog. These apply to this chat only:
Leave a field empty to use the server's default. Reset clears them, Apply saves them for this chat.
Click the snippet icon in the composer's tool row, next to the paperclip and page icons, to open the Snippets dialog. It has search, edit and delete per row, and Save current message to turn what you have typed into a snippet. Choosing a snippet inserts it into the message box. Snippets are included in backups and were migrated from 3.x if you had them.
If you press Stop or close the panel mid-reply, the partial reply is kept.
Settings → Data → Export backup writes one file with your settings, providers, snippets, chats and images. API keys are left out unless you tick Include API keys. Import backup restores it on the same or another browser. The same section has Delete all chats and Reset everything.
The backup file is saved by your browser's download manager. EZGPT.APP does not send it anywhere.
Appearance settings apply to both the side panel and the full tab. Settings has five sections: Providers, Appearance, Behaviour, Data and About. About lists the keyboard shortcuts.
The side panel shortcut can be changed at chrome://extensions/shortcuts.
Your providers, chats, images and snippets are migrated automatically the first time 4.0 starts. What changes:
No account, no analytics, no telemetry. Settings, chats and images stay in your browser. The extension talks only to the servers you add, and only when you send a message, discover models or test a connection. Page text is read only when you click Attach page or use the context menu.
The full text is on the privacy policy page.