MCPcopy
hub / github.com/askrella/whatsapp-chatgpt

github.com/askrella/whatsapp-chatgpt @main sqlite

repository ↗ · DeepWiki ↗
54 symbols 124 edges 29 files 9 documented · 17%
README

GPT + DALL-E + WhatsApp = AI Assistant 🚀

This project is unmaintained, looking for maintainers!

Docker Prettier License: MIT

This WhatsApp bot uses OpenAI's GPT and DALL-E 2 to respond to user inputs.

You can talk to the bot in voice messages, the bot will transcribe and respond. :robot:

Whatsapp ChatGPT

Requirements

  • Node.js (18 or newer)
  • A recent version of npm
  • An OpenAI API key
  • A WhatsApp account

Documentation

In the documentation you can find more information about how to install, configure and use this bot.

➡️ https://askrella.github.io/whatsapp-chatgpt

Disclaimer

The operations performed by this bot are not free. You will be charged by OpenAI for each request you make.

This bot uses Puppeteer to run a real instance of Whatsapp Web to avoid getting blocked.

NOTE: We can't guarantee that you won't be blocked using this method, although it does work. WhatsApp does not allow bots or unofficial clients on its platform, so this should not be considered completely safe.

Contributors

Used libraries

  • https://github.com/transitive-bullshit/chatgpt-api
  • https://github.com/pedroslopez/whatsapp-web.js
  • https://github.com/askrella/speech-rest-api

Extension points exported contracts — how you extend this code

IConfig (Interface)
(no doc)
src/config.ts
IConstants (Interface)
(no doc)
src/constants.ts
ICommandExecution (Interface)
(no doc)
src/types/commands.ts
ICommandDefinition (Interface)
(no doc)
src/types/commands.ts
ICommandsMap (Interface)
(no doc)
src/types/commands.ts
ICommandModule (Interface)
(no doc)
src/types/commands.ts
IAiConfig (Interface)
(no doc)
src/types/ai-config.ts

Core symbols most depended-on inside this repo

getEnvBooleanWithDefault
called by 8
src/config.ts
getConfig
called by 8
src/handlers/ai-config.ts
startsWithIgnoreCase
called by 6
src/utils.ts
handleMessageGPT
called by 3
src/handlers/gpt.ts
initOpenAI
called by 2
src/providers/openai.ts
moderateIncomingPrompt
called by 2
src/handlers/moderation.ts
handleIncomingMessage
called by 2
src/handlers/message.ts
start
called by 1
src/index.ts

Shape

Function 39
Interface 7
Enum 6
Class 2

Languages

TypeScript100%

Modules by API surface

src/cli/ui.ts8 symbols
src/config.ts7 symbols
src/handlers/ai-config.ts5 symbols
src/types/commands.ts4 symbols
src/handlers/gpt.ts4 symbols
src/providers/whisper-local.ts3 symbols
src/providers/openai.ts3 symbols
src/types/dalle-config.ts2 symbols
src/types/ai-config.ts2 symbols
src/providers/speech.ts2 symbols
src/providers/browser-agent.ts2 symbols
src/utils.ts1 symbols

Dependencies from manifests, versioned

@types/qrcode1.5.2 · 1×
aws-sdk2.1649.0 · 1×
chatgpt5.2.5 · 1×
dotenv16.3.1 · 1×
fetch-blob4.0.0 · 1×
ffmpeg0.0.4 · 1×
langchain0.0.156 · 1×
openai4.52.1 · 1×
picocolors1.0.0 · 1×
prettier3.0.3 · 1×
qrcode1.5.3 · 1×
whatsapp-web.js1.25.0 · 1×

For agents

$ claude mcp add whatsapp-chatgpt \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact