Skip to content

recallai/cliff-notetaker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cliff Notetaker

Cliff Notetaker is an invisible meeting assistant built on Recall.ai’s Desktop SDK, using Electron and Express that listens to your meetings and summarizes key points.

Full walkthrough on the Blogpost

Link to the docs for the Desktop SDK.

Follow the steps below to get Cliff running on your computer.

Watch the video below for a walkthrough of the setup:


Features

  • Automatic meeting detection
  • Background recording using Recall.ai's Desktop SDK
  • Transcript generation
  • AI meeting summaries using OpenAI
  • Displays:
    • Meeting participants
    • Meeting link
    • Transcript
    • AI summary

Setup

1. Clone the repository

git clone <your-repo-url>
cd <repo-name>

2. Download the Desktop Recording SDK on your computer

npm install @recallai/desktop-sdk

3. Create API Keys

Create accounts and API keys from:


4. Add Environment Variables

Rename the .env.example file inside of backend to .env and replace the following

RECALL_API_KEY=your_recall_api_key
OPENAI_API_KEY=your_openai_api_key
RECALL_API_BASE=your_api_base_when_you_signup

RECALL_API_BASE is the base URL for your Recall region and is determined when you sign up for Recall.ai

US West 2 -> https://www.us-west-2.recall.ai

US East 1 -> https://www.us-east-1.recall.ai

EU -> https://www.eu-central-1.recall.ai

Asia -> https://www.ap-northeast-1.recall.ai


5. Install Dependencies

From the root directory:

npm install

6. Start an ngrok Tunnel

Recall.ai requires a public webhook endpoint, so we expose the backend with ngrok.

First make sure you add the authtoken on ngrok:

ngrok config add-authtoken <token>

Open a new terminal in your root directory, run:

ngrok http 3000

You will receive a URL similar to:

https://abc123.ngrok-free.app

ngrok tunnel


7. Configure Recall.ai Webhooks

Login to Recall.ai and it will take you to your dashboard, then configure the webhook URL under the Webhooks section.

Add the following endpoint:

https://YOUR_NGROK_URL/webhooks/recall

Example:

https://abc123.ngrok-free.app/webhooks/recall

webhook success

Add events such as:

  • sdk_upload.completed
  • transcript.done

webhook success

These events allow the backend to:

  • Retrieve the recording
  • Generate a transcript
  • Retrieve the transcript
  • Trigger AI summarization

8. Run the Backend Server

Open a new terminal in your root directory:

cd backend

Install required dependencies in the backend directory

npm install 
node server.js

The backend will run at:

http://localhost:3000

9. Start the Electron App

Open another terminal from the root directory:

npm start

How It Works

  1. The Electron app detects a meeting window.
  2. A recording starts using the Desktop SDK.
  3. When the meeting ends, Recall.ai returns:
sdk_upload.completed
  1. The backend retrieves the recording ID.
  2. A transcript job is created.
  3. Recall.ai sends:
transcript.done
  1. The backend retrieves the transcript.
  2. The transcript is sent to OpenAI for summarization.
  3. The UI displays:
  • Meeting participants
  • Meeting link
  • Transcript
  • AI summary

Tech Stack

About

Building a desktop recording app with DSDK

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors