Customer supportCAN I VIBECODE
Freshdesk?
BUILD FIRST
- One specific customer type and one primary use case
- A vertical slice that completes the main job without manual workarounds
- Visible limits, review steps, and a fallback when an external dependency fails
LEAVE FOR LATER
- Broad third-party integrations
- High-scale collaboration, syncing, and permissions
- Automation that can cause harm without human review
RESEARCH NOTES
What this tool actually does.
Freshdesk is a cloud-based customer support/helpdesk platform by Freshworks. It provides a unified agent workspace for managing support tickets across email, chat, and voice channels. Core capabilities include a ticketing system with shared inboxes, internal threads, task linking, parent/child ticket hierarchies, and ticket templates. Routing and automation support ticket dispatch via custom business rules, skill-based and round-robin/load-balanced assignment, time/event-based triggers for escalations and follow-ups, and multiple SLA policies. Built-in Freddy AI prioritizes tickets by customer sentiment, summarizes tickets, drafts email replies, and generates help articles. Self-service includes a multilingual knowledge base. Analytics and insights track support performance. Integrations include external apps and MCP for AI workflows.
RESEARCHED BUILD PROMPT
Give this to your coding agent.
Build a self-hosted replacement for Freshdesk's core helpdesk workflow: a multi-agent ticket management system where inbound issues (submitted via an email gateway or web form) become tickets with status, priority, assignee, requester, and internal notes. Agents work in a shared queue with filters, sort, and search; they can respond to requesters via email or a public reply thread, add internal notes visible only to agents, link related tickets, and split a ticket into parent/child subtasks.
User-facing requirements:
- Requester-facing submission form and optional knowledge-base portal with searchable articles
- Agent dashboard with ticket list (filters by status, priority, assignee, channel, tags) and ticket detail view with conversation thread and internal notes
- Email notifications for replies and status changes
- SLA timers per ticket based on priority and business hours, with visible breach indicators
- Round-robin and skill-based assignment rules
Technical requirements:
- Backend: Node.js/Express or Python/FastAPI with PostgreSQL (SQLite for local dev)
- Frontend: React or Vue single-page app
- Real-time updates via WebSocket (Socket.IO) or polling fallback
- REST API covering tickets, comments/notes, agents, customers, and knowledge-base articles
- Role-based auth (admin, agent, requester) with JWT or sessions
- Email ingestion via IMAP polling or a webhook/mailgun-style endpoint
- Cron job for SLA checks and escalation triggers
Implementation choices:
- Relational schema for tickets (id, requester_id, assignee_id, subject, body, status, priority, channel, sla_due_at, timestamps), public/internal comments, and many-to-many tags
- SLA policies per priority defining first-response and resolution times, with deadlines computed at ticket creation/update
- Config via env vars for email server, database connection, and admin seed
Out of scope:
- Do not implement Freddy AI, sentiment analysis, or AI draft generation
- No multi-brand tenancy, no marketplace/third-party integration hub
- No mobile apps or telephony/voice channels
- No dedicated analytics dashboards beyond basic ticket counts and CSV export
Do not copy Freshdesk's brand name, logo, color scheme, marketing copy, or UI layout; use a neutral, clean interface with your own visual identity.
Deliver a monorepo with backend and frontend directories plus a README covering local setup (deps, DB migration, admin seeding, email env vars) and listing limitations: email ingestion requires an IMAP account or webhook endpoint, SLA checks assume a single timezone unless you implement timezone-aware business hours, and the system does not handle voice. Write from scratch; do not embed Freshdesk source or official SDKs.