██████╗ ███████╗███████╗██╗ ███████╗██╗ ██╗████████╗ ██╔══██╗██╔════╝██╔════╝██║ ██╔════╝██║ ██╔╝╚══██╔══╝ ██║ ██║█████╗ █████╗ ██║ █████╗ █████╔╝ ██║ ██║ ██║██╔══╝ ██╔══╝ ██║ ██╔══╝ ██╔═██╗ ██║ ██████╔╝███████╗██║ ███████╗███████╗██║ ██╗ ██║ ╚═════╝ ╚══════╝╚═╝ ╚══════╝╚══════╝╚═╝ ╚═╝ ╚═╝

Developers should never
do support.

60 tickets. One command. Zero context switching.

$ bin/deflekt run
[09:01] Fetching 47 open tickets from Freshdesk...
[09:01] Analyzing ticket #48291 - Factuur niet zichtbaar...
[09:03] Root cause identified: invoice visibility filter
[09:03] Reply drafted (NL + FR)
[09:03] Bug auto-fixed → PR #1847 created
[09:04] Analyzing ticket #48293...
...
[09:31] Done. 47 tickets triaged. 3 bugs auto-fixed.
[09:31] Briefing ready at localhost:4567
"I'm a solo dev maintaining a SaaS used by thousands. Every morning: 60+ support tickets in Dutch, a language I don't speak, spread across Freshdesk and Intercom. I was mass-closing tickets at 11pm. Something had to change."

- the developer who built this, probably at 11pm

See it in action

Dashboard - your entire support queue at a glance
Triage dashboard showing ticket list with priorities, categories, and autofix status
AI analysis with suggested replies
Ticket detail showing AI-generated analysis and bilingual reply
Daily briefing with patterns
Daily briefing showing executive summary and ticket patterns
Autofix diff - review AI-generated code changes
Diff viewer showing AI-generated code fix with red/green changes

What it does

--analyze
AI reads every ticket, understands the issue, checks your codebase, and queries production data. In any language.
--dashboard
Web UI to filter, review, and act on your entire support queue. Priorities, categories, and status at a glance.
--autofix
Finds the bug in your code, writes the fix, runs your tests, and opens a draft PR. You just review the diff.
--reply
Drafts bilingual customer replies in your tone and voice. Copy, paste, send. Or approve from the dashboard.
--briefing
Daily patterns across all tickets. What is breaking, what is urgent, what you can batch-close.

How it works

1
Connect
Point it at your Freshdesk and your codebase. One config file.
2
Run
$ bin/deflekt run
Go get coffee.
3
Review
Open the dashboard. Approve replies, review PRs, close tickets.
3h → 15m
Daily support time
47
Tickets triaged before your first coffee
1
Developer needed

The stack

Ruby + Sinatra + htmx + SQLite + Claude

No Kubernetes. No microservices. Just one script.

Open source. Bring your own keys.

No vendor lock-in. No SaaS subscription. You own the code. Your data never leaves your infrastructure.

Built by

Ihcène Medjber

Lead Backend Engineer · Entrepreneur · MSc Computational Biology

Ruby engineer and startup founder. I built Deflekt because I was drowning in 60+ daily tickets in a language I don't speak while maintaining a SaaS used by thousands. Now I ship code instead.

LinkedIn

Stop doing support.

Let AI triage your tickets while you ship code.

Get started