Skip to content

Shivatto

Shivatto app icon

Native macOS realtime call copilot for sales conversations.

Shivatto is an experimental native macOS call copilot for live sales calls. It captures local microphone audio and outbound SIP call audio, streams both sides to realtime speech-to-text providers, and shows labelled transcript lines plus optional sales-coach guidance.

The project is intended for local development and research. It is not a turnkey hosted calling platform.

Shivatto watermark

Demo

Shivatto demo video

Full demo video with audio: https://github.com/vicens-aniol/shivatto/releases/download/demo-video/shivatto-final-4k-audio.mp4

Features

  • Native macOS SwiftUI app
  • Two audio streams: caller microphone and remote SIP audio
  • Realtime transcription through ElevenLabs or OpenAI
  • Optional realtime sales coaching through Groq or OpenAI
  • Airtable contact lookup and call-status updates
  • Rust core for provider event parsing and audio conversion tests
  • Local PJSIP/PJSUA2 bridge for outbound SIP calls

Requirements

  • macOS 14.2 or newer
  • Xcode command line tools
  • Rust/Cargo
  • pkg-config
  • Provider keys for the features you use
  • SIP credentials from your SIP provider if you use native outbound calling

Configuration

Copy the environment template and fill in your own local values:

cp .env.example .env

Supported local environment keys:

ELEVENLABS_API_KEY=
OPENAI_API_KEY=
GROQ_API_KEY=
AIRTABLE_TOKEN=

SIP settings, Airtable base/table IDs, prompts, provider selection, and audio settings are configured inside the app. Secrets and local settings must stay out of Git.

Build

./Scripts/build_app.sh

The app bundle is created at:

build/Shivatto.app

For stable macOS privacy permissions during local testing, install the app to a fixed path:

./Scripts/install_app.sh

Then launch /Applications/Shivatto.app.

PJSIP

The native SIP bridge links against PJSIP/PJSUA2. Scripts/ensure_pjsip.sh downloads PJSIP 2.17 from upstream and builds it locally into /private/tmp.

PJSIP offers GPL and commercial licensing options. Review upstream PJSIP licensing before distributing binaries that include or link it.

Development Notes

The Swift app owns the macOS UI, microphone capture, SIP bridge integration, provider clients, settings, and live call state. The Rust core currently contains provider event parsing and audio conversion code with unit tests.

Useful checks:

cd rust-core && cargo test
./Scripts/build_app.sh

Privacy and Compliance

Shivatto can process live call audio, transcripts, contact records, and sales notes. Before using it with real calls, confirm the consent, monitoring, recording, privacy, retention, and data-processing rules that apply to your jurisdiction and use case.

Do not commit .env, certificates, SIP credentials, provider keys, Airtable private IDs, transcripts, call recordings, or customer data.

This public repository should be published from a sanitized, history-free branch. Do not publish local development history if it contains private defaults, local paths, or customer-specific IDs.

License

Shivatto is licensed under the GNU General Public License v3.0. See LICENSE.

About

Native macOS realtime call copilot for sales conversations

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages