后端CLIMCP 服务即时通讯RAG人工智能AI 技能【免费下载链接】chatlog_alpha原 [chatlog]项目一个微信数据库解密读取及提供mcp服务、http服务的开源软件现已支持通过微信clawbot接口推送消息可以实时转发全部或指定消息到clawbot项目地址https://gitcode.com/gh_mirrors/ch/chatlog_alpha点击查看免费下载Chatlog Alpha 是一款面向微信 4.x 的本地聊天数据库解密读取与分析工具提供 TUI 终端界面、Web 控制台、HTTP API 与 MCP 服务并支持通过 clawbot 接口将全部或指定消息实时推送到 Hermes Weixin / QQ 桥。本文带你快速完成部署并拆解它如何用 GitHub Actions 一套工作流构建四平台产物、以及围绕密钥做了哪些安全隐私设计。一、项目定位解密读取 服务化 实时推送在深入部署之前先了解它的三大能力块这决定了部署时要关心什么能力说明部署关注点数据读取解密微信本地数据库浏览会话、联系人、朋友圈、媒体本机运行数据不出设备服务化HTTP API、MCP/mcp、/sse、Web 仪表盘默认监听127.0.0.1:5030实时推送关键词事件与消息经 Hermes Agent 转发到 clawbot可选配置不影响核心完整功能清单与平台兼容性见 README.md。二、最快部署路径下载安装包或源码构建1. 直接下载官方构建产物项目通过 CI 为macOS 与 Windows 的四种架构组合自动产出压缩包内含LICENSE和README.md系统架构文件名格式macOSApple Siliconarm64chatlog_提交_darwin_arm64.zipmacOSIntelamd64chatlog_提交_darwin_amd64.zipWindowsamd64chatlog_提交_windows_amd64.zipWindowsarm64chatlog_提交_windows_arm64.zipmacOS 包还附带start-chatlog.command双击即可自动定位二进制、恢复执行权限并清理隔离标记适合不熟悉命令行的用户。2. 源码构建5 分钟上手git clone https://gitcode.com/gh_mirrors/ch/chatlog_alpha cd chatlog_alpha # 一条命令清理 lint 依赖整理 测试 构建 make allMakefile 预置了完整工具链make lint运行golangci-lintmake test带覆盖率执行go test ./...make build以CGO_ENABLED1 go build -trimpath输出当前平台二进制。版本字符串通过git describe自动获取并注入pkg/version.Version因此发布版--version能准确追溯提交。 环境要求Go 1.25、Git、支持 CGO 的 C 编译器macOS 数据库提钥额外需要 Python 3 与frida-tools。三、GitHub Actions 构建矩阵拆解四平台如何一次构建整个持续集成由单一工作流驱动.github/workflows/release.yml。它由4 个 job组成形成清理 → 双平台构建 → 汇总发布的流水线。1. 触发条件与并发控制on: push: branches: [main] pull_request: branches: [main] workflow_dispatch: concurrency: group: release-${{ github.workflow }}-${{ github.ref }} cancel-in-progress: truemain分支每次push、每个指向main的 Pull Request 都会触发也支持手动触发。cancel-in-progress: true是关键优化同一分支的旧任务会被自动取消避免频繁提交时构建队列堆积浪费 CI 分钟数。2. 清理旧构建cleanup-old-builds发布页采用滚动更新 latest策略——旧 Release 先删、新构建再上。该 job 使用ghCLI 完成删除旧的latestRelease 及 Git 标签--cleanup-tag分页遍历并删除旧的release-macos、release-windowsActions Artifacts。⚠️ 注意两个步骤都限定github.event_name ! pull_request github.ref refs/heads/main即PR 检查时绝不清理只有主分支真实发布才动生产产物。由于旧 Release 在编译前就被删除若新构建失败latest页面会暂时缺失修复后重新推送即可恢复。3. macOS 构建build-macosamd64 arm64在macos-latest运行器上一个任务串行构建两个架构for arch in amd64 arm64; do CGO_ENABLED1 GOOSdarwin GOARCH${arch} \ go build -trimpath -ldflags -s -w -X .../version.Version${GITHUB_REF_NAME} \ -o dist/chatlog-darwin-${arch} . done构建链包含 5 个质量关卡步骤作用go test ./...全量单元测试govulncheckv1.6.0依赖漏洞扫描见第四节双架构编译-s -w去除符号表与 DWARF 调试信息显著缩小二进制Smoke Test对两个二进制执行--help验证可执行权限与启动打包二进制 start-chatlog.commandLICENSEREADME.md压成 zip打包前还会用/bin/zsh -n对生成的启动脚本做语法校验再真实执行一次--help防止能编译但脚本坏了的情况溜进发布页。4. Windows 构建build-windowsamd64 arm64Windows 侧的难点是CGO 交叉编译工作流按架构分两套策略# amd64CGO MinGW GCC通过 msys2/setup-msys2 安装 mingw-w64-x86_64-gcc $env:CC gcc; $env:CGO_ENABLED 1 go build ... -o dist/chatlog-windows-amd64.exe . # arm64非 CGO 构建语音转 MP3 等 CGO 能力运行时走提示性兜底 $env:CGO_ENABLED 0 go build ... -o dist/chatlog-windows-arm64.exe .脚本会先断言gcc已就位if (-not $gccCmd) { throw ... }失败时快速报错而不是产出残缺产物。构建前先Remove-Item -Recurse -Force dist, release清工作区避免上一次残留文件混入压缩包。5. 汇总发布publishpublishjob 依赖前两个构建 job 全部成功needs: [build-macos, build-windows]在ubuntu-latest上用actions/download-artifact拉取release-macos与release-windows两组 Artifactsfind收集所有.zip、.exe与chatlog-darwin-*文件通过softprops/action-gh-release创建标签为latest的预发布prerelease版本Latest Buildmake_latest: false保证不抢占用户打过的正式 Release。这套先删后建 prerelease的组合让普通用户始终能从latest标签拿到最新一次提交的可运行构建而开发者可以基于语义化版本打正式发布。6. 备选的 GoReleaser 方案仓库还保留了一份 .goreleaser.yamlv2 配置构建前钩子执行go mod tidy以CGO_ENABLED1交叉编译 darwin/windows × amd64/arm64输出 zip 归档与独立二进制两种格式并生成 SHA256checksums.txtrelease.mode: replace与 CI 的滚动策略保持一致。它可作为本地或 tag 触发的补充发布通道。四、安全与隐私实践密钥如何被保护Chatlog Alpha 处理的是个人聊天记录与解密密钥这类高敏感数据项目在 CI 与运行时两侧都做了防护值得同类工具借鉴。1. 密钥文件最小权限数据库密钥映射all_keys.json在 macOSinternal/wechat/key/darwin/frida.go 中经writeFileAtomic原子写入和 Windowsinternal/wechat/key/windows/data_key_windows.go两侧均以0600权限落盘——仅属主可读写其他用户连读都不行。README 也明确告诫不要把密钥、解密数据库或聊天内容提交进 Git 仓库。2. 状态接口默认脱敏action status这类机器可读的状态接口从不回传密钥原文。internal/chatlog/action.go 中的实现只暴露布尔位与占位符DataKeyPresent: dataKey ! , DataKey: redactActionSecret(dataKey), // 非空时固定返回 ******自动化脚本能判断密钥是否就绪却永远拿不到密钥本身——即使日志被意外打印泄密的也只是星号。3. 高危操作仅限本机回环发信调试Frida Hook 发送消息是能力最强的接口也是最危险的一旦可被远程调用等于把代你发消息的能力交给了局域网。项目在 internal/chatlog/http/send_debug.go 中加了硬门禁func requireLocalDebugRequest(c *gin.Context) bool { if isLoopbackRemote(c.Request.RemoteAddr) { return true } c.JSON(403, gin.H{error: Frida 发信调试仅允许从本机 Web 控制台调用}) c.Abort() return false }即使 HTTP 服务监听在0.0.0.0:5030对整个局域网可见来自非回环地址的请求也会被 403 拒绝。4. CORS 与 Host 边界检查internal/chatlog/http/middleware.go 实现了细粒度的跨域策略服务绑定回环地址时仅放行来自回环地址的请求requestHostAllowed通配符绑定0.0.0.0时Origin主机必须属于私网/链路本地地址才放行不匹配的跨站请求直接403防止浏览器端脚本被第三方页面借机调用。配套测试 internal/chatlog/http/middleware_test.go 覆盖了跨站 origin 拒绝等用例。MCP 内部转发同样通过 internal/chatlog/http/mcp.go 的loopbackCompatAddress把0.0.0.0、::等通配符归一化为127.0.0.1保证内部调用永不指向外部地址。5. 依赖漏洞扫描进 CImacOS 构建任务在编译前固定执行go run golang.org/x/vuln/cmd/govulncheckv1.6.0 ./...govulncheck不是简单比对版本号而是基于调用图分析判断有漏洞的函数是否真的被本项目调用能显著减少依赖链里带毒但实际不可达的误报。这意味着每次发布构建都自带一轮安全体检且社区通过 Dependabot 持续跟进x/crypto、x/net等基础库的安全修复见 README.md 贡献记录。6. 本地优先的模型数据边界语义检索等 AI 能力默认指向本地 Ollamahttp://127.0.0.1:11434见 internal/chatlog/conf/semantic.go。README 明确告知用户使用 GLM、DeepSeek 等远程模型时选中的检索文本会发送到所配置的模型服务改用 Ollama 或本地 llama.cpp 服务则可让模型处理完全留在本机。把数据去向讲清楚是隐私实践里容易被忽略却最重要的一环。五、关键文件速查文件用途.github/workflows/release.ymlCI 主工作流清理、双平台构建、发布.goreleaser.yamlGoReleaser 发布配置与校验和Makefile本地构建/测试/交叉编译入口go.modGo 1.25 模块与依赖声明internal/chatlog/http/middleware.goCORS / Host 边界检查internal/chatlog/http/send_debug.go发信调试本机回环门禁pkg/version/version.go版本注入目标CI 通过 ldflags 写入README.md完整部署与使用文档小结Chatlog Alpha 的 CI 设计有几个值得借鉴的要点单工作流 双平台 job覆盖四平台矩阵concurrency取消旧任务节省 CI 资源PR 检查与主分支发布严格隔离测试、漏洞扫描、冒烟测试三级质量门禁前置到发布之前。而安全侧则以密钥最小权限落盘 接口脱敏 高危操作仅限回环 CORS 边界检查四道防线配合本地优先的模型数据策略把一个直接接触聊天记录的工具守在了用户自己的机器里。对于同样需要处理敏感本地数据的 Go 项目这套 CI 模板与安全细节几乎可以直接复用。赞分享后端CLIMCP 服务即时通讯RAG人工智能AI 技能【免费下载链接】chatlog_alpha原 [chatlog]项目一个微信数据库解密读取及提供mcp服务、http服务的开源软件现已支持通过微信clawbot接口推送消息可以实时转发全部或指定消息到clawbot项目地址https://gitcode.com/gh_mirrors/ch/chatlog_alpha点击查看免费下载相关推荐如何使用Ollama实现跨平台构建从脚本到多架构部署的完整指南如何使用Ollama实现跨平台构建从脚本到多架构部署的完整指南 Ollama是一个功能强大的开源项目支持在本地运行Kimi K2.5、GLM 5、MiniM人工智能大模型模型推理服务本地部署imgaug 的 CI/CD 自动化测试升级基于 GitHub Actions 的多平台矩阵测试与 Wheel 构建实践imgaug 的 CI/CD 自动化测试升级基于 GitHub Actions 的多平台矩阵测试与 Wheel 构建实践 导读 本文基于 imgaug 仓库的数据增强计算机视觉图像处理机器学习python-mode 跨平台 CI 测试实战基于 GitHub Actions 的 Linux/macOS/Windows 三平台 Vader 测试矩阵python mode 跨平台 CI 测试实战基于 GitHub Actions 的 Linux/macOS/Windows 三平台 Vader 测试矩阵 本开发工具后端创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考