jeff.adkins@dev:~$
~/jeffadkins · zsh
$ whoami jeff adkins :: i build robots that build things $ status down another rabbit hole. this is fine.

I build robots that build things.

It’s going about how you’d expect. (Eighty-some repos. I’ve accepted it.) Scavenged parts, local models, my own two hands. The workshop’s open: come poke around.

01the why

Own your tools. Don’t rent your mind.

You know how nobody owns movies anymore, we just rent them? We did the same thing with our brains. Our tools, our data, the AI we think with: rented, month to month, from a handful of very large companies. I don’t think that’s the only way to live. So I build the other way: capable AI that runs on hardware you own, with keys you hold, that nobody can switch off or price you out of.

Not frontier models in a garage (I won’t sell you that fantasy). But real, useful AI a person or a community can actually own and operate. It took me years to notice this was the same idea behind everything I build. I know. The guy with eighty repos was the last one to see the pattern.

02the range

Most of the stack, one guy.

I build up and down the AI stack, for real, not in slides. Multi-agent systems that keep a whole fleet of coding agents from stomping on each other. Edge inference that turns the phone in your pocket into a private LLM server. Cost governors so the robots can’t quietly bankrupt you (ask me how I know). And civic tech, because concentrated compute and concentrated power are the same fight wearing two hats.

Rust when it has to be bulletproof, TypeScript and Kotlin and Python when it has to ship. I go deep on the hard part and I finish it. The proof’s below. Pick anything apart.

> multi-agent orchestration · edge / on-device inference · LLM cost governance
> local-first infra · civic tech · Rust // TS // Kotlin // Python

03the workshop

Things off the bench.

Not all eighty repos (that’s a junkyard, not a portfolio). Here’s the few worth your time. Descriptions are honest: what’s shipping, what’s early, what’s still in pieces on the bench.

01 — Chump [ Rust · AGPLv3 · public ]

A coordinator for a fleet of AI coding agents, and a governor so they don’t bankrupt you. I built agent fleets five times before one worked. This is the fifth. (Named it Chump so I’d remember who was doing the learning.) Running one coding agent is easy. Running ten on the same repo without them clobbering each other’s commits? That’s the unsolved problem, so that’s the one Chump takes on. It hands out file-based leases, isolates every task in its own git worktree, tracks open work in a SQLite gap registry, and ships finished work through a merge queue. Agent-agnostic: it drives Claude Code, Aider, goose, or your own hands. Underneath sits a cost-governed provider cascade with a hard ceiling, so a runaway fleet can’t quietly torch your budget.

Type
multi-agent fleet coordinator + gap registry
Runtime
Rust · local backends (Ollama, vLLM, mistral.rs)
Isolation
file leases · per-task git worktrees · merge queue
Governor
provider cascade with a hard cost ceiling
License
AGPLv3 (app) · Apache-2.0 (crates)
$ brew tap repairman29/chump && brew install chump

Honest status  Big and actively built. Thirteen crates live on crates.io (the reusable libraries under Apache-2.0, the coordinator itself AGPLv3 so a cloud giant can’t host it and rent it back to you), plus a 4-platform Homebrew tap. Young: early days on stars and adopters, and I audit its own hype in the open. Real, not finished.

→ Source on GitHub

02 — Jarvis on Android [ Kotlin · edge AI ]

An OpenAI-compatible LLM server that runs entirely on a phone. ~2,700 lines of Kotlin that stand up an always-on inference endpoint on a Pixel (MediaPipe + on-device Gemma), so you can point Cursor (or anything) at http://your-phone:9090/v1/chat/completions and get local inference. No cloud, no API key, no data leaving your pocket. The whole own-your-AI idea, small enough to hold in your hand.

Honest status  Working and demonstrable; being cleaned up for an open-source release. Not public yet: no clone link until it is.

> edge-AI · on-device · Kotlin · no-cloud


03 — Pixel Edge Server [ Termux · Bash/Rust/Node ]

A bootstrap kit that turns a Pixel into a self-contained edge AI server. Termux, no root: a persistent agent gateway running on the phone itself, chat-frontable, talking to on-device inference. The Mac only builds and pushes, then gets out of the request path. The scrappiest possible “own your compute”: a spare Android and a weekend.

Honest status  Running stack, still runbook-and-scripts heavy; open-source prep in progress. Not public yet.

> edge-AI · self-hosted · Android


04 — Neural Farm [ Python · proof-of-concept ]

The phones you already own, pooled into one private inference cluster. A Mac orchestrates an iPhone and a Pixel as LLM nodes and exposes all of them as a single OpenAI-compatible API to your editor. Stdlib-only adapters remap any model name onto whatever’s actually running on-device.

Honest status  A working proof-of-concept and the ancestor of the edge line above. Deliberately scrappy (hardcoded LAN IPs, a tunnel, phones kept awake). It proves the idea; it is not hardened. I’m telling you that up front.

> sovereign-AI · inference-pooling · proof-of-concept


05 — Out in the open [ the whole shop ]

I’ll be straight with you: most of my code lands in my own shop, not other people’s. Two-thousand-nine-hundred-some merged pull requests, nearly all of them me reviewing me. The whole junkyard, curated and not, is public record.


06 — Rune Gatherer [ PixiJS · playable ]

A survival arena game built with PixiJS v8. Collect elemental runes, chain three of the same type to trigger a screen-wide Elemental Burst (Frost, Nature, Fire, Poison, or Storm). Enemies close in from all sides, waves keep climbing, and every burst is a comeback. Built with Kenney Game Assets, runs in the browser on anything.

Honest status  Fresh off a big repair session. The burst system fires now (it didn’t, for longer than I’d like to admit), waves actually escalate, and there’s a global leaderboard. Tell me what breaks - there’s a feedback button right in the game.

> PixiJS · game · JavaScript

→ Play it now

07 — Realm of Shadows [ PixiJS · playable ]

A tiny Zelda-like where every pixel is code. No image files, no audio files - every texture and every sound is generated by the program at load time. Explore nineteen areas - woods, caverns, dungeons, the Shadow Realm - fight three guardians for the Crystal Shards, and when you have all three... Malachar comes looking for you. Keyboard or touch, your pick.

Honest status  Just went through major surgery, twice. The world map actually connects now (the doors used to be drawn inside solid walls... yeah), and a robot walks every door nightly to keep it that way. The music is synthesized like everything else. Short - maybe 15 minutes - but it has a real ending.

> PixiJS · game · procedural · zero assets

→ Play it now

08 — STARFALL [ PixiJS · playable ]

A wave-survival space shooter with actual depth. Four game modes (Endless, Time Attack, Boss Rush, Survival), a hangar of six unlockable ships that genuinely fly differently, 21 achievements, named bosses with phases, and a combo multiplier that rewards you for staying aggressive. The whole soundtrack is synthesized in your browser - zero audio files.

Honest status  The deepest game in the shop, and the newest to the menu screen - the modes and hangar existed in the code for weeks before anyone could actually reach them. Gamepad works. Touch is basic. Scores go to the global leaderboard.

> PixiJS · game · Kenney assets · procedural audio

→ Play it now

09 — Grave Dancer [ Phaser · playable ]

A 1-bit platformer about walking into the dark on purpose. Your lantern burns down as you walk. Something follows, and it only gains ground when the light flickers. The rule that keeps you alive: when it flickers, freeze. Two arcs, ten levels, secrets in the walls. Keyboard or touch.

Honest status  The art is still gray rectangles - the real 1-bit pass is next on the bench. Everything underneath got fixed the hard way: a bug that ate your jump at every wall shipped through 85 green tests, and a robot playtester found it in 20 minutes. The robots play the whole arcade every night now. This game is why.

> Phaser · game · 1-bit · the dark is the point

→ Play it now

04also me

Other corners of the junkyard.

Not everything I make is a dev tool, and not everything lives here. If you want the rest of me (the theorist, the arguments, the stuff I’ve shipped for actual humans), it’s out there:

  • Choose Otherwise — the civic side of the same fight: a DOI’d working paper (“The Inversion”) and essays on who gets to create with AI. → chooseotherwise.org
  • Things I’ve built for everyday life — Olive, a grocery agent that fills your cart at your real store, and POV, an AI video maker. Mine, start to finish. → shopolive.xyz · sendpov.xyz
  • The Upgrade Treadmill Survival Guide — how I stopped drowning in robot dependency PRs, written up and given away (CC BY-SA). My tool appears once, labeled; the rest is free. → guides/upgrade-treadmill
  • jeffadkins.me — the essays and the bigger arguments, over at the other house. → jeffadkins.me

05on the clock

Need a hand with this stuff?

This is the workshop, not the storefront. If you’ve got a real problem in trustworthy AI, agent fleets, or getting off the rent-everything treadmill and you want me on it professionally, that conversation lives next door.

→ acgllc.dev — the advisory side

06find me

The workshop door’s unlocked.

Building in the open. Come say something.