smol-ai / godmode Goto Github PK
View Code? Open in Web Editor NEWAI Chat Browser: Fast, Full webapp access to ChatGPT / Claude / Bard / Bing / Llama2! I use this 20 times a day.
Home Page: https://smol.ai
License: MIT License
AI Chat Browser: Fast, Full webapp access to ChatGPT / Claude / Bard / Bing / Llama2! I use this 20 times a day.
Home Page: https://smol.ai
License: MIT License
people might want to use other chat apps, eg HuggingChat, or Vicuna or OpenAssistant.
would like to keep the number of panels to 3 (so it doesnt get too busy? but maybe we could bring it up to 6 with a second row?), but let people customize their fave chat apps for each window
however the app works by also needing a selector for the text input, and the submit button, and users aren't likely to find those on their own
easiest way is to maintain a static list of other known chat apps, that also have their input and submit selectors hardcoded.
reach goal: choices should persist esp thru version upgrades of smol menubar (so maybe store in disk?)
Excited to have finally gotten access to Claude with the new open beta, but there's a strange bug in menubar that won't allow me to sign in either using Google OAuth or the email auth flows.
Tried updating the URL to the public URL and also changing the user agent to Edge (copied the code from the Bing implementation), but neither are working.
I'm on Windows. Installation went without issues. Hitting CMD + enter submits messages to ChatGPT / Bing, but for Bard, I have to click on "send" additionally. The prompt itself is synchronized. How to fix?
Can't test Claude v2 since I'm in europe.
I will try to implement this over the weekend if I have a chance, but would like to have a config option that makes GPT4 the default on chat.openai.com
Side note - enjoyed your demo yesterday @swyxio!
would be great if this app support brew cask install
I'm running this on Windows 10 and having an issue with copy pasting into it. Anytime I paste text it copies the text twice, anyone else having this issue?
Something about the way you've got your hotkeys set up causes copy-paste with CTRL-C / CTRL-V to duplicate the copied text three times. This is annoying when trying to copy and paste a password into the window. I was able to bypass this problem by pasting with right-click.
My login also got rejected by OpenAI, probably because of their Auth0 CSRF token authentication system. And then they wanted me to sign in with an email link, which opened in the regular browser rather than in the menubar window.
Can you provide details instructions or easy way for a non programmer to install it.
Thanks
add vercel chat provider plugin https://chat.vercel.ai/
It interferes with other apps like VSCode's "Find in project" shortcut. I would suggest that we listen for this shortcut in the interface.js
file instead. Then it will only be triggered when the interface is open.
Happy to implement this if I get the thumbs up.
@seanoliver an easy one to ease you back in
I do not have access to Claude. Is there a way to permanently disable it so I only see Chatgpt and Bard? I try to move it out of the screen which works fine. But then after I type something, and want to delete the previous thing that I typed, I hit command-A (to highlight the previous text to be deleted) and the Claude screen appears again.
Problem: if you use multiple desktops (spaces) on macOS, then pressing Command + Shift + G will switch to the desktop that you originally opened the app on.
Expected behaviour: I would expect the app to open on the current desktop, regardless of which desktop it was originally opened on.
Workaround (updated): right click on the app, select Options, and then Assign To All Desktops.
most chat ux is just one textbox.
but actually it's useful to have little toggles or dropdowns that set the chatapps to respond in certain useful ways:
etc
questions
I was able to build for Windows using electron-forge make --platform=win32 --arch=ia32,x64
within the https://hub.docker.com/r/hackash/electron-windows-build image (in a codespace).
we have support for quite a few platforms:
but not for arch linux
there seems to be support for electron forge arch, but this issue isnt clear on how to do it. please help!
The app's dock icon is always visible while the app is open. its not necessary to have both the menu bar icon and the dock icon to show together. (unless im missing a settings option?)
i cant use the shortcut anymore in Jetbrains or any other app because its bound to smol fullscreen mode.
would be nice to disable the shortcut or bind tit to something else
body {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
padding: 0;
margin: 0;
overflow: hidden;
}
:root {
--actual-height: calc(100vh - 12px - 80px);
}
.myarrow {
position: relative;
padding: 12px 0 0 0;
}
.myarrow:before {
content: "";
height: 0;
width: 0;
border-width: 0 8px 12px 8px;
border-style: solid;
border-color: transparent transparent white transparent;
position: absolute;
top: 0;
left: 50%;
transform: translateX(-50%);
}
@media (prefers-color-scheme: dark) {
.myarrow:before {
border-color: transparent transparent #343541 transparent !important;
}
}
.page {
background: #eeeeee;
width: 100%;
height: calc(100vh - 12px - 80px);
margin-top: 12px;
margin: 0 auto;
position: relative;
}
.flex {
display: flex;
border-radius: 8px;
overflow: hidden;
}
#form {
height: 80px;
width: 100%;
display: flex;
padding: 5px;
}
#form textarea {
width: 100%;
height: 80px;
resize: none;
overflow-y: auto;
padding: 0 12px;
font-size: 16px;
outline: none;
background-color: bisque;
flex-grow: 1;
}
#form button {
margin: 0 4px;
padding: 0 12px;
}
webview {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: calc(100vh - 12px - 80px);
display: inline-flex !important;
}
.gutter {
background-color: #eee;
background-repeat: no-repeat;
background-position: 50%;
}
.gutter.gutter-horizontal {
background-image: url("images/vertical-grip.png");
cursor: col-resize;
}
/* Customize the bar color for Split.js */
.split .split-content::after {
background: linear-gradient(to right, #4c6ef5, #9059ff);
}
/* Customize the bar color on hover */
.split .split-bar:hover {
background: linear-gradient(to right, #4c6fff, #9f59ff);
}
/* Additional Styling */
.page.darwin webview {
width: 100%;
height: 100%;
}
#one.split.page.darwin webview,
#two.split.page.darwin webview,
#three.split.page.darwin webview {
width: 100%;
height: 100%;
}
#one.split.page.darwin webview {
width: 1194px;
}
@media screen and (max-width: 1194px) {
#one.split.page.darwin webview {
width: 100%;
}
}
@media screen and (max-width: 1194px) and (orientation: landscape) {
#one.split.page.darwin webview {
height: 100%;
}
}
lets support https://gpt4all.io/index.html
if we can map the ports it should not be that hard
Problem: if you press Command + Shift + G on MacOs, the input field is not automatically activated for typing and Enter will submit.
Expected behavior: I would expect the app to automatically activate the field for typing so that I can start writing straight away after pressing Command + Shift + G. Also, I would expect Enter to result in a line break and CMD + Enter to Submit.
This project is really cool and helpful, but using original chatgpt with chrominium is not best experience, because it will make error network time by time, so if this can integrate with chatgpt's api and web UI, that would be nice.
like: https://github.com/mckaywrigley/chatbot-ui
I'm loving the menu bar, using it daily. Things do get a little cramped on the screen — maybe more so since I have a learning disability - but I'd wager for anyone, since both GPT-n and Bard output walls of content.
A few ideas that'd help a ton, in no particular order:
I particularly like the external window idea since:
1
above)this regression happened sometime between v0.16 and the current main branch.
lets make sure to fix this or investigate @seanoliver
i think regression happeend in #99
I find myself having to switch providers a lot. Preplexity/bing/bard when I need search. GPT/Claude for more normal stuff. This will only get more complex over time.
I'd wanna build a cmd+k type interface that lets you do this easily. Maybe there's an easier way to do this with just a bar at the top that's super slim with checkboxes on the side. If people like this, I can make this pretty quickly.
the superprompt box right now is kind of an ugly yellow.
what should it look like?
note: i am getting a new design done for the icon, i know it sucks haha
Request: allow option to toggle light/dark mode
Apologies if this is already available and I missed it. Please let me know where to find it if that's the case.
Also, I can maybe take a stab at adding this myself if someone tells me the relevant files to look at (not too familiar with the codebase).
I created this issue just in case my tweet gets buried.
I'm not sure about your preference for code structure and external deps, so I created a a sandbox based on this repo. I am using jQuery and its resize plugin because you mentioned that you're already using it (I've never written jQuery in my life, so this has been a fun exercise).
You can search for "MODIFIED CODE" to see my changes. Let me know if you have any question.
Would be nice not to have to download the latest binary after each release and have a setting where the app can update itself and/or alert you to the latest version so you can do the update.
The current keybinds, specifically Shift+CMD+R
and Shift+CMD+G
, are interfering with keybinds in my IDE. This is causing unexpected behavior and disrupting my workflow. Ideally, the keybinds should be customizable, allowing users to avoid conflicts with other software, via a settings page or at least a config file.
I was literally just texting my friends about building something like this and then stumbled over it after reading the code for smol developer. Thank you !!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.