원클릭으로
browser-history
Search local browser history. Use when user asks about visited pages, forgotten URLs, or time spent on sites.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Search local browser history. Use when user asks about visited pages, forgotten URLs, or time spent on sites.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | browser-history |
| description | Search local browser history. Use when user asks about visited pages, forgotten URLs, or time spent on sites. |
Search the user's browser history to find visited pages, analyze browsing patterns, and retrieve forgotten information.
sqlite3 CLIFirst, detect available browsers by running:
./find-browser.sh
firefox or chromium (determines SQL syntax)Use ?immutable=1 in the SQLite URI to read the database even when the browser is open:
sqlite3 "file:///path/to/history.db?immutable=1" "SELECT ..."
Search by keyword:
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:
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):
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:
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;
Important: Chromium timestamps are microseconds since January 1, 1601 (Windows epoch).
Conversion: (timestamp/1000000) - 11644473600 gives Unix epoch.
Search by keyword:
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:
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;
| Column | Description |
|---|---|
url | Full URL |
title | Page title |
last_visit_date | Microseconds since Unix epoch |
visit_count | Number of visits |
frecency | Frequency + recency score |
| Column | Description |
|---|---|
place_id | Foreign key to moz_places |
total_view_time | Milliseconds spent on page |
created_at | Milliseconds since Unix epoch |
scrolling_time | Time spent scrolling |
key_presses | Number of key presses |
| Column | Description |
|---|---|
url | Full URL |
title | Page title |
last_visit_time | Microseconds since 1601-01-01 |
visit_count | Number of visits |
See @README.md for output examples.