Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Wechaty Summer 导师报名 2022 #92

Open
binsee opened this issue May 6, 2022 · 0 comments
Open

Wechaty Summer 导师报名 2022 #92

binsee opened this issue May 6, 2022 · 0 comments

Comments

@binsee
Copy link
Member

binsee commented May 6, 2022

导师列表

#2

导师姓名

李彬彬

导师邮箱

[email protected]

导师在社区贡献时使用的邮箱

[email protected]

导师贡献的社区仓库地址

组织详情

组织名称

Wechaty

组织类型

开源社区

官网地址

https://wechaty.js.org/

组织 logo

https://wechaty.js.org/img/wechaty-logo.svg

公共邮箱

[email protected]

编程语言标签

Python,Go,JavaScript,Java

涉及技术领域标签

NodeJS,NLP,AI, RPA; Conversational AI

组织简介

Wechaty 是一个用于构建聊天机器人的开源软件。它是一个现代的对话式 RPA SDK,聊天机器人开发者可以用仅仅几行代码来创建一个机器人。

详细介绍

Wechaty 是一个开源聊天机器人框架 SDK,具有高度封装、高可用的特性,支持 NodeJs, Python, Go 和 Java 等多语言版本。在过去的 4 年中,服务了数万名开发者,收获了 Github 的 8000 Star。同时配置了完整的 DevOps 体系并持续按照 Apache 的方式管理技术社区。

项目列表

本届可以提交 4 个项目

项目 1

项目名称

优化 Wechaty-Puppet-xp 项目的稳定性

项目支持报名语言/Project Support Language

  • 仅中文(Chinese only)

项目主导师/Project Mentor

李彬彬

项目描述

Puppet-xp 是 Wechaty 社区中一个供开发者免费接入个人微信的 puppet,是在微信生态下入门 Chatbot 的良好选择之一。
Puppet-xp 使用 Frida 框架接入个人微信,使前端开发者也可以参与到 puppet 的开发过程中。然而因 Frida 内部机制及当前代码实现方式原因,存在两个问题,需要进行解决:

  1. 当前其核心代码使用 JavaScript 编写,且只能使用单文件,不利于编写与维护大量代码。不能在运行前进行有效的验证,运行起来错误的代码会直接导致程序崩溃。且造成程序崩溃后,没有有效的信息来快速判断引发错误的代码位置,非常不利于开发和使用,因此需要使用 TypeScript 对核心代码进行重构,便于维护和开发。
  2. 存在内存释放不及时的问题,会导致长时间运行的 Chatbot 占用内存会越来越多,不利于 Chatbot 的稳定运行,因此需要解决内存占用问题。

需要功能增强:

  1. 适配支持自动登录的个人微信版本,如 3.5.x

需要注意:

  • 此项目不是纯粹的 Nodejs 项目,涉及到动态追踪调试,需要学习一定的汇编和 C++ 知识。

难度/Difficulty

  • 进阶/Advanced

涉及技术领域标签/Labels of Technical Field

; Wechaty,Frida,TypeScript,动态追踪调试

编程语言标签/Labels of Programming Language

; TypeScript

项目产出要求/Project Output Requirements

产出要求概述 具体产出细节
调查 Agent 长时间运行后的内存占用情况、运行稳定性 1. 对 agent 的各功能进行测试,统计各功能引发的内存占用额外增长情况。
2. 跟踪统计代码中各处申请内存的生命周期。
3.对比重构前后的测试情况,总结性能和稳定性提升情况。
使用 TypeScript 对 Agent 进行全面重构 1. 将现有 agent js 代码拆分为不同功能模块,并使用 TypeScript 重构。
2. 解决使用 TypeScript 重构后的 agent 可能产生的程序运行崩溃问题。
适配个人微信 3.5.x 以后的版本 适配 3.5.x 以后的版本,以支持自动登录功能。需确保各功能可在新版本中的可用性。

项目技术要求/Project Technical Requirements

技术要求概述 技术要求细节
Frida 熟悉 Frida 框架,了解其内存管理机制,熟悉 Frida-compile 工具
TypeScript 熟练使用 TypeScript 编写和组织代码
动态跟踪调试 熟练使用动态跟踪调试工具,快速定位异常问题

项目成果仓库/Project Repository

最终成果仓库
https://github.com/wechaty/puppet-xp
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant