-
Notifications
You must be signed in to change notification settings - Fork 41
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Folders #75
base: main
Are you sure you want to change the base?
Folders #75
Conversation
…ual code to create the folder yet
…and other functionality
… of blue for selected chat and is the full row width
…ren't passed through when running a context menu at the top most elements
…me, delete functionality, drag drop for folders, conversations, dub folders and the conversation selection happening.
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
@psugihara Hey, not sure if you saw this? |
Hey, I think my notifications are messed up sorry. Just taking a look. |
Hey @EvolvingSoftware, I tried to run this but I get these errors: The code looks clean and just going off your screenshots this looks very cool. But as I mentioned in #43 I'd really prefer a folder UI that didn't interfere with the default time sorted list... that's how I like to use FreeChat: popping in for a quick question and often copying the result in a different program. If I'm going back for something, it's almost always in the latest 3 chats. Beyond my own use cases, I have some extra confidence that this is the right UI because the most popular chat clients do this too (GPT, claude). Any chance you'd want to adapt this to do more what Notes does with folders? I think we'd add a 3rd default-hidden "Folder" column to the NavigationSplitView that lets you do folder stuff. The nice thing about the Notes implementation is that it lets you opt-in to the complexity of folders if you want to get organized, but it defaults to the simple time sort. |
It's because I don't check in FreeChat.xcodeproj If I did, it would over write your developer settings? You just need to add that one file in to the build and exclude the other. I swapped the files over during the development due to some of the complexities I was having with the structures and the debugging. If that doesn't matter, I can just check it in next time but from my experience of taking your version of this file, there's normally 10 or so steps I need to go through to change things just to get it configured for my environment to build? (I haven't looked in to the best way to do this either).
I could, but also consider that the folders don't prevent you from using it the way you describe today. A new chat still just goes in chronological order on the left side and you don't need to create a folder at all. If you create a folder it's at the top but the default behaviour (unless your in a folder or have it highlighted) is for a chat to be created as it is now and just go in the existing timeline. It's probably a bit of sunk cost fallacy on my end for how long it took me to get them all working together, playing nice and looking good, so I probably just think it's a nice use case because of this. What I really want to do with the folders though, is have each folder be able to override the default agent behaviour/custom instructions. As an example, with Chat GPT, I use a custom instruction of "If I just paste text in that doesn’t make any sense in English, assume that it’s informal Indonesian texting between friends and translate it to English. Then after the translation of the sentence, translate each word individually so I can learn Indonesian." - This works great because I can just copy messages from WhatsApp in to ChatGPT and paste and get the exact result I want. But I can only have one of these instructions, so if I want to use it for coding, I keep providing context or writing articles etc etc. So what I was thinking is these folders are the jumping off point to hang this extra functionality off, which to your point ChatGPT doesn't do, as they've tackled it with Custom GPT's instead, but in a similar way, they sit at the top of the timeline view too. Anyway, let me know if that makes sense and if adding that one file in to your build and excluding the other works. |
Folders:
I've expanded the data model to introduce folders. The folders can be nested. Conversations can be moved in and out of folders. Folders and Sub Folders with Conversations can be deleted. Folders and Conversations can be renamed via context menu.
As this took me a bit longer than I originally anticipated, I also updated the LLaMA.cpp server at some point to a newer version.
The battle with SwiftUI for hierarchies in a list view is real..