An orchestration DSL and embedded runtime for agentic systems
Project description
Nodus
v4.0.0 now on PyPI —
pip install nodus-lang==4.0.0· The 29-package companion ecosystem is publishing over the next 3–4 weeks; full install viapip install nodus-sdk[agent,sql,fastapi]available shortly.
pip install nodus-lang
nodus init
nodus run
nodus repl
Nodus is an orchestration DSL and embedded runtime for building agentic systems, created by Shawn Knight as part of the Masterplan Infinite Weave ecosystem. It implements the Infinity Algorithm's execution model as a first-class language construct. It gives AI workflows, tool chains, and agent pipelines a proper language — one where coroutines, task graphs, workflows, and goals are first-class constructs rather than library conventions layered over Python.
If you're building multi-step AI agents, embedding a scripting layer in a Python application, or wiring together tools via MCP or A2A, Nodus is the execution layer.
For a machine-readable project index see llms.txt.
The Nodus ecosystem spans 29 standalone packages across 6 tiers, all available at
github.com/Masterplanner25. A unified SDK (nodus-sdk) provides a single installation
story: pip install nodus-sdk[agent,sql,fastapi].
Install
Requires Python 3.10+.
pip install nodus-lang
For the optional FastAPI/Uvicorn server stack:
pip install "nodus-lang[server]"
Quick Start
Create a project:
mkdir my-app
cd my-app
nodus init
nodus run
nodus init creates nodus.toml and src/main.nd.
nodus run executes the current project's src/main.nd when run inside a project root.
Start the REPL:
nodus repl
Useful REPL commands:
:helpshows REPL commands.:quitexits the REPL.
Run A File
Create hello.nd:
print("hello")
Run it explicitly:
nodus run hello.nd
When you provide a file path, Nodus runs only that file. When you run nodus run with no file inside a project, Nodus runs only src/main.nd.
Common Commands
nodus --versionnodus run hello.ndnodus runnodus replnodus check hello.ndnodus checknodus fmt hello.nd
Standard Library
Import standard library modules with the std: prefix:
import "std:http" as http
let r = http.get("https://api.example.com/data")
print(r.body)
The full standard library ships with Nodus — no extra installs required for core modules:
Networking and I/O
| Module | What it does |
|---|---|
std:http |
HTTP client — GET, POST, PUT, DELETE, PATCH; async variants; SSE streaming |
std:subprocess |
Run processes — sp.run(argv), sp.spawn(argv) for async + channel output |
std:fs |
Filesystem — read, write, append, exists, listdir, mkdir |
Data and encoding
| Module | What it does |
|---|---|
std:json |
json.parse(str) / json.stringify(val) |
std:math |
Arithmetic, trig, rounding, min/max |
std:string |
Split, join, trim, replace, starts_with, ends_with, case conversion |
std:encoding |
Base64 encode/decode, URL encode/decode |
std:hash |
SHA-256 / SHA-512 for data and files — returns record with .to_hex() |
Time and system
| Module | What it does |
|---|---|
std:time |
now_ms(), sleep(ms), UTC offset, format/parse timestamps |
std:secrets |
Cryptographic random tokens and bytes |
AI-native orchestration (v4.0)
| Module | What it does |
|---|---|
std:tool |
Register and dispatch tools — MCP-compatible namespaced registry |
std:identity |
trace_id(), session_id(), execution_unit_id() — propagated automatically |
std:effects |
EXACTLY_ONCE idempotency — resolve, pending, complete, action_id |
std:sys |
Versioned syscall dispatch — uniform {status, data, error, trace_id} response shape |
std:memory |
share(ns, key, val), recall_from(ns, key), recall_all(ns), forget(ns, key) |
std:retry |
retry.call(func, policy) — exponential backoff, jitter, max attempts |
std:circuit_breaker |
cb.create(name, cfg) / cb.call(name, func) — three-state breaker |
Testing
| Module | What it does |
|---|---|
std:test |
test.assert_eq, test.assert_err, test.flush_async — built-in test framework |
Documentation
- Language Specification — full syntax, types, control flow, imports, coroutines
- Ecosystem Specs - implementation specs for proposed Nodus libraries and frameworks
- Architecture — runtime pipeline and module system
- Changelog — version history
- Contributing — development setup, code style, and contribution process
- llms.txt — machine-readable project index for AI tools
- llms-full.txt — full content summaries for AI indexers
Using with Claude Code
If you write Nodus with Claude Code, a language skill is available that teaches Claude the idioms, gotchas, and workflow patterns specific to Nodus v4:
- Download
skills/nodus.skillandskills/project-CLAUDE.mdfrom this repo. - Copy
project-CLAUDE.mdto your project root asCLAUDE.md(fill in your project name). - Drop
nodus.skillin your project's.claude/commands/folder. - Claude will apply Nodus-specific rules automatically in every session.
The skill covers: record vs map distinction, the closure outer-let pattern, spawn() coroutine
wrapping, workflow result bracket notation, the 200ms default timeout trap, all 19 stdlib modules,
and 15 verified complete example programs.
Using with Codex
If you write Nodus with Codex, a Codex-native skill and project template are available:
- Copy
skills/project-AGENTS.mdto your project root asAGENTS.mdand fill in your project name if needed. - Copy the
skills/nodus/folder to$CODEX_HOME/skills/nodusor~/.codex/skills/nodus. - Start a Codex session in your Nodus project. Codex can auto-trigger the skill, or you can invoke
$nodusexplicitly.
The Codex skill covers the same core language hazards: record vs map distinction, closure outer-let
mutation, spawn() coroutine wrapping, workflow result bracket notation, import rules, and the
200ms default timeout trap, while keeping deeper material in reference files for on-demand loading.
Creator & Ecosystem
Nodus is created and maintained by Shawn Knight as part of the Masterplan Infinite Weave — an AI-native execution framework built on the Infinity Algorithm. Nodus is the runtime layer that makes the Infinity Algorithm's orchestration constructs executable as a first-class language.
From the creator's writing:
- Why I'm Building A.I.N.D.Y. (Or Any Tool, Really) — the strategic context behind Nodus
- Duality of Progress: Master Index — the Infinity Algorithm framework Nodus executes
- AI Search Optimization — the discoverability philosophy this project embodies
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 nodus_lang-4.0.1.tar.gz.
File metadata
- Download URL: nodus_lang-4.0.1.tar.gz
- Upload date:
- Size: 420.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
884c0390e9a54f0405a9792af350a43d3158dd586e5e52636ebe6bffea9865b4
|
|
| MD5 |
4e8893b627e54401c6bd42c11700c421
|
|
| BLAKE2b-256 |
2c7eff24c82d3e7a570cd2f72e26558ad01034acb0089eb91e3f0453e5eb8755
|
File details
Details for the file nodus_lang-4.0.1-py3-none-any.whl.
File metadata
- Download URL: nodus_lang-4.0.1-py3-none-any.whl
- Upload date:
- Size: 313.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
53a0dd2382c0773330f73fe71db55e5ccade448381389f97d78d4317a2f6efd0
|
|
| MD5 |
175a1536d37af641a142638b248cfc61
|
|
| BLAKE2b-256 |
e38fcfa3139f2a4624fdb93a18a6fb471b0505ef3ef6e20f7c903a8ea96f5a96
|