ssh in.
Operations is the surface that bridges that gap. You ship vetted
templates to your customers, submit a request to run one against
one of your customer’s appliances, and your customer reviews and
approves the request through a web link. The command runs inside
their appliance, the output is held encrypted in the appliance’s
secret store, and your customer signs a release before you see
anything.
The four entities
Operations works in terms of four objects. Knowing what each one is makes the rest of the docs much shorter.| Entity | What it is |
|---|---|
| Template | A small file you author (*.tensor9.tf, *.t9.sh, or *.t9.kubectl) describing one runnable operation: its body, declared data access, variables, and required permission tier. |
| Source | A Git repository whose templates are auto-imported into your control plane. You re-sync to pull new and modified templates as the repo evolves. |
| Ops command | A single submission of a template against a single customer appliance, with values bound for the template’s variables. Runs through a state machine from submission to released output. |
| Pre-approval | A customer-signed manifest that lets you run a specific template against a specific appliance up to N times within a validity window without per-command approval. |
The four-step lifecycle
Every ops command moves through the same shape, regardless of which template flavor it uses or which appliance it targets:Review
Your customer reads the template description, the declared data-access
tags, your justification reason, and the exact command body and
variable values. They pick Approve, Reject, or close.
Approve
On approval, the appliance prepares to execute. Pre-approved
templates skip Steps 1 and 2 silently.
Execute
The command body runs inside the appliance’s sandboxed working
directory. Output (stdout, stderr, exit code) is captured and
encrypted with a per-command key the appliance holds in its vault.
tensor9 ops command audit verify.
What your customer sees
When you submit an ops command, your customer is sent (via your existing notification channel) a unique/support/<token> web link
to their Customer Portal. Clicking the link opens a guided approval wizard where they review the command details, approve or reject it, watch it execute, and then sign a release to share the output with you.
Your customer can also review and approve pending operations from the Operations section of their Customer Portal.
You never see your customer’s portal session. The only thing that
crosses the boundary is the plaintext output (and only after your
customer signs the release manifest).
Where to go next
| If you want to… | Read |
|---|---|
| Author a template (file format, variables, permission tiers, data-access tags) | Authoring templates |
Maintain a Git repo of templates as a re-syncable source (the cmdlib pattern) | Git template sources |
| Submit and track an ops command against your customer’s appliance | Running commands |
| Let your customer pre-approve a template once for repeated runs | Standing pre-approvals |
| Understand the keys, signatures, and audit guarantees underneath | Security model |