Auto-save, search, and manage your DeepWiki session history — all data stays local, no login required.
DeepWiki is a powerful AI-powered code knowledge tool, but it lacks persistent session history. Wikeep enhances it by automatically saving your valuable DeepWiki sessions to local storage with no cloud dependency or login required, while providing fast search and management directly in the browser's Side Panel.
| Pain point | Wikeep solution |
|---|---|
| Sessions disappear on reload | Automatically captures and persists every session locally |
| No search across past sessions | Full-text search by repo name or question content |
| Hard to revisit old answers | Side Panel timeline with one-click navigation |
| Fear of data loss after reinstall | Export/import backup as a single JSON file |
| No control over capture | Auto-save toggle to enable/disable at any time |
- 🔄 Auto-capture: Automatically detects and saves sessions when you open a DeepWiki page (
https://deepwiki.com/search/{queryId}) - ⚡ API-first + DOM fallback: Prefers the DeepWiki public API for structured data; falls back to DOM parsing when needed; background script handles cases where the content script is unreachable
- 🧠 Deduplication: Recognizes already-saved sessions by
queryIdand skips re-capture - 🪟 Side Panel: Opens directly in the browser side panel with one click
- 🔍 Keyword search: Fast local full-text search by repo name or question content
- 📋 Session management: Delete individual sessions or clear all data
- 🔗 Quick actions: Open source page in a new tab or copy the Session URL
- 💾 Backup & restore: Export all sessions to a JSON file and import them back after reinstalling
- ⚙️ Auto-save toggle: Enable or disable automatic capture at any time
- 🔔 Tab-switch awareness: Background script broadcasts tab context changes to the Side Panel in near real-time
| Layer | Technology |
|---|---|
| Extension standard | Chrome Manifest V3 |
| UI framework | React 19 + TypeScript |
| Build tool | Vite |
| Local storage | IndexedDB (idb) + chrome.storage.local |
| Test framework | Vitest + jsdom |
wikeep/
├── public/
│ ├── manifest.json # Chrome extension manifest (MV3)
│ └── icons/ # 16/32/48/128 px icons
├── sidepanel.html # Side Panel entry HTML
├── src/
│ ├── background/ # Background Service Worker (routing, fallback capture, tab broadcast)
│ ├── content/ # Content Script (injected into deepwiki.com/search/*)
│ ├── api/ # DeepWiki API client and type definitions
│ ├── parser/ # DOM session parser and normalizer
│ ├── storage/ # IndexedDB repository (CRUD, import/export)
│ ├── search/ # Local keyword search
│ ├── shared/ # Shared types, constants, message protocol, utils
│ └── ui/
│ ├── sidepanel/ # Side Panel entry and root component (SidePanelApp)
│ ├── components/ # List, search box, empty state components
│ ├── hooks/ # React hooks (useDebouncedValue)
│ └── styles/ # Base CSS
├── tests/ # Vitest unit tests
├── docs/ # Requirements and technical design docs
├── scripts/build.mjs # Dual Vite build (Side Panel + Content Script)
├── LICENSE
└── package.json
- Node.js >= 18
- Chrome browser
npm installnpm run buildOutput is written to the dist/ directory.
- Open Chrome and navigate to
chrome://extensions/ - Enable Developer mode (top-right toggle)
- Click Load unpacked and select the
dist/directory - Click the Wikeep icon in the toolbar to open the Side Panel
- After installing, visit any DeepWiki session page (
https://deepwiki.com/search/{queryId}) - The content script auto-detects the page and attempts API capture (DOM as fallback)
- If the
queryIdis already saved, the Side Panel shows "Session saved" and skips re-capture - Switching tabs triggers an automatic context update in the Side Panel
- Use the Backup & Restore page (⋮ menu) to export a JSON backup or restore from a file
npm testnpm run typecheck| Permission | Purpose |
|---|---|
storage |
Stores extension settings (auto-save toggle, etc.) |
sidePanel |
Renders session history in the browser side panel |
activeTab |
Checks whether the current tab is a DeepWiki page |
https://deepwiki.com/* |
Injects the content script to capture DeepWiki session pages |
https://api.devin.ai/ada/query/* |
Calls the DeepWiki public API for structured session data |
All data is stored locally in the user's browser only and is never sent to any server.
- No user identity data is collected
- No backend service is involved
- No account registration or login is required
- All data can be cleared or exported by the user at any time
Contributions are welcome! Feel free to open an issue or submit a pull request.
- Fork the repository
- Create a feature branch (
git checkout -b feat/your-feature) - Commit your changes
- Open a Pull Request