Repository navigation
Mobile Jarvis #340
johnwalked
started this conversation in
Ideas
Replies: 2 comments 1 reply
|
I'm sure phones will be fast like todays AI clusters. It's Just a matter of time |
0 replies
|
Hey, could you like not use AI to post these? I scrolled through this and saw AI generated posts. Id rather see pure bullshit then just pure S L O P |
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
I shoved a fully autonomous, offline Jarvis into a rooted Android phone via Kali Linux, and now my pocket is plotting against me at 45°C.
The Confession
Most people buy a smartphone to doomscroll memes, look at dog videos, and ignore calls from their dentist. I looked at a slab of glass and aluminum and asked the only logical question: Can I strip away its corporate soul, turn it into a bare-metal Linux terminal, and trap a localized AI assistant inside that obeys my voice without sending a single byte of telemetry to Jeff Bezos or Sundar Pichai?
Turns out, yes. Meet Mobile Jarvis: a completely air-gapped, voice-activated AI operator living inside a native Kali Linux container on Android, running with full hardware passthrough, systemd as PID 1, and enough raw power to run network recon while talking back to me in crisp neural audio.
Here is how I committed this magnificent crime against consumer mobile hardware.
Why PRoot is Dead to Me (And Why Droidspaces Rules)
If you have ever tried running Linux on Android through Termux PRoot, you know the specific flavor of suffering I am talking about. PRoot intercepts system calls using ptrace. It is essentially an overly polite middleman begging for permission on every single instruction your container runs. It crawls. It stutters. Try piping a quantized neural net and real-time audio through PRoot, and your phone will age three years before it finishes transcribing a single sentence.
Enter Droidspaces. It does not emulate or beg; it carves out true Linux kernel namespaces directly on top of Android’s kernel. It is a tiny, sub-400KB static binary compiled against musl that executes natively. By passing --hw-access and --privileged flags into the container config, Kali doesn't think it's a guest app on a mobile operating system—it thinks it owns the motherboard. It gets its own process tree, direct bind mounts to internal storage, full network namespaces, and a legitimate systemd running as PID 1 like God and Linus Torvalds intended.
The Anatomy of a Pocket-Sized Cyberpunk Familiar
Building Jarvis required assembling a four-headed beast inside Kali's ext4 rootfs:
I hooked a lightweight C++ port of Whisper directly to the audio input. Because Droidspaces bridges Android’s PulseAudio socket straight into Kali's /tmp/.pulse-socket, Jarvis taps directly into the phone’s microphone hardware. No lag, no cloud API tokens, no dropped connections on the subway. When I speak a trigger word, it snaps to attention.
Inside Kali, an instruction-tuned 3-billion-parameter model sits coiled in RAM, quantized down to Q4_K_M. It is small enough to fit within mobile memory limits without causing Android's Low Memory Killer (LMK) to murder the process, but sharp enough to understand context, write bash scripts, and format terminal outputs. ARM64 NEON vector instructions chew through token generation at a remarkably respectable pace.
This is where it stops being an annoying chatbot and becomes a miniature menace. Jarvis is wrapped in an autonomous Python daemon equipped with a native bash execution tool. Because Kali has bare-metal hardware privileges, Jarvis can touch the host environment. If I say, "Jarvis, scan the local subnet and tell me if my laptop is broadcasting its MAC address," the LLM parses the intent, generates an nmap or arp-scan command, fires it off inside Kali, grabs stdout, and summarizes the findings in plain English.
I refused to settle for robotic 1990s GPS voices. Piper-TTS generates low-latency, eerily natural neural speech straight off the CPU. The audio stream shoots out through the PulseAudio bridge and plays directly over the phone's stereo speakers.
A Day in the Life of a Pocket Terminal
Walking around with this thing feels like smuggling illicit cyberpunk contraband:
"Jarvis, battery status and memory health."
Two seconds of silence while the CPU spikes.
"Battery is at 74 percent, discharging at 8 watts. Kali rootfs has 22 gigabytes free. Also, you have three zombie processes lingering in background workspace two."
"Jarvis, audit the local Wi-Fi."
"Scanning wlan0. Found six access points. Gateway router is running an outdated firmware build with open ports 80, 443, and 5357."
The Trade-Offs (Or: Why My Thigh is Permanently Warm)
Is it practical? Barely. Is it glorious? Absolutely.
Running local neural inference and live audio DSP on a mobile chipset means your phone temporarily doubles as a pocket hand warmer. You quickly learn to configure tight CPU governoring and strict wakelocks unless you want your battery percentage to plummet like a lead brick. But there is an undeniable, addictive thrill to pulling out a plain-looking phone, speaking into the screen, and watching a completely air-gapped, sovereign AI agent execute root-level Linux commands without asking permission from a single remote server.
We spent decades waiting for sci-fi edge computing. Turns out you don't need a billion-dollar Stark Tower—you just need root access, a handful of kernel namespaces, and complete disregard for battery degradation curves.
All reactions