Persistent Sage is a privacy-oriented desktop AI companion: multi-thread chat, long-term Memory Anchor storage, optional agent tools, customizable companion personalities, Pulse scheduled check-ins, vision image attachments, and Coding mode — a repo-scoped development workspace with editor, terminal, and git tools—all in a local-first Tauri 2 application.
Repository: github.com/g00siferdev-py/persistent-sage
Status: Persistent Sage 3.0.0 — GitHub tag v3.0.0; Microsoft Store 3.0. Feedback welcome via GitHub Issues
Version 3.0.0 — Moltbook, Productivity mode, Favorites, Share, PDF tools, workspace vision, experimental subagents.
| Step | Action |
|---|---|
| 1 | Windows (recommended) — Microsoft Store (search Persistent Sage) or GitHub Releases → Latest (Persistent.Sage_*_x64-setup.exe or portable zip). See docs/INSTALL-WINDOWS.md. |
| 2 | Build from source — git clone https://github.com/g00siferdev-py/persistent-sage.git && cd persistent-sage → docs/INSTALL.md. |
| 3 | Configure — Settings → Provider (API key + model), then start a chat |
| 4 | Update — Settings → General → Updates (Store installs use Microsoft Store; GitHub installs use the signed Tauri updater) |
| 5 | Report — Settings → General → Send feedback or GitHub Issues with OS, app version, provider, steps to reproduce |
| 6 | Support development — optional donations via docs/SUPPORT.md; code contributions via CONTRIBUTING.md |
Maintainers: publish installers → docs/PUBLISH.md; MSIX → docs/MICROSOFT-STORE.md; CI → docs/BUILD-CI.md.
| Guide | Description |
|---|---|
| docs/INSTALL.md | Fresh install — prerequisites, clone, build, first-run setup |
| docs/INSTALL-WINDOWS.md | Windows users — download from Releases, installer, portable USB |
| docs/PUBLISH.md | Maintainers — publish builds to GitHub Releases |
| docs/MICROSOFT-STORE.md | Maintainers — MSIX packaging for Microsoft Store |
| docs/BUILD-CI.md | CI Windows builds (Actions) |
| docs/CODING-MODE.md | Coding mode (v2) — repos, IDE, terminal, agent tools, GitHub PAT |
| docs/USER-GUIDE.md | Day-to-day usage — Companion, Productivity, Coding, memory, settings, Pulse |
| docs/PRODUCT-KNOWLEDGE-BASE.md | Full product KB for marketing & support agents |
| docs/DATA-AND-PRIVACY.md | What is stored locally; API keys encrypted, database not encrypted |
| PRIVACY.md | Public privacy policy |
| docs/SUPPORT.md | Support development — optional donations, issues, contributing |
| docs/SIGNING-AND-UPDATES.md | Updater behavior and SignPath readiness |
| docs/ARCHITECTURE.md | Technical overview for developers |
| docs/DEVELOPMENT.md | Dev workflow and pre-push checklist |
| CHANGELOG.md | Release notes |
| docs/releases/v3.0.0.md | 3.0.0 beta release highlights |
| docs/REBRAND.md | Codename, rebrand, and legacy data migration |
| PERSISTENT-SAGE-STATUS.md | Engineering status |
| CONTRIBUTING.md | How to test and contribute |
Settings → Companion includes Import OpenClaw markdown…, but the most reliable way to move a mature OpenClaw personality into Persistent Sage today is:
- Copy
IDENTITY.md,SOUL.md,JOURNAL.md,USER.md, andMEMORY.mdinto Persistent Sage’sworkspace/folder (enable workspace tools). - Prompt the companion to read those files and update
personality.jsonvia personality self-edit (enable in Settings → Tools). - Remove the
.mdfiles fromworkspace/when done.
We are still improving one-click migration; see docs/USER-GUIDE.md § Migrating from OpenClaw and CHANGELOG.md for the exact prompt and details.
| Data | Where | Encrypted? |
|---|---|---|
| Chats, anchors, memory | nova_memory.sqlite on your disk |
No (local file) |
| API keys | settings.json + .nova_crypto/ |
Yes |
| Personalities | personality.json |
No |
After you build and run Persistent Sage, nothing is stored on a Persistent Sage-operated cloud. Messages go only to the LLM provider you configure (and optional tool URLs if you enable agent tools). See PRIVACY.md and docs/DATA-AND-PRIVACY.md for the full picture.
- 3.0 — Moltbook, Productivity mode (Google widgets / Email Agent), Favorites, Share, agent PDF tools, workspace vision (attach from workspace +
workspace_view_image), experimental subagents, Settings tabs (General / Provider / Tools). - Coding mode (v2 / 2.1+) — Git repos, editor, terminal, coding agent, playground, notepad, Agent Action Stream. See docs/CODING-MODE.md.
- UX (2.1+) — Message timestamps, Help menu, token counter, light/dark theme, cache manager, abort turn, unified Companion↔Coding context; 3.0 restores fenced code blocks and reliable post-tool replies.
- Memory Anchor — SQLite conversations, messages, anchors, projects, and preferences; hybrid FTS + keyword (+ optional semantic) recall and startup briefings.
- Companion profiles — Multiple personalities with live system-prompt preview; Persistent Sage JSON and OpenClaw markdown import; optional agent self-edit of
personality.json. - Providers — OpenAI, Google Gemini, xAI Grok, OpenRouter, Ollama (local), Ollama Cloud, Anthropic, or offline placeholder.
- Agent tools (opt-in) — Web search, URL fetch, headless
fetch_browser, HTTPShttp_request, sandboxed workspace files & images, PDF read/create, optional database query, Moltbook, experimental subagents. - Pulse — Timer-driven check-ins that run as normal chat turns in your selected sidebar thread.
- Vision — Attach images (computer, workspace, or webcam); multimodal payloads for supported models.
- In-app updates — Settings → General → Updates for both Store and GitHub installs (Store APIs vs Tauri updater).
- Send feedback — Settings buttons open prefilled GitHub Issues without attaching private chats or logs.
- Optional donations — PayPal / Cash App links in footer and onboarding (no feature unlock).
- Portable layouts —
PERSISTENT_SAGE_DATA_DIRandPERSISTENT_SAGE_PORTABLE(legacyNOVA_*also works) for custom or USB data locations.
git clone https://github.com/g00siferdev-py/persistent-sage.git
cd persistent-sage
npm install
npm run tauri devFirst launch creates local data under your OS app directory (or PERSISTENT_SAGE_DATA_DIR if set). Configure Settings → Provider, then start a chat.
New to the stack? Follow the step-by-step guide in docs/INSTALL.md.
| Variable | Purpose |
|---|---|
PERSISTENT_SAGE_DATA_DIR |
Absolute path for nova_memory.sqlite, settings, personalities, workspace, attachments (legacy NOVA_DATA_DIR still works) |
PERSISTENT_SAGE_PORTABLE=1 |
Store data in {executable}/data/ (legacy NOVA_PORTABLE=1 also works) |
PERSISTENT_SAGE_CHROME_PATH |
Chrome/Chromium/Edge binary for fetch_browser (legacy NOVA_CHROME_PATH also works) |
PERSISTENT_SAGE_CHROME_NO_SANDBOX |
Set to 1 in Docker or locked-down environments |
| (unset) | OS default application data location |
export PERSISTENT_SAGE_DATA_DIR="$HOME/PersistentSageData"
mkdir -p "$PERSISTENT_SAGE_DATA_DIR"
npm run tauri dev| Command | Description |
|---|---|
npm install |
Install dependencies |
npm run tauri dev |
Run Persistent Sage (desktop + Rust backend) |
npm run tauri build |
Release build and installers |
npm run build |
Frontend typecheck and Vite production build |
npm run dev |
Vite only — not sufficient for full Persistent Sage |
| Layer | Technologies |
|---|---|
| Desktop | Tauri 2 |
| UI | React 19, TypeScript, Vite 7, Tailwind CSS v4 |
| Backend | Rust 1.77+, rusqlite, reqwest, encrypted settings |
| Data | Local SQLite (nova_memory.sqlite); API keys encrypted at rest |
Persistent Sage was developed in Cursor with heavy AI pair-programming. Throughout the project, coding work was driven by selecting Codex and GPT-5.6 as the models inside Cursor.
Those two models played a huge part in writing Persistent Sage: implementing the Rust backend and React UI, Memory Anchor / SQLite recall, provider integrations, agent tools (including PDF), Coding mode, packaging, and docs. Direction, product decisions, review, and release ownership stayed with the maintainer; Codex and GPT-5.6 were the primary coding partners in the editor.
| Issue | Solution |
|---|---|
| Chat does nothing | Use npm run tauri dev, not npm run dev |
| Placeholder replies | Settings → Provider → live backend + API key |
| Model ignores images | Use a vision model; on Ollama, tools are off for image turns |
fetch_browser fails |
Install Chrome/Chromium or set PERSISTENT_SAGE_CHROME_PATH |
| Linux build errors | Tauri prerequisites |
More: docs/INSTALL.md § Troubleshooting
Persistent Sage 3.0.0 (beta, tag v3.0.0-beta.1) ships Moltbook, Favorites, Share/copy enhancements, agent PDF tools, personality update improvements, webcam capture, and a refactored Settings UI — on top of Companion + Coding from 2.x. GitHub beta installers are available now; Microsoft Store 3.0 is planned for Aug 3. See PERSISTENT-SAGE-STATUS.md, CHANGELOG.md, and docs/releases/v3.0.0.md.
Maintainer: g00siferdev-py
MIT License — Copyright (c) 2026 g00siferdev-py
0 comments
log in to comment.