【免费下载链接】personal-modelBuild your HUMAN.md.项目地址https://gitcode.com/gh_mirrors/pe/personal-model点击查看免费下载Persome开源项目 personal-model的屏幕捕获管线是整座个人模型的眼睛它通过 macOS Accessibility 事件感知你的窗口切换与输入用本地 OCR 兜底读取无法获取文字的应用并用 AES-256-GCM 加密存储截图最终把每一次屏幕观察沉淀为构建HUMAN.md的证据链。一、捕获管线在 Persome 中的位置Persome 把活动数据组织成由浅入深的五层结构Point带来源的观察、Line随时间的关系、Face被证据支持的图案、Volume跨项目的更高阶结构、Root你当前整合后的个人模型。而屏幕捕获Capture是唯一直接接触外部世界的层——它每次观察生成一个 JSON 文件写入~/.persome/capture-buffer/上层模块从不直接触碰 macOS。这正是如何把屏幕活动变成个人模型这条链路的第一环官方说明见 docs/capture.md。二、两个信号源事件驱动 心跳兜底管线由两种信号共同驱动代码位于 src/persome/capture/watcher.py 与 src/persome/capture/scheduler.py信号源工作方式适用场景mac-ax-watcher主力事件驱动一个随包分发的 Swift 可执行文件订阅所有运行中应用的 Accessibility 通知窗口聚焦、内容变化打字、标题变化、应用激活每个事件输出一行 JSON精确捕捉你正在做什么心跳定时器兜底每heartbeat_minutes默认 10 分钟强制触发一次捕获长时间空闲也留下痕迹事件流随后进入 src/persome/capture/event_dispatcher.py 做语义分类AXFocusedWindowChanged窗口切换、UserMouseClick点击→立即捕获AXValueChanged内容变化如打字→3 秒防抖后才捕获避免每敲一个键截一帧AXTitleChanged标题变化→直接跳过噪声太大三、四层去重把事件洪水变成有效观察事件源天生高噪。Persome 用四个时间维度的旋钮层层过滤再叠加一个内容维度的指纹去重防抖默认 3 秒窗口内的AXValueChanged事件合并只触发一次事件去重1 秒相同(事件类型, 应用)对在窗口内直接丢弃最小捕获间隔2 秒任意两次捕获之间的硬性下限同窗口去重5 秒同一应用同标题窗口的非聚焦事件合并聚焦切换永远放行最关键的是内容指纹去重调度器对每次构建的捕获计算hash(bundle title focused_element visible_text url)与上一次相同就直接不写盘。这能抓住时间旋钮抓不住的场景——锁屏过夜、暂停的视频、闲置的 IDE 会无限产生同样内容的 AX 事件没有内容去重缓冲区会被撑爆当前会话也永远无法闲置收尾。默认配置下一个工作日产生几百条捕获足够构建模型又不浪费磁盘。四、capture_once一次捕获的完整七步所有信号最终汇入capture_once定义于 src/persome/capture/scheduler.py一次捕获依次执行调用一次性mac-ax-helper抓取当前窗口的 Accessibility 树按ax_depth剪枝从 AX 树提取focused_element光标所在元素、visible_text屏幕上正在读的内容约 10k 字符上限、url若前台是 cmux 终端通过本地 socket RPC 注入真实终端文本OCR 兜底AX 树读不出可用内容时对聚焦窗口截图并提交本地 OCR 工作进程截图除非include_screenshot false记录应用名、标题、bundle_id以 ISO-8601 时间戳命名写入缓冲区如2026-04-21T17-07-32p08-00.json一个值得注意的细节AX 深度是头号坑。原生 Cocoa 应用的 AX 树很浅5–15 层而 Electron 应用VS Code、Slack、Notion 等把用户内容嵌套在 20–60 层深的 UI 之下。Persome 默认ax_depth 100就是因为诊断发现某次重要对话在深度 30 时完全读不到。五、本地 OCR隐私友好的兜底方案有些应用微信、飞书、网易云音乐等屏蔽 Accessibility APIAX 树里读不到正文。Persome 的 OCR 兜底路径完全在本地运行图像不出机器聚焦窗口截图临时、不落盘 → 本地 OCR 工作进程 → 文字 几何信息 → 应用感知结构化 → 回填 captures FTS 索引实现细节src/persome/capture/ocr_local.pyApple Silicon运行随包捆绑的 PP-OCRv6模型见 ocr_models/PP-OCRv6_tiny_det/ 与 ocr_models/PP-OCRv6_tiny_rec/模型权重从本地目录加载守护进程永不联网取模型Intel MacPaddlePaddle 没有 macOS x86_64 版本改用编译好的 Swift 助手调用系统 Apple Vision 框架输出同构的文字、坐标框和置信度子进程即崩溃隔离边界原生层崩溃只会让本次 OCR 失败不会杀死主守护进程且截图 OCR 结果永不进入 LLM prompt频控每个窗口默认 15 秒内最多触发一次 OCR失败静默降级回 AX-only 捕获六、截图加密存储AES-256-GCM 静态加密截图是捕获中隐私敏感度最高的部分占每条捕获约 77% 的字节。Persome 用 src/persome/capture/screenshot_crypto.py 提供静态加密密钥来自环境变量PERSOME_SCREENSHOT_KEY64 位十六进制 32 字节由install.sh在首次安装时自动生成且跨重装保留信封格式为带版本魔法前缀的PSOMEGCM1: base64(IV(12) ‖ 密文 ‖ Tag(16))可直接替换 JSON 里的image_base64字段旧明文捕获保持可读失败即关闭密钥缺失或格式错误时持久化直接省略像素但保留 AX 文本与元数据——宁可不存图也不存明文所有读取方都经过read_screenshot这一个解码收口点有密钥则解密无密钥原样返回配合include_screenshot false还能彻底关闭持久化像素OCR 仍可临时截图工作。七、缓冲区分层保留与 FTS 搜索索引截图是重数据因此保留策略是分层的由 timeline 心跳触发清理层级条件动作剥截图mtime 超过 24 小时重写 JSON 去掉screenshot字段体积降至约 20%AX 文本保留整体删除mtime 超过 168 小时7 天删除整个 JSON按大小驱逐总缓冲超过 2 GB从最旧文件开始删除直到低于上限与此同时每条捕获写入时都会同步索引进 FTS5 虚拟表captures_fts见 src/persome/store/fts.py支撑 MCP 的search_captures和current_context工具——AI 客户端可以直接检索原始屏幕内容而不用扫描磁盘 JSON。索引失步时一条persome rebuild-captures-index即可全量重建。八、快速验证你的捕获管线persome onboard # 权限 OCR 守护进程 健康检查 新鲜捕获证明 persome ocr status # 查看 OCR 配置与运行时状态 persome capture-once # 开发者诊断立即写一条捕获 persome clean captures # 手动清空缓冲区想暂停时persome pause会落一个哨兵文件捕获即刻短路persome status的 Index Health 行可以随时告诉你管线是active、paused还是broken。九、小结从屏幕事件到 HUMAN.md整条管线的设计哲学可以概括为三句话事件驱动 多层去重只在语义上有变化时捕获把高频噪声压成有效观察本地优先OCR 在设备上完成、截图静态加密像素和文字都不出机器分层存储截图 24 小时即剥离文本证据保留 7 天并进入全文索引最终由 timeline 与 writer 管线蒸馏进你的个人模型捕获层不直接生成模型它负责让模型有据可查——每一条 Line、Face、Root 背后都能追溯到capture-buffer里带时间戳的观察记录。这正是 Persome 构建HUMAN.md的底层保障。赞分享【免费下载链接】personal-modelBuild your HUMAN.md.项目地址https://gitcode.com/gh_mirrors/pe/personal-model点击查看免费下载相关推荐Electron屏幕捕获实现屏幕截图与录屏功能Electron屏幕捕获实现屏幕截图与录屏功能 在桌面应用开发中屏幕捕获是一个常见且重要的功能需求。无论是用于远程协助、教学演示、游戏录制还是应用监控屏幕桌面应用跨平台前端Wox 截图插件完全指南屏幕捕获、标注、置顶与 OCR 历史检索Wox 截图插件完全指南屏幕捕获、标注、置顶与 OCR 历史检索 本文以 Wox 内置的 Screenshot 系统插件仓库文档 www/docs/feat桌面应用AI 应用插件系统Iced屏幕截图界面捕获与图像导出功能Iced屏幕截图界面捕获与图像导出功能 引言为什么需要原生GUI截图功能 在GUI应用开发中截图功能是一个看似简单却极其重要的需求。无论是用于用户反馈、前端跨平台UI组件桌面应用创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考