Docs · Operations

Support bundles

Collect what somebody would need in order to help, and nothing else. The bundle is written to your disk and sent nowhere.

Terminal
nodeau support bundle

Writes nodeau-support-<timestamp>.tar.gz to the current directory.

FlagMeaning
--output, -oWrite to this path instead of a timestamped name
--namespace, -nNamespace to collect workloads from

Nothing is uploaded#

The bundle stays on your disk. Nodeau has no endpoint to upload it to, and nothing in the product sends one. If you want us to see it, you attach it to an email yourself.

What is in it#

Path in the archiveWhat
nodeau/version.txtThe build identity of this binary
nodeau/install-state.jsonThe ownership ledger — what Nodeau installed and what it adopted
host/environment.yamlOS, kernel, processor, memory, GPUs, network, disk classification
host/doctor.yamlEvery doctor check, with its code and detail
host/container-stack.txtThe container runtime and Kubernetes versions
user/paths.txtWhere Nodeau's directories are on this machine
user/endpoints.txtRecorded local endpoints
cluster/gpuservices.yamlYour services and the decisions recorded on them
cluster/gpunodes.yamlEach machine's hardware report
logs/runtime-*.txtRecent endpoint and runtime output

A step that could not run is recorded as an error entry rather than being omitted, so a missing section is never mistaken for a section with nothing in it.

What is deliberately excluded#

How
Model weightsBy path. They are gigabytes and they are not diagnostic
Your API key fileBy path, and the bundle records that it was skipped
The cluster-admin kubeconfigBy path, recorded as skipped: "it is a cluster-admin credential, excluded by path"
Kubernetes SecretsNever collected. Nodeau's CLI has no read access to them by design
SSH keys, PEM material, node tokensBy path and by pattern
Prompts and model responsesNodeau never collects them at all — they are not written to a log in the first place
Batch inputs and resultsNot collected

How redaction works#

Redaction is a final pass over the assembled text, not something each collector is trusted to do. A new collector added later that forgets to redact still gets scrubbed.

Every secret is replaced with one fixed placeholder, so you can tell at a glance that redaction ran, and so a diff between two bundles does not turn into noise. Where a rule can, it keeps the setting name and replaces only the value — api_key: [REDACTED] tells a support engineer which setting was present, which a blank line does not.

The rules are deliberately broad: Nodeau's own key format, Authorization and Proxy-Authorization headers however they are spelled, bearer tokens, and generic credential assignments in JSON, YAML and environment-variable form. A false positive costs a support engineer one question; a false negative costs you a credential rotation.

It re-scans, and aborts rather than writing#

After scrubbing, the assembled content is scanned again. A match after scrubbing aborts the bundle rather than writing it — because a support archive is the one file most likely to be emailed to a stranger without being read first.

Before you send one#

Worth including in the message, because it saves a round trip:

  • what you ran, and what you expected,
  • what happened instead, with the exact text if it is short,
  • whether it is reproducible,
  • the reason code, if there was one.
Terminal
nodeau doctor --json > doctor.json
nodeau support bundle

Send them to founders@nodeau.ai, or use the contact form.

A report from a machine we have never seen is the most useful thing we get.

Documentation for the current published build, the beta channel. Something here wrong or missing? Tell us — a report from a machine we have never seen is the most useful thing we get.