For some very basic level protection use devcontainers and install the agent into that....
A better approach is to use the Docker Sandboxes feature. Locks things way down so that the agent only has access to the files you give it and you can lock down its network access too. Also does things like keep any credentials outside of the container (microvm actually).
The site was actually built as an experiment on "spec first" coding with AI agents... in this case using Codex CLI. Underlying tech is Typescript, React, Zustard (for state), Bootstrap (for layout/components) and Konva JS (for 2D canvas) and vite for building/bundling. Deployed to AWS S3 bucket fronted by AWS cloud front using Github actions.
Yeah, foam core is easy to work with but a bit thick. The tool does let you set the thickness in the project properties so you may be have some luck setting it to be thinner.
It should hopefully work better on a phone/tablet now. I'm planning on adding a video soo showing how to use the app and what it does... but you can check out https://www.reddit.com/r/boxinsertdesigner/ for examples
100% agree with you... taking the time to do/go design first greatly improves the quality of the final API...
But as some comments below point out, an OpenAPI spec is a pain to create manually which is why TypeSpec from Microsoft is such a great tool. Lets you focus on the important bits of creating a solid API (model, consistency, best practices) in an easy to use DSL that spits out a fully documented OpenAPI spec to build against! see https://typespec.io/
I've had an "architect" job in some form or another for 20+ years, so have learnt plenty of things that would have greatly surprised my younger self...
My day job is basically to be a "force multiplier" and it boils down to:
- cat herding = meetings, discussions, negotiation, "shoulder to cry on" = way more soft skills then I ever thought I'd need
- Big picture stuff = "town planning" for tech, second order thinking, pulling together cohesive plans/strategies, principles, constraints = way harder to effectively communicate this stuff than my younger stuff would have thought
- rapid altitude changes = dropping from the 10000ft view down to helping a team troubleshoot some production issue, helping a junior dev with a code issue, solving a dispute between devs, hands on evaluation of some new tech, then jumping back up to talk to a leadership team about some new grand strategy, or to planning out a multi year program of work = a ton of skills that my younger self would have never have guessed at, finance, budgets, "business" language, operating models along with keeping my technical skills sharp
In terms of resources:
- Anything around learning to story tell and communicate effectively
- The "97 Things Every Software Architect Should Know" essays
- Your tech skills - write PoC apps, side-projects, try out new tech, learn to quickly grok strengths & weaknesses of tech
A better approach is to use the Docker Sandboxes feature. Locks things way down so that the agent only has access to the files you give it and you can lock down its network access too. Also does things like keep any credentials outside of the container (microvm actually).