wechaty is a free, open source ai interaction & interfaces project written in TypeScript and released under Apache-2.0. It has 23,269 GitHub stars, 2,879 forks and 198 open issues, and was last pushed 9 months ago. On this registry it ranks #27 of 76 tracked projects in AI Interaction & Interfaces, with 5 head-to-head comparisons available.

What is wechaty?

What it is

Wechaty is an open-source conversational RPA (Robotic Process Automation) SDK for chatbot makers, written in TypeScript and released under the Apache-2.0 license. It lives in the Node.js and npm ecosystem, and it presents itself as a universal interface to messaging platforms such as WhatsApp and WeChat, with support for additional platforms. The project has been developed for roughly ten years, carries more than 23,000 stars and 2,800 forks on GitHub, and its documentation and community hub live at wechaty.js.org.

The concrete problem it solves is platform fragmentation. Each messaging platform exposes its own API, its own authentication model, and its own quirks, so a bot written for one service does not run on another without a rewrite. Wechaty abstracts those differences behind a single interface: a developer writes the bot logic once, and the same code runs on any of the supported platforms. That lets chatbot makers concentrate on conversational behavior instead of the underlying complexity of each platform's API.

Key capabilities

  • Universal interface across messaging platforms, including WhatsApp and WeChat, with additional providers documented.
  • Write-once bot code that runs on any supported platform without platform-specific rewrites.
  • Polyglot bindings for JavaScript, TypeScript, Python, Go, Java, .NET, PHP, Rust, and Scala.
  • Puppet provider architecture, with dedicated providers documented for WeChat and WhatsApp.
  • Cross-platform execution on Linux, Windows, and macOS, plus a Docker image.
  • Minimal entry point: a working bot can be written in six lines of JavaScript, Python, Go, or Java.
  • Distributed as an npm package and as a Docker image on Docker Hub.

Who uses it and how

  • Chatbot makers building conversational agents that must reach users on WhatsApp, WeChat, or other supported platforms.
  • Teams automating repetitive messaging tasks through the RPA model rather than a platform-specific integration.
  • Developers deploying the same bot across multiple operating systems, using the Linux, Windows, and macOS support.
  • Operators running bots inside containers via the published Docker image.
  • Contributors and users coordinating through the project's Discord developer community.

Getting started

The SDK is installed from npm as the wechaty package, or run from the `wechaty/wechaty

project readme (upstream, from github) — read inline

Wechaty Join Wechaty Discord Developer Community NPM Version NPM Docker

Wechaty

Ship.Fail PreAngel Downloads GitHub stars Docker Pulls ES Modules

TypeScript JavaScript Python Go Java .NET PHP Rust Scala

WeChat Whatsapp

Elevator Pitch

Wechaty is a conversational RPA SDK that simplifies the process of building chatbots. It's like a Swiss Army knife for chatbot development, providing a universal interface to various messaging platforms such as WhatsApp, WeChat, and more. With Wechaty, you write your bot code once, and it runs on any of the supported platforms. This means you can focus on creating engaging conversational experiences without worrying about the underlying complexities of each platform's API. It's open-source, easy to use, and backed by a vibrant community that's ready to help you bring your chatbot ideas to life.

Connecting Chatbots

Wechaty is an RPA (Robotic Process Automation) SDK for Chatbot Makers which can help you create a bot in 6 lines of JavaScript, Python, Go, and Java, with cross-platform support including Linux, Windows, MacOS, and Docker.

:spider_web:
:octocat:
:beetle:
:book:
:whale:

Breaking News

Voice of Developers

"Wechaty is a great solution; I believe there would be much more users who recognize it." link
— @Gcaufy, Tencent Engineer, Author of WePY

"太好用,好用的想哭"
— @xinbenlv, Google Engineer, Founder of HaoShiYou.org

”好用到哭“——你们对得起这个评价! link
@bigbrother666sh, creator of《社长不见了》剧本杀 NPC DM

"最好的微信开发库" link
— @Jarvis, Baidu Engineer

"Wechaty让运营人员更多的时间思考如何进行活动策划、留存用户,商业变现" link
— @lijiarui, Founder & CEO of Juzi.BOT.

"If you know js ... try Wechaty. It's easy to use."
— @Urinx Uri Lee, Author of WeixinBot(Python)

"Wechaty is a good project; I hope it can continue! Therefore, I became a contributor in open collective."
@Simple

See more at Wiki:Voice Of Developer

Join Us on Discord

Join Wechaty Discord Developer Community Wechaty Discord

Wechaty is used in many ChatBot projects by thousands of developers. To talk with other developers, scan the QR Code below and join our Wechaty Developer Community.

Wechaty Discord Community QR Code

Scan now because other Wechaty developers want to talk with you, too!

Resource

Wechaty has already held lots of talks and got a lot of blogs in the past years; here are all of the wechaty resources:

:rocket: The World's Shortest ChatBot Code: 6 lines of JavaScript


import { WechatyBuilder } from 'wechaty'

const wechaty = WechatyBuilder.build() // get a Wechaty instance
wechaty
  .on('scan', (qrcode, status) => console.log(`Scan QR Code to login: ${status}\nhttps://wechaty.js.org/qrcode/${encodeURIComponent(qrcode)}`))
  .on('login',            user => console.log(`User ${user} logged in`))
  .on('message',       message => console.log(`Message: ${message}`))
wechaty.start()

Notice: Wechaty requires Node.js version >= 16

This bot can log all messages to the console after login by the scan.

You can find Wechaty's Official Examples at examples/ding-dong-bot.ts and more from our Example Directory.

:checkered_flag: Requirements

  1. Node.js version 16+
  2. NPM version 7+
  3. TypeScript version 4.4+

Getting Started

node

  • Wechaty Star

readme truncated — read the full docs on github

Frequently asked questions

Is wechaty free to use?

wechaty is open source under the Apache-2.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does wechaty do?

Conversational RPA SDK for Chatbot Makers. Join our Discord: https://discord.gg/7q8NBZbQzt

What is wechaty written in?

wechaty is primarily written in TypeScript. Its source is publicly available at https://github.com/wechaty/wechaty, and it has 23,269 GitHub stars.