命令行读取微信数据:密语CipherTalk-CLI(miyu命令)完全使用指南
【免费下载链接】CipherTalk查无此人?项目地址: https://gitcode.com/gh_mirrors/ci/CipherTalk
密语 CipherTalk-CLI 是一个专为命令行设计的微信数据读取工具,安装后即可通过miyu命令快速查看、搜索和导出本机微信聊天记录、联系人、朋友圈等数据。它面向新手和普通用户,无需图形界面,适合脚本化查询与自动化任务,是密语桌面版之外的轻量补充。
一分钟了解 miyu 是什么
miyu命令来自 npm 包ciphertalk-cli,它是密语仓库内的独立子项目,不依赖 Electron、不启动桌面程序,直接读取微信本地的加密数据库(Msg 目录)。
- 零界面:在终端敲一行命令,结果直接打印或按 JSON/CSV/Markdown 输出
- 交互菜单:在真实终端中执行
miyu status会进入全屏交互界面,输入编号或/命令即可操作 - 可脚本化:
--format json --quiet让输出干净可解析,方便接入 shell、Python、cron 等自动化场景
命令入口与全局选项注册在 cli.ts,子项目说明见 CipherTalk-CLI/README.md。
一键安装:npm / pnpm 两种姿势
只要装好了 Node.js,一行命令即可安装:
# npm 方式 npm install -g ciphertalk-cli miyu status国内用户可用 npmmirror 镜像加速:
npm install -g ciphertalk-cli --registry https://registry.npmmirror.com也可以改用 pnpm:pnpm add -g ciphertalk-cli。升级与卸载分别是npm install -g ciphertalk-cli@latest和npm uninstall -g ciphertalk-cli。包元信息可参考 package.json。
💡 如果要从源码安装,先 clone 仓库(地址:https://gitcode.com/gh_mirrors/ci/CipherTalk),进入
CipherTalk-CLI/目录后执行npm install即可开发调试。
首次配置:3 步完成初始化
miyu的所有配置保存在~/.miyu/config.json,全程用命令完成,不用手改文件:
第 1 步:告诉它数据库在哪
miyu config set --db-path "C:/Users/你/Documents/WeChat Files/wxid_xxx/Msg" --wxid wxid_xxx第 2 步:配置数据库密钥(二选一,不是失败兜底)
miyu key get --save # 自动:从正在运行的微信进程提取密钥 miyu key set <64位十六进制密钥> # 手动:粘贴已有的 64 位密钥第 3 步:验证连接状态
miyu status miyu key test # 单独测试密钥格式和连接配置读写逻辑位于 config.ts,密钥服务在 keyService.ts。也可以用miyu init一次性初始化,或用miyu config show查看当前配置、miyu config clear清空。
常用命令速查表
| 命令 | 作用 | 常用参数 |
|---|---|---|
miyu status | 检查配置与数据库连接 | --quiet仅输出结果 |
miyu sessions | 列出会话 | --type private\|group\|mp、--offset |
miyu messages <会话> | 查询会话消息 | --from、--to、--type text\|image\|voice\|file、--direction in\|out |
miyu contacts | 列出联系人 | --type friend\|group\|mp |
miyu contacts info <联系人> | 查看联系人详情 | 支持 wxid 或显示名 |
miyu search <关键词> | 全文搜索聊天记录 | --session、--from、--to |
miyu export [会话] | 导出聊天数据 | --all、--output、--with-media |
miyu moments | 查询朋友圈 | --user、--limit(默认 20,上限 200) |
miyu key get/test/set | 密钥管理 | --save获取后写入配置 |
几个典型用法:
miyu sessions --limit 20 # 最近 20 个会话 miyu messages "张三" --limit 50 --direction in # 张三发给我的 50 条消息 miyu search "报销" --from 2026-01-01 # 全文搜索 miyu export "技术群" --output ./backup # 导出指定会话到目录 miyu moments --user wxid_xxx --limit 50 # 某位好友的朋友圈消息查询支持时间范围、类型与收发方向过滤,实现见 messages.ts;全文搜索见 search.ts;导出(含--with-media媒体同步)见 export.ts。
交互模式:把终端变成微信数据面板
在真实终端执行miyu status会进入独立的全屏界面,直接列出带编号的命令菜单:
miyu status miyu> 2 # 输入编号选择,无参命令直接执行 miyu> /sessions --limit 20 # 输入 /命令 精确执行 miyu> /key setup # 选择自动获取或手动填写密钥 miyu> /exit # 退出交互模式无参命令(如/status)输入编号即直接运行;需要参数的命令(如/messages)会把命令名填进输入行等你补全。按/还能打开候选区用方向键补全。某些终端没有自动进入界面时,加--ui强制进入;交互 Shell 的实现在 interactiveShell.ts。
输出格式:让结果适配你的工具链
--format支持五种格式,脚本和人类各取所需:
| 格式 | 适用场景 |
|---|---|
json(默认) | 程序解析、管道处理 |
jsonl | 逐行流式处理大数据量 |
table | 终端直接肉眼看 |
csv | 导入 Excel / 表格软件 |
markdown | 写文档、发群 |
miyu --format csv sessions --limit 100 # 导出会话列表为 CSV miyu --format json --quiet search "合同" > out.json # 纯数据,无状态信息--quiet会去掉状态提示,只保留数据,是写脚本时的最佳搭档。格式化器源码在 formatters/ 目录。
自动化脚本小示例
把miyu接到定时任务里,每周自动备份指定会话:
#!/usr/bin/env bash DAY=$(date +%F) miyu --quiet export "技术群" --from "$DAY" --output "./backup/$DAY"常见问题
- 提示找不到数据库?确认
--db-path指向的是 Msg 目录本身(WeChat Files/wxid_xxx/Msg),再跑miyu status看诊断信息。 - 密钥失效?微信重新登录后密钥会变化,重新执行
miyu key get --save即可。 - 脚本里没进交互界面?这是正常行为:管道或非 TTY 环境自动走纯命令模式;需要交互时显式加
--ui。 - 部分高级命令返回 NOT_IMPLEMENTED?属于预期状态,相关服务仍在从桌面版移植中,详见 README。
写在最后
miyu把"读取微信数据"这件原本依赖图形界面的事,压缩成了终端里的一行命令:安装快、配置简单、输出可解析,无论是临时查一条消息,还是接入自动化流水线都非常顺手。配合密语桌面版与 MCP Server 模式(miyu mcp serve),命令行、GUI 与 AI 助手三种入口可以共享同一份本地数据能力。
项目资料:CipherTalk-CLI/README.md · 命令注册 cli.ts · 交互界面 interactiveShell.ts
【免费下载链接】CipherTalk查无此人?项目地址: https://gitcode.com/gh_mirrors/ci/CipherTalk
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考