The neuracore command helps you authenticate, choose an organization, monitor training runs (cloud and local), and launch a local policy server for quick validation. It does not yet create datasets or start training jobs—use the SDK for those and come back here to monitor.
- Login and save an API key:
neuracore login
Non-interactive:neuracore login --email you@example.com --password '<PASSWORD>' - Select your organization:
neuracore select-org --org-name "<ORG_NAME>" - Config is stored at
~/.neuracore/config.json. Override the backend withNEURACORE_API_URL=https://staging.api.neuracore.com/apiif needed.
Training commands require neuracore[ml] (pip install "neuracore[ml]").
- Sign in and pick your org
(Run this once per machine; re-run if you switch orgs.)
neuracore login
neuracore select-org --org-name "<ORG_NAME>"- List recent training runs (cloud and local by default)
neuracore training list --limit 5
# Expected: a table plus plain-text rows like:
# run-2024-08-12 | Yes | diffusion_policy | <DATASET_ID>
# Cloud only:
neuracore training list --cloud --limit 5
# Local only:
neuracore training list --local --limit 5- Inspect a run
# Cloud (default)
neuracore training inspect --training-name <RUN_NAME_OR_ID>
# Add --config to print algorithm config, or --json for raw JSON.
# Local
neuracore training inspect --local --training-name <RUN_NAME>- Launch a local policy server to sanity-check inference
neuracore launch-server \
--input_embodiment_description '{"RGB_IMAGES": {"0": "front_cam"}}' \
--output_embodiment_description '{"JOINT_TARGET_POSITIONS": {"0": "arm"}}' \
--job_id <RUN_ID> \
--org_id <ORG_ID> \
--port 8080- Clean up
neuracore training delete --training-name <RUN_NAME_OR_ID> --yes
# Delete a local run directory instead:
# neuracore training delete --local --root <RUNS_DIR> --training-name <RUN_NAME> --yesneuracore login [--email <EMAIL>] [--password <PASSWORD>]— saves your API key to~/.neuracore/config.json.neuracore select-org [--org-name <NAME> | --org-id <ID>]— sets the active organization.neuracore training list [--cloud | --local | --all] [--status <STATUS>] [--limit <N>] [--root <DIR>]- Default is both cloud and local (
~/.neuracore/training/runs). - Status examples:
PENDING,RUNNING,COMPLETED.
- Default is both cloud and local (
neuracore training inspect --training-name <RUN> [--cloud | --local] [--root <DIR>] [--config] [--json]- Cloud is the default; add
--localto readtraining_run.jsonfrom a local run directory.
- Cloud is the default; add
neuracore training monitor [--training-name <RUN>] [--root <DIR>] [--port <PORT>] [--host <HOST>] [--bind-all]- Launches TensorBoard for local runs. With
--training-name, opens that run’stensorboard/logs; without it, opens all runs under--rootfor comparison. Requires thetensorboardexecutable on PATH (neuracore[ml]).
- Launches TensorBoard for local runs. With
neuracore training delete --training-name <RUN> [--cloud | --local] [--root <DIR>] [--yes]- Cloud is the default; add
--localto remove a run directory under--root. Prompts unless--yesis used.
- Cloud is the default; add
neuracore training start— currently a placeholder; use the SDK to launch training and return here to monitor.neuracore launch-server --input_embodiment_description '<JSON>' --output_embodiment_description '<JSON>' [--job_id <RUN_ID>] [--org_id <ORG_ID>] [--host <HOST>] [--port <PORT>]- JSON must map DataType strings (e.g.,
"RGB_IMAGES") to indexed name mappings, with JSON string keys for the indexes (for example,{"RGB_IMAGES": {"0": "front_cam"}}).
- JSON must map DataType strings (e.g.,
Authentication failed. Please run 'neuracore login' first.- Re-run
neuracore login; confirm~/.neuracore/config.jsonexists and contains an API key.
- Re-run
Training commands require optional ML dependencies/ import errors onneuracore training.- Install with
pip install "neuracore[ml]".
- Install with
- No runs show up but you know they exist.
- Ensure you selected the right org (
neuracore select-org) and used the correct--statusfilter.
- Ensure you selected the right org (
Invalid status filterwhen listing runs.- Use one of
PENDING,RUNNING,COMPLETED,FAILED,CANCELLED.
- Use one of
- Local inspect fails with missing
training_run.json.- Point
--rootto the directory where your Hydra runs live (default~/.neuracore/training/runs).
- Point
TensorBoard executable not foundwhen runningtraining monitor.- Install
neuracore[ml]. If you seeNo module named 'pkg_resources', runpip install "setuptools<82".
- Install
TensorBoard log directory not foundwhen runningtraining monitor.- Confirm the run finished at least one logging step, or use the correct
--training-name/--root.
- Confirm the run finished at least one logging step, or use the correct
launch-serverJSON errors.- Ensure the JSON strings use double quotes and DataType keys match your model (
"RGB_IMAGES","JOINT_TARGET_POSITIONS", etc.).
- Ensure the JSON strings use double quotes and DataType keys match your model (
- Where is CLI config stored?
~/.neuracore/config.json(API key and current org). - How do I switch API environments? Set
NEURACORE_API_URLbefore running commands. - Where are local runs written?
~/.neuracore/training/runs(override with--root). - How do I view local training metrics?
neuracore training monitor --training-name <RUN_NAME>. - Can the CLI upload datasets or start training? Not yet. Dataset creation/upload and training launch are available through the Python API;
neuracore training startis a placeholder today.