Self-hosted gateway that connects phone lines and chat channels to AI agents, using your own API keys.
szerintedmi/callsitter
An AI phone assistant that answers calls for its owner, wastes scammers' time, declines sales calls, and takes messages from real callers.
Open-source alternative to:Google Call Screen
- Stars
- 19
- Forks
- 3
- Open issues
- 0
- Last commit
- 3 days ago
What is it?
CallSitter answers the owner's phone when calls are diverted to a Telnyx number. An OpenAI realtime agent handles the conversation, while a classifier called TypeSafe Jev scores the growing transcript for scam, spam and genuine intent. A YAML-driven call flow then steers the agent: it wastes time on scammers, politely declines sales calls and asks to be removed from lists, or takes a message from genuine callers.
A second model, GPT-6 Luna, works for the owner rather than the caller. It writes rolling summaries, open questions and suggested replies, and produces an end-of-call summary. The owner follows each call through a single Telegram status message that updates as the call progresses, and can steer the agent by replying, using stage buttons, or taking over the call directly through a browser page.
The project also tracks per-call costs from vendor-reported usage and enforces spend, concurrency and per-caller limits. Recordings are published on a public site, and the code is Apache-2.0 licensed, though the call recordings in the demos folder are not.
Key features
- 01Answers diverted calls with an OpenAI realtime voice agent via Telnyx.
- 02Classifies calls as scam, spam or genuine and steers the agent accordingly.
- 03Takes messages from genuine callers and includes them in the call summary.
- 04Sends a single Telegram status message per call, updated live.
- 05Lets the owner steer the agent or take over the call from Telegram or a browser.
- 06Tracks per-call costs and enforces spend, concurrency and call limits.
Use cases
- Wasting the time of automated scam callers without answering personally.
- Politely declining sales and robocalls on a personal number.
- Capturing messages from legitimate callers while away from the phone.
- Studying how an AI call screener is built from classification, call flow and live steering.
Quick start
- 1
Install dependencies with Bun
bun install - 2
Create your .env file and fill in your API keys
cp .env.example .env - 3
Start the dev server and open the admin UI
bun run dev
Things to know
- Running it for real calls needs accounts and keys for several vendors, including Telnyx, OpenAI, Telegram and a Cloudflare tunnel.
- Setup is self-hosted and involves telephony and tunnel configuration, which takes real effort.
- Call costs are billed by the vendors, and the README describes a spending cap that you must configure.
Topics
FAQ
- What is callsitter?
- An AI phone assistant that answers calls for its owner, wastes scammers' time, declines sales calls, and takes messages from real callers. CallSitter answers the owner's phone when calls are diverted to a Telnyx number. An OpenAI realtime agent handles the conversation, while a classifier called TypeSafe Jev scores the growing transcript for scam, spam and genuine intent. A YAML-driven call flow then steers the agent: it wastes time on scammers, politely declines sales calls and asks to be removed from lists, or takes a message from genuine callers.
- Is callsitter free to use? What license does it have?
- callsitter is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is callsitter still maintained?
- Actively maintained. The last commit to callsitter was on Oct 18, 2026.
- What can I use callsitter for?
- Wasting the time of automated scam callers without answering personally. Politely declining sales and robocalls on a personal number. Capturing messages from legitimate callers while away from the phone. Studying how an AI call screener is built from classification, call flow and live steering.
- How do I install callsitter?
- Install dependencies with Bun: bun install Create your .env file and fill in your API keys: cp .env.example .env Start the dev server and open the admin UI: bun run dev
- Where can I get callsitter?
- The source code and installation instructions are on GitHub: https://github.com/szerintedmi/callsitter
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A Go chat bot that connects Telegram, Discord, Slack, Lark, DingTalk, WeCom, QQ and WeChat to LLMs such as OpenAI, Gemini and DeepSeek.
Open-source, cross-platform AI chat client for Web, desktop and mobile that connects to OpenAI, Claude, Gemini, DeepSeek and self-hosted models.
A fast BPE tokeniser for OpenAI's models, used to convert text into tokens and back losslessly.
Open-source deep research tool that searches and reasons over private data using LLMs and vector databases.
Open-source platform for building, testing, and running AI voice agents on real phone lines, self-hosted or on Fonoster Cloud.