GenericJam

GenericJam

Sloppy Joe - Mob running on Android and iOS, modifying a live app with an Agent (looking for testers!)

Short version up top for anyone who just wants the ask:
BEAM has had hot code loading since the jump. Sloppy Joe takes advantage of that by giving the steering wheel of an inherently stable app to an agent which it can reprogram on the fly. I need a few more testers to clear Google’s 14-day / 12-tester gate. If you’ve got an Android phone and some curiosity, opt-in details are at the bottom.

What app do you want? Build it! Here I built a custom weather app that tells me what’s going on.
Here’s about 90 minutes of agentic coding truncated to 12.

What it actually is.
Sloppy Joe is my coding workflow with more guardrails and a second node for stability. These days when I’m building apps with Mob I mostly point Claude at it and telling it to fix screens. I’m interested in putting this workflow into the hands of everyone.

From an architectural perspective, this mostly flowed out of my own workflow. I normally point Claude (or your preferred LLM) at AGENTS.md, then tell it to generate a project with mix mob.new my_world_changing_app. After it generates, attach to it with mix mob.connect and then from there the agent is driving. I see an app that does stuff and I tell the agent what other stuff I want it to do.

So take that idea and bolt on a second BEAM node so this thing can never crash while being modified and put in an MCP server. Now the agent needs to know how to attach to the MCP so we need a proxy to coordinate. Now the connection is a bit unstable and also the phone is doing twice as much work so let’s move the processing part to the server. Now the server needs emulators to have the agents build against. Maybe there will be more than one person at a time that wants to build so now you need a pool. Maybe the user wants to view the app as it’s being built so now you cast the emulator device to the staging website.

So that’s pretty much the whole architecture.

On the models.
Anything that can do MCP will work. Tested with Gemini and Claude. I believe at least one user was using OpenCode.

What I’d want from a tester.
Bare minimum is to install it. Google counts raw numbers but we also need a handful of people that are regularly engaging. In order to engage properly you should know how to hook up an MCP server or Google it. It’s pretty easy. Google actually watches engagement, so a real poke beats a silent install.

The opt-in (the actual ask):

  • Reply here or DM me the email tied to your Google account
  • I add you to the closed test, you get the opt-in link
  • Keep it installed for 14 days, I need 12 in total.

Happy to answer anything about the internals in the thread.

Mob
Sloppy Joe

Any help much appreciated!

Most Liked

AstonJ

AstonJ

Sloppy Joe looks really cool (love the site!) I’m not an Android user myself, but good luck :023:

GenericJam

GenericJam

I put this on Testflight so if anyone wants to try it on iPhone DM me your email address and I’ll add you to the list of testers.

GenericJam

GenericJam

Please do! I’ve been clicking around for 20 minutes and can’t figure it out. :sob:

Where Next?

Popular in Announcing Top

tmbb
I’ve published the first version of my Makeup library. It’s a syntax highlighter for Elixir in the spirit of Pygments, Currently it highl...
New
mathieuprog
Hello :waving_hand: Allow me to introduce you to Tz, an alternative time zone database support to Tzdata. Why another library? First a...
New
seancribbs
Today I released a new dialyzer Mix task as the dialyzex package! At the time we started writing this task, the existing dialyzer integra...
New
dbern
I’m excited to announce that TaxJar has developed and open-sourced DateTimeParser. We developed it because we found a need to parse user ...
New
Eiji
ExApi is a library that I’m developing now and hope release soon This library will allow to: list all apis list all api implementation...
New
woutdp
Hi! I wanted to introduce my latest project LiveSvelte. It allows you to render Svelte inside LiveView with end-to-end reactivity. It’s ...
New
grych
Hi folks, Few months ago I have announced the proof-of-concept of the library to manipulate the browsers DOM objects directly from Elixi...
639 52774 488
New
Crowdhailer
Raxx is an alternative to Plug and is inspired by projects such as Rack(Ruby) and Ring(Clojure). 1.0-rc.1 is now available. To use it re...
New
OvermindDL1
Been making an MLElixir thing (not released yet…) for fun in spare time in the past day. I’m just trying to see how much I can get an ML...
132 14085 106
New
alisinabh
Hey everyone i’ve developed a library for Jalaali calendar for elixir which supports converting Gregorian dates to Jalaali and vice vers...
New

Other popular topics Top

Harrisonl
We have an ECS cluster with 4 services, where each task joins a single cluster, via discovery ECS discovery service. Currently when I de...
New
danschultzer
None of the current solutions worked well for me, so I went ahead and built a user management system from scratch. This project took far...
548 29703 241
New
AstonJ
We’ve put together this wiki for Phoenix LiveView - please feel free to add any info you feel is worth including. What is Phoenix LiveV...
New
Patoshizzle
After calling mix ecto.create I get this error: 17:00:32.162 [error] GenServer #PID<0.412.0> terminating ** (Postgrex.Error) FATAL...
New
msaraiva
Surface is an experimental library built on top of Phoenix LiveView and its new LiveComponent API that aims to provide a more declarative...
564 43806 214
New
openscript
Hello! Sorry for this astonishing simple question, but I’m really stuck. I try to set up the intellij-elixir plugin, but I don’t know ho...
New
JorisKok
I have a server on AWS, and was running a load test using artillery. When looking at the Phoenix dashboard I see the Ports going to 100% ...
New
vegabook
I’m brand new to Phoenix and I have stripped one of the demo applications to the bone. I just want to get an svg up on the screen. Here i...
New
jononomo
For some reason my phoenix channels are working for me in my local dev environment, but as soon as I deploy via Docker, I get a 403 error...
New
vonH
In asking this question I am more interested about the expressiveness of the language itself and less concerned about the availability of...
New

We're in Beta

About us Mission Statement