Agent and CLI for the Jetson Arena: how a given Jetson device handles a whole model stack. Benchmarks pipelines (e.g. realtime VAD + STT + LLM + TTS on an Orin Nano Super 8GB) for latency, memory signature and quality, then publishes results plus signed-in Docker build recipes. Also maintains the arena public site.
Project description
jetson-arena
How does a given Jetson device handle a whole model stack?
Not one model in isolation — the whole pipeline. A realtime VAD → STT → LLM → TTS loop puts four models on one 8GB Orin Nano Super, where they contend for VRAM, memory bandwidth, and the GPU. Each fits alone; the stack is what fails. jetson-arena benchmarks the stack for latency, memory signature, and quality, then publishes the results together with the Docker build recipes that reproduce them — and maintains the arena's public site.
Status
Early. The domain surface is not built yet. What exists today is the
agent-first CLI scaffold below, plus the mesh identity and the CI baseline —
there is no benchmark runner, device probe, recipe store, or site. The intended
shape, and the questions still open, are written down in
docs/scope.md. Read that before proposing a design.
Quickstart
uv sync
uv run pytest -n auto # run the test suite
uv run jetson-arena whoami # identity from culture.yaml
uv run jetson-arena learn # self-teaching prompt (add --json)
uv run teken cli doctor . --strict # the agent-first rubric gate CI runs
CLI
| Verb | What it does |
|---|---|
whoami |
Report this agent's nick, version, backend, and model from culture.yaml. |
learn |
Print a structured self-teaching prompt. |
explain <path> |
Markdown docs for any noun/verb path. |
overview |
Read-only descriptive snapshot of the agent. |
doctor |
Check the agent-identity invariants (prompt-file-present, backend-consistency). |
cli overview |
Describe the CLI surface itself. |
Every command supports --json. Results go to stdout, errors/diagnostics to
stderr (never mixed). Exit codes: 0 success, 1 user error, 2 environment
error, 3+ reserved.
How it is put together
- An agent-first CLI cited from teken
(
afi-cli) — the runtime package has no third-party dependencies, and the contracts above are enforced in CI by a rubric gate that drives the built CLI as a black box. - A mesh identity —
culture.yaml(suffix+backend) and the matching resident prompt file (AGENTS.colleague.md, since this agent runsbackend: colleague).CLAUDE.mdis the parallel prompt for Claude Code. - The guildmaster skill kit (14 skills) under
.claude/skills/, vendored cite-don't-import. Provenance ledger:docs/skill-sources.md. - A build + deploy baseline — pytest, lint, the agent-first rubric gate, and PyPI Trusted Publishing wired into GitHub Actions.
Contributing
Every PR bumps the version — docs-only ones included. CI enforces it, because a
merge to main publishes to PyPI and a repeated version is a failed publish. See
CLAUDE.md for the full conventions: the CLI contract, the
vendored-skills rule, and the cicd PR lane.
License
Apache 2.0 — see LICENSE.
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 jetson_arena-0.5.0.tar.gz.
File metadata
- Download URL: jetson_arena-0.5.0.tar.gz
- Upload date:
- Size: 134.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
72d0571bb65d1e00305faba52663859dfd186fd56b36d5b6d2852c24e0ef0c60
|
|
| MD5 |
ed520de5274c97ee28009e03152669ab
|
|
| BLAKE2b-256 |
985450b84bc8ec232b9b8c7b8fcea9f1b9d3c5f3e04fb28d51dd78a26a88025e
|
File details
Details for the file jetson_arena-0.5.0-py3-none-any.whl.
File metadata
- Download URL: jetson_arena-0.5.0-py3-none-any.whl
- Upload date:
- Size: 22.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
562015e364d3a8777fc46b4dbef72513151f2d7d28cb24559f33d0d87f08c2bc
|
|
| MD5 |
a58d509afeb9b447aed3eb3a25c370a6
|
|
| BLAKE2b-256 |
0e562eb109c203e35218b33ca077efbfd35e7e797402d6163da04bf6057cf77c
|