📋 Got 5 minutes? Tell us what's actually broken about family tech — take the survey →
PresenceOS
Theme

9 July 2026 ~ 3 min read

Why PresenceOS left GitHub


In May, GitHub confirmed that an employee’s machine was compromised by a poisoned VS Code extension, and that the attackers walked away with roughly four thousand of GitHub’s own internal repositories. The group behind it, TeamPCP, put the archive up for sale. TechRadar’s brief on it is worth your two minutes: GitHub confirms breach — thousands of internal repositories hit after employee installs malicious VS Code extension.

That breach didn’t touch customer repositories — GitHub was clear about that, and I have no reason to doubt them. But it didn’t happen in isolation. The same actors poisoned over 170 npm and PyPI packages in a single week and hijacked a VS Code extension with millions of installs, using a self-replicating worm that steals CI/CD credentials and uses them to infect the next project down the chain. Days later a copycat campaign called Megalodon hit more than 5,000 public repositories with malware-laden commits (TechRadar again). And in the middle of all this, researchers found a malicious extension — with ransomware capabilities — that appears to have been largely written by AI, sitting on an official marketplace.

What it meant for PresenceOS

PresenceOS’s source code was on GitHub. There — that’s the uncomfortable admission.

I build a product whose entire pitch is that your family’s digital life shouldn’t sit on someone else’s infrastructure, and I was keeping its source code on someone else’s infrastructure. I’d always privately thought it was a bit stupid that developers park their code on GitHub by default — open source or not — and it turns out I wasn’t exempt from my own criticism. Convenience is a hell of a drug.

So on 9 July I fixed it. In one sitting:

  1. Captured everything. Every repository, every branch, every issue, every release — pulled down and verified against the originals before anything else happened.
  2. Moved it onto my own git server, on my own hardware, in my own house. It is not reachable from the public internet at all. The code that promises to keep your data off third-party servers is no longer developed on one.
  3. Deleted the GitHub repositories. Not archived. Deleted.

Why so fast? Because the threat model had visibly changed. The attacks above aren’t the old story of “someone guessed a weak password.” They’re supply-chain attacks: compromise the tools developers trust, and you compromise everything those developers build. For a one-person project whose users are families and children, “the platform will probably be fine” is not a risk assessment. It’s a hope.

The AI part, since people ask

A chunk of this new malware wave is machine-generated. Fake repositories crafted with generative AI, plausible-looking extensions, code that passes a glance. My honest position: AI can’t be trusted yet — not as an unsupervised author of code you run, and not as the thing flooding public registries faster than humans can review them. Maybe one day. Until then, the fewer public surfaces my build pipeline touches, the better I sleep.

This is also part of why PresenceOS stays closed source during development. It’s not about hiding anything clever — it’s that the source, my signing setup, and my workstation are the crown jewels of a one-person operation, and the past two months have been a live demonstration of what happens to trusted public code infrastructure.

Every build you install is still built, signed and shipped by me, from hardware I own, and you can verify the checksum of anything you download from this site. That part hasn’t changed. It’s just no longer resting on anyone else’s platform.


Placeholder avatar

I'm Paul, the developer behind PresenceOS. I build and run the whole stack myself — the OS, the apps, the servers. If something here is wrong or unclear, email me at paul@presenceos.email and I'll fix it.