logo
0
0
Login
Jason Hu<jason@nex.ad>
docs: Remove quarantine section for v0.1.5+ with Apple notarization support (#261)
MineContext

MineContext:洞察本质,激发创造

一个开源、主动的上下文感知 AI 伙伴,致力于让您的工作、学习与创作更加清晰高效。

中文 / English

社区实践 · 反馈问题 · 提交问卷


volcengine%2FMineContext | Trendshift

👋 加入我们的 微信 / 飞书 / 小红书交流群

🌍 加入我们的 Discord 社区

🖥️ Mac 版下载 · 💻 Windows 版下载

目录

👋🏻 MineContext 是什么

MineContext 是一个具有上下文感知能力的主动式 AI 伙伴。它基于屏幕截图+内容理解的方式(未来还将支持其他来源的多模态信息,包括文档、图片、视频、代码、外部应用数据),能够看到并看懂用户的数字世界上下文,然后再基于底层的上下文工程框架,主动推送洞察、日/周总结 、待办、活动记录等高质量信息,同时支持用户基于 Context 和生成的信息进行再创作。

feature.gif

🚀 核心功能

MineContext 专注于四个核心功能:无负担收集、主动推送、智能浮现和上下文工程架构。

  1. 📥 无负担收集 支持收集和处理海量的 Context,并通过设计存储管理来实现海量收集却没有心智负担。
  2. 🚀 主动推送 支持日常主动推送关键信息和洞见,能够提炼 Context 中的总结信息,比如每日总结,每周总结,tips,todo,主动推送到主页。
  3. 💡 智能浮现(实现中) 支持创作时智能浮现,可以随时浮现相关有用的 Context,确保辅助创作又不会被淹没
  4. 🎯 上下文工程架构 支持多模态、多源数据的完整生命周期——从捕获、处理和存储到管理、检索和消费——支持生成六种类型的智能上下文。

🔏 隐私保护

本地存储

MineContext 非常注重用户隐私,所有数据都默认保存在本地如下路径,确保您的隐私和安全。

~/Library/Application Support/MineContext/Data

本地模型

此外我们支持了 OpenAI API 协议的自定义模型服务,您可以在 MineContext 中使用全本地模型,做到任何数据不上云。

🏁 快速开始

1. 安装

点击 Github Latest Release 下载最新版本。

Download APP

注意:从 v0.1.5 版本开始,MineContext 已支持 Apple 公证,因此不再需要禁用隔离属性。如果您使用的是旧版本,请参考之前的文档获取相关说明。

2. 输入您的 API 密钥

应用程序启动后(首次运行时需要安装后端环境,约需等待两分钟),请根据引导输入您的 API 密钥。目前我们支持豆包、OpenAI 以及自定义模型服务,包括任何兼容 OpenAI API 格式的本地模型第三方模型服务。 我们推荐使用 LMStudio 来运行本地模型,它提供了简单的界面和强大的功能,能够帮助您快速部署和管理本地模型。

综合成本和性能,我们推荐使用豆包模型,豆包模型的 API-Key 可以在 API 管理界面 生成。

获取豆包 API 之后需要在 模型开通管理界面 开通视觉语言模型和向量化两个模型。

  • 视觉语言模型:Doubao-Seed-1.6-flash doubao-vlm-model

  • 向量化模型:Doubao-embedding-large doubao-emb-model

以下是获取了 API Key 后的填写流程: Enter API-Key

3. 开始记录

进入【Screen Monitor】启用屏幕分享的系统权限,设置完之后需要重新启动应用使其生效。

Enable-Permissions

重新启动应用后,请先在【Settings】设置您的屏幕共享区域,然后点击【Start Recording】开始截图。

Screen-Settings

4. 忘掉它

启动记录后,您的上下文将逐渐被收集。这会需要一些时间才能产生价值。所以说,忘记它,安心专注于其他任务吧。MineContext 将会在后台为您生成待办事项、提示、摘要和活动。当然,您也可以通过【Chat with AI】进行主动问答。

5. 后台调试

MineContext 支持在http://localhost:1733 进行后台调试。

1.支持查看 Token 用量与使用情况

后台调试1

2.支持主动推送任务的时间间隔设置

后台调试2

3.支持调整主动推送任务的系统提示词

后台调试3

🎃 贡献指南

🎨 前端架构

MineContext 前端 是一个基于 Electron、React 和 TypeScript 构建的 跨平台桌面应用程序,提供模块化、可维护且高性能的桌面开发基础。

核心技术栈

技术描述
Electron允许使用 Web 技术开发跨平台桌面应用程序。
React用于构建动态用户界面的基于组件的 UI 库。
TypeScript提供静态类型检查,增强代码可维护性。
Vite针对 Electron 优化的现代前端构建工具。
Tailwind CSS用于快速且一致地设计 UI 的实用优先 CSS 框架。
pnpm适用于 monorepo 项目的快速高效的包管理器。

核心架构

该项目遵循 标准的 Electron 架构设计,将主进程、预加载脚本和渲染进程的代码清晰分离,以保证安全性和可维护性。

frontend/ ├── src/ │ ├── main/ # Electron 主进程(窗口管理、生命周期、IPC 通信) │ ├── preload/ # 预加载脚本,安全桥接 Node API 与渲染进程 │ └── renderer/ # React 前端界面(渲染进程) │ ├── packages/ │ └── shared/ # 通用工具、IPC 通道、日志与常量定义 │ ├── build/ # 构建资源(图标、平台配置) ├── dist/ # 由 electron-builder 生成的构建产物 ├── externals/ # 外部依赖(Python 脚本、二进制文件等) ├── resources/ # 静态资源(图标、模板、图片) └── scripts/ # 开发与构建辅助脚本

1、主进程 (src/main/)负责:

  • 管理应用窗口
  • 处理生命周期事件(启动、退出、激活)
  • 建立安全的 IPC 通信
  • 与后端服务(Python 与系统 API)集成

2、预加载脚本 (src/preload/)负责:

  • 安全地将 Node.js API 暴露给渲染进程
  • 处理与主进程的 IPC 通信
  • 实现跨进程的资源访问

3、渲染进程 (src/renderer/)负责:

  • 实现基于 React 的用户界面
  • 使用 Jotai 与 Redux 管理全局状态
  • 基于 Tailwind CSS 的高效样式体系
  • 动态加载与性能优化机制

4、构建与打包负责:

  • electron-vite.config.ts — 同时配置主进程与渲染进程的构建逻辑(别名、插件等)。
  • electron-builder.yml — 定义针对 Windows、macOS、Linux 的打包与分发配置。

💻 前端使用

构建后端

在开始前端开发之前,需要先构建后端:

uv sync source .venv/bin/activate ./build.sh

安装依赖

由于包版本原因,目前不支持使用国内 PYPI 源,请输入以下命令,确保使用的是原始 PYPI 环境

pip config unset global.index-url cd frontend pnpm install

开发调试

本地开发时,截屏范围获取较慢属于正常现象,等待即可,打包应用无此问题。

pnpm dev

应用打包

为 macOS 平台构建应用:

pnpm build:mac

打包生成的可执行文件会存放在MineContext/frontend/dist目录下。

🏗️ 后端架构

MineContext 采用模块化、分层的架构设计,各组件职责明确,关注点分离。

核心架构组件

opencontext/ ├── server/ # Web服务器和API层 ├── managers/ # 业务逻辑管理器 ├── context_capture/ # 上下文获取模块 ├── context_processing/ # 上下文处理流水线 ├── context_consumption/# 上下文消费和生成 ├── storage/ # 多后端存储层 ├── llm/ # LLM集成层 ├── tools/ # 工具系统 └── monitoring/ # 系统监控

各层职责

  1. 服务器层 (server/)

    • 基于 FastAPI 的 RESTful API
    • 支持实时通信的 WebSocket
    • 静态文件服务和模板渲染
  2. 管理器层 (managers/)

    • CaptureManager:管理所有上下文捕获源
    • ProcessorManager:协调上下文处理流水线
    • ConsumptionManager:处理上下文消费和生成
    • EventManager:事件驱动的系统协调
  3. 上下文捕获层 (context_capture/)

    • 屏幕截图监控
    • 文档监控
    • 可扩展的捕获接口,支持未来的来源
  4. 处理层 (context_processing/)

    • 文档分块策略
    • 实体提取和规范化
    • 上下文合并和去重
    • 多模态内容处理(文本、图像)
  5. 存储层 (storage/)

    • 多后端支持(SQLite、ChromaDB)
    • 用于相似性搜索的向量存储
    • 统一的存储接口
  6. LLM 集成 (llm/)

    • 支持多个 LLM 提供商(OpenAI、豆包)
    • VLM(视觉-语言模型)集成
    • 嵌入生成服务

🚀 后端使用

安装

我们推荐使用 uv 进行快速、可靠的包管理:

# 克隆仓库 git clone https://github.com/volcengine/MineContext.git cd MineContext # 安装 uv(如果尚未安装) curl -LsSf https://astral.sh/uv/install.sh | sh # 同步依赖(自动创建虚拟环境) uv sync

配置

  1. 基本配置 (config/config.yaml):
server: host: 127.0.0.1 port: 8765 debug: false embedding_model: provider: doubao # 选项:openai, doubao api_key: your-api-key model: doubao-embedding-large-text-240915 vlm_model: provider: doubao # 选项:openai, doubao api_key: your-api-key model: doubao-seed-1-6-flash-250828 capture: enabled: true screenshot: enabled: true # 开启截图捕获 capture_interval: 5 # 截图间隔(秒)
  1. 提示模板 (config/prompts_*.yaml):
    • prompts_en.yaml:英文提示模板
    • prompts_zh.yaml:中文提示模板

运行服务器

# 使用默认配置启动 uv run opencontext start # 使用自定义配置启动 uv run opencontext start --config /path/to/config.yaml # 使用自定义端口启动 uv run opencontext start --port 1733

可用选项:

  • --config:配置文件路径
  • --host:主机地址(默认:配置文件中的值或 localhost
  • --port:端口号(默认:配置文件中的值或 1733

优先级:命令行参数 > 配置文件 > 默认值

或者,你也可以手动激活虚拟环境:

source .venv/bin/activate # Windows系统:.venv\Scripts\activate pip install -e . opencontext start --port 1733

💎 MineContext 与我的世界

MineContext 的命名,也体现了团队的巧思。既是“我的上下文”,更要“挖掘上下文”。它借鉴了 MineCraft(我的世界)的核心理念——开放、创造与探索。

如果说海量的 Context 是散落各处的“方块”,那么 MineContext 提供的就是一个让你能够自由搭建、组合、创造的“世界”。用户除了接收到主动推送的信息外,还能够基于收集到的海量 Context 和生成的高质量信息进行再创作。

🎯 目标用户

目标用户类别具体角色/身份核心需求/痛点
知识工作者研究人员、分析师浏览海量信息,提高信息处理和分析效率
内容创作者作家、博主渴求无尽灵感,优化内容创作工作流程
终身学习者学生、研究者建立系统化知识体系,高效管理和连接学习材料
项目经理产品经理、项目经理整合多源信息和数据,确保项目一致性和决策效率

🔌 上下文来源

我们将按照以下计划优先扩展上下文来源,热烈欢迎大家积极贡献代码。

  • P0:数字生活和公共信息循环(PC 屏幕捕获和链接上传)
  • P1:个人文本上下文循环(文件上传、文件跟踪)
  • P2:AI 和常见办公上下文循环(MCP、会议记录)
  • P3:高质量信息获取循环(DeepResearch 和 RSS)
  • P4:个人深度上下文循环(微信、QQ 聊天数据获取、手机截图)
  • P5:物理世界上下文循环(智能穿戴同步、智能眼镜同步)
上下文捕获能力上下文来源优先级完成状态
屏幕截图用户 PC 信息P0
笔记编辑应用内创作信息P0
链接上传互联网信息P0
文件上传结构化文档P1
文件上传非结构化文档P1
文件上传图像P1
文件上传音频P4
文件上传视频P4
文件上传代码P4
浏览器扩展AI 对话记录P2
浏览器扩展提炼的互联网信息P5
会议记录会议信息P2
RSS咨询信息P3
Deep Research高质量研究分析P3
应用 MCP/API支付记录P4
应用 MCP/API研究论文P3
应用 MCP/API新闻P4
应用 MCP/API电子邮件P4
应用 MCP/APINotionP2
应用 MCP/APIObsidianP2
应用 MCP/APISlackP4
应用 MCP/APIJiraP4
应用 MCP/APIFigmaP2
应用 MCP/APILinearP4
应用 MCP/APITodoistP4
记忆库迁移导入用户记忆P4
微信数据捕获微信聊天历史P4
QQ 数据捕获QQ 聊天历史P4
手机截图监控用户移动端信息P4
智能眼镜数据同步物理世界交互记录P5
智能手环数据同步生理数据P5

🆚 与同类应用的比较

MineContext vs ChatGPT Pulse

  • 🖥️ 全面的数字世界上下文: MineContext 通过读取屏幕截图捕获您的整个数字工作流程,提供丰富的、可视化的日常活动和应用程序上下文。相比之下,ChatGPT Pulse 仅限于单个基于文本的对话上下文。
  • 🔒 本地优先数据与隐私: 您的数据完全在本地设备上处理和存储,确保完全的隐私和安全,无需依赖云服务器。ChatGPT Pulse 要求数据发送到并存储在 OpenAI 的服务器上。
  • 🚀 更加多样化的主动推送: MineContext 提供更广泛的智能自动生成内容——包括每日摘要、可操作的待办事项和活动报告——而不仅仅是简单的提示。ChatGPT Pulse 仅在每天早上提供 5-10 个提示。
  • 🔧 开源可定制: 作为一个开源项目,MineContext 允许开发人员自由检查、修改和构建代码库,实现完全定制。ChatGPT Pulse 是一个封闭的专有产品,无法修改。
  • 💰 经济实惠的 API 使用: MineContext 通过允许您使用自己的 API 密钥,避免了每月 200 美元的昂贵 Pro 订阅费用,让您完全控制支出。ChatGPT Pulse 的高级功能被锁定在其昂贵的高级订阅后面。

MineContext vs Dayflow

  • 💡 更丰富、更主动的洞察: MineContext 提供更多样化的自动智能内容——包括简明摘要、可操作的待办事项和上下文提示——超越基本的活动跟踪。DayFlow 仅记录用户活动。
  • 🧠 上下文感知的问答与创作: MineContext 允许您基于捕获的上下文提问和生成新内容,解锁更广泛的应用场景,如内容起草和项目规划。DayFlow 仅限于被动的活动记录和回顾。
  • ✨ 更优质的活动生成与体验: MineContext 生成的活动记录更加清晰和详细,具有更直观和交互式的仪表板,提供无缝的用户体验。DayFlow 的活动日志更基本,交互性有限。

👥 社区

社区与支持

  • GitHub Issues:使用 MineContext 时遇到的错误和问题。
  • 邮件支持:关于使用 MineContext 的反馈和问题。
  • 微信群:讨论 MineContext 使用并分享最新 AI 技术。

Star History

Star History Chart

📃 许可证

本仓库在 Apache 2.0 许可证下发布。