No description
- TypeScript 98.4%
- JavaScript 1.6%
| .forgejo/workflows | ||
| .github/workflows | ||
| public | ||
| src | ||
| .gitignore | ||
| .prettierrc.json | ||
| eslint.config.js | ||
| IDEAS.md | ||
| LICENSE | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| tsconfig.json | ||
| vite.config.ts | ||
GrePt
grep your AI conversations and export them. ChatGPT today, more sources soon.
Releases
Pre-built releases are available on the Releases page.
- Download the latest
grept-vX.Y.Z.zip - Unzip it — you'll get a
dist/folder - Load it as an unpacked extension (see Testing in the browser)
Releases are published automatically when a new version tag is pushed.
Local development
npm install
npm run lint
npm run typecheck
npm run test
npm run build
Single-test examples
npx vitest run src/shared/sanitize-file-name.test.ts
npx vitest run -t "falls back when the title has no valid characters"
Testing in the browser
Browser support: Chromium-based browsers (Chrome, Edge, Brave, etc.). Firefox support is in progress.
-
Build the extension:
npm run buildOr use watch mode during development to rebuild on file changes:
npm run dev -
Load the extension in Chrome/Chromium:
- Open
chrome://extensions - Enable Developer mode (toggle in the top right)
- Click Load unpacked and select the
dist/folder
- Open
-
Run it:
- Navigate to any ChatGPT conversation page (
chatgpt.com) - Click the extension icon in the toolbar
- It downloads
grept-chats.json
- Navigate to any ChatGPT conversation page (
-
After rebuilding: click the refresh icon on the extension card in
chrome://extensionsto pick up changes.
Extension output
- The JSON output follows an Open WebUI-native import format (
chatobjects in an array). - In Open WebUI, import from Settings -> Data Controls -> Import Chats.
- The exporter is DOM-based, so it can mark exports as partial when the page appears not fully loaded.
- Currently targets ChatGPT (
chatgpt.com). Support for additional AI chat sources is planned.