AgentVerse Hackathon Track 1 - Reimagining the Workplace
Incorporates a network of agents:
- text agent
- speech agent
- transcribe agent
- allocation agent
Key pieces
frontend/app.py- Streamlit app. Shows "Login with Google" button, chat UI, and forwards messages toagents/text_agent.py.agents/text_agent.py- Refactored text agent withgenerate_text(prompt)and CLI entrypoint; writestext_agent_output.json.requirements.txt- lists required Python packages (Streamlit and Google auth libs added).
Quick setup
-
Create a Google OAuth client (Web application) in Google Cloud Console.
- Set the authorized redirect URI to
http://localhost:8501/(for local Streamlit runs). - Download the JSON and save it as
frontend/agentverse-streamlit-app/client_secrets.json.
- Set the authorized redirect URI to
-
Install Python deps python -m pip install -r requirements.txt
-
Set the GenAI API key for the text agent as an environment variable: export GENAI_API_KEY="your_genai_api_key"
-
Run the Streamlit app from repository root: streamlit run frontend/app.py
-
Click "Login with Google" and complete the consent flow. After redirect back to the app, you'll be logged in. Type into the chat box and press Send.
Notes and assumptions
- The app implements a server-side OAuth flow using
google-auth-oauthlib. Theclient_secrets.jsonmust contain the web client credentials (the file Google gives you for web apps). - This setup assumes you register
http://localhost:8501/as the OAuth redirect URI in Google Cloud Console. - The text agent uses the
google.genailibrary (existing in the repo). Ensure theGENAI_API_KEYenv var is set.
Security
- Never commit
client_secrets.jsonor API keys to source control. Keep them local or in a secure secret manager.