A terse sandbox and CLI for the Noxus AI Python SDK.
Project description
noxus-lab
Workflow-as-code for Noxus AI. Build in the UI, edit in your IDE, review in pull requests, run/trace/debug from the terminal.
install
pip install noxuslab
noxuslab init my-noxus-project
cd my-noxus-project
noxuslab doctor
The init wizard prompts for NOXUS_API_KEY and writes a chmod-600
.env. Get the key at Noxus UI → Settings → Workspace → API Keys.
Unreleased commits (between tags) are still installable directly from the git repo:
pip install git+https://github.com/AdvanceWorks/noxus-lab.git@<ref>
where <ref> is a tag (v0.15.0), branch (main), or commit SHA.
See RELEASING.md for the release flow.
one cheat sheet
| You want to… | Run |
|---|---|
| Pull a workflow from the UI to code | noxuslab pull <workflow-id> |
| Run it locally + record logs | noxuslab run examples/NN_x.py --input k=v |
| Inspect a past run (logs) | noxuslab trace [list | show <id>] |
| Replay a past run | noxuslab replay <run-id> |
| Review-before-push (dry-run+diff+log) | noxuslab check examples/NN_x.py |
| See server-vs-local diff | noxuslab diff examples/NN_x.py |
| Push a code-defined workflow back | noxuslab push examples/NN_x.py |
| Switch between API-key environments | noxuslab env [list | use <name>] |
| Talk to one of your agents | noxuslab chat -a <agent-id> |
| One-shot question (pipe-friendly) | noxuslab ask "..." -a <agent-id> |
| List workflows / agents | noxuslab list / noxuslab agents |
| Manage agents as code | noxuslab agents pull/push/diff/delete |
| Generate workflow code from a prompt | noxuslab gen "..." |
| Auto-push on save | noxuslab watch examples/NN_x.py |
| Reformat a workflow file | noxuslab fmt examples/*.py |
| Open the local read-only dashboard | noxuslab portal |
| Diagnose env / network / SDK | noxuslab doctor |
| Serve as an MCP tool to your editor | noxuslab mcp serve |
| Upgrade the CLI | pip install --upgrade noxuslab |
Full reference: docs/cli.md. Concepts: docs/concepts.md. Renderer: docs/codegen.md. MCP server: docs/mcp.md.
review loop
When a teammate builds a workflow in the Noxus UI and you want to review, test, and push back via PR:
noxuslab pull <workflow-id> # 1. fetch as examples/NN_x.py
noxuslab run examples/NN_x.py --input topic=... # 2. run + log
noxuslab trace show <run-id> # 3. read the logs
noxuslab check examples/NN_x.py # 4. dry-run + diff + last-trace
git switch -c review/<short> # 5. branch + commit
git commit -am "review: <workflow-name>"
git push -u origin HEAD # 6. open the PR
# ... after PR review ...
noxuslab push examples/NN_x.py # 7. ship to Noxus
noxuslab check is the single "safe-to-commit?" gate: it dry-runs
the file, diffs it against the server (provenance header carries the
id, so no UUID needed), and prints the latest local trace status.
Exit 0 means clean; exit 1 means fix something first.
why
The Noxus UI is great for sketching. Code is great for diffing,
reviewing, sharing, and version-controlling. noxuslab pull <id>
turns a workflow built in the UI into a clean Python file you can
edit and push back. Examples under examples/ are top-level
scripts — read top-to-bottom, no magic.
philosophy
Three rules:
- The reader matters more than the writer. Examples are read
100 000 times for every time they're written. Optimise for the
reader on day one, sitting in front of
01_hello.py. - Small surface, sharp edges. The package exports
workflow_to_pythonand a CLI. Everything else is private (_term,_net,_secrets,_audit, …). When in doubt about adding something, don't. - Standard library first. Hard deps:
noxus-sdkandpython-dotenv. Everything else is stdlib.
contributing
See docs/contributing.md and AGENTS.md. Three commands cover the inner loop:
pip install -e ".[dev]"
ruff check . && ruff format .
pytest
CI mirrors that on Linux, macOS, and Windows. Conventional Commits required; pre-commit handles ruff + gitleaks; pre-push runs pytest.
Project details
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 noxuslab-0.15.1.tar.gz.
File metadata
- Download URL: noxuslab-0.15.1.tar.gz
- Upload date:
- Size: 101.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ef975bbd9053efec02e16ed13db92228ee96f951dd7819caf4161e6666d68ae5
|
|
| MD5 |
ef9f01df0630fc52f3b39e0405780953
|
|
| BLAKE2b-256 |
d8013fa37d8ba8ccb3ab62df57a6478fb72ebed26b1ce72c28d01c76b8b9d10b
|
Provenance
The following attestation bundles were made for noxuslab-0.15.1.tar.gz:
Publisher:
release.yml on AdvanceWorks/noxus-lab
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
noxuslab-0.15.1.tar.gz -
Subject digest:
ef975bbd9053efec02e16ed13db92228ee96f951dd7819caf4161e6666d68ae5 - Sigstore transparency entry: 1591871359
- Sigstore integration time:
-
Permalink:
AdvanceWorks/noxus-lab@5d6afb16ed1999280bb5d220cc0b4ce6d9dcd4d9 -
Branch / Tag:
refs/tags/v0.15.1 - Owner: https://github.com/AdvanceWorks
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@5d6afb16ed1999280bb5d220cc0b4ce6d9dcd4d9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file noxuslab-0.15.1-py3-none-any.whl.
File metadata
- Download URL: noxuslab-0.15.1-py3-none-any.whl
- Upload date:
- Size: 81.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
992bd4de4217867cd4931c9d1f9169a0c06e6859aebccbff3eaddadfbdb8f302
|
|
| MD5 |
0300bfe67cb16af15e8503650f2fb783
|
|
| BLAKE2b-256 |
5037fedfb73b1a933532163ca0872a35d23d227401aacee9cd58fed036891b2f
|
Provenance
The following attestation bundles were made for noxuslab-0.15.1-py3-none-any.whl:
Publisher:
release.yml on AdvanceWorks/noxus-lab
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
noxuslab-0.15.1-py3-none-any.whl -
Subject digest:
992bd4de4217867cd4931c9d1f9169a0c06e6859aebccbff3eaddadfbdb8f302 - Sigstore transparency entry: 1591871370
- Sigstore integration time:
-
Permalink:
AdvanceWorks/noxus-lab@5d6afb16ed1999280bb5d220cc0b4ce6d9dcd4d9 -
Branch / Tag:
refs/tags/v0.15.1 - Owner: https://github.com/AdvanceWorks
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@5d6afb16ed1999280bb5d220cc0b4ce6d9dcd4d9 -
Trigger Event:
push
-
Statement type: