Skip to content

WesP10/webhist

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

webhist · Latest tag

webhist is a browser history CLI for syncing local browser databases into a searchable JSONL store, then querying that store from stdout for use with tools like jq, fzf, grep, and tail.

  • Stream-first: the default interface is line-oriented output that works well in pipes and scripts.
  • Local-first: sync once, query locally, and avoid reaching back into live browser databases for every read.
  • Flexible output: use compact, full, human-readable, or JSONL views depending on the task.

Learn how to use webhist.

Installation

If you already have a built executable, you can start with:

webhist --help
webhist sync

To build from source:

cmake -S . -B build
cmake --build build

On Windows, SQLite via vcpkg is a common option:

vcpkg install sqlite3

Documentation

The README is organized into the most common places people look first:

Usage

Common commands:

webhist --since 2h
webhist -S 2h -d github.com
webhist --domain github.com
webhist --browser chrome --since 7d
webhist --full --browser chrome --since 7d
webhist --human-readable --domain github.com
webhist --json --limit 200 | jq
webhist sync

The default output is compact and abbreviates long fields with ...:

<timestamp> | <browser>:<profile> | <domain> | <url> | "<title>"

Example:

2026-05-22 14:32:00 | chrome:Default | github.com | https://github.com/westo/... | "Fixing LRU cache bug"

Use --full or -f to keep the same single-line layout without truncation. Use --human-readable or -h for a labeled multi-line record view.

Output

  • --full prints the single-line format without truncation.
  • --human-readable prints a labeled multi-line record.
  • --json emits JSONL for tooling and automation.

Storage

webhist stores synced data locally in JSONL files:

  • Windows: %USERPROFILE%\.webhist\history.jsonl
  • macOS/Linux: ~/.webhist/history.jsonl

Sync state is tracked separately at:

  • Windows: %USERPROFILE%\.webhist\state.jsonl
  • macOS/Linux: ~/.webhist/state.jsonl

Build

webhist uses CMake and SQLite development headers and libraries.

  • cmake in PATH
  • A C compiler, such as MSVC on Windows or gcc/clang on Unix
  • SQLite development headers and libraries

If needed, point CMake at the vcpkg toolchain file when configuring the project.

Releases

Tagged releases publish a prebuilt Windows x64 archive on GitHub Releases so you can try webhist without compiling it yourself.

Each release currently includes:

  • webhist-windows-x64.zip
  • webhist-windows-x64.sha256

Download the zip, verify the checksum if you want, and run the webhist.exe inside the archive.

About

Browser-history tool that snapshots and indexes your history as compact JSONL cli tool.

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors