AI-native programming language for deterministic, inspectable applications.
This project has been archived.
The maintainers of this project have marked this project as archived. No new releases are expected.
Project description
namel3ss
namel3ss is a deterministic AI application language. It keeps surface syntax minimal while making execution explicit, inspectable, and reproducible.
10-line example
spec is "1.0"
use preset "rag_chat":
title is "Assistant"
model is "gpt-4o-mini"
answer_template is "summary_keypoints_recommendation_with_citations"
Run n3 expand app.ai to inspect the generated program.
Try the RAG application
apps/rag-application is an end-to-end RAG app (upload -> ingest -> ask -> citations) with deterministic flows and inspectable source previews.
From repo root:
cd apps/rag-application
n3 check app.ai
n3 run app.ai --port 7360 --no-open
In the UI:
- Open
http://127.0.0.1:7360/. - Upload a PDF or text document.
- Run index/ingest actions.
- Ask a question in chat.
- Open citation chips/cards to inspect source evidence.
Why this exists
- Prompt spaghetti across app code and runtime glue.
- Hidden retrieval logic that is hard to inspect.
- Hard debugging when answers are wrong.
- No deterministic replay for reliable incident analysis.
- Missing policy gating for ingestion and retrieval boundaries.
Under the hood: expand and override
n3 expand app.aimaterializes the full expanded program so execution is deterministic and diffable.overridelets you change targeted behavior without copying hundreds of lines from a preset.
cd apps/rag-application
n3 expand app.ai > expanded.ai
Small expanded shape (example):
flow "rag.retrieve":
...
flow "rag.answer":
...
Progressive depth
Beginner:
use preset "rag_chat":
title is "Assistant"
Advanced:
override flow "rag.retrieve":
...
Advanced custom answer flow: docs/rag/advanced_custom_answer_flow.md
Start simple. Expand when needed.
One .ai file defines records, deterministic flows, explicit AI boundaries, and UI — with inspectable state changes.
Start here
Try it in 60 seconds: docs/quickstart.md.
Run modes
n3 run app.airuns in production mode and renders only user-facing UI.n3 run studio app.ai(orn3 run --studio app.ai) starts Studio (alias ofn3 studio app.ai).n3 studio app.airemains available as the dedicated Studio inspector command.- UI blocks can be marked with
debug_onlymetadata so they render only in Studio mode. - Custom UI components are opt-in via
use plugin "name"and requirecustom_uiincapabilities.
What you can run today
- Templates: docs/templates.md
- Template contract: templates/
- Demos: src/namel3ss/demos
- Studio (inspection UI): docs/studio.md
RAG support (deterministic)
namel3ss supports production-grade retrieval-augmented generation as a first-class pattern:
- Deterministic ingestion and retrieval
- Answering with mandatory citations
- PDF page preview and exact source highlighting
- Explain mode for auditable selection
- Optional embeddings (runtime config only, no grammar changes)
See the canonical overview: docs/rag/overview.md
Core stable
Core stable is the graduation gate for the language surface, compiler determinism, and safety guards. See the authoritative definition in docs/graduation/core_stable.md.
Get started
Develop from source
Use this for development and testing.
python3 -m venv .venv && . .venv/bin/activate
python3 -m pip install --upgrade pip && python3 -m pip install -e ".[dev]"
python3 -m namel3ss --help
Run with Docker (isolated runtime)
Use this for a clean, repeatable runtime.
docker build -t namel3ss:local .
docker run --rm namel3ss:local n3 --help
Learn / explore (docs & templates)
Use the local Docker image to open Studio for a bundled demo.
docker run -d --name namel3ss_studio -p 7340:7340 \
-v "$PWD:/workspace" -w /workspace \
namel3ss:local n3 app/app.ai studio --host 0.0.0.0 --port 7340
docker logs namel3ss_studio
docker rm -f namel3ss_studio
See docs/install-and-run.md for complete install and Studio instructions.
Installation (summary)
Supported paths:
- Install from source (development)
- Docker (local) for an isolated runtime
Full guide: docs/install-and-run.md
Docker quick check:
docker build -t namel3ss:local .
docker run --rm namel3ss:local n3 --help
Install + Verify
Install (source, editable):
python3 -m pip install --upgrade pip
python3 -m pip install -e ".[dev]"
Verify CLI and package:
n3 --version
n3 doc
python3 tools/package_verify.py
Verify embedding (C example, requires C toolchain + cargo):
python3 -m pytest -q tests/embed/test_embed_c_example.py
Browser Protocol
Browser Protocol is defined in docs/runtime/browser-protocol.md.
Docker & CI guarantees
- Docker builds install from local source, not PyPI.
- Docker builds are validated in CI.
- CLI smoke tests are enforced automatically.
- Wheel installs are smoke-tested in release automation.
References:
Release & governance
Release invariants (enforced):
- VERSION is metadata.
- Docker builds do not depend on PyPI.
- Publish is gated by CI and guards.
- Canonical sequence: VERSION bump → tests → tag → PyPI publish → docker image → release notes.
References:
How it works (high level)
Design guarantees:
- Deterministic execution
- Explicit AI boundary
- Inspectable state and traces
- Governed memory
Runtime guarantees:
- Stable CLI surface
- Deterministic manifests and outputs
- Read-only diagnostics and explain output
- Safe cleanup of runtime artifacts
See docs/trust-and-governance.md.
UX as a Contract
UX behavior is deterministic and explainable through stable manifests and n3 see output.
Guarantees:
- Uploads (progress, preview metadata, async errors)
- Conditional UI (state-gated visibility)
- Reusable UI patterns (compile-time expansion)
- Accessibility by default (roles, labels, keyboard, contrast)
Detailed UX contracts: docs/ui/overview.md
Language Contracts
Language Contracts are defined here:
- docs/language/application-runtime.md
- docs/language/application-data-model.md
- docs/language/backend-capabilities.md
- docs/language/no-dependencies.md
- docs/language/capability-packs.md
Reserved identifiers
If you must use reserved identifiers, escape them with backticks and use n3 reserved to list them. The reserved words list is in docs/language/reserved-words.md.
Documentation index
Getting started:
Language & grammar:
Runtime & backend:
- Data and migrations
- Observability
- Model training
- Streaming responses
- Performance hardening
- Browser protocol
UI & Studio:
Governance & releases:
Discussions & Design Conversations
GitHub Discussions is the canonical place for architectural and language design conversations. Use Discussions for design questions, trade-offs, and long-form proposals; use Issues for bugs and actionable feature requests.
Reference discussion: https://github.com/namel3ss-Ai/namel3ss/discussions/2
Contributing
See CONTRIBUTING.md.
Summary:
- Clone the repo.
- Create and activate a virtual environment.
- Install editable + run tests (
python3 -m pytest -q).
Troubleshooting
- CLI not found: follow docs/install-and-run.md.
- Icon registry missing: use Docker or install from source per docs/install-and-run.md.
- Virtualenv confusion: recreate the venv per docs/install-and-run.md.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file namel3ss-0.1.0a24.tar.gz.
File metadata
- Download URL: namel3ss-0.1.0a24.tar.gz
- Upload date:
- Size: 2.0 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7998866c7f337ebd5902ac51c1144c8406cbb8f70e39c95dd174ade20fda1d98
|
|
| MD5 |
233bc6adf604e4ea4572eed34e76801e
|
|
| BLAKE2b-256 |
290e8d9490b91d8fccbd1eadfa91344c9436e1d300065e68a0459bc529d65c85
|
File details
Details for the file namel3ss-0.1.0a24-py3-none-any.whl.
File metadata
- Download URL: namel3ss-0.1.0a24-py3-none-any.whl
- Upload date:
- Size: 3.2 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
66eab404b10705a946f91092dd8d0a134a100e3c63c21b6d2763ec8af4da0ae4
|
|
| MD5 |
b92d4b06b6936354d8e36a0295c79ef7
|
|
| BLAKE2b-256 |
a8827cbc88c55f6d4f0bfa91daf24a9b83abed58c4605d25642795b8573ba7c2
|