Show HN: Othismo, a Runtime for Sandboxed Objects A developer released Othismo, an open-source runtime that hosts sandboxed WebAssembly modules communicating with each other and the host environment, and is currently serving its own website at othismo.com. The project, published on GitHub under mamidon/othismo, uses .oth image definition files to describe namespaces and object interfaces, aiming to draw a clear line between computation and side effects so that large agent-generated pull requests can be reviewed without confidence that no socket or file access was opened. The author is soliciting feedback on the image-definition syntax, noting that keywords such as `operator` and `readonly` exist only because protocol-layer authentication is not yet supported. Othismo is a runtime which has a bunch of sandboxed WASM modules talking to each other + the host environment. It's actually hosting its own website right now at othismo.com. This is a project that's been percolating in my head for a while, as a vague desire to make a "better" runtime for software development. But it was never particularly clear for me what that would actually look like. In the last month or so, I felt a bit inspired to ask what such a runtime might look like for agentic development. My hypothesis is that we really can't review 10k+ SLoC pull requests consistently and really understand them. But if we try to have a higher level view of things, we still can't be confident the agent s haven't done something stupid and opened a socket or a file somewhere in that 10k+ SLoC. Therefore we need a very clear demarcation between computation and side effects. In Othismo that takes the shape of the image definition files .oth which describe the namespace + various type definitions describing what the interface of an object should be. It's somewhat like TypeScript, we don't actually do anything to verify an object conforms to this interface. I'd love your feedback on the syntax used to define images overall, I feel like it doesn't do a great job giving me a clear notion of the environment lexically. I'm more comfortable about the syntax for describing the behavior of objects, although things like operator and readonly are really only necessary because I've not done anything to support auth at the protocol layer yet. You can run the same website hosted at othismo.com with git clone git@github.com:mamidon/othismo.git task run:example:static You can also play with the namespace interactively with task build:example:static target/debug/othismo shell examples/static/static.rti print out the namespace s target/debug/othismo --check examples/static/static.rti You'll need rust, task it's like make , and node+npm. Comments URL: https://news.ycombinator.com/item?id=50319764 https://news.ycombinator.com/item?id=50319764 Points: 1 Comments: 0