Victor Dibia b2800d729b
Update AGS to Use AgentChat Declarative Config Serialization (#5261)
<!-- Thank you for your contribution! Please review
https://microsoft.github.io/autogen/docs/Contribute before opening a
pull request. -->

<!-- Please add a reviewer to the assignee section when you create a PR.
If you don't have the access to it, we will shortly find a reviewer and
assign them to your PR. -->

## Why are these changes needed?

This PR updates AGS to use the declarative config serialization native
to AgentChat.
The effect? You can build your teams/artifacts directly in python, run
`team.dump_component()` and immediately run it in AGS.

Some change details:

- Removes ComponentFactory. Instead TeamManager just loads team specs
directly using `Team.load_component`.
- Some fixes to the UI to simplify drag and drop experience.  
- Improve layout of nodes...


<!-- Please give a short summary of the change and the problem this
solves. -->

## Related issue number

<!-- For example: "Closes #1234" -->
Closes #4439 
Closes #5172

## Checks

- [ ] I've included any doc changes needed for
https://microsoft.github.io/autogen/. See
https://microsoft.github.io/autogen/docs/Contribute#documentation to
build and test documentation locally.
- [ ] I've added tests (if relevant) corresponding to the changes
introduced in this PR.
- [ ] I've made sure all auto checks have passed.


cc @EItanya @nour-bouzid
2025-01-31 00:24:37 +00:00
..
2024-09-30 10:20:38 -04:00
2024-09-30 10:20:38 -04:00
2025-01-15 14:00:47 -08:00
2025-01-14 21:19:47 -08:00
2025-01-15 14:00:47 -08:00

AutoGen Studio frontend

🚀 Running UI in Dev Mode

Run the UI in dev mode (make changes and see them reflected in the browser with hot reloading):

yarn install
yarn start               # local development
yarn start --host 0.0.0.0  # in container (enables external access)

This should start the server on port 8000.

Design Elements

Modifying the UI, Adding Pages

The core of the app can be found in the src folder. To add pages, add a new folder in src/pages and add a index.js file. This will be the entry point for the page. For example to add a route in the app like /about, add a folder about in src/pages and add a index.tsx file. You can follow the content style in src/pages/index.tsx to add content to the page.

Core logic for each component should be written in the src/components folder and then imported in pages as needed.

Connecting to backend

The frontend makes requests to the backend api and expects it at /api on localhost port 8081.

setting env variables for the UI

  • please look at .env.default
  • make a copy of this file and name it .env.development
  • set the values for the variables in this file
    • The main variable here is GATSBY_API_URL which should be set to http://localhost:8081/api for local development. This tells the UI where to make requests to the backend.