# Offload Go through open tabs one at a time, oldest first, and file each one into Obsidian with a single key. Works in Firefox (128+) and Chrome/Edge (121+) from the same code, with no build step. | Key | Meaning | What happens | |---|---|---| | `t` | It's a task | Appends `- [ ] [Title](url)` to today's daily note (or an inbox note), closes the tab | | `n` | It belongs in a note | Fuzzy-pick a note (recent ones first, or type a new name), append the link, close the tab | | `r` | Read later | Appends to `Reading Queue.md`, closes the tab | | `x` | Don't need it | Logs it to `Tab Archive.md`, closes the tab | | `k` | Still using it | Hides it from triage for 3 days | | `o` | Look at it | Switches to the tab; click the toolbar button to come back | | `←` `→` / `s` | Navigate | Back / skip | | `u` | Undo | Reopens the last closed tab (the Obsidian line stays) | A tab is closed only after Obsidian confirms the write, so a failed write never loses a tab. Open triage with the toolbar button or `Alt+Shift+T`. The badge shows your open-tab count. ## Setup 1. In Obsidian, install the **Local REST API** community plugin. In its settings, copy the API key and turn on **Enable Non-encrypted (HTTP) Server** (port 27123). To use HTTPS (27124) instead, open `https://127.0.0.1:27124` once and accept the self-signed certificate. 2. If tasks go to the daily note, the core **Daily notes** plugin (or Periodic Notes) must be enabled. 3. Load the extension: - **Firefox:** `about:debugging#/runtime/this-firefox` → *Load Temporary Add-on…* → `extension/manifest.json` (this lasts until you restart Firefox; see below for a permanent install). - **Chrome:** `chrome://extensions` → Developer mode → *Load unpacked* → the `extension/` folder. 4. Open the extension's settings, paste the API key, click **Test connection**, then **Save**. Or run `npm install` and then `npm run firefox` / `npm run chrome` to launch a throwaway browser profile with the extension loaded and auto-reloading. ### Permanent Firefox install Release Firefox only runs signed add-ons. Run `npm run build`, then upload the zip from `web-ext-artifacts/` to addons.mozilla.org as **unlisted** (self-distribution). Mozilla signs it automatically, usually within minutes. Firefox Developer Edition and Nightly can instead set `xpinstall.signatures.required` to `false` in `about:config`. ## Development - `npm test`: tests the Obsidian client against a fake server - `npm run lint`: runs `web-ext lint` (the `service_worker` warning is expected; Chrome needs that key) Files live in `extension/`: `triage.*` is the triage page, `options.*` is the settings page, `common.js` holds the settings and the Obsidian client, and `background.js` handles the toolbar button and badge. ## Ideas for later - Snooze: close now, reopen on a chosen date - Group related tabs into a project note in one step - Use an LLM to draft the todo text from the page content - "Tab bankruptcy": dump every tab into a dated note and close them all