For engineers

Technical Overview

This page is for engineers and IT providers. It says where Vigilance sits on a computer, what happens on each install, and why it finds bad updates that other tools miss. It does not publish how we judge a package. That method is patent pending.

1. The Short Version

2. Where It Sits

Vigilance installs per user. It needs no admin rights, no kernel driver, no root certificate and no network proxy. It opens no port to the network.

Each computer talks to one Vigilance host: check.vigihq.com, TCP port 443, over HTTPS. Your IT provider can test the path with netcheck. Our ready email for IT providers is on Email for Your IT Provider.

3. What Happens on an Install

  1. A person or an AI tool runs an install, for example npm install express.
  2. The package manager asks the local filter for the version list of each package. That includes the dependencies of dependencies.
  3. The filter gets the list from the real registry. It looks up the verdicts for that package. It sends a 4-character code, not the package name. Dozens of names share each code. The answer is a signed file of verdicts for all of those names.
  4. If a version has a harmful verdict, the filter removes it from the list and moves the "latest" tag. The package manager then picks the newest safe version on its own.
  5. If a public version has no verdict yet, the filter sends its name and version to our service and waits for the check. The service checks each version once, for every customer.
  6. The package manager downloads the files from the real registry, as it did before.

A package name that is not public, such as your company's own scoped package, never leaves the computer. The full list of fields and how long we keep each one is on What Leaves the Computer.

4. How a Version Is Judged

Our service fetches the new version and the version before from the public registry. It compares them file by file. It asks one question. Did a file gain a power that the version before did not have?

We do not publish the list of powers, the rules that find them or how we keep false alarms down. That work is patent pending.

5. Why We Find What Others Miss

Most tools ask one question: is this version known to be bad? Vigilance asks a different one: which powers does this version have that the version before did not have?

Lists find an attack only after someone reports it

CVE scanners, advisory feeds, threat feeds and antivirus all match a version or a file against a list. A hijacked update is new on the day it ships, so no list has it yet. Every install before the report passes the check. Vigilance needs no list, so it can flag the update on its first day.

A package checked alone is either noisy or blind

A scanner that reads one version by itself sees every power the package has. A real HTTP client reaches the internet in every release. A real build tool runs programs in every release. The scanner must flag those packages every time or tune the rule down until it misses the attack. Vigilance compares each version with the version before. A power the package always had is not news. Only a power it gained counts.

A trusted name is not a safe version

Many attacks ship from a real maintainer's account after it was stolen. Download counts, account age, stars and a known publisher all look normal. Vigilance does not use any of them. It judges each version from its files alone, so a hijacked release from a trusted name gets the same check as a release from a stranger.

One finding, only when it is real

A tool that alerts on every update gets ignored. Vigilance stays quiet on updates that gained no power, which is most of them. It points to the one file that gained a power and names that power. A false alarm is a bug that we fix in the rules, for every customer at once.

The proof

@apexacc/cli 1.5.122 went live on npm on 17 September 2026. It turned off Windows Defender and ran commands from a server. Vigilance flagged it eleven hours later, before any advisory existed. When we checked, 0 of 63 virus scanners flagged its helper file. Read advisory VIGI-001-2026 and the comparisons with other tools.

6. Swaps and Blocks

A swap moves a project to the last safe version of the same package. It never moves to a different package without a yes.

When a package has no version older than 90 days, Vigilance can suggest an established package that does the same job. A suggestion takes effect only after a yes.

7. Packages Already Installed

At install, Vigilance reads the lockfiles in each code folder once. It counts the packages that were already on the computer. This is the first look.

It keeps that list on the computer. When a version on the list turns bad later, Vigilance warns you on a paid plan.

8. What the Service Learns

A test in our code fails the build if a request gets a field that is not on What Leaves the Computer. Our server refuses any request with a field it does not know.

9. Signed Records

10. When Something Fails

The full list is on Security at Vigilance.

11. Coverage

PartCovered
Operating systemsmacOS and Windows
AI toolsClaude Code, Cursor, Codex, GitHub Copilot, Devin Desktop and Gemini CLI, and installs typed by hand
Package managersnpm, pnpm, yarn, bun, pip and uv
Registriesnpm and PyPI, and your company's own registry as the source
HostingAWS Canada (Central). The website and downloads go through Amazon CloudFront

12. What It Does Not Cover

We list these gaps on every readout. When a gap opens on a computer, we email you the same day.

Questions from an engineer or an IT provider go to support@vigihq.com. A person reads every one.