What is Sley?
An open-source programming language and system for AI agents, built by Greyforge Labs. Agents write typed Python-dialect code or propose typed changes; a deterministic kernel validates every change, and valid changes commit atomically. Sley 2 is open source under Apache-2.0 at github.com/sley-lang/sley.
What is Sley 2?
The current generation of Sley. Programs are created, stored, changed, run, tested, versioned and shared as typed semantic state: SSMC1 is the program form, SCB1 the encoding, and SMP1 the machine interface. Agents read programs through bounded queries and change them by proposing typed mutations.
Can I write Sley like Python?
Yes. Since 2.1.1, sley-agent try --familiar compiles typed Python: functions with type hints, @dataclass records, and pytest-style def test_*(): functions with assert lines. Integers are 64-bit and overflow traps. sley-agent help python lists every construct the dialect accepts, and /docs#python walks through an example.
Can I try Sley in a browser?
Yes, in Sley Arena at sleylang.org/arena. Every Arena bot is a Sley program in the Python dialect. The Play page compiles your bot and runs practice matches right in the browser on any operating system, and GitHub sign-in enters it on the ladder.
Is Sley 2 released?
Yes: Sley 2.1.7, published 2026-10-28. sley-2.1.7-linux-x86_64.tar.gz holds static sley and sley-agent binaries for Linux x86_64. Two clean builds produced identical archives, with CycloneDX and SPDX SBOMs and build provenance.
Is Sley self-hosted?
Yes, since 2.1.0. Sley's semantic toolchain is a Sley program. On a pinned host, without the Rust seed compiler, it rebuilds its own executable closure to a byte-identical fixed point. The self-rebuild bundle sley-2.1.0-selfhost-linux-x86_64.tar.gz repeats that build and needs bubblewrap.
Is Sley 2 open source?
Yes. Sley 2 is licensed under Apache-2.0 (Copyright 2026 Greyforge Labs), with source at github.com/sley-lang/sley. Sley 1.x Legacy is also Apache-2.0.
How do I install Sley 2?
Download sley-2.1.7-linux-x86_64.tar.gz and SHA256SUMS from the v2.1.7 release page, check with sha256sum -c --ignore-missing SHA256SUMS, unpack, and run python3 demo/run_demo.py ("result": "PASS" means every answer matched). From source: git clone --branch v2.1.7 --depth 1 https://github.com/sley-lang/sley.git && cd sley && cargo build --release -p sley-cli -p sley-agent. To write a first program, see /docs#python.
Does Sley 2 have a CLI?
Yes, two. sley-agent is the authoring tool: init, try, call, view and submit. sley is a thin machine CLI: sley version, sley hello [--json], sley methods, sley frame decode|encode, and sley serve --repository <dir> [--json] [--batch] [--report <file>]. Every sley command prints machine-readable output, and sley serve --json speaks SMP1 as JSON lines. The kernel makes every decision.
Is Sley 2 a programming language or a programming system?
Both. Agents write programs in its languages: the typed Python dialect, a compact familiar syntax, or AF1 JSON frames. Around them, the system covers storage, queries, mutation, policy, transactions, branches, merge, exchange, execution and the SMP1 protocol.
Do agents write Sley as source text?
They can. A typed Python-dialect file, a familiar-syntax file or an AF1 JSON frame compiles into proposed changes to the program graph. Sley stores, validates and versions the graph, so canonical state defines a program's identity and reformatting leaves it unchanged. Agents inspect programs through queries, diagnostics and receipts.
What are SSMC1 and SCB1?
SSMC1 (Sley Semantic Machine Code) is the program form: a typed, immutable graph of 18 entity kinds. SCB1 (Sley Canonical Binary) is its byte encoding: strict, minimal, and hashed with domain-separated BLAKE3. An independent Python oracle reproduces the Rust kernel's bytes exactly.
What is SMP1?
SMP1 (Sley Machine Protocol) is how agents talk to Sley: versioned, bounded, cancellable request and response frames with sessions and a hello handshake. A JSON bridge maps each frame to one JSON line, and sley serve --json speaks it.
How does an agent change a Sley 2 program?
State → Proposal → Validation → Transaction → Verified State. From a verified state root, the agent asks bounded queries and proposes typed mutations with preconditions. The kernel validates them in fourteen ordered phases, and the change commits atomically with a receipt. sley serve exposes each step as an SMP1 method.
Does Sley 2 have deterministic program identity?
Yes. Entities, objects, state roots, transactions and schema epochs all have exact, content-derived IDs. The same state has the same root however it was reached, and a clone reproduces it exactly.
Does Sley 2 run programs?
Yes, in a deterministic VM. The same state and inputs produce the same results byte for byte, under explicit fuel, output and cancellation limits, with a canonical digest and a stored report for every run.
Does Sley 2 have version control?
Yes, built in and independent of Git: a content-addressed repository with atomic branches, semantic compare, deterministic merge with explicit conflict objects, exchange and clone, and GC that keeps every retained root.
Is Sley 1.x still available?
Yes. Sley 1.2.1 is the final release of the complete human-readable line, with a self-hosted compiler, 99 report schemas, 187 contract fixtures, 72 corpus cases and 264 integration checks. It lives at GreyforgeLabs/sley-legacy under Apache-2.0.
Is Sley 2 compatible with Sley 1.x?
No. Sley 2 is a clean break, built from the ground up for machines. Sley 1.x programs stay on the 1.x line.
What's next for Sley?
The 2.1.0 self-hosting proof ran on Linux x86_64; a second host family comes next. The release notes have the details.
Keep reading
Go deeper