Hmm… how does one even pick between multiple vibe coded options?
I like to vet my options before committing to new software but who knows if the authors are gonna support these in a month? I don’t want to waste Fable tokens to fix bugs myself when they crop up.
This looks like a really solid app. I like that it's 17 MB and uses the ContainerAPIClient library directly.
28 commits in 3 days, 5,015 lines of Swift, every commit "Co-Authored-By: Claude Fable 5".
Also neat that it's signed/notarized. I installed it and it downloaded the necessary container platform stuff on first launch.
Suggestion: add a getting started tutorial to the site which suggests an image to try out and has screenshots (or a silent video) showing you how to get that image up and running and what you can do with it.
The create image dialog suggests "nginx:latest" but that's not a great starting demo.
Coding yes, copywriting, design, identity, no. Using AI doesn't mean giving up on quality, unless you don't care about quality. Most of these issues come from folks who don't really care about quality and ship the first slop that comes out.
I think the issue is that the prose on the homepage gives off AI marketing BS "Everything you'd expect. Nothing you don't." "Native down to the pixels" etc. in an age where the web is stuffed full of low value llm generated content this is a strong negative signal for me (and i suspect others). No reflection on the app itself which I've yet to try but seems like a great idea
Yeah this is it. I don't know what you think I expect? I'm reading your marketing copy, it's your job to market it. There are few brands in the world that can get away with forcing the buyer to do their own marketing. In this context it's grossly unearned confidence, the type you only get from idiots and LLMs.
It would be nice if everyone prioritised, and was capable of, shipping polished products. But more likely the apps you're bemoaning come from folks who are not product designers. Even prior to genAI there were plenty of developers (myself included) who had patchy competence in some subset of {copywriting, documentation information architecture, visual design, identity, UI/UX, ...}. I know good developers for whom UI coherence is "not their problem," although they know well enough that it needs to be someone's problem. "Programmer art" is also a thing. I would argue that the non-coding parts of many open-source projects are what lets them down, and when it is good it is usually documentation that impresses me the most. But I think Ze Frank's view might be that, given the sudden drop in barriers to entry, it is amazing that everyone is having a go and trying to express themselves.
With nothing running, the platform's background services idle at roughly 25 MB. Docker desktop starts a single VM to host all containers and will reserve memory to do so. Davit itself is about 25mb and then each container will use the memory up to what you allocate for it.
Really nice. Worked perfectly downloading the runtime and running nginx:latest.
It's getting to the point that scrolling down on Github and seeing Claude as a contributor is a signal the app will be good (Native feeling, no Electron, etc)
Docker desktop on mac does not work well (uses lots of resources) and my current alternative is OrbStack (very slick, uses far less resources, but freemium).
It claims to be backed by (and require) apple/containers(1) which "consumes and produces OCI-compatible container images" so if all that is true .... yes!
Unrelated. I noticed that the settings window (Cmd-,) text inputs all type from the right instead of the left like older macOS inputs (or web inputs[0])
Is that a thing macOS is moving to? I'm sure I've seen Apple use these too.
It appears macOS native containers runs a separate Linux VM per container.
OrbStack's claim to fame is that all containers run in a single Linux VM, with lots of optimizations on both sides of the VM boundary (including use of a sparse image file for disk storage, which saves a lot of space on the macOS side).
If you run more than 4-5 containers on macOS, the performance and resource usage savings of OrbStack really starts to add up quickly.
This is focused on builds, so running either buildkitd or dockerd in an Apple containerization container.
No port forwarding or host volume stuff (really its focused on running buildkit on mac) BUT complete integration with docker CLI and buildx.
Yeah. I don't quite understand this. Can I use this instead of docker desktop, to run docker containers on my mac 'natively' ? Or this is completely separate from docker ?
I am not sure what you mean by "completely separate from docker." I have been using Container for some time now, and oddly enough, it was my first real exposure to using containers. I can say this much though:
1. I do not have docker anything installed anywhere on my mac. I run LLMs CLI tools out of containers with mounted directories. Absolutely zero issues in my workflow for me.
2. I can pull images from docker hub and run them with no issue, if that is what you want. x86 arch'ed containers will require Rosetta, so I only use AArch64 compatible containers.
3. Be warned, Container has some weird incompatibilities with macOS's mDNSResponder, so you might have to finagle things a bit if you need to run a VPN that uses port 53 while running a container via Container, for example.
My experience of docker is running docker-compose, which uses docker desktop on Windows . I can use apple containers instead of docker to achieve the same thing? it's sounds like it.
Yes, this is a separate runtime. Docker handles containerization differently with more overhead. OCI is a 'standard' way of constructing container images and both are compatible with OCI.
A lot of Mac apps compress like this. Not so long ago, it was pretty common to download a 3-400mb dmg file that decompresses to a 1.5gb app package, for example.
I can’t speak about orbstack, but I’ve worked with docker desktop and podman desktop for years on macOS. Those programs start up a virtual machine that consistently eats ram regardless of whether or not you are running containers in it. Apple container looks lighter weight. In the age of ridiculous ram costs, you gotta save resources.
Docker Desktop's memory saver shuts down VM when containers are not running.
Additionally, Docker/Podman/Orbstack start a single VM, where memory is shared between containers.
On the other hand, Apple Containers create a separate VM for each container, which results in higher memory usage due to Linux kernel overhead, as well as the fact that kernel will try to use most of the available memory for file caching.
In addition to memory saver that another person replied about, Docker Desktop also has an MCP server functionality and marketplace (almost all free) and huge AI focus. You can hardly compare it to the others at this point.
I was doing the following at the same time on my MBP this week:
* running a bunch of containers + MCP servers for Claude and Codex on Docker Desktop
* heavily using Claude Code with Fable and packer to build cloud marketplace images
* having Codex write some tests and git flows and reviewing the work in vscode
* automating a character in a Wine-based 1st party RPG in the background running at full resolution
* watching anime on Plex in between Claude Code prompts
It's all about your machine. Docker Desktop is not my worry and if you're a Dev you should have a nice laptop with 32-64GB or more, Apple Silicon Max CPU, etc. This goes for Fusion or UTM also if you want to run a Linux Desktop.
I use docker CE with all container/tui interfaces on all of my Linux systems, but Docker Desktop is nice for macOS or Windows. I almost forgot about Docker Desktop's Gordon, and the AI assistant will do things like analyze your Dockerfile or compose.yml. Super handy.
Shipped in 0.1.8; Images -> Build Image (context dir, tag, build args). It drives Apple's buildkit shim directly over vsock, no docker needed. brew upgrade davit or the in-app updater will get it.
My current power move in the age of AI: do nothing.
I had an idea like this and thought I could vibe code it, but then I figured someone else would care more and do it first. I was right!
This looks like a great app and I'm excited to try it out.
Free idea: I would like to be able to "jail" an agent inside a VM and send instructions to the harness from outside the VM to agent(s) installed inside. Ideally there is no Codex/Claude/etc. installed on the host.
More awesome: let me provision multiple user accounts inside the VM and restrict filesystem / network policy by user. Then I can have a dev agent, QA agent, etc. each with its own view of the work. That would be a powerful base layer for further automation.
Of course I should be able to provision various resources "attached" to the VM that agents can use on a permissioned basis; e.g., DB, queue, external volume, and so forth.
I have been thinking about this too. Is it not as simple as installing Claude in the VM and connecting via an SSH terminal, or if you want a GUI use VSCode with the Remote SSH extension, which will give you the file browser UI etc. Presumably you can extensions in the VSCode Claude/whatever chat extensions in the VM too.
> as simple as installing Claude in the VM and connecting via an SSH terminal
I've done exactly this, and it works pretty well!
1. I setup a VM in UTM (but this could be any kind of containerization thing). I don't even bother with a non-root account in there (the agent has free rein to install packages, write files, etc).
2. I SSH into the container.
3. I install Claude or whatever there.
4. I setup git things in a way where I can push/pull to move code between the container and my host machine.
Upsides: the agent is isolated from the rest of my host system, only being able to read/write what I've explicitly handed to it.
Downsides: the agent is isolated from the rest of my host system, so it's more limited in capability.
I threw something like this together w a simple browser front end, mostly because I like running mid to large open models but can’t trust them to not go insane. Will share at some point soon
> Free idea: I would like to be able to "jail" an agent inside a VM and send instructions to the harness from outside the VM to agent(s) installed inside. Ideally there is no Codex/Claude/etc. installed on the host.
> My current power move in the age of AI: do nothing.
This was also my strategy before AI. At some point in my late 20s or early 30s I all but completely stopped doing any development in my free time, because I was entirely over any fun I derived from coding per se (in truth, I'd never been that into it, I'd just been really bad at guessing what would or would not be worth spending time on) and, as they say, the "juice wasn't worth the squeeze" for almost anything that popped into my head that might be a nice program or script to have (like that xkcd chart about the payoff time for developing programs that save X minutes per week or whatever) or else it was something that wasn't necessary but might just be interesting or fun to have, but nowhere near worth the many hours it'd take to make it happen. If someone made what I wanted and released it, awesome! If not, oh well.
The big change with LLMs is now I can shit out little scripts and such in a few minutes and for pennies, maybe a couple dollars. I'm dragging old extremely-niche ideas out of mothballs because what would have been several weekends of work (most of these ideas would require lots of poking around unfamiliar APIs and documentation, not just immediately writing the thing I want) can now be done in a half-hour or less—or, at least, I can find out if something's going to be unworkable or too fiddly to screw with after all and should be completely and permanently abandoned, in minutes rather than hours.
How does this compare to OrbStack? Do Apple Containers offer anything in the dev experience that I would notice? OrbStack’s implementation already feels lightning fast for my usage.
98 comments
[ 2.7 ms ] story [ 56.1 ms ] thread- https://github.com/tdeverx/contained-app
- https://github.com/tofa84/berth
I like to vet my options before committing to new software but who knows if the authors are gonna support these in a month? I don’t want to waste Fable tokens to fix bugs myself when they crop up.
Vibes all the way down
28 commits in 3 days, 5,015 lines of Swift, every commit "Co-Authored-By: Claude Fable 5".
Also neat that it's signed/notarized. I installed it and it downloaded the necessary container platform stuff on first launch.
Suggestion: add a getting started tutorial to the site which suggests an image to try out and has screenshots (or a silent video) showing you how to get that image up and running and what you can do with it.
The create image dialog suggests "nginx:latest" but that's not a great starting demo.
Look, I'm as anti-AI as the next guy but their homepage is good. They didn't compromise on quality.
Call a spade a spade.
Yeah this is it. I don't know what you think I expect? I'm reading your marketing copy, it's your job to market it. There are few brands in the world that can get away with forcing the buyer to do their own marketing. In this context it's grossly unearned confidence, the type you only get from idiots and LLMs.
Brings to mind The Show's "ugly MySpace" episode: https://archive.org/details/zefrank-theshow-083
It would be nice if everyone prioritised, and was capable of, shipping polished products. But more likely the apps you're bemoaning come from folks who are not product designers. Even prior to genAI there were plenty of developers (myself included) who had patchy competence in some subset of {copywriting, documentation information architecture, visual design, identity, UI/UX, ...}. I know good developers for whom UI coherence is "not their problem," although they know well enough that it needs to be someone's problem. "Programmer art" is also a thing. I would argue that the non-coding parts of many open-source projects are what lets them down, and when it is good it is usually documentation that impresses me the most. But I think Ze Frank's view might be that, given the sudden drop in barriers to entry, it is amazing that everyone is having a go and trying to express themselves.
Oh! Do you mean the issue is adding extra name resolution to a VM?
Have you tried this avahi alias trick?
https://gist.github.com/tomslominski/9d507acd4036952d65b2364...
Works like a charm, bit odd that you have a persistent avahi client process broadcasting per alias, but it's lightweight.
Looks like great work, will try it soon!
It's getting to the point that scrolling down on Github and seeing Claude as a contributor is a signal the app will be good (Native feeling, no Electron, etc)
Docker desktop on mac does not work well (uses lots of resources) and my current alternative is OrbStack (very slick, uses far less resources, but freemium).
Good name for this app, BTW.
1) https://github.com/apple/container
Pathetic.
Is that a thing macOS is moving to? I'm sure I've seen Apple use these too.
[0] https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/...
I'll give this a try though.
OrbStack's claim to fame is that all containers run in a single Linux VM, with lots of optimizations on both sides of the VM boundary (including use of a sparse image file for disk storage, which saves a lot of space on the macOS side).
If you run more than 4-5 containers on macOS, the performance and resource usage savings of OrbStack really starts to add up quickly.
https://github.com/cpuguy83/crucible
1. I do not have docker anything installed anywhere on my mac. I run LLMs CLI tools out of containers with mounted directories. Absolutely zero issues in my workflow for me.
2. I can pull images from docker hub and run them with no issue, if that is what you want. x86 arch'ed containers will require Rosetta, so I only use AArch64 compatible containers.
3. Be warned, Container has some weird incompatibilities with macOS's mDNSResponder, so you might have to finagle things a bit if you need to run a VPN that uses port 53 while running a container via Container, for example.
Oh goodness what have we come to? I know we're comparing to electron monstrosities, but still
Additionally, Docker/Podman/Orbstack start a single VM, where memory is shared between containers.
On the other hand, Apple Containers create a separate VM for each container, which results in higher memory usage due to Linux kernel overhead, as well as the fact that kernel will try to use most of the available memory for file caching.
I was doing the following at the same time on my MBP this week:
* running a bunch of containers + MCP servers for Claude and Codex on Docker Desktop
* heavily using Claude Code with Fable and packer to build cloud marketplace images
* having Codex write some tests and git flows and reviewing the work in vscode
* automating a character in a Wine-based 1st party RPG in the background running at full resolution
* watching anime on Plex in between Claude Code prompts
It's all about your machine. Docker Desktop is not my worry and if you're a Dev you should have a nice laptop with 32-64GB or more, Apple Silicon Max CPU, etc. This goes for Fusion or UTM also if you want to run a Linux Desktop.
I use docker CE with all container/tui interfaces on all of my Linux systems, but Docker Desktop is nice for macOS or Windows. I almost forgot about Docker Desktop's Gordon, and the AI assistant will do things like analyze your Dockerfile or compose.yml. Super handy.
Really depends on what you're building, to be honest.
I had an idea like this and thought I could vibe code it, but then I figured someone else would care more and do it first. I was right!
This looks like a great app and I'm excited to try it out.
Free idea: I would like to be able to "jail" an agent inside a VM and send instructions to the harness from outside the VM to agent(s) installed inside. Ideally there is no Codex/Claude/etc. installed on the host.
More awesome: let me provision multiple user accounts inside the VM and restrict filesystem / network policy by user. Then I can have a dev agent, QA agent, etc. each with its own view of the work. That would be a powerful base layer for further automation.
Of course I should be able to provision various resources "attached" to the VM that agents can use on a permissioned basis; e.g., DB, queue, external volume, and so forth.
I have been thinking about this too. Is it not as simple as installing Claude in the VM and connecting via an SSH terminal, or if you want a GUI use VSCode with the Remote SSH extension, which will give you the file browser UI etc. Presumably you can extensions in the VSCode Claude/whatever chat extensions in the VM too.
I've done exactly this, and it works pretty well!
1. I setup a VM in UTM (but this could be any kind of containerization thing). I don't even bother with a non-root account in there (the agent has free rein to install packages, write files, etc). 2. I SSH into the container. 3. I install Claude or whatever there. 4. I setup git things in a way where I can push/pull to move code between the container and my host machine.
Upsides: the agent is isolated from the rest of my host system, only being able to read/write what I've explicitly handed to it. Downsides: the agent is isolated from the rest of my host system, so it's more limited in capability.
tart is also an option I like a lot, but it's macOS only.
You can do exactly that with coderunner
https://GitHub.com/instavm/coderunner
This was also my strategy before AI. At some point in my late 20s or early 30s I all but completely stopped doing any development in my free time, because I was entirely over any fun I derived from coding per se (in truth, I'd never been that into it, I'd just been really bad at guessing what would or would not be worth spending time on) and, as they say, the "juice wasn't worth the squeeze" for almost anything that popped into my head that might be a nice program or script to have (like that xkcd chart about the payoff time for developing programs that save X minutes per week or whatever) or else it was something that wasn't necessary but might just be interesting or fun to have, but nowhere near worth the many hours it'd take to make it happen. If someone made what I wanted and released it, awesome! If not, oh well.
The big change with LLMs is now I can shit out little scripts and such in a few minutes and for pennies, maybe a couple dollars. I'm dragging old extremely-niche ideas out of mothballs because what would have been several weekends of work (most of these ideas would require lots of poking around unfamiliar APIs and documentation, not just immediately writing the thing I want) can now be done in a half-hour or less—or, at least, I can find out if something's going to be unworkable or too fiddly to screw with after all and should be completely and permanently abandoned, in minutes rather than hours.
https://github.com/webcoyote/sandvault
Sweet, regardless of the AI help.
If anything even more so, no excuses for lazy Electron, with AI helping hand.
Kudos.
I like it! I would like it even more if we could choose which terminal app the containers open in. Is that doable?