v2.1.12
sima-cli v2.1.12
This release makes sima-cli more reliable in real-world SDK and DevKit setups, especially on Linux hosts where Docker, NetworkManager, VPNs, NFS mounts, and corporate network policies can affect the development workflow.
The biggest change is a new SDK network diagnostic and repair flow that helps users understand and fix host networking issues instead of guessing which layer is broken.
What is new
SDK network doctor and repair
sima-cli now includes a Linux-focused network doctor for SDK and DevKit connectivity:
sima-cli sdk doctor networksima-cli sdk doctor network --collectsima-cli sdk network repairsima-cli sdk network repair --persist
The doctor command checks the host route to the DevKit, SDK container networking, Docker port mappings, Insight port-map consistency, stale Docker port bindings, and SDK-container reachability to the DevKit. It reports stable finding codes so users, support teams, and automation can reason about the result.
The optional support bundle collection creates a sanitized .tar.gz with the relevant host, Docker, route, firewall, NetworkManager, and Insight port-map state.
The repair path applies scoped Linux forwarding and NAT fixes for the SDK bridge and DevKit-facing shared network path. Persistent repair is explicit and requires user consent, or --persistent-network-profile for automation.
Better DevKit pairing on VPN and changing networks
DevKit pairing now chooses the host IP address that is actually routed to the DevKit. This improves NFS mount recovery when VPNs, virtual adapters, or network changes make a previously mounted /workspace path unreachable.
If the DevKit workspace mount is lost, rerunning sima-cli sdk setup --devkit <ip> is more likely to re-establish the correct host-to-DevKit path.
Safer install behavior in non-writable directories
sima-cli install and sima-cli neat install now check writability before downloading package assets. If the current directory or requested install directory is not writable, the CLI fails early with a clear Installation Failed panel and command-specific next steps.
This avoids confusing permission failures when users accidentally run install commands from locations such as /.
Stronger host compatibility checks for standalone packages
Package metadata can now describe host OS version and CPU architecture constraints. During install, sima-cli validates those constraints before downloading and installing resources.
This is especially useful for standalone tools whose dependencies require a specific host environment, such as Ubuntu 24.04 on amd64, while still allowing compatible use inside the Neat Development Environment through separate platform metadata.
Proxy-aware update checks
The automatic CLI update check now probes the actual PyPI endpoint through normal HTTPS/proxy handling instead of first probing public DNS resolvers. This behaves better in corporate networks that block direct DNS traffic or require outbound HTTPS through a proxy.
Successful version lookups are cached for one hour, and transient failures are cached briefly so repeated CLI invocations do not repeatedly wait on network timeouts.
Preserved authored documentation during builds
Generated command-reference docs no longer delete manually authored guides under docs/sima-cli. This keeps SDK networking, rollback, and troubleshooting guides intact when docs are regenerated as part of the build.
Why this matters
SDK users often work across several network boundaries: the host OS, Docker, the SDK container, Insight services, NetworkManager shared networking, VPN routes, and a connected DevKit. Failures in any one layer can look like an Insight, SSH, NFS, or DevKit problem.
This release gives users better tools to diagnose the actual failure point and applies safer, more targeted repairs when Linux shared networking is the issue. It also improves install-time validation so problems are caught earlier, with clearer instructions.
User benefits
- Faster diagnosis of SDK-to-DevKit networking issues.
- Fewer support round trips because users can collect a sanitized network bundle.
- More reliable DevKit pairing when VPNs or host routes change.
- Clearer install failures when the working directory is not writable.
- Fewer failed standalone installs on unsupported host OS or architecture combinations.
- Better behavior in corporate proxy and restricted-network environments.
- Documentation for SDK networking, rollback, and troubleshooting is preserved and published with the CLI docs.
Compatibility and scope
The network repair path is Linux-focused. macOS and Windows users can still use diagnostics where applicable, but the automated repair logic targets Linux shared-network setups.
The repair flow is intentionally scoped to SDK and DevKit networking. It does not switch the SDK container to host networking and does not make broad global firewall policy changes such as setting the host FORWARD policy to ACCEPT.
Existing install metadata remains compatible. New host-version and host-architecture metadata fields are optional.
Validation
This release includes expanded unit coverage for SDK network diagnostics, Linux shared-network repair logic, install metadata validation, host compatibility checks, update-check caching, generated docs preservation, and install-directory preflight behavior.
Key validation included full and focused unit test runs across the changed areas, plus build validation for generated CLI docs.
Included changes
- Fix DevKit NFS mount recovery during pairing in #57
- Skip apt work when installer dependencies are already present in #58
- Extend host package compatibility checks in #66
- Add SDK network doctor and repair in #68
- Make update checks proxy-aware and cached in #73
- Add SDK networking guide and rollback documentation in #74
- Add install-directory preflight and preserve authored docs during generation in #77
- Promote the release contents to
mainin #78
Full Changelog: v2.1.11...v2.1.12