JSK Multi URL Opener

JSK Multi URL Opener documentation

Installation

Install from your browser's store, or load an unpacked build during testing.

  • Chrome and Edge — install from the store listing, then pin the toolbar icon so it is one click away.
  • Firefox — requires Firefox 115 or newer. The side panel appears as a Firefox sidebar.

On first install a documentation tab opens once. Updates never reopen it.

The first time you open the popup you will see a short card with a Try an example button, which loads three sample links so you can see the whole loop immediately. Dismiss it and it will not come back.

Setup and account

You do not need an account. Opening links, big-batch controls, cleanup, ordering, import and export, number-range patterns and three saved lists all work anonymously, with no permissions granted and nothing leaving your device.

Signing in unlocks more. To sign in, open Settings — the gear in the side panel, or the extension's Options page — and:

  1. Click Create an API key to open your JSKAPPS dashboard.
  2. Create a key and scope it to this product. The key is shown only once, so copy it immediately.
  3. Paste it into Sign in with an API key and click Connect. You will be asked to allow access to the JSKAPPS API host at this point; it is used only to check which plan you are on.

Rotating your key keeps all your data. Your lists belong to your account, not to a particular key, so you can revoke and replace keys freely. If a different account signs in on the same browser, the extension resets to a clean state so nobody inherits someone else's lists — this cannot be undone.

To sign out, use Remove key. Signing out keeps your local lists and settings.

Core concepts

Four ideas make the rest of this page make sense.

The editor is the workspace. Everything operates on the list of lines in the text box: patterns expand it, cleanup shrinks it, managers write into it. The counter underneath always tells you what will actually happen — how many links are ready, how many were skipped, how many duplicates were removed.

Skipped is not an error. Lines that are not usable links are counted as skipped and never opened, rather than opening something unexpected. Bare domains such as example.com get https:// added automatically, and unsafe schemes are always blocked.

Modes decide the shape, Advanced decides the pace. The Mode dropdown chooses where tabs land. The Advanced drawer controls how fast they arrive and what is cleaned up on the way.

Tiers gate depth, never volume. There is no limit on how many links you can open on any plan. Paid features add capability — advanced patterns, environments, scheduling — not headroom.

Feature guide

Open modes

Choose from the Mode dropdown. Available on all plans.

  • New tabs — every link in a tab in the current window. The default.
  • New window (each) — one new window per link.
  • One window (all) — a single new window containing every link.
  • Group by domain — tabs grouped into a tab group per site. Chromium only.
  • Single tab group — everything in one named tab group. Chromium only.
  • One by one — reuses a single tab, loading each link in turn. Requires a delay; without a pause the pages flash past and only the last remains visible.
  • Incognito window — all links in one private window. Allow the extension in incognito first, from your browser's extensions page.

Big-batch controls

In the Advanced drawer. Available on all plans.

  • Lazy-load — tabs open instantly but only load when focused. The single most useful setting for large lists.
  • Delay — milliseconds between tabs, so a site does not throttle you.
  • Open first N — caps the batch without editing your list.
  • New window per batch of N — splits a long list into manageable windows.
  • Auto-close — closes each opened tab after a set number of seconds.
  • Stop, Pause and Resume — available from the progress bar during any run.

A confirmation appears above your large-batch threshold, and a single batch is capped at 10,000 links.

Cleanup and ordering

Duplicates, blank lines and unusable links are handled automatically. Optionally:

  • Clean tracking — strips utm_*, gclid, fbclid and similar, and collapses links that differ only by them. Requires Free.
  • Order — original, reverse, random, A–Z, or grouped by domain. All plans.
  • Remove opened after run — clears what you just opened out of the editor. All plans.

Bringing links in and out

From the Add menu: From tabs, From page, Extract from text, and Import file (.txt or .csv — the most link-like column is detected automatically and a header row is ignored). You can also drag a file onto the editor.

From the Export menu: copy to clipboard, save as .txt or JSON, or export into a bookmarks folder.

The optional right-click menu adds Open links in selection: select text on any page, right-click, and every link inside the selection opens. It reads real hyperlinks, not only URLs written out as visible text.

URL patterns

Turn on Templating in the Advanced drawer, then write one line instead of many.

  • example.com/page/[1-50] — pages 1 to 50. All plans.
  • example.com/[001-050] — zero-padded, width inferred from how you write it. All plans.
  • example.com/[0-100:25] — steps of 25. All plans.
  • example.com/[a-e] — letter range. Pro.
  • example.com/{us,uk,de} — one URL per value. Pro.
  • example.com/{2026-01-01..2026-01-07} — one URL per date. Pro.
  • example.com/{token} — one URL per value of a saved named token. Pro.

Combining tokens on one line produces every combination, so example.com/[1-3]/{a,b} gives six URLs. Watch the counter before opening — combinations multiply quickly. Patterns you reuse can be saved in the Templates tab.

Search mode

Requires Free. Set Search in the Advanced drawer and any line that is not a link is run as a search instead of being skipped — Google, Google SEO mode, Google UK or IN, Bing, or DuckDuckGo. Add a site: filter to restrict every query to one domain.

Saved lists

In the side panel's Lists tab. Name a list, add comma-separated tags, and optionally a folder — there is no folder-creation screen; type a name and the filter builds itself from the names in use. You can search, sort, reorder manually, and tick also save current open settings so a list remembers how it should be opened.

Limits: 3 lists with no account, 25 on Free, unlimited on Pro. Folders require Free. Turn on sync in Settings (Free) and lists travel between your own devices through your browser's built-in account sync — never our servers.

Environments

Requires Pro. Define base URLs such as staging and prod, put paths like /login in the editor, then expand paths across every enabled profile at once. Useful when the same set of pages must be checked on more than one host.

Schedules

Requires Pro. Auto-open a saved list on browser startup, every N minutes, daily at a time, or once at a set time. Timed schedules are armed the moment you add them — no browser restart is needed; only the on startup kind waits for one. The first run of an every N minutes schedule happens N minutes later, not immediately. The browser must be running for a schedule to fire.

Settings and options

Open Settings from the gear in the side panel, or the extension's Options page.

  • Appearance — theme: System, Light or Dark. Default: System.
  • Features — switch off any feature you do not use. It disappears from the popup and side panel and stops running, so you only see the tools you want. Default: all on.
  • Open defaults — the mode, delay, large-batch confirmation threshold (default 25) and lazy-load setting that a new session starts with.
  • API key — sign in, view the masked key, or remove it.
  • Data — export or import your settings as JSON, or reset to defaults. Resetting does not delete saved lists.
  • Right-click menu — adds Open links in selection. Default: off.
  • Sync saved lists across devices — requires Free. Default: off.
  • Trust and permissions — shows exactly what the extension has been granted.

Keyboard shortcuts

  • Open the popup — no shortcut is set by default; assign one at chrome://extensions/shortcuts (listed as Open JSK Multi URL Opener).
  • Ctrl+K / Cmd+K — open the command palette, to run any action or load a saved list without the mouse.
  • Esc — close the command palette or an open menu.

Limitations and known issues

  • Tab groups are Chromium only. On Firefox, Group by domain and Single tab group open plain tabs instead.
  • The side panel is a sidebar on Firefox, hosting the same workspace.
  • Safari is not supported yet.
  • The interface is English only at present.
  • A single batch is capped at 10,000 links. A pattern that would exceed this is rejected with a clear message rather than attempted.
  • One by one requires a delay, by design.
  • Schedules only fire while the browser is running. A missed one-off runs shortly after the browser reopens.
  • This opens pages for a person to look at. It does not assert that a page loaded correctly, so it is not a replacement for automated testing.
  • Sync uses your browser's own account sync, so that must be enabled, and very large lists may stay local.

Troubleshooting

  • The Open button did nothing. Reopen the popup or side panel and try again. For a large batch, turn on lazy-load first.
  • A control I used has disappeared. It is probably switched off in Settings, under Features.
  • "Sign in" appears on a control. That feature needs the Free or Pro plan.
  • Fewer links opened than expected. Check Open first N in the Advanced drawer, and read the counter — duplicates and invalid lines are removed before opening.
  • A line was skipped. It was not a usable link, or used a blocked scheme such as javascript: or chrome:. Add https:// or correct the line.
  • A pattern did not expand. Templating is switched off, or the token is a Pro one on a lower plan — the line is then treated literally.
  • "Key invalid or revoked." Create a new key in your JSKAPPS dashboard and paste it in.
  • "This key is scoped to a different product." Create a key scoped to this product, or an account-wide key.
  • "Access to the JSKAPPS API was declined." Signing in needs permission to reach the JSKAPPS API. Click Connect again and allow it.
  • Incognito did not open. Allow the extension in incognito from your browser's extensions page.
  • A schedule stopped firing. Open Schedules and toggle it off and on again to re-arm it.

Uninstalling

Remove the extension from your browser's extensions page, or by right-clicking the toolbar icon.

Uninstalling clears everything stored locally — saved lists, history, settings and your API key. Lists you had synced remain in your browser account's sync storage and reappear if you reinstall and sign in again.

A short, optional survey page opens when you remove it. Answering is voluntary, and the page carries no account identifier, no email, and nothing you opened or saved.

To clear data without uninstalling, use Settings, then Data, then Reset to defaults for settings, and delete lists individually in the Lists tab.

Release notes

0.1.0 — first release
- Bulk opening in seven modes, with lazy loading, delays, batching, ordering and auto-close
- URL patterns, search mode, saved lists with tags and folders, and history
- Environment profiles and scheduled opens
- Side-panel workspace, command palette and right-click menu
- Settings with theme, per-feature switches, open defaults and data export/import