Incipit.
Download HVNT33
At the end of this page you’ll have HVNT33 open with a fictional demo case to explore. The app brings its own server, database and Tor; all you need is Node.js.
What you need
- A computer running macOS, Windows or Linux
- Node.js 22.18 or later
node --version - Claude Code or Codex for the agent that files your captures (optional, but it's how material becomes research)
claude --version
Install and start
IGet the source
Clones the repository into a folder named
hvnt33and moves into it. Everything else runs from there.git clone https://github.com/kai-ten/hvnt33.git hvnt33cd hvnt33IIInstall the dependencies
Installs every part of HVNT33 in one pass: the app, its server and the shared core.
npm installIIISet it up
Writes
.envwith a random database password, and installs the built-in database and Tor, each checked against pinned checksums. Run it once.npm run setupIVOpen the app
Builds the app and opens it. The app starts its own server and database; there is nothing else to run.
npm run desktopVLoad the demo case (optional)
Creates a fictional investigation to explore before you start your own.
npm run demo
Your first investigation
- In the desktop app, create an investigation in the right-hand pane: what you're investigating, and the question you want to answer.
- Press ⌘K and search. Every selected engine opens in its own tab, and each results page is recorded. The panel beside the page (⌘3) shows the results as data.
- Open a result, highlight a passage and press ⌘⇧S. The capture is saved to the case and a reference to it appears in the agent's message at the bottom: add a note if you like ("connect this to the contract") and press Enter. You can also drag files from anywhere onto the agent. The agent reads the capture and files people, organizations, events and claims into the case, each with the exact quote it came from.
- Watch the case grow in the investigation pane. Everything the agent files is Unverified until you review it: press ⌘4 for the Case view, tick Needs review, check each record against its quoted source, and set its status. Your reviews are recorded apart from the agent's filing.
- Press ⌘2 for the Search Lab:
sourcetype=serp | compareshows which results the engines agree on.
Using HVNT33 covers verification and exports; the desktop guide covers every feature and shortcut.
Running the server on its own§
The app runs its server for you. To run the server without the app (for example on another machine the app connects to), use npm start: it starts the built-in database too. Snapshots made by a server without the app store each page's HTML and text but no screenshot, since the page is rendered by the app's browser. Keep the server on localhost: local mode trusts every request from the machine. For a shared server, use token mode; see Operations. To use an ArcadeDB you run yourself, set ARCADEDB_URL in .env.
When something goes wrong
- npm install fails, or node complains about syntax
- Your Node.js is older than 22.18. Check with
node --versionand install a current LTS release. - npm run desktop takes a while the first time
- It builds the app first. Later starts are quicker.
- Tor on doesn't connect
- Built-in Tor is installed by
npm run setup; run it again if it was interrupted. The button shows Tor’s progress; the first start takes longest. - An engine tab shows a consent page or a bot check
- HVNT33 reports these and never bypasses them. Complete it in the tab and the reload is recorded. VPN and Tor exits see more of them.
- Captures don't get filed
- Filing needs Claude Code or Codex signed in, in the terminal at the bottom of the window (⌘J), and Agent files it ticked in the capture sheet.
Still stuck? Open an issue with the command, what it printed, and your macOS and Node versions.