AI writes code faster than any human alive. You still can't trust it.
AI has one superpower and one fatal flaw, and they fight each other. The superpower is patience: it writes code a thousand times over, never tires, never quits. The flaw is false confidence: it ships broken or dangerous code that looks flawless, with zero hesitation and zero warning.
We point that firehose at Python, TypeScript, and Rust, languages designed decades ago for slow, careful humans who read their own work. They were never built to catch a tireless, confident machine. So a function quietly leaks customer data, nobody sees it, and we act surprised.
The fix isn't a smarter model. It's a language built for how AI actually behaves.
Stella is that language. It shifts correctness left into the type system and pushes feedback quality up in the toolchain, so the things an agent gets wrong stop compiling instead of shipping.
Concretely, Stella commits to six ideas:
- Effects in the signature. Every function declares what it touches: I/O, network, filesystem, mutation, randomness, time. A function can't hide a side effect, because the type changes the moment it has one. No secret ingredients.
- Capabilities, not ambient authority. Code gets exactly the keys it needs, passed in as values. Never handed the filesystem? Then it can't touch the filesystem. Not by policy, by construction.
- Content-addressed code. Definitions are identified by the hash of what they do, not by name and file location. Rename freely, nothing breaks, refactors become metadata, and the codebase becomes a clean queryable graph instead of fragile text.
- Contracts the machine checks. Functions carry their promises in writing, and the toolchain proves or tests them before anything ships. Design by contract, with refinement types where it matters.
- Determinism by default. Seeded randomness, a virtual clock, recorded I/O. Every failure replays exactly, so the bug an agent hit can't hide.
- One canonical form. One way to spell a thing. No six-ways-to-write-a-function tax, no diff noise, no reasoning burned on choices that are identical at runtime.
What Stella keeps from the languages you already know: Python's readability, Rust's exhaustive safety, and TypeScript's reach into the existing ecosystem.
The whole thesis in one breath: an AI's superpower is patience, its flaw is false confidence, so build a language where confident mistakes simply can't pass.
The case for Stella, as a slide deck, lives in index.html. Open it in a browser. Arrow keys build each slide, N shows presenter notes, F goes fullscreen. It's also the source of the talk we'll give on the open call.
We're hosting Stella Open Call #1, a live community session on the design of the language and where it goes next.
We're lining up special guests from across the industry, founders and engineering leaders building the agentic future. The lineup gets announced closer to the date. Want the invite? Watch this repo and the date, link, and guests will land here first.
Stella is early and open, which means the people who show up now get to shape it.
- Star the repo. Stars tell us there's real appetite to build this. It's the single most useful thing you can do today.
- Watch the repo. The spec, the call invite, and the first reference snippets all ship here.
- Open an issue. Tell us what you'd keep, what you'd kill, and what would make you actually write Stella. We ship issue templates for design proposals and feedback. The best ideas go straight into the spec.
No code to contribute yet. Right now the contribution that matters is opinion, and direction.
Mostly a flag in the ground. This repo currently holds the manifesto, the brand, and the talk. The language spec, reference toolchain, and examples come next, in the open, shaped by the issues and the call.
Stella ships under the Functional Source License (FSL-1.1-Apache-2.0). See LICENSE.md.
In plain terms:
- You can use Stella freely, including commercially, to build your own products and services. You can read it, fork it, modify it, learn from it, and ship things with it.
- You can't turn around and offer Stella itself as a competing commercial product or hosted service. The language is sponsored by Oxagen, and Oxagen monetizes the surrounding infrastructure.
- It opens up. Every version converts to Apache 2.0 two years after its release, so the community is never locked out long-term.
This is the same source-available, "fair source" approach used by companies that give the work away to build on while sustaining the team that maintains it. It is deliberately not an OSI open-source license, by design.
Not legal advice. If license fit matters to your situation, talk to a lawyer. If FSL's competing-use boundary or two-year clock isn't the exact shape you want, the close alternatives are the Business Source License (longer clock, parameterized), the Elastic License 2.0 (no clock, no managed-service use), and PolyForm Noncommercial (blocks all commercial use). Each trades adoption against protection differently.
Stella is a project of Oxagen, Inc. — ontology infrastructure for AI agents. Stella is the language; Oxagen is the steward and the home for the infrastructure around it.
★ Star oxagenai/stella and help invent the language AI deserves.