3 comments

  • oelmgren1 hour ago
    This is pretty cool, have personally felt this limitation many a time.<p>Basically been relying on spinning up cursor &#x2F; niteshift &#x2F; devin workflows since they have their own containers but this could be interesting to keep it all on your main machine.
    • jsunderland3231 hour ago
      Thanks!<p>Yeah, I think there&#x27;s a ton of great remote solutions right now. I think worktrees make the local stuff tricky but hopefully Coasts can help you out.<p>Let me know how it goes!
  • jsunderland3232 hours ago
    HN questions we know are coming our way:<p>1) Could you run an agent in the coast?<p>You could... sort of. We started out with this in mind. We wanted to get Claude Max plans to work so we built a way to inject OAuth secrets from the host into the containerized host... unfortunately because the Coast runtime doesn&#x27;t match the host machine the OAuth token is created on, Anthropic rapidly invalidates the OAuth tokens. This would really only work for TUIs&#x2F;CLIs and you&#x27;d almost certainly have to bring a usage key (at least for Anthropic). You would also need to figure out how to get a browser runtime into the containerized host if you wanted things like playwright to work for your agent.<p>There&#x27;s so many good host-side solutions for sandboxing. Coasts is not a sandboxing tool and we don&#x27;t try to be. We should play well with all host-side sandboxing solutions though.<p>2) Why DinD and why not mount namespaces with unshare &#x2F; nsenter?<p>Yes, DinD is heavy. A core principle of our design was to run the user&#x27;s docker-compose unmodified. We wanted the full docker api inside the running containerized host. Raw mount namespaces can&#x27;t provide image caches, network namespaces, and build layers without running against the host daemon or reimplementing Docker itself.<p>In practice, I&#x27;ve seen about 200mb of overhead with each containerized host running Dind. We have a Podman runtime in the works, which may cut that down some. But the bulk of utilization comes from the services you&#x27;re running and how you decide to optimize your containerized hosts and docker stack. We have a concept of &quot;shared-services&quot;. For example if you don&#x27;t need isolated postgres or redis, you can declare those services as shared in your Coastfile, and they&#x27;ll run once on the host Docker daemon instead of being duplicated inside each containerized host, coasts will route to them.
  • imta717701 hour ago
    [flagged]