Codync
A free, open-source 1:1 alternative to Grok Bot and Muse. Message Claude Code, Codex, Cursor and 40+ coding agents as persistent bots from your iPhone, Mac or Linux desktop. Group chats, threads, appr
A six-node bare-metal Kubernetes platform, five Spring Boot services, five Flutter clients — and the operational habits that keep them honest.
Developer toolsGitHub @schultzzznetOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Repository information has not been collected yet.
No updates detected yet. GitHub releases will appear here.
A public write-up of a private homelab platform: bare-metal Kubernetes, Postgres, a signed supply chain, embedded Yocto. Every figure is measured, not remembered.
Translation pending
Taken from the repository README
Loading the full README.
Read the full README ↗Platform engineer. Full-stack. Working with AI on both ends of the pipeline.
A training system, on purpose. I train principles, technologies and everything around them, as deep and as hands-on as possible, on a true running system with real live apps: real identity, real incidents, a real public entrance, and no paying customers, yet.
The latest stack on the weakest hardware I could put to use. The handicap is chosen: retired laptops and small desktops, to make it as hard as possible. If it runs here, it runs on any hardware; anything else is an upgrade.
AI all over. On-prem and cloud, small local models and frontier models, simple setups and elaborate ones, at development time and at run time, each measured rather than trusted.
Two purposes at once. Learn the maximum until the day a killer app appears, and be ready to grab that opportunity when it does. Until then everything here is learning and nothing is protected for uptime's sake; on that day the direction changes on purpose, and production becomes the main line.
I run a Kubernetes platform at home: six bare-metal nodes built from retired laptops (the five I have audited date from 2011 to 2019), with identity, Postgres, storage, observability and a signed supply chain.
A frontier model helps me build it. A small local model, on a Mac outside the cluster, helps me operate it, and a large cloud model grades the small one's posts once a day, with a person approving every action.
The in-cluster software is open source or community edition. Claude, which I work with, is a paid service.
It is a private platform with a public write-up. The write-up is the deliverable; the repositories behind it are not open.
The rule of the whole thing: assert the property, do not trust the report.
In short, as of 2026-10-27. Running, with no organic users: the load is synthetic. Since 18 October: changes go through pull requests, git is the only way a change may reach the cluster (drift is checked daily), no plaintext Secret is left in git, the ops agent was hardened and put under measurement, and the estate was reviewed from the outside four times. Not finished: no admission control or network policies, secrets are not yet rotated or encrypted at rest in the cluster, the embedded side's nightly vulnerability upload failed every night from at least 24 September until it was fixed on 27 October, and fault injection has not fired since 13 October (its own safety gate keeps pausing it). Start with Recently, or Where to start.
Those three badges are live, and they are graded from outside the system they grade: a heartbeat for the scheduled jobs, and an off-site probe of the public entrance. They are depressed on purpose by reboots and fault injection, so they are not an availability promise. Everything else on this page is text, and I have stopped badging tool names: a badge that prints "Kubernetes" proves nothing.
Set 2026-10-31, scored here in early January, misses included. Each key result is scored 0.0 to 1.0; around 0.7 is a good quarter, and 1.0 everywhere would mean the targets were too easy. Running OKRs honestly is itself one of the things being trained, so they point at work and dates that already exist rather than keeping numbers of their own.
1. Learn as much as possible, hands-on, on the running system.
2. Prove it on the weakest hardware: break it on purpose, watch it heal.
3. AI all over, measured, not trusted.
4. Be ready for the killer-app day.
Written by scripts/gather-stats.py in the site repository, from commands run against the
cluster. What each figure counts, and the command behind it, is on the
status page.
| Figure | Value |
|---|---|
| Nodes (Ready) | 6 (6) |
| CPU cores | 48 |
| Memory | 99 GB |
| Pods running | 186 |
| Postgres clusters / instances | 13 / 34 |
| Clusters with a synchronous standby right now | 8 of 13 |
| Backup objects (completed in the last 24 hours) | 348 (13) |
| Alert rules loaded | 227 |
| Scrape targets up | 124 of 124 |
| Commits to the platform repository | 1943 |
| Decision records | 41 |
| Test definitions (counted, not run) | 1147 |
| CI workflows | 39 |
Measured 2026-10-27T06:10:37Z by make stats. What each figure counts, and the command behind it: the status page.
Corrections, 2026-10-27. Five statements on the site had turned stale in the pessimistic direction (pull requests, secrets in git, drift checking, the ops agent, a runner count), two on the embedded page were false throughout, and the uptime shortfall now has a cause. They are listed, with dates, on the estate page.
Retractions, 2026-10-09. Earlier versions of this profile said "no single points of failure", "RPO 0, proven" and "Docker Swarm compatible", and that the AI runs inside the cluster. None of those was true when I checked. The worst was the second: the PostgreSQL 18 cutover on 2026-09-16 silently dropped synchronous commit, so until it was restored on 2026-10-09 the application databases were asynchronous while the documentation said RPO 0. A guard now fails if a successor cluster loses that setting. Swarm was decommissioned and is not a fallback. The ops agent and its model run on a Mac outside the cluster, deliberately, because an operator that dies with the cluster is not an operator.
Platform. k3s on six nodes, Ceph replica-3 block storage, CloudNativePG, Keycloak, Traefik, Prometheus, Loki, Grafana and Alertmanager, largely managed by Ansible (a few steps, such as creating identity realms, are still by hand). Apps are Spring Boot and Flutter. It is standard Kubernetes, but I have not tested it on a managed distribution, so I do not claim it would move unchanged.
Scaling. CPU-based autoscalers are live. Scaling on request rate is not built.
Supply chain. First-party images are signed with cosign using a local key, so this is signing, not keyless Sigstore. As of 2026-10-27, 6 of the 7 first-party images running verify against the release key, and the tracker has accepted 71 SBOMs. Acceptance is not analysis. I rate it SLSA Build L2 myself; nobody has audited that. Secrets: every Secret in git has been encrypted with SOPS and age since 2026-10-25; the old values are not yet rotated and the cluster does not encrypt them at rest.
AI. Alerting is a loop with two models and a person: alerts go straight to Slack, an hourly post is composed by code, a small local model answers questions and writes a morning digest, and a cloud model grades the agent's posts once a day (drafts only, no tools; it is sent alert text, so the claim that nothing leaves the house is retired, see the loop). The ops agent answers in Slack, queries Prometheus, and proposes actions such as a node drain or a scale, which a human approves with a button. It does not act alone. Since 2026-10-26 its arguments are validated, only named approvers count, and what it says is recorded and graded (a first review found "critical" in 79 of 96 summaries, with no critical alert firing in 69 of them). An orchestrator that closes the whole delivery loop into one policy-gated workflow is not built; chaos injection is partial: my last self-rating (2026-09) counted 2 of 31 planned failure scenarios.
Embedded. A custom Yocto layer on the 6.0 LTS release (wrynose) for a Raspberry Pi 3 B+: a signed RAUC A/B image, updated over the air, with an SBOM and CVE scan. The nightly upload of that SBOM to the tracker failed every night from at least 2026-09-24 until it was fixed on 2026-10-27, and no device has reported back since 2026-09-01 (corrected on the site on 2026-10-27). A signed update and a deliberate rollback have both been proven on the board, and the same path now carries an image for a bench test rig. A Pi 3 cannot do hardware secure boot, so the updates are signed and integrity-checked, but the boot chain is not verified.
All on the site, https://schultzzznet.github.io/schultzzznet/:
Code rather than prose: examples/ holds four scrubbed artifacts from the running
system. Each exists because something looked correct and was not.
trivy-kernel-ab-split.sh | Host CVE counts that can never reach zero, and the regex that files a superseded kernel as live. Has a --self-test that demonstrates the bug. |
duty-cycle-alert.yaml | Why a for: alert cannot see a signal that sawtooths across its threshold, and the two-line fix. |
kured-args.yaml | A reboot daemon that logged "nothing to do" hourly for weeks while 16,002 patched-but-not-running findings piled up. |
systemd-oneshot-timer.md | The RemainAfterExit trap that makes a timer fire once per boot. |
scripts/, examples/, the Makefile and the workflow): MIT.docs/, this README): CC BY 4.0. Reuse it, with credit.Only this one is public. The rest are private, so there is nothing to link.
| Repository | What it is |
|---|---|
| schultzzznet | This site and its stats generator. |
| Platform | The cluster: Ansible, manifests, pipelines, decision records. |
| Yocto layer | The Raspberry Pi image and its OTA pipeline. |
| Mower retrofit | An RTK pattern-mowing brain for old robotic mowers. |
| Rover, video rover, i.MX8 Yocto, 3D printing | Smaller hardware projects. |
The best engineers are not there just to code. They are there to solve problems. Marty Cagan, Empowered
[email protected] · schultzzz.net · Denmark