Query Firefox bookmarks stored in places.sqlite via Nushell SQLite. Use when looking up bookmarked URLs, browsing Firefox bookmark history, or finding saved links.
Scanned 9/7/2026
Install to Claude Code
npx -y skills add knoopx/pi --skill firefox-bookmarks --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Firefox Bookmarks?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/knoopx-firefox-bookmarks)More formats (shields.io, HTML) on the badges page.
---
name: firefox-bookmarks
topic: Firefox Bookmarks
description: "Query Firefox bookmarks stored in places.sqlite via Nushell SQLite. Use when looking up bookmarked URLs, browsing Firefox bookmark history, or finding saved links."
token_cost: 100
keywords: ["firefox", "bookmark", "bookmarks", "saved", "link"]
requires_tools: [nu]
---
# Firefox Bookmarks
Search Firefox bookmarks stored in `places.sqlite` using Nushell's built-in SQLite support.
## Searching Bookmarks
Use the provided script for consistent results:
```nu
# Search by keywords (matches titles and URLs, case-insensitive)
^~/.pi/agent/skills/firefox-bookmarks/scripts/search-bookmarks.nu "scraping crawling"
# Single term — defaults to 50 results, most recent first
^~/.pi/agent/skills/firefox-bookmarks/scripts/search-bookmarks.nu "typescript"
# Pagination and custom limit
^~/.pi/agent/skills/firefox-bookmarks/scripts/search-bookmarks.nu --page 2 --limit 10 "docker"
# Override profile (default resolves from $env.USER)
^~/.pi/agent/skills/firefox-bookmarks/scripts/search-bookmarks.nu --profile ks7i6rp1.default "docker"
```
Results are deduplicated by URL and exclude `javascript:` URLs. Use `--page N` for subsequent pages and `--limit N` (max 50) to adjust page size.
## Ad-Hoc Query
For one-off queries not covered by the script:
```nu
open ~/.mozilla/firefox/knoopx/places.sqlite | query db "SELECT b.title, p.url FROM moz_bookmarks b JOIN moz_places p ON b.fk = p.id WHERE b.type = 1 LIMIT 20"
```
Bookmarks are in `moz_bookmarks` joined to `moz_places` via `b.fk = p.id`. Filter with `b.type = 1` for actual bookmarks (not folders or separators).
## Constraints
- Firefox must not be running when querying — SQLite locks the database
- If Firefox is open, copy first: `cp places.sqlite /tmp/places.sqlite`, then query the copy
Is this your skill, or is something wrong with this listing? . Author removals are honored within 72 hours.
No comments yet. Be the first to comment!