This repository has no description

README.md

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