Rendered at 14:54:05 GMT+0000 (Coordinated Universal Time) with Netlify.
ucirello 2 days ago [-]
author here!
I have been working on this for my own use until recently, when I shared with the rest of the team, and we thought it would be nice to let the world see it.
I have been interested in autonomous code development for quite some time (at least since March/April 2025) - and summer '25 is when I felt the models were good enough to be pushed to autonomy.
I wrote a bit about it[0], and sgai is the incarnation of my take on AI autonomous coding.
sgai is not even v0 yet, a lot of work to be done to improve its implementation - but I think it should be usable enough for those willing to give it a try.
author here! I am not sure if I would phrase it as sane Gas Town. The design constraints are very different. For example, I tried to optimized for output density (the number of tokens that I didn't have to rewrite because the output quality was bad), instead of treating it as a distributed system and coordination problem. SGAI, for example, runs one agent at a time - maybe one day it will run more agents in parallel, but only as much that I can obtain better outputs (not more outputs).
Also, I am not a cryptocurrency enthusiast - and therefore, I wouldn't accept creating a memecoin out of it.
Aditya_Garg 1 days ago [-]
Pretty cool
Your goal.md examples are all features for the existing codebase. Any largish goal.md examples where your system is able to 1 shot a pretty large app?
The goal.md is what makes this thing either amazing or terrible for the user, so any guidelines or clear examples on writing a good one would go a long way.
ucirello 22 hours ago [-]
author here! Good suggestion, we should probably come up with some GOAL.md examples. With that said, one-shotting a pretty large app is a somewhat doable task, and that's one of the reasons we have introduced the interview step: exactly to let the model pull from you (instead you pushing into the model a spec document) what it needs to know to be able to work autonomously.
embedding-shape 2 days ago [-]
Interesting license choice, modified MIT it seems, with this additional clause:
> No licensee or downstream recipient may use the Software (including any modified or derivative versions) to directly compete with the original Licensor by offering it to third parties as a hosted, managed, or Software-as-a-Service (SaaS) product or cloud service where the primary value of the service is the functionality of the Software itself.
Doesn't that kind of conflict with the "including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software" part of regular MIT, which your custom license also includes for some reason?
I think you might be better of with just not trying to do it "kind of open source but also not" and just say "Copyright 2026 Sandgarden.com" or whatever, instead of the mix of proprietary and open source. Then you get 100% "full control" over what people can do with the source, and don't have to worry about anything when it comes to licensing :)
ucirello 2 days ago [-]
author here! the decision was mine; if anything, the senior leadership was fine with an unencumbered open-source license. What I didn't want was someone using it to make a business out of this tool without me in the mix.
In a sense, a futile effort; because if you reverse engineer a nlspec and rebuild it, then you can have it with any license you may want.
embedding-shape 2 days ago [-]
I wasn't doubting it wasn't you making the decision! :)
I was more curious why go with modifying a FOSS license (which clearly isn't the right choice if you want to prevent others from doing whatever with it) instead of just straight up keeping full copyright to yourself/the company and a "regular" license?
Then you get exactly what you want, without also sending double-messages about that people can do whatever they want, which is what you're trying to prevent.
zwaps 2 days ago [-]
He said why, he wanted to open source it with the mentioned exception.
I think there are also licenses that do that, and revert to full MIT after some time, but the author decided to roll their own.
What’s the problem with that? He can license it however he wants and the reason he mentions is perfectly valid tbh
hungryhobbit 2 days ago [-]
Legal writing is like code: it's a specific domain, that requires special expertise to write properly.
If you see a problem with a non-programmer writing code, then you should see a problem with a non-lawyer writing licenses.
selridge 1 days ago [-]
Do you see a problem with a non-programmer writing code?
hungryhobbit 2 days ago [-]
Terrible decision.
OSS licenses (and existing commercial ones) are tried and true (and re-used) for a reason, while your license very well may not even hold up in court!
I mean, I'm not a lawyer, and I assume you aren't either ... would you hire someone who isn't a programmer to write your code for you? Then why are you doing your own lawyering without a law degree?
fuddle 2 days ago [-]
Sgai (pronounced "Sky") - That's a bit of a stretch
sandgardenhq 2 days ago [-]
You know, I tried to convince people of a number of various other pronunciations. But when we saw it written down, everyone just naturally pronounced it "sky." My natural impulse was to avoid it, since there are already a ton of AI-related things called Sky, but I think I've accepted that it was inevitable.
Besides -- and I've obviously thought about this a little too much -- when you actually say the word "sky," are you using a hard k? After saying it out loud to myself about a billion times (and long after the word lost all meaning) I think I actually use a hard g.
zwaps 2 days ago [-]
Depends on the language no? Works in German
selridge 1 days ago [-]
I hear it.
nicoleao 2 days ago [-]
Very nice, the automated setup instructions for opencode are a genius touch, more people should do that.
Is this already your daily driver for coding projects?
ucirello 2 days ago [-]
author here! it is my daily driver for quite some time; with that said, its current shape is a bit of a more recent development. Initially, I would manually handle jj workspaces and fire out screen/tmux sessions; but over time, I figure it would be nice to have an UI that I could browse from anywhere through a VPN.
It does take some investment -- by adding customizations through the overlay folder (`sgai/` directory at the root of the repository) -- but eventually it should be able to code in a way that you would approve in a PR.
das-bikash-dev 1 days ago [-]
the DAG decomposition approach is interesting — curious how it handles goals that span multiple services/repos. i build a multi-service platform solo with claude code and the hardest part isn't the coding, it's knowing which files across which repos need to change for a given goal. do you see sgai supporting multi-repo goals, or is it scoped to single-repo for now?
ucirello 22 hours ago [-]
author here! It supports multi-repository. You would need to create a directory with both git repositories cloned in, and save the GOAL.md at the parent. This UX could use some polish, for sure. It works, but it needs this extra step.
nikolas_sapa 1 days ago [-]
wow bro, very smart of you, can you please share the apps it built, I am very curious to see how it performed. will try it out when I can get some api credits...
I have been working on this for my own use until recently, when I shared with the rest of the team, and we thought it would be nice to let the world see it.
I have been interested in autonomous code development for quite some time (at least since March/April 2025) - and summer '25 is when I felt the models were good enough to be pushed to autonomy.
I wrote a bit about it[0], and sgai is the incarnation of my take on AI autonomous coding.
sgai is not even v0 yet, a lot of work to be done to improve its implementation - but I think it should be usable enough for those willing to give it a try.
0: https://cirello.org/aifactory.html
Also, I am not a cryptocurrency enthusiast - and therefore, I wouldn't accept creating a memecoin out of it.
Your goal.md examples are all features for the existing codebase. Any largish goal.md examples where your system is able to 1 shot a pretty large app?
The goal.md is what makes this thing either amazing or terrible for the user, so any guidelines or clear examples on writing a good one would go a long way.
> No licensee or downstream recipient may use the Software (including any modified or derivative versions) to directly compete with the original Licensor by offering it to third parties as a hosted, managed, or Software-as-a-Service (SaaS) product or cloud service where the primary value of the service is the functionality of the Software itself.
Doesn't that kind of conflict with the "including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software" part of regular MIT, which your custom license also includes for some reason?
I think you might be better of with just not trying to do it "kind of open source but also not" and just say "Copyright 2026 Sandgarden.com" or whatever, instead of the mix of proprietary and open source. Then you get 100% "full control" over what people can do with the source, and don't have to worry about anything when it comes to licensing :)
In a sense, a futile effort; because if you reverse engineer a nlspec and rebuild it, then you can have it with any license you may want.
I was more curious why go with modifying a FOSS license (which clearly isn't the right choice if you want to prevent others from doing whatever with it) instead of just straight up keeping full copyright to yourself/the company and a "regular" license?
Then you get exactly what you want, without also sending double-messages about that people can do whatever they want, which is what you're trying to prevent.
I think there are also licenses that do that, and revert to full MIT after some time, but the author decided to roll their own.
What’s the problem with that? He can license it however he wants and the reason he mentions is perfectly valid tbh
If you see a problem with a non-programmer writing code, then you should see a problem with a non-lawyer writing licenses.
OSS licenses (and existing commercial ones) are tried and true (and re-used) for a reason, while your license very well may not even hold up in court!
I mean, I'm not a lawyer, and I assume you aren't either ... would you hire someone who isn't a programmer to write your code for you? Then why are you doing your own lawyering without a law degree?
Besides -- and I've obviously thought about this a little too much -- when you actually say the word "sky," are you using a hard k? After saying it out loud to myself about a billion times (and long after the word lost all meaning) I think I actually use a hard g.
Is this already your daily driver for coding projects?
It does take some investment -- by adding customizations through the overlay folder (`sgai/` directory at the root of the repository) -- but eventually it should be able to code in a way that you would approve in a PR.