OakReader:与 AI 智能体共享的 AI 知识库
oakreader/oakreader
OakReader 是一款原生 macOS 应用,把 PDF、论文、网页、书籍集中到一处,并在其上叠加 AI 研究智能体,可跨整个库搜索、提问,答案基于原文并附可点击引用的出处。它支持 Claude、OpenAI、Gemini 及本地 Ollama/LM Studio 等多模型随时切换,全文搜索支持中日韩文,要求 macOS 15.4 或更高版本,以 MIT 协议开源。
An AI knowledge base, shared by you and your agent.
Everything you read — PDFs, papers, web pages, books — in one place, then an AI research agent that searches and answers across all of it, with citations you can open.
What is OakReader
Most readers just display pages. OakReader keeps everything you read in one place — then puts an AI research agent on top that reads the whole thing for you: search across your entire library, ask questions, and get answers grounded in your sources with citations you can click open. The same knowledge base is something your AI agent can use too.
It's a native macOS app — SwiftUI + AppKit, PDFKit — built to be fast and to stay out of your way.
Features
Use any model, switch anytime — from the frontier labs to a local model running on your Mac. Your choice, every time.
Tech stack
| Component | Framework |
|---|---|
| UI | SwiftUI + AppKit |
| PDF engine | PDFKit |
| Catalog | GRDB (SQLite) |
| AI | Multi-provider (Claude, OpenAI, Gemini, local Ollama/LM Studio, and more) via the local OakReaderAI package |
| Search | Full-text search with CJK support |
| Web capture | Browser extension (WXT) → local snapshot server |
| OCR | Apple Vision |
Requirements
- macOS 15.4 or later
- Xcode 16 / Swift 6 (to build from source)
Build
git clone https://github.com/oakreader/oakreader.git
cd oakreader
brew install xcodegen
xcodegen generateCode signing (one-time, for your own build)
The committed project signs with the maintainer's Apple team, which you can't use. Point it at your own identity with a local, git-ignored override — you don't edit any tracked file:
scripts/setup-signing.sh
It asks for your Apple Developer Team ID (find it at
developer.apple.com → Account → Membership; a free Apple ID works) and writes
xcconfig/DeveloperSettings.xcconfig. No Apple account? Press Enter to build
ad-hoc instead — fine for local development. (You can also copy
xcconfig/DeveloperSettings.example.xcconfig by hand.)
Debug builds drop the restricted keychain-access-groups entitlement so any
team — or ad-hoc — can build. Your API keys live in your own login keychain
(enter them in Settings → AI), or you can inject them via the provider env
vars, e.g. OPENAI_API_KEY.
Run
open OakReader.xcodeproj
Select the OakReader scheme, then build and run (Cmd+R).
project.yml is the source of truth — the .xcodeproj is generated by XcodeGen.
Download
A signed and notarized build is available on the website and on the Releases page.
Contributing
OakReader is open source and contributions are welcome — bug reports, fixes, and focused improvements. Open an issue to discuss anything substantial before sending a large PR.
License
MIT © 2026 Jiwei Yuan
来源:GitHub · github.com






