diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..fd03f7c
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,19 @@
+Copyright (c) 2022 zhayujie
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
\ No newline at end of file
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..cd830a5
--- /dev/null
+++ b/README.md
@@ -0,0 +1,75 @@
+# 简介
+
+本项目是基于ChatGPT模型实现的微信聊天机器人,通过[revChatGPT](https://github.com/acheong08/ChatGPT) 访问 ChatGPT接口,使用 [itchat](https://github.com/littlecodersh/ItChat) 实现微信消息的接收和发送。已实现的功能如下:
+
+- [x] **基础功能:** 接收私聊及群组中的微信消息,使用ChatGPT生成回复内容,完成自动回复
+- [x] **规则定制化:** 支持私聊中按指定规则触发自动回复,支持对群组设置自动回复白名单
+- [x] **会话上下文:** 支持用户维度的上下文保存和过期清理
+- [x] **Session刷新:** 支持ChatGPT session的定时刷新保鲜
+- [x] **多账号:** 支持多微信账号同时运行
+
+
+# 快速开始
+
+## 准备
+### 1.网页版微信
+
+本方案中实现微信消息的收发依赖了网页版微信的登录,可以尝试登录 ,如果能够成功登录就可以开始后面的步骤了。
+
+### 2.运行环境
+
+操作系统支持 Linux、MacOS、Windows,并需安装 `Python3.6` 及以上版本。推荐使用Linux服务器,可以托管在后台长期运行。
+
+### 3.项目安装
+
+克隆本项目代码:
+
+```bash
+https://github.com/zhayujie/chatgpt-on-wechat
+```
+
+安装所需依赖:
+
+```bash
+pip3 install revChatGPT
+pip3 install itchat
+```
+
+
+## 配置
+
+配置文件在根目录的 `config.json` 中,示例文件及各配置项解析如下:
+
+```json
+{
+ // TODO
+}
+```
+
+其中 token的设置需要在openAI网页端获取:
+
+- 打开 并登录,可使用测试账号 (lgfo353p@linshiyouxiang.net, 密码yy123123),账号来源为该[文章](https://www.bilibili.com/read/cv20257021)
+- F12 进入开发者控制台
+- 选择Application -> Cookies,将 session-token 中的值填入配置中
+
+![](https://blog.cos.zhayujie.com/bot/chatgpt-token.png)
+
+
+## 运行
+
+1.如果是开发机本地调试,直接执行:
+
+```
+python3 app.py
+```
+终端输出二维码后,使用微信进行扫码,当输出 "Start auto replying" 时表示自动回复程序已经成功运行了。
+
+
+2.如果是服务器部署,则使用nohup在后台运行:
+
+```
+nohup python3 app.py &
+```
+
+## 使用
+
diff --git a/bot/chatgpt/chat_gpt_bot.py b/bot/chatgpt/chat_gpt_bot.py
index f103696..132c21b 100644
--- a/bot/chatgpt/chat_gpt_bot.py
+++ b/bot/chatgpt/chat_gpt_bot.py
@@ -5,7 +5,7 @@ from common.log import logger
config = {
"Authorization": "", # This is optional
- "session_token": "eyJhbGciOiJkaXIiLCJlbmMiOiJBMjU2R0NNIn0..n8p94letJscz9y64.vgWOg1sSU7Wkoxbs81kTB_9rGgXQVmc6i9LgBHzo-EsUatVV-PsGKiAc9g8gaTaAf1pM_QW53ECH7b2Ge80ie2Q-EAsx-qdiLdwfggwob3dXk3zTQmK5pL8_aVNQ1YoMzQNciBXUbHdZhwzZrXPEsXr5eocjNm2fD5LcTR4cBwH4LRo9Z4AZsFBg9SJ9miQLLBdtkBmjWNQfwM_OHhlAKOYAT_aR1e3E0M6M173xbyvsBLwzQ5ol6Fu5ui7to6SSYejen518pm9vDkV3QRaJ6u0W9t8OEbnaTOCv-JR_7_UNgD5dBlRnj4nyh38vj9yGpW9fm6D7HDmUtF5X2RlmECdQBxsJI-Xk0fETqgjsPGC7O2kNJduW2ukwzMN9KaEVlONQYwfZ73TA6-5jXkvkD3rq3qnsWFGoju5GP11RpbgXKxeHBOZzslja6xPQVPSbkwEVsON_JTyOKcCrzP-vlPXWm51ZyE5hYsjhf3h1UonlpxQRuqM9EnKiajetV8gdbBF5QkhdSoGYQhwPZ1sdUQ197GmpWdgMQgnh9VBcpVP-GWB_yAM4Yj4AAJ79Jh4hkUy2YrGaSu3X3jqBZBfy3SXymcGZZpEHU8-jTovw4wFctVpK3l1fAGHppGpbS0mTciXh0-Vw5F1unIYe6v-y-vEPGmhx8wjukruSlagW1vvklHVsj8zIg0cUEU112w18MuxqzpFMa1LBr8Lr6hbODJX_I67QV1LvyVdFGygxtKzOj9sm-ZZFibv2vrXoIGWRutxlmxz1BiCWldFUjNw9S4oSEDe_mk3WommuY7MCt15Ufa4JOmerZD-P2aK-cylfwFgQJhl8Xx2bwSh8feY404p_pgIcaN8Oex5qSkXiz_MChNPbLSysDB7eXPaUDRWP1kVVaye6MLAmOT8RtAsIWjO3Ky6z5j4nE2FtUMNFMiG79iLFj6NSZ4l-8xdpYgvdsEh9pUfAO5zY_WqOwxb1v4ckKIII_3ZZQTz8t3KePJc4jqpvvmFa30agldub9nYglcDS95zDLrboqYF2opNNuVlDrZsXzJHH-t43S5H34dnUY8jENn_qe83DcgV6FJaUI-iln5h_Z0xvRNXi-HFXwavwC2i0otHsUO60fvRThrmv6pgzYVXqbEY4JO_pWbiH_qdxJ4Ky1LKGRHcfw9Kmn32qZhQptbSNPyP3irrC8_DKATbi2q-0gQ314Loc2VJGphvW9qmsBC8MXjdyZMYqZcXHcoed-E5_JgDWPaSfdrrpfP_ct1uis-x-yIdylLK8wQ7XHuCxfHVUDePqbLw59XUYOO7TVRi5tPvoh8-J0fvYHwGqLUSULAEV0AfggYOIMODHgq_tCLHOZMVEKzvGspPtvBtZUU64F-l4XWX9AwRqmWD654lhV3BR1Ea7FEVh1Mb1trntcd6JGMERqHVFoLxlbTk7_BFWGwfjPSs-8uzR7MBYVXMmscmICzHp_EJbG1zqmrZfszN_TS5pXB5sKKoe8bEJpDznCa3GlyQxlftMYFtyTXGmi8N7M-ZxPBHX0SIlsuunaKoNAKTqJM5rezn1iXZYANkDgom115sc6rpILNgTUQMzJawYmnVNjtfdLEHRBpPymPohlMwCPTst3Fh0xNaUUg7lEAIfFWRnl-lAxxqpTb1z1nz_6fqaNXEa4be9cxr23LLnz7XESan4nQSvusewWKdOO3HP4MoubrCE1rfVY68vG6mg3eV78dMy40_8ee40p0eYVdRSCBXJg-QSFCd8no0BCCFI0QhQ_rc3Al6boIaGun6UhsTSsHudSAUHuwRS1FpsxHo7X2jI80avFUuNtZhRCgNSru81hfozNhf7X5K46Fq5MQpRY32CMxTYu6hSfSdlvtbnVvaFiLLxqAg73Gr7L7Je2BAy1Feg6b13JMkEWObDnA1GhdWVs6p81MSB4Id2vFKpUaIjuJDuW2PTnE0BQCHtUhxbgac9yqyx3L7IlURrCvaAs31LtU9KsPJhE-_vjss3rKMY51xBKMxThwP7UP90mXm9llUnFzdho9jERYEPigJMSyZBSHTiETU-fHg3JcQbGs3ncrTdd_EDieEEgugYcxkJtt4QuUuiRoK3jTf8T0UbqEZWihtp_quSuyWXHSdtY2XbzHrY3cWeUhdmTsg6VdWQVM7R2BlXj0tbRN3mhpggLXVIeJskp8h7MLOo90DlwX8j2sSWTggVjVLmL39dk2MV0orevquoLmZNg2vP_dYs-w7nJLRI1jdvYw3T87JlEV09gRL_YCzdr5vBx1PcAEkSe6E5W0qI6rXXNZ7DpXoCHAlVVuxgtW_nz7zkCv1twhYYTRCpI6TdIVCOcMU_D06-WYNgflzzqz_Cm2J5lHu4.UeCj_srwxF4V4x92z7lAjA"
+ "session_token": "eyJhbGciOiJkaXIiLCJlbmMiOiJBMjU2R0NNIn0..yUEdyIPaNgrKerHa.hQfnBM6Ry2npNvakpj1TL_4wr7fuMeLMWOmy-yOSzJxJw7DNyq5vwKeZBwOzthFBIuSu_CpHvYCK_SvRy2RW0gtjPh1XZMxoXejzwJ8VJaVrj3BjarIJdMKRaIHrFwYlRj6fdWa_nGWeueGf1EDE71aSHf4La-4YjoEX8Ou68XHXEsOYQqMuk06u8Wa_aRq5UAj3Clc99dEw3iHU7xvf8lMmB3T1G1LMaubH21niQj-76pUzlf1Kq278Yl8Q6fOGD_CA7mCvnA1LGYzo7u0P5A8dd-p7K3Oqbxw3Gn2TMyEkzZ2q_rTqSJwnbRG87SEYp5Y6HzYyfNoqM_Ew3OGQqk9PHbv8CjKN6sR53UMNRJeFxkW2owCsR0eCvc8kL-tc5RyHWF3zWVmlOxmzDaHZo_XlA0fgEpjlMZS1ClHCBT6_ZoQRvKan0dkFfhJEdp35aK_v9DLXs46Sfs2rqfN0Fdr698gv0UbGsLdeR00W7M9qMsvXoFDBW3-GnIqsxjjepDPlv4RInMKfSeVdISp4VPWW-GjGyzCB1ooWiyZybaGul1FsdXVSibMq6qsiGUQNr08uf_In3NUPFCKNxJ2iR6A_5-TEiIIjcK6ywbI87L13PFT3oCCXiFxRPjp4f1nUUTGxLcetGzYC_eYmQD004R5M5u1epQdWen4Of1Fzn7D0sOWibSHcl_J9xSxzzVt__b9NVDWieoaGYCO3MJCDVmucfFZ1UFPhIRwsr3nUnom8mnXJocDDSPlb0EWfZhCrMgjhPt7Iqcjg-uNB9QYZNjtHASAcQlUYx5GfP6IZs47UqqLPRlzUISsc65CPyQF6sFgwPO1GNy5Q7QcCUQreMmJdBUyYEUnrKCurZkfRWx2eEJ_1efnnprtUc_Upniar-5PJxAfsZ0Mw4QRweIriRB2CW7L24yZsLR7Q8xzm0vj4KeXeuZ7ZlJJw5f65xndTNwII0jS1-VriBsnKs1SDXJc3WEiviifG8Lx-IjirXoH8Q7RtcqPpRURJApu1aIaWtvSEw5mCGjynuINufN_GEu2r71i231_58IYSK9fBpmRKCkHmTZWkjJmiyhFaG2aYI8Z5UwXEUhOZoijb10ZGgcyW6cnSzuthWfa5VzcYFOa35tE69_xZ8W2A6YKuJeJlW01oXirYxtBazyG2o3dpg-mD_BD7hgU4_ONU8SBXubtbxtCzWqNzIg5F0d0e2pc5aNaDJH3yzK5X1y1nlBZe59l3vCmpmvBfgWzI2Q1pbM_me-1g5-w6ju_waQLvR-DPuUOown_EbiCZ7Zd7BAszVlPMgAMWIJ3AljMceIj6ned8YFldZztM_RdvM1qW_KohVurd_bt3vvIBD_c7gttJzAohod61TYBtu5esXNr-sHQNYfapPp8U8J6KZjJFJVEPdrNYeGFewVFVsgRCx_WfaEyIUTaoC9d_ZTDX_nFn_GJceUANqsJYB_FSbzz7aZLj2WKGK8WKw6ujkSMOrLpspt0meqohTWcV68aIMNDhLdOGS7R53vnTUoyrfGLi2HH9QyF5sjjy_YFz1Z9B1Pcv38c9XKBxHUCMNS9ws6IZlIMaA9z8F5_2s-LSKR88Atnb82gQy-BsRdffTI1IhnLLPeisPv_dVOChCdEVHmTMKDvkiYp9GobHW9V3WBm48K2mYDjR6eW459uJP1TVjGP00-O0FZDHTcBZ9L-pq93EbdhYv1VdT-S8UHWy_zoksV-D-iOmc8DKvEHU3CJcUlEf63vcRuBRzfJdeqvw2E4J5j9tt2tkAO814kng2fZaob8XUmjF3QKevYvY8NKAevp6cpoT7DIDZttT6mEkUy1pW02thh3FMqr_EfsCI5pR84BQCr-LIRDzhudnOxHxXOJXE_zuEt1QNNSAH0eqxA6Mx7N5p3WU7dU0ULGPMtEEXz1IwiGAJ21z8Z77EOrL3vOWUnq3Y1sAPD9PBzaPC8_wezBIXQqI6Ufa6D38xPdZnkoaxMd3PRFu91s9qMoYO4OZ1WfjbQJi51T4M76y1K73eBLGwVgWRguEs8Yqr2F-ctZ-BiSEa2RfOwYcmT5uRbFzZnQCtj32JTNMSIFGQ5It5bR0nPh5BK6LjK2_kbQny6dZ9d_KrBcl15REEKM9XhZOSGWRRwAmf_4iVsy6ceqXMuYMbEGL7xnw6tmBWzuuN21_1RnxY8JS8CtzjPC4LAIRgN7VE4M6LbEcQJiaw9hVsUzLueoP-CCtjBeqQ1ylsaz6C4rOpDISATG-jAQ66FE9P0YHXQXOAip4Bf7KO-IvSvZF_dKv2_RMdAE53dlpup5oCWqPk8qAVNgZXIT6LN8MiqRDVfObQDa-uElVtX8ll7ItOUXRoXUJfxabE6oW.bDrh_KN_-hbGsWTk_0z35g"
}
chatbot = Chatbot(config)
user_session = dict()
diff --git a/channel/wechat/wechat_channel.py b/channel/wechat/wechat_channel.py
index 9bce166..fbedfc5 100644
--- a/channel/wechat/wechat_channel.py
+++ b/channel/wechat/wechat_channel.py
@@ -21,8 +21,7 @@ def handler_group_msg(msg):
WechatChannel().handle_group(msg)
-group_white_list = ['学就完事了', '小宝群', '全天乱斗模式', '戒赌吧', '命苦还要快乐', '攒钱让姐妹当小三的组织',
- '快乐家人', '技术沙龙', '流动性混子', '计算机学习交流', '如何评价']
+group_white_list = ['测试群1', '测试群2']
class WechatChannel(Channel):
diff --git a/config.json b/config.json
new file mode 100644
index 0000000..511a2bd
--- /dev/null
+++ b/config.json
@@ -0,0 +1,3 @@
+{
+ "bot_": "123"
+}
\ No newline at end of file