dige04/hieu-ccsetup/browser-history

Claude Code and agent skill by dige04/hieu-ccsetup

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Search local browser history. Use when user asks about visited pages, forgotten URLs, or time spent on sites.

Install

npx vskill@latest install dige04/hieu-ccsetup/browser-history

SKILL.md

Browser History Search

Search the user's browser history to find visited pages, analyze browsing patterns, and retrieve forgotten information.

When to use

  • User asks about pages they visited ("what github repos did I look at last week?")
  • User wants to find a forgotten page ("find that article about LLMs I read")
  • User asks about browsing habits ("how much time did I spend on Twitter?")
  • User wants browsing statistics ("show my most visited sites")

Requirements

  • sqlite3 CLI

Setup

First, detect available browsers by running:

bash
./find-browser.sh
  • Output: PATH,TYPE,BROWSER,LAST_MODIFIED
  • TYPE: firefox or chromium (determines SQL syntax)
  • Use the first result (most recently used browser) by default
  • If multiple browsers were used recently (within last 24h), ask the user which one to search

Querying the database

Use ?immutable=1 in the SQLite URI to read the database even when the browser is open:

bash
sqlite3 "file:///path/to/history.db?immutable=1" "SELECT ..."
Firefox databases (places.sqlite)

Search by keyword:

sql
SELECT
title,
url,
datetime(last_visit_date/1000000, 'unixepoch', 'localtime') as visit_date
FROM moz_places
WHERE url LIKE '%keyword%' OR title LIKE '%keyword%'
ORDER BY last_visit_date DESC
LIMIT 50;

Search by date range:

sql
SELECT url, title, datetime(last_visit_date/1000000, 'unixepoch', 'localtime') as visit_date
FROM moz_places
WHERE last_visit_date > strftime('%s', '2025-01-01') * 1000000
AND last_visit_date < strftime('%s', '2025-01-31') * 1000000
ORDER BY last_visit_date DESC;

Time spent analysis (uses moz_places_metadata):

sql
SELECT
SUM(m.total_view_time) / 1000 / 60 as minutes,
COUNT(*) as sessions
FROM moz_places_metadata m
JOIN moz_places p ON m.place_id = p.id
WHERE p.url LIKE '%example.com%'
AND m.created_at > strftime('%s', '2025-01-01') * 1000;

Note: created_at is in milliseconds, last_visit_date is in microseconds.

Most visited sites:

sql
SELECT
SUBSTR(url, INSTR(url, '://') + 3,
INSTR(SUBSTR(url, INSTR(url, '://') + 3), '/') - 1) as domain,
SUM(visit_count) as visits
FROM moz_places
WHERE url LIKE 'http%'
GROUP BY domain
ORDER BY visits DESC
LIMIT 20;
Chromium databases (History)

Important: Chromium timestamps are microseconds since January 1, 1601 (Windows epoch).

Conversion: (timestamp/1000000) - 11644473600 gives Unix epoch.

Search by keyword:

sql
SELECT
title,
url,
datetime((last_visit_time/1000000)-11644473600, 'unixepoch', 'localtime') as visit_date
FROM urls
WHERE url LIKE '%keyword%' OR title LIKE '%keyword%'
ORDER BY last_visit_time DESC
LIMIT 50;

Search by date range:

sql
SELECT url, title, datetime((last_visit_time/1000000)-11644473600, 'unixepoch', 'localtime') as visit_date
FROM urls
WHERE last_visit_time > (strftime('%s', '2025-01-01') + 11644473600) * 1000000
AND last_visit_time < (strftime('%s', '2025-01-31') + 11644473600) * 1000000
ORDER BY last_visit_time DESC;

Database schema

Firefox (moz_places)
ColumnDescription
urlFull URL
titlePage title
last_visit_dateMicroseconds since Unix epoch
visit_countNumber of visits
frecencyFrequency + recency score
Firefox (moz_places_metadata)
ColumnDescription
place_idForeign key to moz_places
total_view_timeMilliseconds spent on page
created_atMilliseconds since Unix epoch
scrolling_timeTime spent scrolling
key_pressesNumber of key presses
Chromium (urls)
ColumnDescription
urlFull URL
titlePage title
last_visit_timeMicroseconds since 1601-01-01
visit_countNumber of visits

Output guidelines

  • Present results in a readable format, grouped by domain when relevant
  • For time analysis, show hours/minutes, not raw milliseconds
  • When showing history, include the date and a clickable link
  • If results are numerous, summarize by domain or time period
  • You might include a small ASCII/Unicode chart (daily breakdown, histogram) if relevant

See @README.md for output examples.

Security

  • Security scanPassed, 90 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
0

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/dige04/hieu-ccsetup/browser-history/badge)](https://verified-skill.com/skills/dige04/hieu-ccsetup/browser-history)

Something wrong with this skill or its page? Tell us.