You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/manage-sandboxes/recover-rebuild-sandboxes.mdx
+6Lines changed: 6 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -164,6 +164,12 @@ It skips the complete pairing approval pass only when the qualification still ma
164
164
Any missing, unreadable, malformed, ambiguous, or changed observation runs the complete pairing approval pass.
165
165
A relevant allowlisted pending request also runs that complete path.
166
166
167
+
For a current Portable OpenClaw lifecycle receipt, NemoClaw also requires a finalized onboarding policy step and strictly settled local CLI operator pairing.
168
+
If only the paired device exists and no request is pending, recovery runs the canonical OpenClaw request producer once and makes at most one approval attempt.
169
+
An ambiguous approval result receives one final observation and no approval retry.
170
+
NemoClaw publishes no lease when the policy step is incomplete or the receipt, runtime identity, or pairing state is invalid or ambiguous.
171
+
The command exits nonzero with an incomplete-onboarding diagnostic and tells you to resume or rerun onboarding.
172
+
167
173
</AgentOnly>
168
174
Hermes and LangChain Deep Agents Code retain their existing session setup on the lease-accepted path.
169
175
When those checks pass, it can skip duplicate recovery, readiness polling, and inference-route repair.
Copy file name to clipboardExpand all lines: docs/reference/commands.mdx
+24Lines changed: 24 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -378,6 +378,19 @@ NemoClaw ignores ambient `XDG_CONFIG_HOME` during onboarding and restores its ex
378
378
Resume rejects a checkpoint that records another configuration root.
379
379
It also rejects stored authority or filesystem ownership drift without falling back to Docker.
380
380
381
+
<AgentOnlyvariant="openclaw">
382
+
383
+
Portable OpenClaw onboarding does not enter the `complete` state until NemoClaw proves that the local CLI operator pairing is settled.
384
+
The paired device must have exactly the `operator.pairing` and `operator.write` scopes.
385
+
Any pairing request considered during bounded repair must request exactly those scopes.
386
+
The active token and client authorization must have exactly the `operator.pairing`, `operator.read`, and `operator.write` scopes.
387
+
NemoClaw rejects every extra, missing, unknown, malformed, or ambiguous scope or identity shape.
388
+
If the policy preset step is incomplete, NemoClaw performs no pairing request or approval writes and publishes no launch-readiness evidence.
389
+
Selected Portable onboarding also stops when its lifecycle receipt is missing, invalid, legacy, or incompatible.
390
+
A failed check leaves onboarding incomplete and tells you to resume or rerun onboarding.
391
+
392
+
</AgentOnly>
393
+
381
394
<Warningtitle="Checkpoint Resume Compatibility">
382
395
An active onboarding session with checkpoint schema 1, 2, or 3 cannot resume because those schemas did not record the default or portable profile authority.
383
396
NemoClaw preserves the older session and exits before portable configuration, socket activation, or resource changes.
@@ -1287,6 +1300,17 @@ The next `launch` runs the complete preflight.
1287
1300
On Linux, the publication-failure diagnostic is redacted and does not print filesystem paths or environment values.
1288
1301
Run it for health checks and scripted readiness probes; users continue to run only `$$nemoclaw launch <name>`.
1289
1302
1303
+
<AgentOnlyvariant="openclaw">
1304
+
1305
+
For a current Portable OpenClaw sandbox, `connect`, `connect --probe-only`, `recover`, and `launch` require the same strict local CLI operator pairing as onboarding.
1306
+
If NemoClaw finds only the paired device and no pending request, it runs the canonical OpenClaw request producer once.
1307
+
It then runs at most one canonical approval and observes the final pairing state.
1308
+
An ambiguous approval result receives one final observation and no approval retry.
1309
+
Pairing with missing, extra, unknown, malformed, or ambiguous scope or identity data exits nonzero with an incomplete-onboarding diagnostic instead of opening a session or publishing launch-readiness evidence.
1310
+
Follow the diagnostic to resume or rerun onboarding.
1311
+
1312
+
</AgentOnly>
1313
+
1290
1314
Use [`$$nemoclaw launch <name>`](#$$nemoclaw-launch-name) when you want launch-readiness validation, an automatic fallback that runs the complete preflight, and then the agent instead of a sandbox shell.
Copy file name to clipboardExpand all lines: docs/security/gateway-authentication-controls.mdx
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -118,10 +118,10 @@ The auto-pair watcher automatically approves device pairing requests from recogn
118
118
119
119
| Aspect | Detail |
120
120
|---|---|
121
-
| Default | Startup auto-pairing and `connect`-time approval share one policy. A lease-qualified `launch` checks current pairing state and runs the complete approval path when the stored qualification no longer matches or a relevant allowlisted request is pending. NemoClaw approves devices only when `clientId` is `cli`, `openclaw-cli`, or `openclaw-control-ui`, and only for `operator.pairing`, `operator.read`, and `operator.write` scopes. An allowlisted `clientMode` alone is never sufficient; all other clients or scopes are rejected and logged. |
121
+
| Default | Startup auto-pairing and `connect`-time approval share one policy. A lease-qualified `launch` checks current pairing state and runs the complete approval path when the stored qualification no longer matches or a relevant allowlisted request is pending. NemoClaw approves devices only when `clientId` is `cli`, `openclaw-cli`, or `openclaw-control-ui`, and only for `operator.pairing`, `operator.read`, and `operator.write` scopes. An allowlisted `clientMode` alone is never sufficient; all other clients or scopes are rejected and logged. Portable OpenClaw finalization and recovery require the local `cli` client in `cli` mode with the `operator` role. Its paired device must have exactly `operator.pairing` and `operator.write`; any pairing request considered during bounded repair must request exactly those scopes. Its active token and client authorization must have exactly `operator.pairing`, `operator.read`, and `operator.write`. Every extra, missing, unknown, malformed, or ambiguous scope or identity shape is rejected. |
122
122
| What you can change | This is not a user-facing knob. The allowlist is defined by NemoClaw's OpenClaw device-approval helper. |
123
123
| Risk if relaxed | Approving all device types without validation lets rogue or unexpected clients pair with the gateway unchallenged. |
124
-
| Recommendation | No action needed. NemoClaw handles this automatically at startup, during `connect`, and through the complete `launch` fallback for late scope upgrades. If you see `[auto-pair] rejected unknown client=...` in the logs, investigate the source of the unexpected connection. |
124
+
| Recommendation | No action needed. NemoClaw handles this automatically at startup, during `connect`, and through the complete `launch` fallback for late scope upgrades. Portable repair invokes the canonical request producer once and makes at most one approval attempt. It observes an ambiguous result once and never repeats the approval. If you see `[auto-pair] rejected unknown client=...` in the logs, investigate the source of the unexpected connection. |
0 commit comments