Skip to content

eumemic/signal-ai-assistant

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Signal AI Assistant

Signal AI Assistant integrates with large language models (LLMs) using LangChain.js and the signal-cli-rest-api project to create an AI-powered personal assistant within the Signal messaging app.

Overview

The Signal AI Assistant project aims to leverage the capabilities of modern LLMs and the secure and private nature of Signal to provide users with an AI assistant that can perform tasks, answer questions, and provide useful information on demand.

Prerequisites

  • A Signal account and phone number
  • Access to the OpenAI API
  • Docker (for running the signal-cli-rest-api)
  • Node.js

Installation

  1. Clone the Signal AI Assistant repository:

    git clone https://github.com/yourusername/signal-ai-assistant.git
    cd signal-ai-assistant
    
  2. Install the dependencies:

    npm install
    
  3. Set up the signal-cli-rest-api by following the instructions in its README.

  4. Create a .env file in the root directory and add the necessary environment variables:

    AGENT_NAME=... # the name attached to your signal account
    AGENT_PHONE_NUMBER=... # the phone number attached to your signal account
    SIGNAL_CLI_REST_API_URL=... # optional, defaults to http://localhost:8080
    OPENAI_API_KEY=... # your OpenAI API key (https://platform.openai.com/account/api-keys)
    
  5. Start the Signal AI Assistant:

    npm start
    

Usage

To interact with your Signal AI Assistant, simply send a message to the phone number associated with your assistan'ts Signal account. You can also add the assistant to group chats--in group chats, the assistant will only respond if it's @-mentioned.

License

Signal AI Assistant is released under the MIT License.

About

An LLM-powered Signal assistant

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published