Customer Engagement Platform for Email, Push Notifications, & SMS
The world's leader for mobile push notifications, web push, SMS, email and in-app messaging. Trusted by 2 million+ businesses to send 12 billion+ messages per…
Open-source sales coaching and conversation intelligence. Search calls, save clips, import HubSpot and Fathom, and score stage talk-tracks. Run locally with your own model keys, or use a hosted plan.
MarketingTypeScript · JavaScriptGitHub @Yz613OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Open Source Gong Alternative
Translation pending
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
An open-source, AI-powered Sales Coaching & Call Evaluation platform. Analyze sales calls, grade rep performance against customized talk-tracks and qualification rubrics (e.g. Sandler), transcribe audio recordings with synchronized playback, and deliver targeted rep coaching feedback.Read the full README ↗Sales Coach is MIT-licensed conversation intelligence you can run yourself. Score calls with evidence from a built-in rules engine, or from a model you connect, including one that runs locally. It keeps coaching notes and scorecards, keyword and concept trackers, deal and forecast tracking, and full-funnel connect and close rates. Integrations include HubSpot writeback, Google Meet, Microsoft Teams, Quo, and Gmail or Outlook, along with an MCP server and API. Customer content is never used to train models.
If this helps, star the repo.
git clone https://github.com/Yz613/Sales-Coach.git
cd Sales-Coach
npm install
npm run setup
npm run dev
Open http://localhost:3000. Local Next redirects / to the marketing page. The product is at http://localhost:3000/app. With no keys configured you are in Local Admin Mode: Call Bank, reps, coach, and settings are available, and pasted transcripts can be graded by the built-in rubric.
git clone https://github.com/Yz613/Sales-Coach.git
cd Sales-Coach
docker compose up --build
Then open http://localhost:3000/app/calls. Step-by-step, including how to score with your own model key, is in SELF-HOST.md.
If you do not have Cloudflare credentials, set CLEF_EVALUATION_MODE=off so your own model key does the scoring. Compose sets that already. For npm run dev, put it in .env.local.
| Sales Coach | Gong | |
|---|---|---|
| Open source, MIT, self-host | Yes | No |
| Rubric scorecards and stage talk-tracks | Yes | Yes |
| Coaching notes and manager 1:1 talk tracks | Yes | Yes |
| Transcript, keyword trackers, and concept trackers | Yes | Yes |
| Call search, clips, and comments | Yes | Yes |
| Deal review and a manager-entered forecast | Yes. No trained prediction. | Yes |
| Live meeting bot | No | Yes |
| Seat license | No seat tax to self-host. Hosted plans are on the site. | Custom quote |
| Zoom import | Coming soon | Yes |
The public landing page includes a cost comparison you can set to your own quote. Gong does not publish list prices. The defaults are a starting point from third-party buyer data, and every field is editable.
Call import covers completed recordings and transcripts from the tools in the integrations library. Zoom import is coming soon.
See GitHub Actions reliability for failure causes, deployment checks, and local verification.
graph TD
A[Sales Call Audio or Transcript] -->|Upload / Ingest| B[Audio Transcription Engine]
B -->|Whisper / Gemini / Groq| C[Synchronized Timestamped Transcript]
C --> D{Evaluation Engine}
D -->|Configured Provider| E[LLM Evaluator: Gemini / OpenAI / Groq / Anthropic / OpenRouter]
D -->|Zero-Config Standalone| F[Deterministic Sales Coach Rubric Engine]
E --> G[Multi-Dimension Scorecard]
F --> G
G --> H[Qualification: Pain, Budget, Decision]
G --> I[Missed Opportunities and Early Folding Check]
G --> J[Talk-Track and Script Adherence]
G --> K[Manager 1:1 Talk-Track and Coaching Personas]
In the app: Admin, then Settings, pick a provider, paste the key, Save, then Test Key.
Or copy .env.example to .env.local:
GEMINI_API_KEY=your_gemini_api_key_here
# or OPENAI_API_KEY, GROQ_API_KEY, ANTHROPIC_API_KEY, OPENROUTER_API_KEY
CLEF_EVALUATION_MODE=off
CLEF_EVALUATION_MODE=off is what a self-host without Cloudflare credentials should use. Details are in SELF-HOST.md.
Leave it unset for Local Admin Mode. To add organizations and roles, create an application, enable organizations, and set the publishable and secret keys. Self-hosters who only want access control should set BILLING_REQUIRED=false. Hosted billing, invite mail, and production secrets are in SELF-HOST.md and docs/SECURITY.md.
├── src/app/ # Next.js App Router. Product routes live under /app
├── src/app/demo/ # Public read-only sample workspace. No database writes
├── src/components/ # UI
├── src/lib/ai/ # Model callers, transcription, rubric parsing
├── src/lib/db/ # SQLite and D1
├── src/lib/integrations/ # Call, CRM, calendar, and task connectors
├── public/ # Static assets, including integration logos
├── schema.sql # D1 schema
└── wrangler.jsonc # Workers configuration
| Command | Description |
|---|---|
npm run setup | Create .env.local and seed SQLite |
npm run dev | Local development server |
npm run build | Production Next.js build |
npm test | Unit and integration tests |
npm run lint | Lint |
npm run worker | Integration jobs, sync, and retention |
npm run db:seed | Seed sample reps, stages, and calls |
npm run preview | Build and preview the Workers bundle locally |
npm run deploy | Deploy to Cloudflare Workers |
Hosted deploys run from GitHub Actions on push to main. Do not deploy a fork by hand unless you mean to publish your own worker.
npx wrangler loginnpx wrangler d1 create sales-coach-db and put database_id in wrangler.jsoncnpx wrangler d1 execute sales-coach-db --remote --file=./schema.sqlnpx wrangler secret put for the Clerk secret, INTEGRATION_ENCRYPTION_KEY, INTEGRATION_CRON_SECRET, PUBLIC_APP_URL, and the Stripe secrets if you bill. Optional: GEMINI_API_KEY, RESEND_API_KEY.sales-coach-recordings and sales-coach-opennext-cache.npm run deployPoint the zone apex at this worker. / is the marketing page, /demo is the read-only sample, /integrations is the catalog, /privacy is the policy, and the product stays at /app.
The public demo does not use a database migration. It is a static fixture served by the app.
Integration setup, the Gong workflow comparison, deal forecasting, and security notes live under docs/.
Copyright (c) 2026 Yz613. MIT License.