Add LangGraph agent with SSE streaming and notifications UI#6
Open
yawbtng wants to merge 3 commits into
Open
Conversation
… workspace orchestrator - Implement custom LangGraph StateGraph agent with intent routing, tool execution nodes, and human-in-the-loop approval flow (backend/app/agent/) - Add FastAPI SSE streaming endpoints for real-time chat (backend/app/api/chat.py) - Add session, task, health, and notification API routes (backend/app/api/) - Implement GWS CLI runner for Google Workspace tools (backend/app/core/gws_runner.py) - Add heartbeat service for proactive nudges (backend/app/services/heartbeat.py) - Add in-memory store for session/task state (backend/app/services/store.py) - Add Pydantic settings config loading from .env (backend/app/config.py) - Add frontend Notifications panel with real-time polling (frontend/src/components/Notifications/) - Add NotificationsContext for global notification state (frontend/src/contexts/) - Update layout and sidebar to integrate notifications - Add start.sh convenience script for running both services - Add .langgraph_api/ to gitignore
Keep both BrainCircuit (Agent Inbox navigation) and Bell (Notifications panel) icons in the sidebar — collapsed and expanded views.
Introduces tauri-compat.ts that maps Tauri IPC commands to HTTP REST endpoints on the Python backend, enabling the Next.js frontend to run in a standard browser without the Tauri desktop shell. All direct imports of @tauri-apps/api are replaced with safe wrappers that dynamically import Tauri when available or fall back to HTTP/no-ops.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
StateGraphagent with intent routing, tool execution, and human-in-the-loop approval flow for email/calendar actionsNew Backend Modules
backend/app/agent/— StateGraph definition, nodes, prompts, state, tools (GWS, Exa, memory, notifications, data)backend/app/api/— Chat (SSE), sessions, tasks, health, notifications endpointsbackend/app/core/— GWS CLI runner, SSE helpersbackend/app/services/— Heartbeat service, in-memory storebackend/app/config.py— Pydantic settings from.envFrontend Changes
frontend/src/components/Notifications/— NotificationsPanel + NotificationCardfrontend/src/contexts/NotificationsContext.tsx— Global notification stateTest plan
cd backend && python app/main.pyGET /healthPOST /api/chat