The systems language built for coding agents, and readable by humans.
Meaning in. Checked changes out.
Give coding agents typed program context instead of a pile of files. Keep readable source in Git, reject stale changes and build runtime Agents whose proposals must pass deterministic authorization. v0.5.0 is available for experiments and prototypes, not production workloads.
revision sha256:<program-state>
query app.main --depth 1
context typed · bounded · stable-id
patch expected_revision == current
verify fail_closed
target native | browser/wasmRepository status at the audited snapshot
| Repository snapshot | b9f593c · 2026-09-16. The reviewed main commit equals the v0.5.0 tag. Its exact-tag CI completed successfully; the separate branch CI was cancelled. Neither is a blanket production or security guarantee. |
|---|---|
| Full product status | 55 Partial · 0 Implemented · 0 Missing |
| Graph and project contract | Feature-selected graph schemas preserve earlier contracts. Project v1 is the baseline; owned-data profiles v8, v9, v10 and v11 have distinct admission and support boundaries. |
| Published pre-release | v0.5.0 · Published 16 September 2026 at 09:43 UTC. Three archives: Linux x86-64, macOS Apple Silicon and Windows x86-64, with SHA256SUMS. The packaged semaprax binary is the full toolchain, not the standalone Cargo CLI. Exact-tag CI. |
| Package and API previews | A published toolchain does not publish its generated Rust/npm packages or promote private APIs. Project v8-v11 support decisions, public generic ownership, broader platforms and native/Wasm Agent-stage execution remain separate. |
What is Semaprax?
Semaprax is an experimental agent-native systems programming language. Readable .spx source remains canonical, while coding agents query typed program meaning and propose revision-bound changes. Its v0.5.0 pre-release also includes typed runtime Agents and bounded native and WebAssembly integrations.
Run your first checked program
Source route, pinned to the reviewed commit. Requires Git and Rust/Cargo 1.88+. The first Cargo run may fetch dependencies. These check/run commands need neither Clang, Node.js nor an AI provider; the program returns 42.
git clone https://github.com/wavect/semaprax.git
cd semaprax
git checkout --detach b9f593c5334bc18c9d3a201ddaf135d716733af5
cargo run --locked -p semaprax -- check examples/meaning.spx
cargo run --locked -p semaprax -- run examples/meaning.spxOne program, three working surfaces
Human source, agent-facing meaning, and machine output are derived from one versioned semantic state. Every arrow below is an evidence boundary, not a promise of universal language support.
- Human-readable sourceCanonical .spx in Git, ordinary programs, contracts and explicit ownership. No model or API key is needed to check and run the first example.
- Typed meaning for toolsStable IDs, bounded context, candidate diffs and replayable evidence. Read-only inspection is not permission to write or publish.
- Checked executionInterpreter, admitted C11/Clang and Core-Wasm profiles, plus typed runtime Agents with explicitly supplied host capabilities.
Semaprax semantic program graph: Semaprax resolves canonical .spx source into checked HIR, a compiler representation of typed program meaning. Stable identities connect graph queries, candidate changes, execution and evidence. Supported edits must match their source revision; runtime Agent proposals must pass typed decoding and deterministic authorization. Graphs and receipts never grant publication, network or payment authority by themselves.
The hypothesis, not the headline
Can stable identities, compact context and replayable changes reduce repair ambiguity and model work? Semaprax now includes offline tokenizer measurements, workflow instrumentation and cross-language task harnesses. None establishes general token savings, faster delivery or higher model accuracy.
A research index with one owner per question
Each page answers one branded question so search engines and answer engines do not have to guess which route is authoritative.
Architecture
Stable IDs, graph context, and semantic patches
evidenceEvidence
What v0.5.0 implements and where it stops
benchmarksBenchmarks
Context measurements without cost promises
interoperabilityInteroperability
Target and ecosystem evidence matrix
roadmapRoadmap
Milestones, objectives, and open gaps
Capability evidence ledger
| Current status | Evidence state | Scope | Evidence |
|---|---|---|---|
| Canonical source and stable identity | Partial | Readable `.spx` remains the canonical Git representation. Explicit `@id` values identify declarations independently of supported display-name changes. The revision binds canonical source and the compiler-owned implicit prelude, not incidental source spans or a graph wire format. | GitHub repository |
| Bounded context and compact projections | Partial | Context v1/v2 applies depth, node and byte budgets; v2 adds directional traversal. Task-oriented context and text, binary and model-text projections add focused exchange with replay checks. Smaller serialized output is not automatically fewer billed model tokens or better answers. | GitHub repository |
| Semantic edits, not arbitrary rewrites | Partial | Inspect context, derive a candidate, preview impact, review, replay checks, then explicitly authorize application. The operation families now extend beyond renames to bounded expression replacement, structural changes and specified rebase/merge composition. Each protocol keeps its own revision, identity and operation limits. | GitHub repository |
| Managed publication is a separate boundary | Partial | Managed workspace generations, candidate evidence, Project revision storage and MCP workflows retain explicit write and publication authority. Validation of multiple files is not an atomic update to arbitrary raw paths, Git or editors. The Rust embedding API supplies capped inputs, cancellation and opaque sessions, not unrestricted host access. | GitHub repository |
| Replayable semantic evidence | Partial | Evidence binds checked facts and candidate changes to source and revisions. A receipt can support review or rejection; it does not grant execution, mutation or publication authority. | GitHub repository |
| Multi-module projects and offline scaffolding | Partial | Project manifests define source closure, entries, tests and selected exports. The bundled calculator supports check/test/run and admitted builds. new creates a fresh project from bundled files without initializing Git or fetching a registry. | GitHub repository |
Primary sources for this page
Reviewed against the pinned source commit and the v0.5.0 release record. Versioned specifications define admission and authority; older v0.4 release headings in the matrix and roadmap are historical, not the latest release identity.
Questions, answered without the hype
Is Semaprax production-ready?
No. v0.5.0 is Apache-2.0 pre-alpha research software. Useful implemented profiles and a successful release workflow do not complete its 55 Partial product requirements or establish production readiness.
Is Semaprax only for AI agents?
No. Canonical .spx remains readable and reviewable by humans. Coding agents query semantic facts and propose changes; runtime Agents are a separate typed execution abstraction. Neither removes human review or host-controlled authority.
Need this level of evidence-first engineering in your AI product?
See Wavect’s AI engineering work.