How tarigopullasathwik/hack_with works
RecallDesk is an AI customer-support application with a React interface and FastAPI backend. The principal workflow is a customer-support chat: the frontend submits a customer message, the backend agent can consult customer history and support tools, and the response can include a resolution, ticket, or escalation handoff. The product also exposes customer, ticket, knowledge, memory, and demo views. Route implementations and several agent details were not sampled, so links between those subsystems are shown only where supported by the supplied entry point, client, or tool excerpts.
Main entry points: main.py FastAPI application · api.ts API client · manager.py Memory manager · support_agent.py Support agent
Components 24
Support workspace
- Web application
recalldesk/frontend/src/App.tsx - Chat interface
recalldesk/frontend/src/components/chat/ChatWindow.tsx - API client
recalldesk/frontend/src/services/api.ts - Dashboard view
recalldesk/frontend/src/pages/DashboardPage.tsx - Demo scenarios
recalldesk/frontend/src/pages/DemoPage.tsx - Memory view
recalldesk/frontend/src/pages/MemoryPage.tsx - Ticket view
recalldesk/frontend/src/pages/TicketsPage.tsx - Knowledge view
recalldesk/frontend/src/pages/KnowledgePage.tsx
Backend API
- FastAPI application
recalldesk/backend/app/main.py - Chat endpoint
recalldesk/backend/app/api/routes/chat.py - Customer endpoints
recalldesk/backend/app/api/routes/customers.py - Ticket endpoints
recalldesk/backend/app/api/routes/tickets.py - Knowledge endpoints
recalldesk/backend/app/api/routes/knowledge.py - Memory endpoints
recalldesk/backend/app/api/routes/memory.py - Demo endpoints
recalldesk/backend/app/api/routes/demo.py
Support agent
- Support agent
recalldesk/backend/app/agents/support_agent.py - Support tools
recalldesk/backend/app/tools/support_tools.py - LLM client
recalldesk/backend/app/agents/llm_client.py
Product state
- Application database
recalldesk/backend/app/database/db.py - Domain models
recalldesk/backend/app/models - Memory manager
recalldesk/backend/app/hindsight/manager.py
Other components
- Support user
- LLM provider
- Hindsight service
Connections 25
- Support user → Web application: uses
- Web application → Chat interface: renders
- Chat interface → API client: submits message
- Dashboard view → API client: requests data
- Demo scenarios → API client: requests scenarios
- Memory view → API client: requests memories
- Ticket view → API client: requests tickets
- Knowledge view → API client: requests articles
- API client → FastAPI application: HTTP requests
- FastAPI application → Chat endpoint: mounts routes
- FastAPI application → Customer endpoints: mounts routes
- FastAPI application → Ticket endpoints: mounts routes
- FastAPI application → Knowledge endpoints: mounts routes
- FastAPI application → Memory endpoints: mounts routes
- FastAPI application → Demo endpoints: mounts routes
- Chat endpoint → Support agent: handles chat
- Support agent → Support tools: invokes tools
- Support agent → LLM client: generates response
- LLM client → LLM provider: calls completion API
- Support tools → Application database: reads and writes
- Support tools → Memory manager: recalls history
- Memory endpoints → Memory manager: manages memories
- Demo endpoints → Memory manager: reads memory history
- Memory manager → Hindsight service: stores and recalls
- Application database → Domain models: persists records