Diagnose Network Transports
srift_net_diagnoseDiagnose SRIFT on this machine: connectivity (DNS, proxy, HTTPS/TLS, WebSocket relay, UDP/P2P, peer discovery, clock), the local runtime (loopback, background processes, daemon + version, disk) and the environment (sandbox/CI/container detection, curl). Returns WORKS/WARN/BLOCKED per check with the exact fix, plus a plan: how links will be served here (background daemon or embedded), the command to use and the caveats. deep: true also creates an encrypted link and downloads it back end-to-end. Read-only apart from that temporary self-test link. Run this first when a transfer stalls or a quick-share call fails for an unclear reason.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| deep | No | Also run an end-to-end self-test: create an encrypted single-use link and download it back through the relay (≈2 MB, a few seconds). | |
| fresh | No | Force a fresh probe instead of returning a cached result (slower, more accurate). |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ok | No | True if the diagnostic ran successfully (independent of what it found) | |
| env | No | Relevant environment (proxy vars, sandbox indicators, Node version, etc.) | |
| base | No | The SRIFT server that was probed | |
| plan | No | serveFrom (background-daemon | embedded | unavailable), transport, shareCommand, downloadCommand, advice[] — what to do in this environment | |
| rungs | No | Each transport rung checked, in order, with status and a fix hint if blocked | |
| context | No | runtime (mcp, cli, npx, binary, pypi…), cliVersion, serverVersion, daemonVersion | |
| summary | No | One-line conclusion | |
| verdict | No | "ok", "degraded", or "blocked" | |
| selfTest | No | deep only: { ok, ms, bytes, mbps, via, error? } | |
| checkedAt | No | When the probe ran (ISO 8601); cached results show an older time | |
| recommendedMode | No | "relay" when links can be served from here, otherwise "none" |