Wechaty Ship.Fail PreAngel <!-- --> 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…
Wechaty    

Ship.Fail PreAngel















<!--






-->
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


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:
- :video_camera: Youtube Playlist: Watch all of the talk videos related with Wechaty
- :page_with_curl: Full Docs
- :bulb: Blog: See how developers use wechaty to build fantastic projects!
- :beginner: Wechaty-Getting-Started:Wechaty Starter Project Template that Works Out-of-the-Box
- :tada: Wechaty Contributor List: Thanks for their contribution!
- :gift: Juzibot Support Wechaty: Know everything about Wechaty
:rocket: The World's Shortest ChatBot Code: 6 lines of JavaScript
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](examples/ding-dong-bot.ts) and more from our Example Directory.
:checkered_flag: Requirements
1. Node.js version 16+
1. NPM version 7+
1. TypeScript version 4.4+
Getting Started
- Wechaty Starter Repository -
clone & npm install & npm start.
If you are new to Wechaty and want to try it the first time, we'd like to strong recommend you starting from this repository, and using it as your starter template for your project.
Otherwise, please saved the above _The World's Shortest ChatBot Code: 6 lines of JavaScript_ example to a file named bot.js before you can use either NPM or Docker to run it.
1. Npm




shell
npm init
npm install wechaty
# create your first bot.js file, you can copy/paste from the above "The World's Shortest ChatBot Code: 6 lines of JavaScript"
# then:
node bot.js
2. Docker


- Wechaty Starter Repository for Docker -
.ts, no need to compile because we use ts-node to run it.
2.1. Run JavaScript
shell
# for JavaScript
docker run -ti --rm --volume="$(pwd)":/bot wechaty/wechaty bot.js
2.2. Run TypeScript
shell
# for TypeScript
docker run -ti --rm --volume="$(pwd)":/bot wechaty/wechaty bot.ts
> Learn more about Wechaty Docker at Wiki:Docker.
3. Switch Protocol(Puppet)
Wechaty is very powerful that it can run over different protocols. You can specify the protocol by set the environment variable WECHATY_PUPPET to different puppet provider.
If you cannot use Web protocol, you can apply other protocols following the instruction here: We provide free token to support developers build a valuable WeChat chatbot.
Currently we support the following puppet providers :
| Protocol | Puppet Provider | Environment Variable |
| --- | --- | --- |
| Web | PuppetPuppeteer | export WECHATY_PUPPET=wechaty-puppet-puppeteer |
| Windows | PuppetWorkPro | export WECHATY_PUPPET=wechaty-puppet-service |
| Mock | PuppetMock | export WECHATY_PUPPET=wechaty-puppet-mock |
| Web | PuppetWechat4u | export WECHATY_PUPPET=wechaty-puppet-wechat4u |
| iPad | PuppetRock | export WECHATY_PUPPET=wechaty-puppet-service |
| iPad | PuppetPadLocal | export WECHATY_PUPPET=wechaty-puppet-service |
| Windows | PuppetDonut | export WECHATY_PUPPET=wechaty-puppet-service |
| iPad | ~~PuppetPadpro~~ DEPRECATED | export WECHATY_PUPPET=wechaty-puppet-padpro |
| iPad | ~~PuppetPadchat~~ DEPRECATED | export WECHATY_PUPPET=wechaty-puppet-padchat |
| iPad | ~~PuppetPadplus~~ DEPRECATED | export WECHATY_PUPPET=wechaty-puppet-padplus |
| Mac | ~~PuppetMacpro~~ DEPRECATED | export WECHATY_PUPPET=wechaty-puppet-macpro |
| Windows | ~~PuppetWxwork~~ DEPRECATED | export WECHATY_PUPPET=wechaty-puppet-service |
Learn more about Wechaty Puppet from the Puppet Wiki:
1. Puppet Directory:
1. Puppet Compatibility:
:guitar: API
Read the Full Documentation at Wechaty Official API Reference
1 Class Wechaty
Main bot class.
A Bot is a Wechaty instance that control a specific wechaty-puppet.
new Wechaty(options?: WechatyOptions)
options.name?: string the name of this bot(optional)
2. options.puppet?: string select which puppet provider we want to use. must be one of the:
1. wechaty-puppet-wechat - Angular Hook for Web Wechat
2. wechaty-puppet-wechat4u - HTTP API for Web Wechat
3. wechaty-puppet-padpro - iPad App Protocol
4. wechaty-puppet-ioscat - iPhone App Hook
5. wechaty-puppet-mock - Mock for Testing
3. options.puppetOptions?: PuppetOptions options for the puppet provider.
| Wechaty | API | Description |
| :--- | :--- | :--- |
| event | login | emit after bot login full successful |
| event | logout | emit after the bot log out |
| event | friendship | emit when someone sends bot a friend request|
| event | message | emit when there's a new message |
| event | room-join | emit when anyone join any room |
| event | room-topic | emit when someone change room topic |
| event | room-leave | emit when anyone leave the room |
| event | room-invite | emit when there is a room invitation |
| event | scan | emit when the bot needs to show you a QR Code for scanning |
| method | start(): Promise | start the bot |
| method | stop(): Promise | stop the bot |
| method | logonoff(): boolean | bot login status |
| method | [logout(): Promise](https://wechaty.github.io/wechaty/#Wechat
…
Members
-
wechaty ★ PINNED
Conversational RPA SDK for Chatbot Makers. Join our Discord: https://discord.gg/7q8NBZbQzt
TypeScript ★ 23k 7mo agoExplain → -
getting-started ★ PINNED
A Starter Project Template for Wechaty works out-of-the-box
JavaScript ★ 851 2y agoExplain → -
friday ★ PINNED
Friday is an Assistant BOT Built on Wechaty for Serving our Community
TypeScript ★ 82 2y agoExplain → -
puppet-supports ★ PINNED
Wechaty Puppet Services (WPS)
★ 40 3y agoExplain → -
openapi ★ PINNED
Wechaty REST API Server with OpenAPI Specification (aka. Swagger)
JavaScript ★ 24 4y agoExplain → -
docusaurus ★ PINNED
Wechaty Official Website for Documentations, Powered by Docusaurus.
MDX ★ 119 7mo agoExplain → -
python-wechaty
Python Wechaty is a Conversational RPA SDK for Chatbot Makers written in Python
Python ★ 1.8k 1y agoExplain → -
puppet-padlocal
Puppet PadLocal is a Pad Protocol for WeChat
TypeScript ★ 766 3y agoExplain → -
puppet-xp
Wechaty Puppet WeChat Windows Protocol
JavaScript ★ 551 1y agoExplain → -
go-wechaty
Go Wechaty is a Conversational SDK for Chatbot Makers Written in Go
Go ★ 550 1y agoExplain → -
puppet-wechat
Wechaty Puppet Provider for WeChat
TypeScript ★ 444 4y agoExplain → -
java-wechaty
Java Wechaty is a Conversational SDK for Chatbot Makers Written in Kotlin
Kotlin ★ 442 4y agoExplain → -
wechaty-puppet-padplus
DEPRECATED: One puppet based on iPad protocal for Wechaty
TypeScript ★ 338 3y agoExplain → -
wechaty-puppet-padchat ▣
Padchat Puppet for Wechaty
TypeScript ★ 286 6y agoExplain → -
puppet
Puppet Provider Abstraction for Wechaty
TypeScript ★ 244 3y agoExplain → -
wechaty-puppet-padpro
No description.
TypeScript ★ 243 6y agoExplain → -
python-wechaty-getting-started
Python Wechaty Starter Project Template that Works Out-of-the-Box
Makefile ★ 199 3y agoExplain → -
matrix-appservice
Wechaty [Matrix] Application Services Bridge
TypeScript ★ 147 3y agoExplain → -
puppet-wechat4u
Wechat4u Puppet for Wechaty
TypeScript ★ 129 2y agoExplain → -
dotnet-wechaty
.NET Wechaty is a Conversational SDK for Chatbot Makers Written in C#
C# ★ 84 4y agoExplain → -
puppet-service
Wechaty Puppet Provider for providing/consuming the Wechaty Puppet Service
TypeScript ★ 83 3y agoExplain → -
docker-getting-started
Getting Started Template for Docker Users
TypeScript ★ 66 4y agoExplain → -
php-wechaty
PHP Wechaty is a Conversational SDK for Chatbot Makers Written in PHP https://github.com/wechaty/docker-php-wechaty-getting-started
PHP ★ 62 3y agoExplain → -
python-wechaty-template
getting started project template for python-wechaty
Python ★ 60 3y agoExplain → -
java-wechaty-getting-started
Java Wechaty Starter Project Template that Works Out-of-the-Box
Makefile ★ 52 5y agoExplain → -
puppet-mock
Puppet Mocker for Wechaty (& A Puppet Template Starter)
TypeScript ★ 52 3y agoExplain → -
go-wechaty-getting-started
Go Wechaty starter project template that works out-of-the-box
Makefile ★ 47 1y agoExplain → -
jekyll
Wechaty Official Website for News, Blogs, Contributor Profiles, Powered by Jekyll.
Java ★ 45 7mo agoExplain → -
bot5
Bot Friday Club - BOT5
TypeScript ★ 40 2y agoExplain → -
python-wechaty-puppet-itchat
Python Wechaty Puppet Powered by Itchat
Python ★ 40 3y agoExplain → -
plugin-contrib
Wechaty Plugin Ecosystem Contrib Package
TypeScript ★ 35 2y agoExplain → -
chatbot-0-to-1
Chatbot Zero to One
TypeScript ★ 35 2y agoExplain → -
summer
Summer of Wechaty (SoW) is a program for connecting students with the Wechaty community for coding & tech writing.
★ 30 4y agoExplain → -
rust-wechaty
Rust Wechaty is a Conversational RPA SDK for Chatbot Makers written in Rust
Rust ★ 30 5y agoExplain → -
puppet-whatsapp
Wechaty Puppet for Whatsapp
TypeScript ★ 26 2y agoExplain → -
grpc
gRPC Service & Protocol Buffers for Wechaty Puppet
Shell ★ 26 2y agoExplain → -
puppet-lark
Wechaty Puppet for Lark
TypeScript ★ 24 4y agoExplain → -
webwx-app-tracker
Live Tracking webwxApp Version Change
JavaScript ★ 22 4y agoExplain → -
puppet-official-account
Wechaty Puppet for WeChat Official Account
TypeScript ★ 18 1y agoExplain → -
puppet-engine ⑂
Wechaty Puppet Engine for hook
TypeScript ★ 18 2y agoExplain → -
wechaty-electron
Wechaty for Desktop
JavaScript ★ 18 5y agoExplain → -
java-wechaty-bak ▣
Java Wechaty is an RPA SDK for WeChat Individual Account
Java ★ 16 6y agoExplain → -
puppet-oicq
Wechaty Puppet for QQ based on project takayama-lily/oicq-template
TypeScript ★ 15 4y agoExplain → -
botbuilder-wechaty-adapter
Microsoft Bot Framework v4 Adapter for Wechat Individual Account
TypeScript ★ 15 6y agoExplain → -
python-wechaty-puppet
Python Puppet Provider Abstraction for Wechaty
Python ★ 13 3y agoExplain → -
wechaty-weixin-openai
Wechaty plugin for integrate your bot with weixin openai-sdk
TypeScript ★ 13 3y agoExplain → -
python-wechaty-plugin-contrib
Wechaty Plugin Ecosystem Contrib Package
Python ★ 13 3y agoExplain → -
dotnet-wechaty-getting-started
.NET Wechaty Starter Project Template that Works Out-of-the-Box
C# ★ 12 4y agoExplain → -
puppet-walnut
Wechaty Puppet Walnut - 硬核桃5G消息
TypeScript ★ 11 4y agoExplain → -
python-wechaty-puppet-service
Python Puppet Service Client for Wechaty
Python ★ 10 3y agoExplain → -
mac-wechat-app-tracker
macOS WeChat.app header files version history (automatic updated)
Objective-C ★ 10 2y agoExplain → -
heroku-wechaty-getting-started
Wechaty Starter Project Template with Heroku Deploy Button that Works Out-of-the-Box
TypeScript ★ 9 4y agoExplain → -
scala-wechaty
Scala Wechaty is a Conversational SDK for Chatbot Makers Written in Scala
Scala ★ 9 1y agoExplain → -
wechaty-puppet-dingtalk
No description.
TypeScript ★ 8 6y agoExplain → -
php-wechaty-getting-started
PHP Wechaty Starter Project Template that Works Out-of-the-Box
Makefile ★ 8 4y agoExplain → -
im-aggregation
Aggregate WeCom, WeChat, and WhatsApp together.
TypeScript ★ 7 3y agoExplain → -
python-wechaty-puppet-padplus
Python Hostie Puppet for Wechaty
Python ★ 7 6y agoExplain → -
easy-matrix-wechaty
A simple and fast temporary deployment solution for [matrix-appservice-wechaty](https://github.com/wechaty/matrix-appservice-wechat) with matrix. (Easy to be a multi bridge server for other matrix bridges.)
Shell ★ 7 4y agoExplain → -
cqrs
An event-driven architecture wrapper for Wechaty that applies the CQS principle by using separate Query and Command messages to retrieve and modify the bot state, respectively.
TypeScript ★ 6 7mo agoExplain → -
wishlist
Puppets, Bots, and other Tooling Requested by Community Members
★ 6 5y agoExplain → -
wechaty-ui
Web UI for polyglot-wechaty based on the plugin system.
Vue ★ 5 4y agoExplain → -
cli
Terminal Client for Wechaty
TypeScript ★ 4 4y agoExplain → -
chat
Friday BOT empowered by GPT-4 with maximum token length 32K, grounded with Wechaty SDK knowledge
★ 4 3y agoExplain → -
redux
Wechaty Redux Plugin, Reducer Bundle, and Ducks Proposal Implementation.
TypeScript ★ 4 7mo agoExplain → -
sidecar-demos
Sidecar Demos & Examples
JavaScript ★ 4 4y agoExplain → -
PMC
Project Management Committees
Shell ★ 4 5y agoExplain → -
ha
High Available (HA) Wechaty is a Load Balance for providing High Availability for Wechaty Chatbot by spreading requests across multiple WeChat individual accounts.
TypeScript ★ 4 4y agoExplain → -
vorpal-contrib
Wechaty Vorpal Chat CLI (Command Line Interface) Commands
TypeScript ★ 4 3y agoExplain → -
wechaty-puppet-macOS
Wechaty Puppet Provider: macOS,make your macOS as a service provider for your self.
Objective-C ★ 4 5y agoExplain → -
plugin-qnamaker
QnAMaker.ai Plugin for Wechaty
TypeScript ★ 4 4y agoExplain → -
wechaty-got-kicked-out
this is a wechaty plugin to monitor whether your bot is kicked out of group chat.
TypeScript ★ 4 6y agoExplain → -
bot5-rasa-nlu
Rasa NLU for Bot5
Dockerfile ★ 3 4y agoExplain → -
bot5-assistant
BOT Friday Club Meeting Assistant BOT
TypeScript ★ 3 4y agoExplain → -
plugin-chatopera
:frog: Chatopera Plugin for Wechaty
TypeScript ★ 3 4y agoExplain → -
vorpal
CLI for Chatbot - Extensible Commands for ChatOps, Powered by Vorpal.
TypeScript ★ 3 4y agoExplain → -
puppet-discord
Discord Puppet for Wechaty
TypeScript ★ 2 4y agoExplain → -
chat-drive
Chat Drive is a conversational storage solution that allows you to save files from the WeChat room, and search & access them anytime by talking to our chatbot.
TypeScript ★ 2 5y agoExplain → -
docker-php-wechaty-getting-started
Getting Started Template for Docker Users
Shell ★ 2 4y agoExplain → -
token
Wechaty Token-Based Authentication Manager
TypeScript ★ 2 4y agoExplain → -
plugin-freshdesk
Wechaty Freshdesk Plugin helps Freshdesk unifies conversations from WeChat, and helps you resolve issues across channels effortlessly!
TypeScript ★ 2 4y agoExplain → -
ducks-contrib
Wechaty Ducks Contrib
JavaScript ★ 2 4y agoExplain → -
ngNext-hackthon-2020-Conversational-AI
No description.
★ 2 5y agoExplain → -
js.org
Wechaty Official Website for News, Blogs, Contributor Profiles, and Documentations.
JavaScript ★ 1 8mo agoExplain → -
WeChatExtension-ForMac ⑂
Mac微信功能拓展/微信插件/微信小助手(A plugin for Mac WeChat)
★ 1 4y agoExplain → -
actor
Wechaty Actor Model, Powered by XState, Mailbox, and CQRS
JavaScript ★ 1 2y agoExplain → -
php-grpc
PHP Stubs for Chatie GRPC (DO NOT EDIT: Code generated by grpc_php_plugin)
PHP ★ 1 4y agoExplain → -
qrcode
Online QRCode Image Generator
HTML ★ 1 6y agoExplain → -
wechaty-puppet-sidecar
A Universal Puppet Powered by Sidecar
TypeScript ★ 1 5y agoExplain → -
plugin-intercom
Wechaty Intercom Plugin helps you build better customer relationships through WeChat across the customer journey.
TypeScript ★ 1 4y agoExplain → -
puppet-gitter
Gitter.im Puppet for Wechaty
TypeScript ★ 1 3y agoExplain → -
go-grpc
Go Stubs for Chatie GRPC (DO NOT EDIT: Code generated by protoc-gen-go)
★ 1 4y agoExplain → -
chatbot-1-to-2
the source code of chatbot-1-to-2
JavaScript ★ 1 5y agoExplain → -
rust-wechaty-getting-started
Rust Wechaty Starter Project Template that Works Out-of-the-Box
Makefile ★ 1 5y agoExplain → -
python-wechaty-puppet-official-account
Wechaty Puppet for WeChat Official Account
Python ★ 1 5y agoExplain → -
OSSRH-56865
https://issues.sonatype.org/browse/OSSRH-56865
★ 1 6y agoExplain → -
OSSRH-56843
https://issues.sonatype.org/browse/OSSRH-56843
★ 1 6y agoExplain → -
.github
Shared workflows of Wechaty Organization
★ 0 2y agoExplain → -
puppet-zoom
Zoom Meeting Puppet
TypeScript ★ 0 8mo agoExplain → -
wechaty.github.io
Redirect to https://wechaty.js.org
★ 0 8mo agoExplain → -
groovy ⑂
Apache Groovy: A powerful multi-faceted programming language for the JVM platform
★ 0 3y agoExplain → -
python-wechaty-plugin-contrib-1 ⑂
Wechaty Plugin Ecosystem Contrib Package
Python ★ 0 3y agoExplain → -
cgal ⑂
The public CGAL repository, see the README below
★ 0 3y agoExplain → -
ddia ⑂
《Designing Data-Intensive Application》DDIA中文翻译
★ 0 3y agoExplain → -
mocker
Wechaty mock library generates mock wechat account for testing purpose
JavaScript ★ 0 4y agoExplain → -
cloud
Microservices orchestrating for Wechaty Cloud
Makefile ★ 0 5y agoExplain → -
botbay ⑂
botbay-以生物多样性为命题的私有机器人赋能平台
★ 0 5y agoExplain → -
docsearch-configs ⑂
DocSearch - Configurations
Shell ★ 0 5y agoExplain → -
python-wechaty-puppet-mock
Puppet Mocker for Wechaty (& A Puppet Template Starter)
Python ★ 0 6y agoExplain → -
scala-wechaty-getting-started
Scalar Wechaty Starter Project Template that Works Out-of-the-Box
Makefile ★ 0 5y agoExplain → -
OSSRH-58493
for https://issues.sonatype.org/browse/OSSRH-58493
★ 0 6y agoExplain → -
wechaty-type-checker
No description.
TypeScript ★ 0 6y agoExplain → -
github-app-wechaty
GitHub App for Wechaty
TypeScript ★ 0 6y agoExplain →
No repos match these filters.