个人知识数据库工具

Potluck是一个隐私优先的个人知识数据库工具,支持本地存储和多平台数据导入,提供Web应用、CLI和MCP接口,适用于个人知识管理和AI助手集成。

  • by DoubleGremlin181
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 DoubleGremlin181/potluck

使用说明

聚餐

为您的人工智能建立隐私优先的个人知识数据库 --本地优先,MCP本地。

Potluck吞噬你的数据导出——谷歌外卖(Gmail、Keep、日历、聊天、Chrome 历史记录、照片元数据、时间线)、WhatsApp、Reddit、YNAB,以及通用文件夹 图像、笔记和mbox文件——将所有内容存储在一个本地SQLite数据库中,以及 通过三种方式公开它:web应用程序、CLI和 主控程序 AI助手。关注的文件夹和计划 谷歌云端硬盘会自动保持最新状态。没有云,没有遥测:什么都没有留下 你的机器。

状态--v1重写正在进行中

阶段 可发货增量 状态
P0重置和行走骨架 potluck serve 零配置:SPA shell;来自一个服务层的CLI/API/MCP应答统计信息;台式钻机+CI ✅ v1.0.0-alpha.1
P1存储核心和首次摄入 谷歌从外卖档案中保留(zip/tgz/dir);通过CLI+MCP进行FTS搜索 ✅ v1.0.0-alpha.2
P2 Gmail按比例和搜索v1 多GB mbox逐步摄入;过滤/剪切搜索 ✅ v1.0.0-alpha.3
P3 MVP接口 真正的搜索/项目/导入UI,MCP工具集v1-- β1=MVP ✅ v1.0.0-beta.1
P4源扩展和自动化 剩余的计划源、监视文件夹、计划的GDrive拉取 --
P5语义搜索 统一嵌入空间、HNSW索引、混合RRF --
P6视觉与媒体丰富 OCR、图像嵌入、人脸、媒体库 --
P7链接器、人物和时间线 到处都是相关项目、人物评论、时间线 --
P8强化和1.0 文档、备份/恢复、医生、性能扫描 --

完整的计划、架构和锁定决策:固定 第98期.v0存档于 archive/v0.

快速入门——距离跑步还有60秒

需要 紫外线 (Python是自动获取的)。

1--启动服务器。 直接来自GitHub:

uvx --from git+https://github.com/DoubleGremlin181/potluck potluck serve

CLI、API和MCP在这种形式下功能齐全;只有web应用程序不是 捆绑(页面位于 / 这样说并指向API文档)。松开车轮 预装web应用程序:

uvx --from https://github.com/DoubleGremlin181/potluck/releases/download/v1.0.0-beta.1/potluck-1.0.0b1-py3-none-any.whl potluck serve

或者Docker(包括web应用程序;数据保存在 potluck-data 体积):

docker run -p 127.0.0.1:8765:8765 -v potluck-data:/data ghcr.io/doublegremlin181/potluck:1.0.0-beta.1

2--导入数据。 喂它 Google 导出 导出、WhatsApp/Reddit/YNAB导出、Timeline.json或以下任何文件夹 notes/images/mbox文件(zip、tgz、解包目录或单个文件)--重复使用相同的文件 uvx --from … potluck 每个命令的前缀,或从web应用程序上传 导入页面。将导出内容放入关注的文件夹中(请参阅 watch_folders 在配置中) 或设置 计划中的谷歌云端硬盘退出 为了实现自动化:

uvx --from git+https://github.com/DoubleGremlin181/potluck potluck import ~/Downloads/takeout-20260707T120000Z-001.zip

3--搜索它。

uvx --from git+https://github.com/DoubleGremlin181/potluck potluck search "garden fence"

web应用程序位于 http://127.0.0.1:8765 — potluck serve 打开它 你。搜索和浏览所有内容,开始导入,并查看其进度 生活。

[!警告] Potluck只是设计为localhost——v1中没有身份验证。不要暴露它 其他机器或互联网。

人工智能助手MCP

stdio(克劳德桌面、克劳德代码等):

{
  "mcpServers": {
    "potluck": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/DoubleGremlin181/potluck", "potluck", "mcp"]
    }
  }
}

改为流式HTTP: potluck serve 在以下位置公开相同的工具 http://127.0.0.1:8765/mcp -一个用于web应用程序、API和MCP的服务器表面。

工具集: search (使用排名、剪切的点击进行关键字搜索), list_items (无需查询即可浏览/过滤), get_item (按id显示全部内容), get_thread (围绕项目的整个电子邮件对话), get_stats (数据库 概述), list_sources (此版本可以摄取的内容)。

设置指南——Claude Desktop、Claude Code、OpenClaw、Hermes、直接REST 无MCP和故障排除: docs/ai-integration.md.

命令行界面

potluck import PATH  ingest an export (zip/tgz/dir/single file; source auto-detected)
potluck search Q     full-text search (--kind, --prefix, --cursor, --limit, --json)
potluck list         browse items without a query (--kind, --source, --since, --sort, --json)
potluck show ID      full item content + metadata (--thread: the whole conversation)
potluck status       database overview + per-import stats
potluck rm           delete items by id, --import run, or --source (confirms; --yes to skip)
potluck forget       rm + block the deleted content from ever re-importing
potluck gdrive       Google Drive Takeout auto-pull (auth / status; docs/gdrive-setup.md)
potluck serve        web app + API + MCP (/mcp) on one port (opens your browser)
potluck mcp          MCP server on stdio (HTTP lives at /mcp on the serve port)
potluck bench run    benchmark harness (smoke/full tiers)
potluck dev          source-plugin scaffolding (new-source / check-source)

搜索查询可以携带内联运算符,这些运算符可以相互组合 自由文本: from:alice@example.com (或名称前缀: from:alice), source:gmail, kind:email, after:2024-01-01 (含), before:2025-06-30 (不含),支持引用值。源值 不区分大小写,空格映射到下划线,所以 source:"google keep" ≡ source:google_keep.忽略无效的运算符值--响应的 warnings 列表中列出了被删除的内容,并且未知 key:value 成对的 以纯文本形式搜索。仅运算符(无自由文本)列出匹配项 最新商品优先。

键入时搜索: --prefix (CLI)/ prefix=true (MCP)与上一个匹配 单词作为前缀(gar 发现花园/大蒜/石榴石)。分页使用不透明 键集游标——传递响应 next_cursor 背如 cursor 为了 下一页;结果集在第一页冻结,因此项目被摄入 中间分页永远不会移动、重复或隐藏现有的点击。

配置是可选的:默认值即用。通过以下方式覆盖 POTLUCK_* 环境变量 或 ~/.config/potluck/config.toml (env>toml>默认值);数据库位于 ~/.local/share/potluck/potluck.db 默认情况下。

发展

git clone https://github.com/DoubleGremlin181/potluck && cd potluck
uv sync && uv run pre-commit install
(cd web && npm ci && npm run build)
uv run potluck serve

测验: uv run pytest (单位层), -m browser 因为剧作家抽烟。会议现场直播 在 CLAUDE.md;测试模式 测试/README.md.

许可证

麻省理工学院