WarrenBarr
SEC-01
Advisories
Published findings
OPS-02
Methodology
How an engagement runs
ENG-03
IT & Dev
Build and administer
ARM-04
Software
Tooling I wrote
MSP-05
MSSP
Flat-rate managed
REC-06
Case Studies
Work, in full
WEB-07
Websites
Sites that convert
SUP-08
Gear
Coming soon
DOC-09
Doctrine
What I will not do
WHO-10
About
Who you'd be hiring
Developer ToolingDrop-in · Free

App Updater

One file. Any project. Check for and receive updates.

A single-file, zero-dependency update client for Barr Cyber products. Drop it into a project, set the product id and version, and the app can check for updates and download them, verified — from a live endpoint on this site. Python, PowerShell, and Node included; an AI agent can wire it in from the bundled guide.

PythonPowerShellNodeZero DependenciesSHA-256 Verified

The client asks one public endpoint whether a newer version exists:

GET /api/update-check?product=<id>&current=<version>

It returns the latest published version, the changelog note, a SHA-256, and where to download. Only published stable releases are ever served — drafts and betas stay private unless a tester explicitly opts into the beta channel. Downloads are checked against the hash and rejected on mismatch.

1 · Copy one file
bcupdate.py, bcupdate.ps1, or bcupdate.js — whichever matches the project. No install, standard library only.
2 · Set four values
Product id, this build's version, the API base, and the channel. That's the only edit.
3 · Call check()
On startup or behind a menu item. It fails quiet on a network error, so it never crashes your app.

The toolkit ships with an INTEGRATION.md written as a step-by-step an AI agent can follow — pick the file for the language, wire current to the project's real version marker, add the check, optionally enable download, and report back what changed. If you build with an assistant, hand it that file and the job is done.

The updater is the receive half. The Installer Factory is the ship half: drop bcbuild.py into a project and it packages that project into one self-installing artifact — app files, an install stub, and a manifest, with a SHA-256 computed. You upload it once; customers download and run it, and it writes a VERSION file the updater then watches.

Package
python bcbuild.py --version 1.6 produces <product>-1.6.zip with everything baked in and the hash recorded.
Self-installing
Inside the zip, bcinstall places the files, runs any post-install hook, backs up an existing install, and writes the VERSION marker.
Same AI hand-off
Its own INTEGRATION.md walks an agent through wiring it in — including locking down what must never ship.

Together they close the loop: bcbuild ships a release → the customer installs it → bcupdate notices the next one → downloads it, verified → bcinstall upgrades in place.

Get the kits

Both free. The Updater lets your apps check for and receive updates; the Installer Factory packages any project into a self-installing artifact you can ship. Each is one zip with clients/tools, an AI integration guide, and a README.

Python · PowerShell · Node · talks to /api/update-check & /api/get-installer on this site