- Add UnsandboxVault for encrypted credential storage (browser only)
- Update loadCredentialsFromStorage() with 3-tier priority:
1. UnsandboxVault (own encrypted vault)
2. External vaults (window.UncloseVault for uncloseai.com)
3. Plain localStorage (legacy fallback)
- Export UnsandboxVault in both named and default exports
- Makes window.UnsandboxVault available globally in browser
Updated Python, JavaScript, Go, Rust, Ruby, Java, and TypeScript SDKs:
- Add unfreeze_on_demand field to Service struct/class
- Add setUnfreezeOnDemand function to toggle setting via PATCH /services/:id
- Add unfreeze_on_demand parameter to createService function
- Add `un languages [--json]` command to list available execution languages
- Add `un image` command with full image management:
- --list, --info, --delete, --lock, --unlock
- --publish, --visibility, --spawn, --clone
- Update CLI_SPEC.md with new command documentation
- All implementations follow consistent patterns
Complete SDK implementations with full API surface:
- Python: sync/async with all 43 functions
- Go: sync/async with full API
- Java: sync/async with full API
- JavaScript: sync/async with full API
- PHP: sync/async with full API
- Ruby: sync/async with full API
- Rust: sync/async with full API
Added:
- clients/README.md - SDK overview
- clients/CLI_SPEC.md - CLI specification
Removed:
- un_deno.ts (moved to clients/typescript/)