Skip to content
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

Add goose versions to the UI #526

Merged
merged 4 commits into from
Jan 10, 2025
Merged

Add goose versions to the UI #526

merged 4 commits into from
Jan 10, 2025

Conversation

zakiali
Copy link
Collaborator

@zakiali zakiali commented Dec 28, 2024

This PR adds named agent versions to the UI. In the screen shot you'll see the current goose version into the bottom bar and an updated drop down menu to choose a version. Clicking on a version opens up a fresh chat window with the chosen agent version.

image

Happy to get feedback on this/hold it. This was mainly a POC for me to see if the named agents were working correctly and that the goose-server exposed the right data

@@ -61,6 +60,7 @@ let appConfig = {
GOOSE_API_HOST: 'http://127.0.0.1',
GOOSE_SERVER__PORT: 0,
GOOSE_WORKING_DIR: '',
GOOSE_AGENT_VERSION: '',
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

where is this set? (BTW this section can be dynamicaly replaced at build time when packaging it up)

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

currently not set, but defaults to the "base" version of the app (from goose-server), which is what we want. There's probably a better way to do and happy for feedback on that (first time on the UI side)

@michaelneale
Copy link
Collaborator

michaelneale commented Dec 28, 2024

not quite sure I follow if this is for dev time or run time selection? (would want to make sure this works how you want it to when you build it into an .app). Would there be multiple agents in the one binary?

@zakiali
Copy link
Collaborator Author

zakiali commented Dec 30, 2024

@michaelneale
The flow I was thinking here was:

  • user starts up app and defaults to the base agent (recommended and vetted performance)
  • other versions of the agent are built into the binary. they can be chosen from the more menu to test new/updated functionality, etc..
  • users can select a new version, and a new chat window is created with the new version

we could set env vars for the different agent versions, or have a some sort of selection window pop up but that seems like a not so great experience. Maybe a keyboard shortcut would be better here to open up an agent selection window? Not sure that the best approach is, but happy to get feedback there (and also happy if the UI team wants to take this integration over, just wanted something quick to test out the agent version selections from the UI)

@zakiali zakiali force-pushed the zaki/goose-versions-ui branch from e25b887 to 2ec8f63 Compare January 9, 2025 05:29
@zakiali zakiali changed the base branch from zaki/named_agents to v1.0 January 9, 2025 05:32
@lily-de
Copy link
Collaborator

lily-de commented Jan 9, 2025

One thought -- the style of the working directory (small gray text bottom left) is the same as the agent version on the right. We have no visual indicator to the user that the working directory is something they can click and edit, so maybe we can take that approach for the agent version? I.e. we just click the text at the bottom right and select the agent version from a little drop down box from there?

@zakiali zakiali force-pushed the zaki/goose-versions-ui branch from 2ec8f63 to 1736fd0 Compare January 10, 2025 19:36
@zakiali
Copy link
Collaborator Author

zakiali commented Jan 10, 2025

Updated to remove the agent version name from the bottom, but still indicated in the more menu
image

Copy link

Desktop App for this PR

The following build is available for testing:

The app is signed and notarized for macOS. After downloading, unzip the file and drag the Goose.app to your Applications folder.

This link is provided by nightly.link and will work even if you're not logged into GitHub.

@alexhancock alexhancock self-requested a review January 10, 2025 22:28
@zakiali zakiali merged commit f8643cb into v1.0 Jan 10, 2025
6 checks passed
salman1993 added a commit that referenced this pull request Jan 13, 2025
* origin/v1.0:
  feat: env and secrets configuration for mcp server (#565)
  Add Databricks moderation (#540)
  feat: add pagination support for tools/list and resources/list (#566)
  Add resource capabilties to MCP servers that use it (#576)
  Add goose versions to the UI (#526)
michaelneale added a commit that referenced this pull request Jan 14, 2025
* v1.0:
  feat: static settings page (#570)
  styles: adding arcade styles and cash sans (#581)
  feat: quick spinner while loading tokenizers (#573)
  Add timeout middleware for clients (#572)
  chore: remove unused old setup for CLI  (#574)
  feat: env and secrets configuration for mcp server (#565)
  Add Databricks moderation (#540)
  feat: add pagination support for tools/list and resources/list (#566)
  Add resource capabilties to MCP servers that use it (#576)
  Add goose versions to the UI (#526)
  fix: Set stdin to null in shell/bash tools (#568)
  Add base moderation to Providers (#513)
  feat: set process_group(0) on stdio systems to avoid ctrl-c handling (#567)
  feat: read only active resources in the agent loop (#560)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants