simonpcouch / pal

LLM assistants for R
https://simonpcouch.github.io/pal/
Other
5 stars 3 forks source link

spec interface for custom pals #23

Closed simonpcouch closed 1 week ago

simonpcouch commented 1 week ago

So close to this being where I want it to be, but struggling to get it over the finish line.

The idea is that pal_add() will do all the work to configure an addin and then trigger whatever hook RStudio uses to refresh the addins registered for a package. So, a user can interactively add a pal using just a role and a prompt that will be an addin that lasts for as long as the session. For whatever reason, I can get this to work with devtools::load_all(pkg_path) run interactively, but not via a helper or via pkgload. This feels related.

https://github.com/user-attachments/assets/17ed50e2-0845-42e5-a158-5d3ab3613354

In general, doing away with leaning so heavily on the keyboard shortcut interface, instead preferring the command palette, as one will probably run out of reasonably accessible/memorable shortcuts pretty quickly.

simonpcouch commented 1 week ago

Related to #4 and #7.

simonpcouch commented 1 week ago

Another possible interface here is to just have one, "regular" add-in that's a Shiny Gadget with an interface like Continue—press some key command (or trigger via addins list), a dialog box pops with a text field, type in an enum with autocompletion (just the role—e.g. "cli" or "testthat"). This would diverge from how (I think) we're planning for the Positron interface to feel, though, where there are just "addins" registered with a "Pal: " prefix that can be dynamically registered (similar to what this PR aims for right now.)

simonpcouch commented 1 week ago

Closing in favor of the approach in #26.