name: web-recap description: Find articles from browser history or bookmarks by topic, date, or domain. Use when user asks about saved articles, browsing history, bookmarks, or wants to find URLs they've visited or saved.
web-recap
Extracts browser history and bookmarks from Chrome, Chromium, Brave, Vivaldi, Firefox, Safari, Edge. Run web-recap --help for all flags.
Commands
web-recap Extract history (default)
web-recap bookmarks Extract bookmarks
web-recap list Show detected browsers
Key Flags
--date YYYY-MM-DD Specific date (local timezone)
--start-date YYYY-MM-DD Start of range (inclusive)
--end-date YYYY-MM-DD End of range (inclusive)
--time HH Specific hour (e.g., --time 14 for 2pm-3pm)
--browser NAME chrome|firefox|safari|edge|brave|vivaldi|auto
--all-browsers Extract from all detected browsers
Output Format
JSON with entries array containing:
- History:
timestamp,url,title,domain,visit_count,browser - Bookmarks:
date_added,url,title,folder,domain,browser,tags(Firefox only)
Usage Patterns
Never dump raw output. Always use jq to filter and reduce tokens.
Find Articles by Topic
# Search bookmarks for a keyword
web-recap bookmarks | jq '[.entries[] | select(.title + .url + .folder | test("KEYWORD"; "i"))] | unique_by(.url) | map({title, url, folder})'
# Search history for a keyword
web-recap --start-date 2025-12-01 --end-date 2025-12-22 | jq '[.entries[] | select(.title + .url | test("KEYWORD"; "i"))] | unique_by(.url) | map({title, url, domain, visit_count})'
# Search across all browsers
web-recap bookmarks --all-browsers | jq '[.entries[] | select(.title + .url | test("KEYWORD"; "i"))] | map({title, url, browser, folder}) | unique_by(.url)'
Find Recent Bookmarks
# Bookmarks from last 7 days
web-recap bookmarks --start-date 2025-12-15 --end-date 2025-12-22 | jq '.entries | map({title, url, date_added, folder})'
# Bookmarks from specific date
web-recap bookmarks --date 2025-12-15 | jq '.entries | map({title, url, folder})'
Browse by Domain
# Find all bookmarks from a domain
web-recap bookmarks | jq '[.entries[] | select(.domain == "github.com")] | map({title, url, folder})'
# Most visited domains in history
web-recap | jq '[.entries[].domain] | group_by(.) | map({domain: .[0], count: length}) | sort_by(-.count) | .[0:10]'
Browse by Folder
# List bookmark folders
web-recap bookmarks | jq '[.entries[].folder] | unique | sort'
# Get bookmarks from specific folder
web-recap bookmarks | jq '[.entries[] | select(.folder | contains("Tech"))] | map({title, url})'
Quick Metadata
# Get summary
web-recap bookmarks | jq '{browser, total_entries, date_range: (.start_date // "all time")}'
Examples
# Find AI-related bookmarks from last month
web-recap bookmarks --start-date 2025-11-22 --end-date 2025-12-22 | jq '[.entries[] | select(.title + .url | test("ai|claude|gpt|llm"; "i"))] | map({title, url, folder})'
# Find most visited URLs this week
web-recap --start-date 2025-12-16 --end-date 2025-12-22 | jq '[.entries[]] | sort_by(-.visit_count) | .[0:10] | map({title, url, visit_count})'
# Export Chrome bookmarks to review
web-recap bookmarks --browser chrome -o chrome-bookmarks.json
# Find Firefox bookmarks with specific tag
web-recap bookmarks --browser firefox | jq '[.entries[] | select(.tags | contains(["golang"]))] | map({title, url, tags})'