Lantunnel
Install Lantunnel Client on each participating device to access your whole LAN from anywhere with P2P-first low-latency routing, encrypted transport, and relay fallback without port forwarding.
NiteWatch is a consumer endpoint monitor for Windows that logs every outbound connection, reconstructs the causal chain that caused it, and explains what happened in plain English. Local-only analysis
SecurityGo · HTMLGitHub @GrimthornRedbeardOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Consumer endpoint monitor for Windows: logs every outbound connection, reconstructs the causal chain that caused it, explains it in plain English. Local-only, no kernel driver, no automatic response.
Taken from the repository README
Loading the full README.
Read the full README ↗Somebody's knocking on your door at 3am. Here's who.
Pre-release, unsigned, and the false-positive rate is unmeasured. Windows will call it an unrecognised app; on Windows 11 with Smart App Control enabled it will not run at all. A build is downloadable from threattape.com with the caveats stated in full. Everything it cannot do is compiled into the binary and one click from the dashboard.
NiteWatch is a lightweight personal security agent for Windows. It watches what your computer is actually doing — which programs are running, who they're talking to, what files they're touching — and when something is wrong, it tells you the story in plain English with a one-click fix.
| Area | Examples |
|---|---|
| Command & control | connections to known malware infrastructure, programs dialling bare addresses they never looked up, unsigned software reaching new destinations, first contact with watched jurisdictions |
| Persistence | autostart entries added from temporary folders, an existing startup entry silently repointed, launch hijacking (IFEO/AppInit) |
| Ransomware | one program rewriting many documents across folders, encryption-style renames, ransom notes, backup destruction |
| Credential theft | a program that isn't the owner reading saved passwords, SSH keys, cloud credentials or wallet files |
Noise control is treated as a feature, not a detail: verified-publisher suppression, a post-install learning window, per-program/destination "always allow", and severity gating so only serious findings interrupt you.
Feature complete against the original design; not yet validated on real hardware over time. The false-positive rate during ordinary use is the open question.
Build (pure-Go, single static exe, no CGO):
cd agent && CGO_ENABLED=0 go build -o nitewatch ./cmd/nitewatch
Cross-compile for Windows:
cd agent && GOOS=windows GOARCH=amd64 CGO_ENABLED=0 go build -trimpath -ldflags "-s -w" -o ../dist/nitewatch.exe ./cmd/nitewatch
-trimpath matters: builds are reproducible, and released binaries have their
SHA-256 published, so a build made without it will not match the hash on the
download page even when the source is identical.
dist/ is git-ignored build output. To hand someone a working copy, ship the
exe together with agent/scripts/run-nitewatch.bat — that launcher is the
source of truth, and it must sit in the same directory as the exe because it
self-elevates and then runs nitewatch.exe from its own location.
dist/ is where a build is picked up from, so rebuild it whenever the thing
being handed over changes. A stale exe there is indistinguishable from a
current one at a glance, and the file's timestamp does not help: Go stamps the
commit time into the binary, not the build time, so a fresh build of old code
and an old build of old code look the same. To check what a binary actually is:
go version -m dist/nitewatch.exe | grep vcs
Build releases from the main checkout, not a git worktree. Go recognises a
git repository only by a .git directory; a worktree has a .git file, so
Go walks past it and stamps whatever repository encloses it — on the dev box,
the unrelated parent repo. The build still works; its vcs.revision is simply
wrong, and so is the "quote this in any bug report" line.
The running agent reports the same identity in its About panel, which is the only way to check on a machine without Go.
Windows (live) — must run elevated; ETW requires Administrator:
nitewatch.exe --serve
Or double-click run-nitewatch.bat, which requests elevation for you. Then
open http://127.0.0.1:8973.
Dev/demo (any OS) — replay a recorded trace, no elevation needed:
./nitewatch --replay testdata/traces/basic.jsonl
Useful flags: --no-feeds (skip threat-intel downloads), --no-recon (skip the
address-ownership dataset), --rules <dir> (load rule packs from disk during
development). Everything else is configured from the dashboard's Settings panel.
Export for Keystone — write the ledger as a file Keystone (the Threat Tape correlation tier) can ingest, then exit. Nothing is sent anywhere:
./nitewatch -db nitewatch.db -export-keystone export.json
The format, the versioned causal-chain ("Story") contract it carries, and the contract test against Keystone's parser are in docs/story-format.md.
agent/
cmd/nitewatch/ entrypoint and run modes
internal/
source/ telemetry: Windows ETW, and a JSONL replay source for tests
event/ the source-agnostic event vocabulary
graph/ causal event graph (GoRapide poset) + rolling window + Story
keystone/ ledger -> Keystone ingest file (docs/story-format.md)
ledger/ SQLite flight recorder: connections, alerts, actions
detect/ detection engine, detectors, suppression gates
filewatch/ file classification and encryption-burst tracking
autostart/ autostart snapshot + diff
intel/ threat-intel feeds, matched offline
recon/ offline address ownership (ASN, country)
respond/ remediation actions and undo
notify/ notification gating and Windows toasts
api/ loopback HTTP + embedded dashboard
rules/ shipped detection rule packs (YAML), embedded in the binary
testdata/traces/ replay fixtures
See NOTICE for required attributions.
Copyright © 2026 Threat Tape LLC.
NiteWatch is free software, licensed under the GNU General Public License
version 3 or later. See LICENSE for the full text.
The licence is not a preference so much as an inheritance: the Windows
event-tracing consumer this agent depends on (github.com/0xrawsec/golang-etw)
is GPL-3.0, and linking it makes the whole program GPL-3.0. Check a
dependency's licence before you ship a binary, not after.
Every source file carries an SPDX header. agent/internal/help/licenses.md is
compiled into the binary and shown in the dashboard's Limits & roadmap
panel, which is where the GPL wants an interactive program's legal notices to
be, and where the threat-intel feeds require their attributions to appear.
Third-party components and their licences are listed in that document. The short version: golang-etw and golang-utils are GPL-3.0, gorapide is MIT, golang.org/x/sys and the modernc.org SQLite stack are BSD-3-Clause.