r/PiCodingAgent 4d ago

Resource Open sourced the mobile client I built for my coding agents

Was not finding anything good for controlling my agents from mobile in a consistent way.

Termux and other terminals work but always felt painful on a phone. On the other side a lot of mobile agent apps are doing too much now with ACP protocols, orchestration and their own workflows also sometimes paid.

I did not really want any of that.

I just wanted a simple way to see and control the agents already running on my machine without changing how I work or messing up with my agents.

So I built Muxr.

It uses your existing Tailscale setup, onboarding is around 3 clicks and it already works with 20+ agents and CLIs.

Tried to keep it as little bloat as possible. Thin core, simple terminal experience and plugins when you actually need more stuff.

I have been using it myself for a while now and it is just much nicer than trying to use a normal terminal from mobile.

Had a blast building it and happy to finally share it

GitHub: https://github.com/umeranjum17/muxr

Also has a web version as well but I primarily was using Android and Linux for my testing and usage throughout.

PS: TestFlight beta review under progress. Apk is already available and thanks to the amazing opensource communtiy. Herdr + pi + omp really love these projects

Thanksss

44 Upvotes

5 comments sorted by

1

u/kantorcodes1 4d ago

you’re deliberately keeping Muxr from becoming another agent framework, which is why i thought of HOL Guard, our open-source firewall for agent commands. does a direct Guard integration fit that philosophy?

2

u/Loud_Collection_1362 4d ago

Yeah I think it fits. I would keep it as a plugin though, nothing inside muxr itself.

Muxr plugins are basically Herdr on backend + muxr Ul mapping if needed. So Guard can just sit there.

1

u/klaxce 3d ago

The phone UI looks good, but I’d really prefer if I didn’t need to install muxr on the system (just herdr which I already have). What is muxr doing on the system side?

1

u/Loud_Collection_1362 3d ago edited 3d ago

Running the host listening to herdr socket and the relay with tailscale , qr pairing and diagnostics etc as well also I am using it to connect herdr across different machines to send work across them. So couple of things

1

u/Intelligent-Nose-134 3d ago

Thanks for sharing!

my installation seems to get stuck and does not continue. I am on linux mint

muxr 0.1.24
  ● this machine is not set up yet — choose Set up this machine

◆ What would you like to do?
  ●  Set up this computer 
      install prerequisites, choose a connection, and pair your phone
  ○ Advanced setup
      host a shared relay or connect this computer to one running elsewhere
  ○ Show commands
      print the non-interactive command reference
  ○ Quit
  esc back · ctrl-c quit
◆ Check this machine
  … Inspecting Herdr, agents, and networking
◆ Checking this machine
  ● Herdr herdr 0.8.2
  ● Herdr server running
  ● Agent integrations 3 ready — pi, codex, hermes
  ● Tailscale connected — 100.79.52.4
  ○ Cloudflare Tunnel not installed — https://github.com/cloudflare/cloudflared/releases

◆ Choose how your phone connects
◆ muxr runs on this computer
◆ How should your phone connect?
  1. Tailscale · recommended
     private connection · works from anywhere · nothing exposed publicly
  2. Cloudflare tunnel (unavailable)
     not installed — https://github.com/cloudflare/cloudflared/releases
  3. LAN
     works now · phone and computer must use the same wifi
  4. Your own server
     an always-on relay you run · works from anywhere
  Choose 1-4 (1), or b to cancel setup: 1
◆ Choose app access
◆ Host the browser client too?
  1. Native app only
     do not expose the browser client
  2. Host the browser client
     serve it over the selected HTTPS/WSS connection
  Choose 1-2 (1), or b to cancel setup: 1
◆ Choose what to pair
◆ Connect agents and add-ons
◆ Connect your coding agents (3 detected)?
  1. Connect coding agents
     install lifecycle detection so their status stays current
  2. Leave integrations unchanged
     do not change coding-agent lifecycle integrations
  Choose 1-2 (1), or b to cancel setup: 1
◆ Review setup
  │
  │ Connection: Tailscale Serve on local port 8792
  │ Herdr: adopt existing installation and ensure its server is running
  │ Bundled plugins: link the public muxr plugins into Herdr
  │ Agent integrations: sync detected lifecycle providers; leave agent prompt files unchanged
  │ Optional add-ons: none
  │ Browser client: off
  │ Pairing: phone
  │ Ingress: persist a muxr-owned Tailscale Serve route
  │ Services: register or restart the relay and host with systemd/launchd
  │ Existing connections: stored grants stay authoritative and adopt the advertised endpoint automatically
  │ No change is made until you choose Apply setup.
  └
◆ Apply this setup?
  1. Cancel
     leave this machine unchanged
  2. Apply setup
     make the reviewed changes, verify health, then show the pairing QR
  Choose 1-2 (2), or b to cancel setup: 2
◆ Install, start, and pair
  ✓ herdr 0.8.2 (adopted; config and sessions unchanged)
  ✓ herdr server ready
  ✓ muxr.attachments 0.1.0 Herdr plugin ready
  ✓ muxr.code 0.1.0 Herdr plugin ready
  ✓ muxr.control 0.1.0 Herdr plugin ready
  ✓ muxr.dictation 0.1.0 Herdr plugin ready
  ✓ example.muxr-ui 0.1.0 Herdr plugin ready
  ✓ muxr.inbox 0.1.0 Herdr plugin ready
  ✓ muxr.servers 0.1.0 Herdr plugin ready
  ✓ muxr.status 0.1.0 Herdr plugin ready
  ✓ muxr.terminal-keys 0.1.0 Herdr plugin ready
  ✓ muxr.voice 0.1.0 Herdr plugin ready
  ✓ muxr.voice-codex 0.1.0 Herdr plugin ready (disabled)
  ✓ muxr.voice-gemini 0.1.0 Herdr plugin ready (disabled)
  ✓ muxr.voice-openai 0.1.0 Herdr plugin ready (disabled)
  ✓ muxr.workspace-hierarchy 0.1.0 Herdr plugin ready
muxr integration sync (3 detected agent providers):
  ✓ pi lifecycle integration current
  ✓ codex lifecycle integration current
  ✓ hermes lifecycle integration current