[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-81388":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":13,"openIssues":13,"contributorsCount":14,"subscribersCount":14,"size":14,"stars1d":15,"stars7d":16,"stars30d":17,"stars90d":14,"forks30d":14,"starsTrendScore":18,"compositeScore":19,"rankGlobal":9,"rankLanguage":9,"license":20,"archived":21,"fork":21,"defaultBranch":22,"hasWiki":23,"hasPages":21,"topics":24,"createdAt":9,"pushedAt":9,"updatedAt":25,"readmeContent":26,"aiSummary":27,"trendingCount":14,"starSnapshotCount":14,"syncStatus":15,"lastSyncTime":28,"discoverSource":29},81388,"wechat-radar","zjp1997720\u002Fwechat-radar","zjp1997720","微信聊天情报看板：聚合群聊信号、话题、链接和趋势",null,"TypeScript",102,4900,1,0,2,16,66,9,68.6,"MIT License",false,"main",true,[],"2026-06-12 04:01:33","# WeChat Radar\n\n> 群太多，真正有价值的消息却总是被淹没。\n> WeChat Radar turns noisy WeChat groups into a local-first intelligence dashboard.\n\n[![GitHub stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fjoeseesun\u002Fwechat-radar?style=social)](https:\u002F\u002Fgithub.com\u002Fjoeseesun\u002Fwechat-radar\u002Fstargazers)\n[![GitHub forks](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fforks\u002Fjoeseesun\u002Fwechat-radar?style=social)](https:\u002F\u002Fgithub.com\u002Fjoeseesun\u002Fwechat-radar\u002Fnetwork\u002Fmembers)\n[![Issues](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fissues\u002Fjoeseesun\u002Fwechat-radar)](https:\u002F\u002Fgithub.com\u002Fjoeseesun\u002Fwechat-radar\u002Fissues)\n[![Last commit](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flast-commit\u002Fjoeseesun\u002Fwechat-radar)](https:\u002F\u002Fgithub.com\u002Fjoeseesun\u002Fwechat-radar\u002Fcommits\u002Fmain)\n[![License: MIT](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-MIT-green.svg)](LICENSE)\n\n![WeChat Radar product preview](docs\u002Fassets\u002Fproduct-preview.svg)\n\n**[中文](#中文) | [English](#english)**\n\n---\n\n\u003Ca name=\"中文\">\u003C\u002Fa>\n\n## 中文\n\nWeChat Radar 是一个本地优先的微信群聊情报看板。它把群消息、话题、链接、@我的消息和高信号人物聚合成一个可按日期查看的工作台。\n\n你得到的不是“聊天记录列表”，而是每天可以直接处理的情报：\n\n- 今日优先看：消息、文章、工具、异动分区展示\n- 话题雷达：用 Codex CLI 按天聚合跨群话题\n- 链接情报：文章\u002F工具资源去重，生成可读标题\n- 群日报：每天活跃群可生成摘要报告，方便复制给 AI 继续处理\n- 本地存储：聊天数据落到你自己的 SQLite，不上传到第三方服务\n- 明暗主题：默认奶白色浅色主题，也支持深色模式\n\n## 快速开始\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Fjoeseesun\u002Fwechat-radar.git\ncd wechat-radar\npnpm install\npnpm rebuild better-sqlite3\npnpm dev\n```\n\n打开 [http:\u002F\u002Flocalhost:3000](http:\u002F\u002Flocalhost:3000)。首次进入会跳到 `\u002Fsetup`，按页面提示填写你的微信名、确认隐私说明，也可以先启用 demo 数据体验。\n\n## 前置条件\n\n- [ ] macOS，且已登录微信 4.x\n- [ ] Node.js 20+：`node --version`\n- [ ] pnpm：`corepack enable && pnpm --version`\n- [ ] wx-cli：`wx --version`\n- [ ] wx daemon 正在运行：`wx daemon status`\n- [ ] 如果要让话题聚合更好，安装并登录 Codex CLI：`codex --version`\n\nwx-cli 可参考原项目安装与初始化：[jackwener\u002Fwx-cli](https:\u002F\u002Fgithub.com\u002Fjackwener\u002Fwx-cli)。\n\n## 配置\n\n默认数据目录是 `~\u002F.wechat-radar\u002F`，不会写进项目目录。\n\n你可以用环境变量覆盖：\n\n```bash\ncp .env.example .env.local\n```\n\n常用配置：\n\n```bash\nWECHAT_RADAR_DATA_DIR=~\u002F.wechat-radar\nWECHAT_RADAR_MY_NAMES=张三,San Zhang,zhangsan\nWECHAT_RADAR_DEMO=0\nWECHAT_RADAR_CODEX_MODEL=\n```\n\n也可以直接在 `\u002Fsetup` 页面配置。配置会写入 `~\u002F.wechat-radar\u002Fconfig.json`。\n\n## 使用方式\n\n1. 进入首页，选择日期或时间范围。\n2. 点击“重扫”同步当前范围消息。\n3. 点击“全量同步”拉取更长历史。\n4. 打开“话题雷达”查看跨群主题。\n5. 打开“链接情报”查看文章和工具资源。\n6. 在活跃群列表点击“日报”查看单群日报。\n\n你可以这样和 AI 配合：\n\n- “把今天所有 Codex 相关话题整理成一篇博客大纲。”\n- “复制这个群日报，帮我提炼值得回复的机会。”\n- “把链接情报里的工具做成一张试用优先级表。”\n\n## 数据与隐私\n\nWeChat Radar 默认只在本机读写数据：\n\n- `~\u002F.wechat-radar\u002Fradar.db`：SQLite 主数据库\n- `~\u002F.wechat-radar\u002Fconfig.json`：本地配置\n- `~\u002F.wechat-radar\u002Fbackups\u002F`：可选备份\n\n安全设计：\n\n- wx-cli 调用使用 `child_process.execFile` 参数数组，不拼 shell\n- SQLite 使用 prepared statements\n- 页面只以 React 文本节点渲染聊天内容\n- 不把微信密钥、会话、数据库、模型缓存提交进仓库\n\n重要提醒：这个项目会读取你本机微信数据。请确认你的使用方式符合微信客户端规则、当地法律、群成员隐私预期和你所在组织的合规要求。不要把包含真实聊天内容的数据库或截图上传到公开仓库。\n\n## 项目结构\n\n```text\napp\u002F                 Next.js App Router 页面与 API\ncomponents\u002F          看板、侧边栏、图表、消息渲染组件\nlib\u002F                 wx-cli 封装、SQLite、话题\u002F链接聚合逻辑\nscripts\u002F             本地维护脚本\ndocs\u002Fassets\u002F         README 图片与公开素材\n```\n\n## 常见问题\n\n| 问题 | 解决方法 |\n| --- | --- |\n| `wx daemon 未运行` | 先运行 `wx daemon start`，再刷新页面。 |\n| `better-sqlite3` native 模块报错 | 运行 `pnpm rebuild better-sqlite3`。 |\n| 首页没有数据 | 先完成 `\u002Fsetup`，确认 `wx sessions --json` 有输出，然后点击“重扫”。 |\n| 话题雷达为空 | 打开对应日期会自动构建；也可以点击“构建话题”。需要本机可运行 `codex`。 |\n| 不想读取真实微信 | 在 `\u002Fsetup` 勾选 demo 模式，或设置 `WECHAT_RADAR_DEMO=1`。 |\n\n## 致谢\n\n- [jackwener\u002Fwx-cli](https:\u002F\u002Fgithub.com\u002Fjackwener\u002Fwx-cli)：本项目依赖它读取本机微信数据。\n- [Next.js](https:\u002F\u002Fnextjs.org\u002F)、[ECharts](https:\u002F\u002Fecharts.apache.org\u002F)、[better-sqlite3](https:\u002F\u002Fgithub.com\u002FWiseLibs\u002Fbetter-sqlite3)。\n\n---\n\n\u003Ca name=\"english\">\u003C\u002Fa>\n\n## English\n\nWeChat Radar is a local-first intelligence dashboard for WeChat groups. It turns noisy group chats into daily briefings, cross-group topics, link intelligence, mentions, and per-group reports.\n\n### Features\n\n- Daily dashboard for messages, links, tools, anomalies, and people\n- Codex CLI powered topic clustering by date\n- Link intelligence with generated titles and deduplication\n- Per-group daily reports with copy-friendly output\n- Local SQLite storage by default\n- Light and dark themes\n\n### Install\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Fjoeseesun\u002Fwechat-radar.git\ncd wechat-radar\npnpm install\npnpm rebuild better-sqlite3\npnpm dev\n```\n\nOpen [http:\u002F\u002Flocalhost:3000](http:\u002F\u002Flocalhost:3000). The first run redirects to `\u002Fsetup`, where you can configure your WeChat display names and privacy confirmation, or enable demo mode.\n\n### Requirements\n\n- [ ] macOS with WeChat 4.x logged in\n- [ ] Node.js 20+\n- [ ] pnpm\n- [ ] wx-cli initialized and running\n- [ ] Optional: Codex CLI for better topic\u002Flink summaries\n\n### Privacy\n\nBy default, runtime data is stored locally under `~\u002F.wechat-radar\u002F`. The app does not upload your chat database. You are responsible for using it in a way that respects WeChat rules, local laws, group privacy expectations, and organizational compliance.\n\n### Troubleshooting\n\n| Problem | Fix |\n| --- | --- |\n| wx daemon is not running | Run `wx daemon start`. |\n| better-sqlite3 fails to load | Run `pnpm rebuild better-sqlite3`. |\n| No dashboard data | Finish `\u002Fsetup`, confirm `wx sessions --json` works, then click rescan. |\n| Topic radar is empty | Open the date or click build topics; make sure `codex` is available. |\n\n## License\n\nMIT\n","WeChat Radar 是一个本地优先的微信群聊情报看板，旨在从繁杂的群消息中提取有价值的信息。其核心功能包括按日期聚合消息、话题、链接和高信号人物，并提供今日优先看、话题雷达、链接情报和群日报等模块。项目使用 TypeScript 开发，支持明暗主题切换，所有数据存储于本地 SQLite 数据库，确保用户隐私安全。适用于需要高效管理多个微信群聊并从中获取关键信息的个人或团队，特别适合那些希望将重要聊天内容进一步处理（如生成博客大纲、试用优先级表等）的用户。","2026-06-11 04:04:52","CREATED_QUERY"]