CLI reference

Every nistor command, sub-command and option, generated from the CLI's own argument parser.

This page is generated from the nistor command's own argument parser (package nistor-cli), so it lists exactly what the installed CLI accepts. nistor <command> --help prints the same information in a terminal.

Global options#

Given before the command (nistor --api-url https://… rules list).

usage: nistor [-h] [--version] [--api-url API_URL] [--token TOKEN]
              {rules,odcs,patterns,env-mapping,compiler,alerts,deployments,auth,admin,migrate,iam,dist,release,serve,runner,connections,tool}
              ...

Options

Option Value Default Description
--version — — show program's version number and exit
--api-url API_URL — Backend API base URL (or set NISTOR_API_URL env var)
--token TOKEN — Bearer token for authentication (or set NISTOR_API_TOKEN env var)

Commands

Command Description
nistor rules Manage scheduling rules
nistor odcs Manage ODCS data contracts (config-as-code)
nistor patterns Manage resource patterns
nistor env-mapping Manage environment mappings
nistor compiler Manage compiler configuration
nistor alerts Manage alert channels, policies & email settings
nistor deployments Deployment provenance: report what a deploy put in place
nistor auth Authentication utilities
nistor admin Tenant admin operations (users, permissions, audit)
nistor migrate Migrate the database: core, then tools, then plugins
nistor iam IAM operations run inside the runtime image
nistor dist The distribution's lock: make it, check it
nistor release Release trains: versions, tags, changelog, names
nistor serve Start one server role of the runtime image
nistor runner Edge runner utilities
nistor connections Manage tool connections
nistor tool Build a tool package for Nistor

nistor rules#

Manage scheduling rules

usage: nistor rules [-h]
                    {sync,list,approve-match,reject-match,check-platform-targets,validate} ...

Commands

Command Description
nistor rules sync Sync rules from JSON/YAML files to the API
nistor rules list List all rules from the API
nistor rules approve-match Approve nodes matched by a rule that requires match approval (applies_to.require_match_approval)
nistor rules reject-match Reject nodes matched by a rule that requires match approval (applies_to.require_match_approval)
nistor rules check-platform-targets Fail unless every platform-job rule the rule files make active in --env is active in the backend and matches a node in the compiled graph: an active rule on no node never fires and nothing reports it. Retried for --wait-seconds (the backend lists rules from a lagging read replica). With --compile-job, rules that still match no node start one compile (the graph may predate the compiler just deployed) and the check re-runs for --compile-wait-seconds. CI runs it right after the rules sync in the deploy job's config sync
nistor rules validate Check rule files offline (no API): parse, code_id/name duplicates, and every payload the sync would send against this checkout's rule schema, including fields the backend would silently drop

nistor rules sync#

Sync rules from JSON/YAML files to the API

usage: nistor rules sync [-h] --env {dev,test,prod} [--files FILES [FILES ...] | --all | --dir
                         RULES_DIR] [--dry-run] [--delete-orphaned] [--source-repo SOURCE_REPO]
                         [--adopt-rules-without-source-repo] [--source-branch SOURCE_BRANCH]
                         [--continue-on-error] [--output-json OUTPUT_JSON] [--validate]
                         [--require-rules-format] [--record-sync-event]

Options

Option Value Default Description
--env dev | test | prod required Environment name
--files FILES (one or more) — Rule JSON/YAML files to sync
--all — — Sync all default rule files
--dir RULES_DIR — Directory to recursively discover rule files (*.json, *.yaml, *.yml)
--dry-run — — Preview changes without making them
--delete-orphaned — — Delete DB rules not in synced files (scoped to --source-repo when set)
--source-repo SOURCE_REPO — GitLab project path that owns these rules (e.g., 'org/team-rules'). Scopes orphan cleanup to this repo only.
--adopt-rules-without-source-repo — — With --source-repo and --delete-orphaned: also treat code-managed rules whose source_repo is empty as this repo's (rules pushed before the sync sent --source-repo keep it NULL). Only the repository that pushed those rules may pass it; the deployment repository's rules sync does.
--source-branch SOURCE_BRANCH — Git branch to record on each rule (used to build 'View source' links). Auto-detected from the working directory when omitted.
--continue-on-error — — Exit 0 even on partial failures
--output-json OUTPUT_JSON — Write structured JSON report to file
--validate — — Run server-side validation before sync (calls /validate endpoint)
--require-rules-format — — Refuse to sync, pushing nothing, unless the backend stores at least this checkout's rules format (rules_format_version on GET /api/v1/health/version). A backend on an older format silently drops rule fields it does not know. The backend release itself is not compared.
--record-sync-event — — After the sync, record the run in the backend (POST /api/v1/gitops/sync-events) with the same report as --output-json, under the repository named by --source-repo or the CI variables (CI_PROJECT_PATH / GITHUB_REPOSITORY). Best-effort: a failure to record is one warning and never changes the exit status. The deployment pipeline's rules sync passes it in deploy mode only.

nistor rules list#

List all rules from the API

usage: nistor rules list [-h]

nistor rules approve-match#

Approve nodes matched by a rule that requires match approval (applies_to.require_match_approval)

usage: nistor rules approve-match [-h] --rule RULE --node NODE [--reason REASON]

Options

Option Value Default Description
--rule RULE required Rule code_id or UUID
--node NODE required Node id to decide (repeatable)
--reason REASON — Why (stored with the decision)

nistor rules reject-match#

Reject nodes matched by a rule that requires match approval (applies_to.require_match_approval)

usage: nistor rules reject-match [-h] --rule RULE --node NODE [--reason REASON]

Options

Option Value Default Description
--rule RULE required Rule code_id or UUID
--node NODE required Node id to decide (repeatable)
--reason REASON — Why (stored with the decision)

nistor rules check-platform-targets#

Fail unless every platform-job rule the rule files make active in --env is active in the backend and matches a node in the compiled graph: an active rule on no node never fires and nothing reports it. Retried for --wait-seconds (the backend lists rules from a lagging read replica). With --compile-job, rules that still match no node start one compile (the graph may predate the compiler just deployed) and the check re-runs for --compile-wait-seconds. CI runs it right after the rules sync in the deploy job's config sync

usage: nistor rules check-platform-targets [-h] --env {dev,test,prod}
                                           (--files FILES [FILES ...] | --all | --dir RULES_DIR)
                                           [--wait-seconds WAIT_SECONDS] [--compile-job NAME]
                                           [--compile-project PROJECT] [--compile-region REGION]
                                           [--compile-wait-seconds COMPILE_WAIT_SECONDS]

Options

Option Value Default Description
--env dev | test | prod required Environment the rules were synced to
--files FILES (one or more) — Rule JSON/YAML files that were synced
--all — — Every *.json in nistor-deployment/config/rules
--dir RULES_DIR — Directory to recursively discover rule files
--wait-seconds WAIT_SECONDS 120 Total time to wait for the backend to show every expected rule active and matched (default: 120)
--compile-job NAME — When set and rules still match no node after --wait-seconds, start this Cloud Run Job (the env's compiler) once and re-check. Needs --compile-project, nistor-platform-gcp and run.jobs.run on the job
--compile-project PROJECT — GCP project of --compile-job
--compile-region REGION europe-west1 Region of --compile-job (default: europe-west1)
--compile-wait-seconds COMPILE_WAIT_SECONDS 4500 Total time to re-check after starting --compile-job (default: 4500: a prod compile takes ~41 min, the backend's pickup up to 15 min and its reload ~3 min)

nistor rules validate#

Check rule files offline (no API): parse, code_id/name duplicates, and every payload the sync would send against this checkout's rule schema, including fields the backend would silently drop

usage: nistor rules validate [-h] (--files FILES [FILES ...] | --all | --dir RULES_DIR)

Options

Option Value Default Description
--files FILES (one or more) — Rule JSON/YAML files to validate
--all — — Validate every *.json in nistor-deployment/config/rules
--dir RULES_DIR — Directory to recursively discover rule files

nistor odcs#

Manage ODCS data contracts (config-as-code)

usage: nistor odcs [-h] {sync} ...

Commands

Command Description
nistor odcs sync Sync *.odcs.yaml contracts from the repo to the API

nistor odcs sync#

Sync *.odcs.yaml contracts from the repo to the API

usage: nistor odcs sync [-h] --env {dev,test,prod} [--files FILES [FILES ...] | --contracts-dir
                        CONTRACTS_DIR] [--dry-run] [--delete-orphaned] [--source-repo SOURCE_REPO]
                        [--source-branch SOURCE_BRANCH] [--continue-on-error]
                        [--output-json OUTPUT_JSON]

Options

Option Value Default Description
--env dev | test | prod required Target environment
--files FILES (one or more) — ODCS YAML files to sync
--contracts-dir CONTRACTS_DIR — Directory to discover *.odcs.yaml files (default: nistor-deployment/config/contracts/odcs)
--dry-run — — Preview changes without making them
--delete-orphaned — — Soft-delete code-managed contracts not in the synced files (scoped to --source-repo)
--source-repo SOURCE_REPO — GitLab project path that owns these contracts (e.g., 'org/data-contracts'). Scopes orphan cleanup to this repo only.
--source-branch SOURCE_BRANCH — Git branch to record on each contract. Auto-detected from the working directory when omitted.
--continue-on-error — — Exit 0 even on partial failures
--output-json OUTPUT_JSON — Write structured JSON report to file

nistor patterns#

Manage resource patterns

usage: nistor patterns [-h] {sync,list} ...

Commands

Command Description
nistor patterns sync Sync resource patterns from JSON file to the API
nistor patterns list List all resource patterns from the API

nistor patterns sync#

Sync resource patterns from JSON file to the API

usage: nistor patterns sync [-h] [--file FILE] [--dry-run] [--allow-deletions]

Options

Option Value Default Description
--file FILE resources_pattern.json JSON file with pattern array (default: resources_pattern.json)
--dry-run — — Preview changes without making them
--allow-deletions — — Delete API patterns not in file

nistor patterns list#

List all resource patterns from the API

usage: nistor patterns list [-h]

nistor env-mapping#

Manage environment mappings

usage: nistor env-mapping [-h] {sync,show} ...

Commands

Command Description
nistor env-mapping sync Sync environment mappings from JSON file to the API
nistor env-mapping show Show current environment mappings from the API

nistor env-mapping sync#

Sync environment mappings from JSON file to the API

usage: nistor env-mapping sync [-h] [--file FILE] [--dry-run]

Options

Option Value Default Description
--file FILE environment_mappings.json JSON file with mappings dict (default: environment_mappings.json)
--dry-run — — Preview changes without making them

nistor env-mapping show#

Show current environment mappings from the API

usage: nistor env-mapping show [-h]

nistor compiler#

Manage compiler configuration

usage: nistor compiler [-h] {sync,show} ...

Commands

Command Description
nistor compiler sync Sync compiler config from JSON file to the API
nistor compiler show Show current compiler configuration from the API

nistor compiler sync#

Sync compiler config from JSON file to the API

usage: nistor compiler sync [-h] [--file FILE] [--dry-run]

Options

Option Value Default Description
--file FILE compiler_config.json JSON file with config array (default: compiler_config.json)
--dry-run — — Preview changes without making them

nistor compiler show#

Show current compiler configuration from the API

usage: nistor compiler show [-h]

nistor alerts#

Manage alert channels, policies & email settings

usage: nistor alerts [-h] {sync,list} ...

Commands

Command Description
nistor alerts sync Sync alert channels/policies/email from JSON to the API
nistor alerts list List alert channels and policies from the API

nistor alerts sync#

Sync alert channels/policies/email from JSON to the API

usage: nistor alerts sync [-h] --env {dev,test,prod} [--dir ALERTS_DIR]
                          [--channels-file CHANNELS_FILE] [--policies-file POLICIES_FILE]
                          [--email-file EMAIL_FILE] [--dry-run] [--delete-orphaned]
                          [--source-repo SOURCE_REPO] [--source-branch SOURCE_BRANCH]
                          [--continue-on-error] [--output-json OUTPUT_JSON]

Options

Option Value Default Description
--env dev | test | prod required Environment name
--dir ALERTS_DIR nistor-deployment/config/alerts Directory holding alert_channels.json / alert_policies.json / email_settings.json
--channels-file CHANNELS_FILE — Override path to the channels JSON file
--policies-file POLICIES_FILE — Override path to the policies JSON file
--email-file EMAIL_FILE — Override path to the email settings JSON file
--dry-run — — Preview changes without making them
--delete-orphaned — — Delete code-managed channels/policies not in the JSON (scoped to --source-repo when set)
--source-repo SOURCE_REPO — GitLab project path that owns these configs. Scopes orphan cleanup to this repo only.
--source-branch SOURCE_BRANCH — Git branch to record on each row (for 'View source' links). Auto-detected when omitted.
--continue-on-error — — Exit 0 even on partial failures
--output-json OUTPUT_JSON — Write structured JSON report to file

nistor alerts list#

List alert channels and policies from the API

usage: nistor alerts list [-h]

nistor deployments#

Deployment provenance: report what a deploy put in place

usage: nistor deployments [-h] {record} ...

Commands

Command Description
nistor deployments record Report the resources a deploy manages (POST /api/v1/deployments/reports). Best-effort by default: a report that cannot be delivered is one warning and exit 0; only an unreadable or invalid input file exits 1. --fail-if-not-recorded makes a non-delivered report exit 3 too, for a caller that wants to know

nistor deployments record#

Report the resources a deploy manages (POST /api/v1/deployments/reports). Best-effort by default: a report that cannot be delivered is one warning and exit 0; only an unreadable or invalid input file exits 1. --fail-if-not-recorded makes a non-delivered report exit 3 too, for a caller that wants to know

usage: nistor deployments record [-h] --provider {terraform,nistor-install} --tf-show-json FILE
                                 [--env {dev,test,prod}] [--repo REPO] [--ref REF]
                                 [--commit COMMIT] [--pipeline-url PIPELINE_URL]
                                 [--deployed-by DEPLOYED_BY] [--dry-run] [--fail-if-not-recorded]

Options

Option Value Default Description
--provider terraform | nistor-install required Deployment tool that produced the input (nistor-install: the install pipeline's release report, kept apart from terraform's so a release never replaces an apply's provenance)
--tf-show-json FILE required terraform show -json output, or - to read it from stdin
--env dev | test | prod — Environment the deploy targeted (shown in the summary; the report goes to --api-url)
--repo REPO — Repository URL or group/project (default: CI_PROJECT_URL)
--ref REF — Branch or tag deployed (default: CI_COMMIT_BRANCH / CI_COMMIT_REF_NAME)
--commit COMMIT — Commit deployed (default: CI_COMMIT_SHA)
--pipeline-url PIPELINE_URL — Pipeline URL (default: CI_PIPELINE_URL)
--deployed-by DEPLOYED_BY — Who deployed (default: GITLAB_USER_EMAIL)
--dry-run — — Print what would be reported (counts per resource type), send nothing
--fail-if-not-recorded — — Exit 3 (after the usual WARNING) when the report was not actually recorded -- no repository identity, no backend URL, a client/transport error, or a non-recording HTTP outcome. Without this flag every such case stays exit 0 (the default, for any caller that only wants best-effort). A --dry-run always exits 0 regardless of this flag: nothing was attempted to fail.

nistor auth#

Authentication utilities

usage: nistor auth [-h] {test} ...

Commands

Command Description
nistor auth test Test API connectivity and authentication

nistor auth test#

Test API connectivity and authentication

usage: nistor auth test [-h]

nistor admin#

Tenant admin operations (users, permissions, audit)

usage: nistor admin [-h] {user,audit} ...

Commands

Command Description
nistor admin user Manage users and their permissions
nistor admin audit Inspect the audit log
Examples:
  nistor admin user list
  nistor admin user grant alice@example.com iam:view
  nistor admin user revoke alice@example.com iam:view
  nistor admin audit export --since 7d --format csv
  nistor admin user list-permissions --format json

nistor admin user#

Manage users and their permissions

usage: nistor admin user [-h] {list,list-permissions,grant,revoke} ...

Commands

Command Description
nistor admin user list List users
nistor admin user list-permissions List the catalog of permission codes
nistor admin user grant Grant a permission to a user
nistor admin user revoke Revoke a permission from a user

nistor admin user list#

List users

usage: nistor admin user list [-h] [--format {table,json,csv}]

Options

Option Value Default Description
--format table | json | csv table Output format (default: table)
Example: nistor admin user list --format csv

nistor admin user list-permissions#

List the catalog of permission codes

usage: nistor admin user list-permissions [-h] [--format {table,json,csv}]

Options

Option Value Default Description
--format table | json | csv table Output format (default: table)
Example: nistor admin user list-permissions --format json

nistor admin user grant#

Grant a permission to a user

usage: nistor admin user grant [-h] [--format {table,json,csv}] email permission

Arguments

Argument Value Description
email — Target user email
permission — Permission code (e.g., iam:view)

Options

Option Value Default Description
--format table | json | csv table Output format (default: table)
Example: nistor admin user grant alice@example.com iam:view

nistor admin user revoke#

Revoke a permission from a user

usage: nistor admin user revoke [-h] [--format {table,json,csv}] email permission

Arguments

Argument Value Description
email — Target user email
permission — Permission code (e.g., iam:view)

Options

Option Value Default Description
--format table | json | csv table Output format (default: table)
Example: nistor admin user revoke alice@example.com iam:view

nistor admin audit#

Inspect the audit log

usage: nistor admin audit [-h] {export} ...

Commands

Command Description
nistor admin audit export Export audit log entries (newest first)

nistor admin audit export#

Export audit log entries (newest first)

usage: nistor admin audit export [-h] [--since SINCE] [--format {table,json,csv}]

Options

Option Value Default Description
--since SINCE — Only include entries newer than this duration (e.g. 7d, 24h, 30m)
--format table | json | csv table Output format (default: table)
Example: nistor admin audit export --since 7d --format csv

nistor migrate#

Migrate the database: core, then tools, then plugins

usage: nistor migrate [-h] [--core-script-location CORE_SCRIPT_LOCATION] [--only ONLY]
                      [--uninstall CHAIN] [--policy {keep,archive,drop}] [--purge]
                      [--release-id RELEASE_ID] [--lock-digest LOCK_DIGEST] [--check-gap LOCK]

Options

Option Value Default Description
--core-script-location CORE_SCRIPT_LOCATION — The core chain's Alembic directory (default: $NISTOR_CORE_SCRIPT_LOCATION, else services/backend/alembic under the working directory, else the copy nistor-backend installs)
--only ONLY — Migrate only this chain (repeatable); its dependencies must be at head
--uninstall CHAIN — Apply --policy to a removed package's chain schema
--policy keep | archive | drop — With --uninstall: keep, archive or drop the schema
--purge — — With --policy drop: confirm deleting the data
--release-id RELEASE_ID — The release this run is recorded as in the release log (default: /etc/nistor/distribution.json, else the lock digest, else a local id)
--lock-digest LOCK_DIGEST — The lock digest of this release (default: /etc/nistor/distribution.json)
--check-gap LOCK — Check the expand/contract gap: the revisions the installed code would apply to this database, for the release of this distribution.lock (its digest); refused when /etc/nistor/distribution.json records another lock, unverified when there is none. Migrates nothing (exit 0 = holds, 3 = refused)

nistor iam#

IAM operations run inside the runtime image

usage: nistor iam [-h] {register-service} ...

Commands

Command Description
nistor iam register-service Register a service principal (a service-account e-mail or system:serviceaccount:<ns>:<sa>); never an admin; idempotent

nistor iam register-service#

Register a service principal (a service-account e-mail or system:serviceaccount:<ns>:<sa>); never an admin; idempotent

usage: nistor iam register-service [-h] [--permission CODE] principal

Arguments

Argument Value Description
principal — a service-account e-mail or system:serviceaccount:<namespace>:<name>

Options

Option Value Default Description
--permission CODE — grant this code (repeatable); none removed

nistor dist#

The distribution's lock: make it, check it

usage: nistor dist [-h] {lock,build,verify,grants} ...

Commands

Command Description
nistor dist lock Write distribution.lock from distribution.toml
nistor dist build Build the runtime image from distribution.lock
nistor dist verify Check distribution.lock, an image built from it, or this environment
nistor dist grants Print the grants the locked tools require (read-only)

nistor dist lock#

Write distribution.lock from distribution.toml

usage: nistor dist lock [-h] --env-dir ENV_DIR [--source-dir NAME=PATH] [--today TODAY]
                        [--wheel-dir WHEEL_DIR] [--prepare-local]

Options

Option Value Default Description
--env-dir ENV_DIR required The environment's directory (distribution.toml, distribution.lock)
--source-dir NAME=PATH — Read the source NAME (a key of [sources]) from the local repository PATH (repeatable)
--today TODAY — The date an override's expiry is checked against (YYYY-MM-DD)
--wheel-dir WHEEL_DIR — Keep the built Nistor wheels in this directory
--prepare-local — — Prepare a nistor source given by --source-dir too as the release the plugin sources pin, when that is later than its tree's (a source cloned from its URL always is; the scratch checkout only, nothing committed)

nistor dist build#

Build the runtime image from distribution.lock

usage: nistor dist build [-h] --env-dir ENV_DIR [--source-dir NAME=PATH] [--today TODAY]
                         [--tag TAG] [--wheel-dir WHEEL_DIR] [--recipe-tree RECIPE_TREE]
                         [--context CONTEXT] [--docker DOCKER]

Options

Option Value Default Description
--env-dir ENV_DIR required The environment's directory (distribution.toml, distribution.lock)
--source-dir NAME=PATH — Read the source NAME (a key of [sources]) from the local repository PATH (repeatable)
--today TODAY — The date an override's expiry is checked against (YYYY-MM-DD)
--tag, --image TAG — <repo>/nistor-runtime[:<tag>] (default tag lock-<digest>; an ml lock builds <repo>/nistor-runtime-ml)
--wheel-dir WHEEL_DIR — Take the locked wheels kept here (nistor dist lock --wheel-dir)
--recipe-tree RECIPE_TREE — Read images/runtime/Dockerfile, scripts/patch_mstrio.sh and the licence check (scripts/ci/) from this nistor tree (default: the nistor source at the locked commit)
--context CONTEXT — Write the build context into this empty directory and stop
--docker DOCKER docker The docker executable

nistor dist verify#

Check distribution.lock, an image built from it, or this environment

usage: nistor dist verify [-h] [--env-dir ENV_DIR] [--source-dir NAME=PATH] [--today TODAY]
                          [--offline] [--image IMAGE] [--installed] [--document DOCUMENT]

Options

Option Value Default Description
--env-dir ENV_DIR — The environment's directory (distribution.toml, distribution.lock)
--source-dir NAME=PATH — Read the source NAME (a key of [sources]) from the local repository PATH (repeatable)
--today TODAY — The date an override's expiry is checked against (YYYY-MM-DD)
--offline — — Without the network: the digest, the overrides' expiry, the sources, the toml, the plugin sources' pins
--image IMAGE — Check the local image IMAGE against the lock (docker image inspect and run)
--installed — — Check this environment against its distribution.json (the image's build runs it)
--document DOCUMENT /etc/nistor/distribution.json distribution.json, for --installed

nistor dist grants#

Print the grants the locked tools require (read-only)

usage: nistor dist grants [-h] LOCK

Arguments

Argument Value Description
LOCK — The distribution.lock whose tools are read

nistor release#

Release trains: versions, tags, changelog, names

usage: nistor release [-h] {prepare,verify-tag,parse-tag,members,changelog,notes,names} ...

Commands

Command Description
nistor release prepare Write a train's version into its files
nistor release verify-tag Exit 1 unless the files carry the tag's version
nistor release parse-tag Print a tag's train and version (exit 2 unless it is a release tag)
nistor release members List a train's member paths
nistor release changelog Notes for a release from the train's commit subjects
nistor release notes Print one version's section of the train's CHANGELOG.md (exit 2 if none)
nistor release names The PyPI and npm names the releases publish

nistor release prepare#

Write a train's version into its files

usage: nistor release prepare [-h] [--root ROOT] train version

Arguments

Argument Value Description
train — —
version — —

Options

Option Value Default Description
--root ROOT . —

nistor release verify-tag#

Exit 1 unless the files carry the tag's version

usage: nistor release verify-tag [-h] [--root ROOT] tag

Arguments

Argument Value Description
tag — —

Options

Option Value Default Description
--root ROOT . —

nistor release parse-tag#

Print a tag's train and version (exit 2 unless it is a release tag)

usage: nistor release parse-tag [-h] tag

Arguments

Argument Value Description
tag — —

nistor release members#

List a train's member paths

usage: nistor release members [-h] [--kind {python,npm,app,text}] [--root ROOT] train

Arguments

Argument Value Description
train — —

Options

Option Value Default Description
--kind python | npm | app | text — —
--root ROOT . —

nistor release changelog#

Notes for a release from the train's commit subjects

usage: nistor release changelog [-h] [--since SINCE] --version VERSION [--date DATE] [--write]
                                [--root ROOT]
                                train

Arguments

Argument Value Description
train — —

Options

Option Value Default Description
--since SINCE — the previous tag of this train (omit for the first release: release/notes/<train>-<X.Y.Z>.md, when committed, replaces the generated subjects)
--version VERSION required —
--date DATE — YYYY-MM-DD (default: today, UTC)
--write — — insert into the train's CHANGELOG.md
--root ROOT . —

nistor release notes#

Print one version's section of the train's CHANGELOG.md (exit 2 if none)

usage: nistor release notes [-h] [--train TRAIN] [--root ROOT] version

Arguments

Argument Value Description
version — —

Options

Option Value Default Description
--train TRAIN platform —
--root ROOT . —

nistor release names#

The PyPI and npm names the releases publish

usage: nistor release names [-h] [--format {json,text}] [--root ROOT]

Options

Option Value Default Description
--format json | text text —
--root ROOT . —

nistor serve#

Start one server role of the runtime image

usage: nistor serve [-h] [--port PORT] [--host HOST]
                    {backend,scheduler,jobs,compiler,input-logs,mcp,runner,workspace-events,dq-rebuild}

Arguments

Argument Value Description
role backend | scheduler | jobs | compiler | input-logs | mcp | runner | workspace-events | dq-rebuild The role to start

Options

Option Value Default Description
--port PORT — Listen port (default: $PORT, else 8080)
--host HOST 0.0.0.0 Bind address (default: 0.0.0.0)

nistor runner#

Edge runner utilities

usage: nistor runner [-h] {keygen} ...

Commands

Command Description
nistor runner keygen Write an edge runner's Ed25519 key pair (private key 0600) and print the public key to register

nistor runner keygen#

Write an edge runner's Ed25519 key pair (private key 0600) and print the public key to register

usage: nistor runner keygen [-h] --out OUT

Options

Option Value Default Description
--out OUT required Directory for runner.key and runner.pub
Example: nistor runner keygen --out ./runner-key   (then mount it at /etc/nistor/runner)

nistor connections#

Manage tool connections

usage: nistor connections [-h] {create-gcp-from-env,sync} ...

Commands

Command Description
nistor connections create-gcp-from-env Create a GCP connection from the pre-phase-2 environment variables (local development only)
nistor connections sync Upsert connections from a JSON file by name (create missing, update changed; never deletes)

nistor connections create-gcp-from-env#

Create a GCP connection from the pre-phase-2 environment variables (local development only)

usage: nistor connections create-gcp-from-env [-h] --name NAME [--billing-project BILLING_PROJECT]
                                              (--impersonate IMPERSONATE | --service-account-json SERVICE_ACCOUNT_JSON | --application-default)
                                              [--monitored-projects MONITORED_PROJECTS]
                                              [--locations LOCATIONS] [--default] [--dry-run]

Options

Option Value Default Description
--name NAME required Connection name
--billing-project BILLING_PROJECT — Project that pays for and quotas this connection's jobs (default: BIGQUERY_BILLING_PROJECT_ID)
--impersonate IMPERSONATE — Service account to impersonate
--service-account-json SERVICE_ACCOUNT_JSON — Path to a service account key file (local development only)
--application-default — — Use the developer's own Application Default Credentials (local development only)
--monitored-projects MONITORED_PROJECTS — Comma-separated projects this connection observes (default: derived from the estate variables)
--locations LOCATIONS — Comma-separated locations it scans (BigQuery regions, Dataform/Dataplex locations)
--default — — Mark this connection as the default
--dry-run — — Print the payload (secrets masked) instead of creating the connection
Example: nistor connections create-gcp-from-env --name local-gcp --application-default --dry-run

nistor connections sync#

Upsert connections from a JSON file by name (create missing, update changed; never deletes)

The file is a JSON array of connections (or an object with a "connections" list); each has the shape create-gcp-from-env prints (name, tool_type or type, config, secrets, is_default; optionally description, cadence_minutes, status). {ENV} resolves against --env; ${VAR} is expanded from the environment in secrets only. An existing secret key is never rewritten (rotate it instead); a new secret key is added.

usage: nistor connections sync [-h] --env {dev,test,prod} --file FILE [--dry-run]

Options

Option Value Default Description
--env dev | test | prod required Environment name
--file FILE required JSON file: an array of connections
--dry-run — — Print the plan (create/update/unchanged, secrets masked); write nothing
Example: nistor connections sync --env dev --file config/connections.json --dry-run

nistor tool#

Build a tool package for Nistor

usage: nistor tool [-h] {new} ...

Commands

Command Description
nistor tool new Scaffold a tool package (manifest, health probe, executor, connection spec, conformance test) from the template; it passes the tool conformance kit as generated

nistor tool new#

Scaffold a tool package (manifest, health probe, executor, connection spec, conformance test) from the template; it passes the tool conformance kit as generated

usage: nistor tool new [-h] [--dest DIR] id

Arguments

Argument Value Description
id — Tool id, [a-z][a-z0-9_]{1,30}, no trailing or doubled underscore (e.g. acme_warehouse); the distribution is nistor-tool-<id with - for _>

Options

Option Value Default Description
--dest DIR . Root to write under: the package goes to DIR/packages/integrations/<id> (default: the working directory). An existing directory is never overwritten
Example: nistor tool new acme_warehouse --dest .   (writes ./packages/integrations/acme_warehouse)

Edit this page on GitLab

↑ ↓ to moveEnter to openEsc to close