{"id":39904773,"url":"https://github.com/liushuchun/wechatcmd","last_synced_at":"2026-01-18T15:33:38.176Z","repository":{"id":57484038,"uuid":"61273263","full_name":"liushuchun/wechatcmd","owner":"liushuchun","description":"提供微信终端版本、微信命令行版本聊天功能、微信机器人","archived":false,"fork":false,"pushed_at":"2020-05-09T06:42:58.000Z","size":47426,"stargazers_count":712,"open_issues_count":12,"forks_count":164,"subscribers_count":39,"default_branch":"master","last_synced_at":"2025-08-13T19:43:05.538Z","etag":null,"topics":["client","golang","mac","terminal","wechat","wechat-bot","wechat-sdk"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/liushuchun.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-06-16T07:54:41.000Z","updated_at":"2025-08-12T07:09:15.000Z","dependencies_parsed_at":"2022-08-26T14:20:32.509Z","dependency_job_id":null,"html_url":"https://github.com/liushuchun/wechatcmd","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/liushuchun/wechatcmd","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liushuchun%2Fwechatcmd","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liushuchun%2Fwechatcmd/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liushuchun%2Fwechatcmd/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liushuchun%2Fwechatcmd/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/liushuchun","download_url":"https://codeload.github.com/liushuchun/wechatcmd/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liushuchun%2Fwechatcmd/sbom","scorecard":{"id":593740,"data":{"date":"2025-08-11","repo":{"name":"github.com/liushuchun/wechatcmd","commit":"5ff009959394b8b5e0d6ca5bcf09011226aa013d"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":0,"reason":"Found 2/26 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: GNU General Public License v3.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 6 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-20T22:37:26.159Z","repository_id":57484038,"created_at":"2025-08-20T22:37:26.159Z","updated_at":"2025-08-20T22:37:26.159Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28539257,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-18T14:59:57.589Z","status":"ssl_error","status_checked_at":"2026-01-18T14:59:46.540Z","response_time":98,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["client","golang","mac","terminal","wechat","wechat-bot","wechat-sdk"],"created_at":"2026-01-18T15:33:37.451Z","updated_at":"2026-01-18T15:33:38.163Z","avatar_url":"https://github.com/liushuchun.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# wechatcmd  [![star this repo](http://github-svg-buttons.herokuapp.com/star.svg?user=liushuchun\u0026repo=wechatcmd\u0026style=flat\u0026background=1081C1)](http://github.com/liushuchun/wechatcmd) [![fork this repo](http://github-svg-buttons.herokuapp.com/fork.svg?user=liushuchun\u0026repo=wechatcmd\u0026style=flat\u0026background=1081C1)](http://github.com/liushuchun/wechatcmd/fork) ![Build](https://camo.githubusercontent.com/46cb8b3469febc6cdb6fbaea2ef1517c396004e7/68747470733a2f2f7472617669732d63692e6f72672f736a77686974776f7274682f676f6c6561726e2e706e673f6272616e63683d6d6173746572)\n=================\n## 微信命令行版本\n开发这个命令行版本，一是为了熟悉微信的接口，二是方便咱们习惯命令行的同学。\n\n现在是中文的支持不是很好，还没有什么特别好的解决方法。\n\n项目还是远未完成，热烈欢迎有兴趣的朋友一起加入开发。\n\n有什么建议可以提issue。谢谢，也欢迎直接提PR。\n\n\n### 功能特性\n\n1. 用户检索\n2. 聊天表情包快捷键\n3. 自动聊天\n4. Vimer式快捷键让操作丝般顺滑\n5. 更加Geek的feel.\n\n\n### 键盘快捷键\n\n\n\u003ctable\u003e\n    \u003ctr\u003e\u003ctd\u003eCtrl-n\u003c/td\u003e\u003ctd\u003e下一页\u003c/td\u003e\u003c/tr\u003e\n    \u003ctr\u003e\u003ctd\u003eCtrl-p\u003c/td\u003e\u003ctd\u003e上一页\u003c/td\u003e\u003c/tr\u003e\n    \u003ctr\u003e\u003ctd\u003eEnter\u003c/td\u003e\u003ctd\u003e输入\u003c/td\u003e\u003c/tr\u003e\n    \u003ctr\u003e\u003ctd\u003eCtrl-c\u003c/td\u003e\u003ctd\u003e退出\u003c/td\u003e\u003c/tr\u003e\n    \u003ctr\u003e\u003ctd\u003eCtrl-1\u003c/td\u003e\u003ctd\u003e退出自动回复\u003c/td\u003e\u003c/tr\u003e\n    \u003ctr\u003e\u003ctd\u003eCtrl-2\u003c/td\u003e\u003ctd\u003e启用自动回复\u003c/td\u003e\u003c/tr\u003e\n    \u003ctr\u003e\u003ctd\u003eCtrl-3\u003c/td\u003e\u003ctd\u003e机器人自动回复(还没好)\u003c/td\u003e\u003c/tr\u003e\n\u003c/table\u003e\n\n### 运行bin文件\nlinux,mac,windows编好的包分别在install 下面的linux/ mac/ win/下。(windows暂时支持的不好，虽然是交叉编译可以运行，但是其UI机制和unix系差的很多，termui支持的并不是很好)\n\n```\ngit clone git@github.com:liushuchun/wechatcmd.git\ncd wechatcmd/install/\n进入各自目录\n```\n\n\n### Mac安装\n\n\t$ go get -u github.com/liushuchun/wechatcmd\n\n\n### Linux安装\n\n\t$ go get -u github.com/liushuchun/wechatcmd\n\n\n### 现在实现的界面：\n\n![聊天动态图](https://raw.githubusercontent.com/liushuchun/wechatcmd/master/img/show.gif)\n出现二维码之后，使用微信扫描二维码，进行登录。\n![登陆后图](https://raw.githubusercontent.com/liushuchun/wechatcmd/master/img/wechatcmd-1.png)\n![聊天图片](https://raw.githubusercontent.com/liushuchun/wechatcmd/master/img/wechatcmd-2.png)\n\n\n\n\n### 使用\n\n\t$ wechatcmd\n\n### 现在完成的功能\n- [x] 实现微信登陆\n- [x] 实现微信认证\n- [x] 实现拉取用户信息\n- [x] 同步消息\n- [x] 设置自动回复：正在忙，稍后回来，等等。\n- [x] 自动更新消息\n- [x] 自动回复消息\n- [x] 获取其他消息\n- [x] 聊天\n- [ ] 群聊\n- [ ] 读取图片\n- [ ] 自动保存消息到本地\n- [ ] 表情包的翻译\n\n### 由于工作太忙，后期已经没有精力继续开发，欢迎有兴趣的同学继续开发\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fliushuchun%2Fwechatcmd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fliushuchun%2Fwechatcmd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fliushuchun%2Fwechatcmd/lists"}