HackBrowserData
On this page

CLI Reference

The six commands and their flags: dump, dumpkeys, archive, restore, list, and version.

HackBrowserData ships six commands. dump is the default — running hack-browser-data with no command is the same as hack-browser-data dump.

Commands

CommandWhat it does
dumpExtract and decrypt browser data — the default command.
dumpkeysExport Chromium master keys as JSON for cross-host decryption.
archivePack Chromium profile files into a zip for cross-host restore.
restoreRestore copied Chromium data with exported keys on another supported OS.
listList the browsers and profiles detected on this machine.
versionPrint the build’s version, commit, and date.

Tip

Start with list to discover browsers and profiles, then use the canonical key from Supported Browsers with --browser.

Global flags

FlagDefaultDescription
-v, --verbosefalseEnable debug logging

dump’s flags are also available directly on the root command. Output formats and the file model are documented on Output & Data Formats.

Logs and the run summary go to stderr. Command output goes to stdout: the list table, version, and dumpkeys JSON when it is not given -o.

Exit status

StatusWhen
0The command ran to the end — including runs with partial or error rows in the summary, and runs that found no browsers.
1A flag was invalid (checked before any browser data is read or any file is written), or the command itself failed, e.g. the output could not be written.
signalThe run was stopped; see below.

Stopping a run

Ctrl-C (or SIGTERM / SIGHUP) stops the run cleanly: the tool removes the temporary copies it made and prints no summary. Press Ctrl-C again to quit at once. The process then ends the way the signal would have ended it, so a calling shell or script sees that it was interrupted (on Windows, with the Ctrl-C exit status).

version

version prints the build’s version, commit, and build time (UTC) — handy for bug reports. A release binary prints:

terminal
$ hack-browser-data version
hack-browser-data 1.2.0
  commit: ac8f76f
  built:  2026-11-02T07:55:41Z

The commit is the short Git SHA the binary was built from. A build from a source checkout shows the commit’s own time as built; one installed with go install shows commit: none and built: unknown.

  • dump — Extract and decrypt browser data — the default command.
  • dumpkeys — Export Chromium master keys as JSON for cross-host decryption.
  • archive — Pack Chromium profile files into a zip for cross-host restore.
  • restore — Decrypt copied Chromium profile data using exported master keys.
  • list — List detected browsers and profiles.