Latest offline packages: vibero-latest
| Platform | Download |
|---|---|
| 🍎 macOS | Vibero-mac.zip |
| 🪟 Windows (x64) | Vibero-win-x64.zip |
This roadmap will keep evolving. ⏳
- 💬 AI chat
- 📄 Full-document summary
- 🧑💻 Collaborative code reading
- 📌 Paragraph summaries
- 🖱️ Draggable chat / layout
- ✨ More reading-centric AI features
See the official source code guide for dependencies and environment (Node, Firefox/XULRunner, etc.).
Build from source and launch Zotero from the staging directory (the script picks the right binary on macOS / Linux / Windows).
./app/scripts/build_and_run -r-r🧱: Run a full JS build (npm run build, etc.) before launch; use on first clone or when you change non-reader JS- Without
-r: Launch only (expects existing build artifacts) -b:-ZoteroSkipBundledFiles;-d: attach JS debugger (see script comments)- Optional
ZOTERO_PROFILE: profile directory to use
Builds only the reader zotero webpack target and copies output to build/resource/reader/—handy when iterating on the PDF reader UI instead of a full build; the script ends by running ./app/scripts/build_and_run -r.
./build_reader_dev.shFor ai-chat and other frontends, run npm run build in the relevant subfolder, or use ./app/scripts/build_and_run -r for a full build.
The DeepWiki shell is in place; wire up your own DeepWiki proxy to use it 🔗
This tree is the open-source edition of ForPaper: it contains no account system, no subscription tiers, and no credit-based billing. Everything runs locally — the login/subscription/balance checks in the codebase are pass-through stubs (Zotero.VibeDBSync in chrome/content/zotero/xpcom/vibeDBSync.js) that always report "logged in / unlimited balance", so all AI features work without any server.
Two commercial-only pieces were removed:
- Cloud item sync (
vibeDBCloudSync.js, Supabase-backed) — removed along with its account panel - Managed AI gateway & preset models — the hardcoded proxy endpoints, bundled API keys, and all built-in preset models are gone. AI chat works exclusively with your own model API (see below)
The chat panel has no preset models. You configure your own provider — OpenAI-compatible or Anthropic format — directly in the UI:
- Open any PDF → AI 聊天 panel
- Click the model menu (bottom-left of the input box) → 管理自定义模型
- Fill in Base URL (e.g.
https://api.openai.com/v1, or any compatible endpoint — DeepSeek, Kimi, Qwen, OpenRouter, a local Ollama, …), your API Key, and the model name - Save and select the configuration — done
Keys are stored locally in Zotero prefs and are never sent anywhere except the endpoint you configured.
Other self-hostable endpoints (Zotero prefs via about:config):
| Pref | Purpose | Default |
|---|---|---|
extensions.zotero.vibeProxy.mineruLocalUrl |
Local MinerU FastAPI endpoint for PDF parsing | http://127.0.0.1:8000/file_parse |
extensions.zotero.vibeProxy.deepwikiUrl |
Your DeepWiki proxy (Cloudflare Worker or compatible) | (empty) |
PDF parsing defaults to local mode: it expects a self-hosted MinerU FastAPI server at vibeProxy.mineruLocalUrl (default http://127.0.0.1:8000/file_parse). Cloud parsing code is retained for self-hosters who wire their own endpoint; it is simply no longer used by default.
ai-chat/ and code-pane/ are self-contained React apps. After editing their sources, rebuild with:
cd ai-chat && npm install && npm run build # → chrome/content/zotero/ai-chat/ai-chat-bundle.js
cd code-pane && npm install && npm run build # → chrome/content/zotero/code-pane/code-pane-bundle.jsBuilt With Zotero
