Credentials. The STT, LLM and TTS provider keys and the SIP credentials give access to paid services and your phone line, so store them only in the local .env and the dashboard.
Who it is forA small business owner or IT admin whose 3CX, Asterisk or FreePBX line gets calls that need a first answer while staff are busy or away.
The problemCallers wait or reach voicemail, and nobody is available to triage calls or take messages.
The outcomeInbound calls are checked against your routing rules, then passed to a human, blocked, or answered by an AI agent that can take a message or transfer the call.
What you need first
- Docker, or a native installer from the releases page (Windows, macOS or Linux)
- API keys for an STT provider, an LLM and a TTS provider (or a GPU for local models)
- For phone calls: a SIP endpoint such as a PBX extension, a SIP-registering router, or an ATA for analog lines, on the same LAN as the PBX
- Network access to the PBX on 5060/UDP and an open RTP port range
Steps
- Clone the repo with
git clone https://github.com/Dpro-at/Tel-Agent.gitand enter it withcd Tel-Agent. - Copy the environment template with
cp .env.example .env, then generate a key withopenssl rand -hex 32and set it as ENCRYPTION_KEY in.env. - Start the stack with
docker compose up -d --build, then open http://localhost:38471 and create the administrator. - In the dashboard, add your STT, LLM and TTS provider keys and register an extension on your PBX as a SIP endpoint.
- Set routing rules for caller ID so that selected callers reach the AI agent and others go to a human or are blocked.
- Place a test call from a known number and check the stored transcript in the conversation archive.
Prompt for your agent
In the Dpro-at/Tel-Agent repo, follow the README quick start and the phone channel requirements to connect a PBX extension for <PBX type and extension>. Expected output: a test call from <test number> that routes to the AI agent and appears with a transcript in the conversation archive. Verify that ENCRYPTION_KEY is set in .env and that the dashboard loads at http://localhost:38471 before placing the call.
Caveat. Tel Agent only speaks SIP, so analog lines need an ATA, and the README lists the phone channel as part of an alpha release.
Get 5 new use cases every morning. Free, one short email, unsubscribe anytime.
Get them freeShare: X LinkedIn Hacker News Email Copy link
Disclaimer
Deduped lists open-source repositories that belong to other people. We do not own, maintain, audit, or vouch for any of them, and a repo appearing here is not an endorsement or a safety check. The use cases, steps, and prompts are written by AI and may be incomplete, outdated, or just wrong. Where a use case is marked "Seen in the wild", we link to public posts where someone described something similar, but we have not verified those posts and the use case itself is still our AI's own write-up. Use all of this at your own risk. Only run code, commands, or agents on systems and accounts you are authorized to use, and read the code and every command before you run it, especially anything that touches credentials, files, or the network. Nothing here is professional, security, legal, or financial advice. All trademarks and project names belong to their respective owners, and their use here does not imply affiliation. Content is provided as is, without warranties of any kind. Found a mistake, a safety problem, or something you want removed? Email [email protected] and we will look at it promptly. Full disclaimer page