On this page
[4.4.0] - 2026-09-17
Added
sos custom-script upload reports a custom script name that is already taken and offers to upload into the existing script, instead of failing with a raw API error.
[4.3.1] - 2026-09-02
Fixed
Org-scoped API credentials now work with all organization-level commands.
Applet test runs now stop polling when remote execution fails or is canceled.
[4.3.0] - 2026-08-04
[4.2.1] - 2026-07-28
Fixed
sos applet upload no longer fails with HTTP 400 Metadata part is too large.
[4.2.0] - 2026-07-17
Added
sos applet version publish|deprecate|renew commands to set an applet version's lifecycle status. Target a version directly with --applet-uid and --applet-version (no local applet directory required, so it can be scripted across many organizations), or run interactively; --yes skips confirmation
[4.1.0] - 2026-07-17
Added
sos login now lets you choose the region from a predefined list
[4.0.7] - 2026-07-12
Fixed
sos device connect --hot-reload now passes the resolved applet UID (from --applet-uid, SOS_APPLET_UID or sos.appletUid in package.json) to the hot reload, so it no longer fails with "Multiple applets with name ... found" when duplicate applet names exist
sos applet generate and sos applet build now fail fast with a clear message on Windows when the target path contains shell metacharacters (& | < > ^), which otherwise break the shell-invoked build tooling (no-op on macOS/Linux, where these are valid in paths)
sos applet upload now streams file uploads through a shared progress tracker and ignores zero-delta progress updates, making upload progress reporting smoother and less noisy
SOS_PROFILE fallback now works like --profile again: active profile precedence is --profile > SOS_PROFILE > default profile, and profile selection remains mutually exclusive with --api-url
[4.0.6] - 2026-06-08
Fixed
Fix pagination for high organizations count
Generated pnpm applets now build under pnpm 10+ — added pnpm-workspace.yaml with verifyDepsBeforeRun: false so pnpm run build doesn't re-run the prepare build via the pre-run dependency check
[4.0.5] - 2026-05-13
Fixed
Fix version 4.0.4 bug, where default configuration failed to load
[4.0.4] - 2026-05-06
[4.0.3] - 2026-05-05
Fixed
sos device connect, sos applet start, and sos applet build now work with Auth0 JWT authentication (pass accessToken to SDK createDevelopment())
sos device set-content no longer fails with INVALID_BODY_PROPERTIES error (SDK strips organizationUid from timing POST body)
[4.0.2] - 2026-04-29
[4.0.1] - 2026-04-29
Fixed
Pass organizationUid as query parameter on all SDK requests to support JWT auth with organization-authenticated API endpoints (applet versions, device settings, etc.)
[4.0.0] - 2026-04-28
Added
Auth0 Device Authorization Flow for sos login — replaces legacy username/password authentication
JWT access token support for all API interactions
Automatic token refresh on expiration
Browser auto-open during Auth0 login flow
organizationUid passthrough for plugin, custom script, runner, applet, and timing create operations (required for JWT auth)
Changed
Authentication now uses Auth0 Device Flow instead of legacy username/password login
Removed
removed sos firmware upload feature
Fixed
All paginated list endpoints are now fully traversed - devices, applet versions, and applet test suites spanning multiple pages are no
longer silently truncated
sos applet upload reupload correctly fetches all existing remote files across pages before diffing
[3.0.0] - 2026-04-10
Added
Interactive lists (emulator, applet, or default organization), you can now type either the human-readable name or the UID; lookups are case-insensitive.
Validation for non-applet directory on sos applet upload (or --applet-path)
Fixed
Fixed file handling on sos applet upload for applets with many files
Priority for --profile <name> even when environment variables are present.
Graceful interactive prompt exits
[2.9.0] - 2026-02-26
Fixed
sos applet upload now correctly show progress, file size, ETA, box url
Fixed --profile selection flag feature for edge-cases
Applet Generate .gitignore file content is updated to ignore /dist directory instead of ./dist
Added
CI/CD pipeline setup guide documentation page with GitLab CI and GitHub Actions examples
Enhanced autocomplete search to match both names and UIDs
Applet directory validation to prevent accidental wrong uploads of non-applet projects (respects --applet-path option)
Graceful cancellation handling for all interactive prompts
Support for sos.config.local.json on real connected devices (require support on Core App)
[2.8.0] - 2026-01-15
Added
Support for sos.config.local.json file in applet directory for local development configuration
Generated applets now include a blank sos.config.local.json file for easier local configuration testing
Added sos.config.local.json to .gitignore in generated applets to keep local configuration private
[2.7.1] - 2025-10-20
Fixed
Typo in device power action type display0ff to displayOff
[2.7.0] - 2025-10-02
Added
Added --yes flag and CLI options to eliminate interactive prompts in CI/CD automation
sos custom-script generate now supports --name, --description, --danger-level, and --yes options for non-interactive generation
sos runner generate now supports --name, --description, and --yes options for non-interactive generation
sos plugin generate now supports --name, --description, and --yes options for non-interactive generation
sos runner upload now supports --yes flag to skip confirmation prompts for runner/version creation
sos plugin upload now supports --yes flag to skip confirmation prompts for plugin/version creation
Fixed
Fixed CLI argument validation, making command to fail if contains invalid arguments (e.g.sos runner generate --invalid)
Removed support for --legacy-enabled authentication flag from sos login command
[2.6.0] - 2025-09-23
Added
New commands sos runner generate to generate local repository with Runner boilerplate and sos plugin generate to generate local repository with Plugin boilerplate
Security
Improved security and updated dependencies for CLI
Improved security and updated dependencies for generated applet
[2.5.0] - 2025-07-30
Added
Logic for automatic /docs generation - documentation available online at https://developers.signageos.io
Security
FIxed security issue when sos login authentication fails
Audit fixes and dependency updates based on npm audit
[2.4.0] - 2025-05-29
Fixed
Issue when using flag --no-default-organization, where user was prompted to make selection as default
Added
Added basic CHANGELOG.md and README.md files to generated applets
Support for shell auto-completion feature (sos autocomplete install)
[2.3.1] - 2025-04-25
Fixed
Issue with sos device connect --hot-reload command for older devices (e.g.: Tizen 2.4) with initial build
[2.3.0] - 2025-04-17
Added
Added support for preferred package manager (npm, pnpm, bun, yarn)
Fixed
Improved strategy to detect cli and interactive arguments
[2.2.0] - 2025-04-10
Added
New command sos custom-script generate to generate local repository with Custom Script boilerplate
Fixed
Fixed issue on sos applet generate when optional --git property was required
Fixed issue on sos applet generate with Git support detection on Windows
Fixed missing template files for sos applet generate command
[2.1.0] - 2025-04-08
Added
Added option to support Rspack for generated applets
Removed support for Esbuild
[2.0.0] - 2025-03-28
Changed
[1.10.0] - 2025-03-24
Added
New feature to init generated applet as git repository (through wizard or --git yes) when git command is present on machine
Fixed
Updated required node engine definition
Fixed error message when applet is not built
[1.9.1] - 2025-03-20
Fixed
Fixed escheck npm command by adding npx
[1.9.0] - 2025-03-03
Added
Command sos applet start starts the http server within the same process (not detached) as a default behavior (better management of the process)
Fixed
Faster and more reliable hot-reload of applet code in the emulator
[1.8.0] - 2025-02-28
Added
New command sos custom-script upload to upload code for Custom Scripts to signageOS.
[1.7.1] - 2025-02-24
Fixed
Dependency on non existing package @signageos/forward-server-bridge@0.0.1
[1.7.0] - 2025-02-21
Fixed
Insert script tag in applet and emulator with live reload properly to prevent browser to parse html in quirks mode
Added
New option for sos device connect command --use-forward-server to proxy traffic from local machine to the device through the forward server. This is useful when the device is not directly accessible from the local machine.
Deprecated
Applet Generate command renamed the script npm run connect with npm run watch instead because it's more descriptive
[1.6.4] - 2025-02-17
[1.6.3] - 2024-11-19
Fixed
Optimised the sos applet upload command to upload multi-file applets faster and more reliably
[1.6.2] - 2024-11-13
Fixed
Upload applet deprecated and published versions are now correctly handled and show an info message
[1.6.1] - 2024-09-30
Fixed
Generate applet with --language=typescript will generate correct webpack.config.js file (with fileExtensions and rules)
[1.6.0] - 2024-09-26
Fixed
Improved the error message when an applet upload fails
Stop running applet server on device disconnect
[1.5.1] - 2024-08-21
[1.5.0] - 2024-08-20
Added
A bundler flag to the applet generate command to enable bundler selection for the generated applet - the options are webpack and esbuild, defaulting to webpack
Fixed
Updated Node.js version to 20 and npm version to 10
[1.4.3] - 2024-08-19
Fixed
Reverted the change of the --update-package-config argument. It is updated in package.json only when the argument is specified
[1.4.2] - 2024-07-11
Fixed
Applet UID is now always inserted in the package.json file during the applet upload process if not found or the --update-package-config argument is specified
[1.4.1] - 2023-10-02
Fixed
Auth0 compatibility (auto select)
[1.4.0] - 2023-09-25
Added
Update readme
Auth0 compatibility
[1.3.1] - 2023-08-29
[1.3.0] - 2023-05-19
Fixed
New version announcement has a link to the changelog
Command for Applet Generate will produce correct RegExp in webpack.config.js with proper escaping of dots using backslashes
ES check for ES5 output applet code is done after every build (to prevent problems in real devices)
Use apiUrl config from ~/.sosrc file if specified for all commands (rather than default value https://api.signageos.io)
Added
New argument for commands Applet Generate --language=typescript that will produce the sample code written in TypeScript rather than JavaScript. Default is --language=javascript.
[1.2.1] - 2023-04-01
Fixed
sos applet start --hot-reload Reload devices when no one has connected yet
sos applet start --hot-reload works correctly even on Windows systems
[1.2.0] - 2023-03-29
Fixed
Console output of npm start of generated applet shows correct URL of emulator
The --entry-file can be now ommited when the package.json has the main property set
The sos device connect is looking for the applet in server by name instead of required uid in package.json sos.appletUid property
The .git folder is ignored automatically when the .gitignore file is used
Added
Allow customize --server-port and --server-public-url for sos device connect command
New sos applet build command that will build current applet as a .package.zip file (same that is built and used on device when uploading applet)
Deprecated
Remove support of experimental version of webpack-plugin v0.2. Use version v1+ instead
[1.1.5] - 2023-01-02
Fixed
Respect argument --api-url as priority over SOS_API_URL environment variable and default value
Log info/warning output into stderr instead of stdout
[1.1.4] - 2022-11-25
Fixed
Removed unused display.appcache file from Emulator (replaced with serviceWorker.js)
[1.1.3] - 2022-10-31
Fixed
Removed --module=false argument from es-check of sos applet generate sample applet
[1.1.2] - 2022-10-21
Fixed
Loading of emulators for command sos applet start from currently configured organization (via ~/.sosrc file, defaultOrganizationUid property).
[1.1.1] - 2022-08-04
Fixed
Invoke rebuild applet version after upload only when some files were changed
[1.1.0] - 2022-07-20
Added
Config API url via the config file ~/.sosrc
Fixed
Parametrizing Applet UID using --applet-uid option
Ignoring node_modules/ from applet uploading
[1.0.4] - 2022-07-18
Fixed
Uploading single file applet with front-applet version
Uploading applet files will invoke building applet only once at the end
CLI version in User-Agent header (e.g.: signageOS_CLI/1.0.4)
[1.0.3] - 2022-06-14
Fixed
Applet generate using Webpack 5
[1.0.2] - 2022-05-06
Fixed
Usage of @signageos/lib dependency
[1.0.1] - 2022-05-06
[1.0.0] - 2022-04-06
Added
The appletUid does not have to be hardcoded inside package.json and is auto-detected from current organization based on name
Support for profiles inside the ~/.sosrc file using ini [profile xxx] sections and SOS_PROFILE env. var. or --profile argument
Fixed
When default organization is not set it asks for saving it to the current ~/.sosrc file
Changed
The option --no-update-package-config is reversed into option --update-package-config and by default the package.json is not updated. See README.
The defaultOrganizationUid is now always used as default for all commands instead of selecting one. Use argument --no-default-organization or remove line defaultOrganizationUid from ~/.sosrc to prevent this.
[0.10.3] - 2022-01-18
Fixed
Compatibility with peer dependency for front-display version 9.13.0+ (because of changed API)
[0.10.2] - 2021-12-17
Fixed
Listing timings
Creating applet without sos.appletUid in package.json
[0.10.1] - 2021-12-12
Fixed
Bug showing error Invalid ecmascript version when building generated applet
[0.10.0] - 2021-11-05
Added
Applet uid & version can be specified as environment variables SOS_APPLET_UID & SOS_APPLET_VERSION.
Command sos applet upload optionally accepts --no-update-package-config argument which prevents updating package.json config.
Allow parametrize credentials using environment variables SOS_API_IDENTIFICATION & SOS_API_SECURITY_TOKEN.
Allow parametrize default organization using environment variable SOS_ORGANIZATION_UID.
Uploading applet tests command
Running applet tests command
Fixed
When uploading new applet, package.json sos is merged recursively.
[0.9.3] - 2021-10-20
Fixed
Command sos applet upload works stably even on win32 platform
[0.9.2] - 2021-03-11
Fixed
Uploading firmware specifying type (android & linux accepts firmware type. E.g.: rpi, rpi4, benq_sl550)
[0.9.1] - 2021-02-17
Fixed
sos applet start works properly even for remote machine using IP address (not just for localhost)
[0.9.0] - 2021-02-02
Added
Deploy applet to device using sos device set-content --applet-uid < > --device-uid < >
New command for Applet reload sos device power-action
Connecting to device and upload applet from local computer
One emulator per account is used and its uid is stored in .sosrc file
[0.8.4] - 2021-01-05
Fixed
Command for generation of applet is generating multi-file applet now (not deprecated single-file).
Add missing useful NPM scripts into generated applet
[0.8.3] - 2020-10-22
Fixed
Optimize authentication for all REST API requests with new token ID (please do the sos login again to perform this changes on your machine)
Make checking new available version of CLI only once in an hour
[0.8.2] - 2020-10-13
Security
[0.8.1] - 2020-09-24
Fixed
applet upload won't fail with error "Request failed with status code 404. Body: Could not delete the file"
[0.8.0] - 2020-08-27
Added
verbose flag to show all files when uploading multifile applet
yes flag to skip confirmation process and upload right away
in package.json file of the uploaded applet specify files to upload in files list (they will be uploaded regardless of all ignores), also supports glob patterns
in generated applet, files list is already added with dist directry by default
Fixed
show error on particular file when upload was unsuccessfull (i.e when uploading empty file)
[0.7.1] - 2020-06-22
Fixed
Applet file upload sets the content type of files as well
[0.7.0] - 2020-03-05
Changed
Applet generate version option renamed to applet-version
Removed
@signageos/webpack-plugin is separated to self repository
Added
Version option
Applet generate accepts optional argument for --npm-registry
Fixed
Warnings during installation npm i @signageos/cli -g
Security
Audit fixes based on npm audit
Upgrade base node version engine to LTS 12
[0.6.2] - 2020-02-06
Fixed
Issues with entry file paths on Windows
[0.6.1] - 2020-01-17
Fixed
Discrepancy between project and applet dirs naming
Issues with file paths on Windows
Configure webpack plugin with options. https, port, public, useLocalIp, host
[0.6.0] - 2020-01-13
Added
Upload multi file applet
Firmware upload
Multi file applet emulator
[0.5.0] - 2019-11-28
Added
Support multiple files of applet in Webpack Plugin
Fixed
Allow CORS in webpack plugin 8090 emulator proxy port for develop applet externally
Universal assets supported for webpack plugin (images, fonts, binaries etc.)
Make more memory efficient proxy of emulator webpack plugin
Compatibility with Node.js >= 8 (no upper limit)
[0.4.4] - 2019-09-24
Fixed
Do transpile applet code always with babel-loader to allow run it on any old device out of box
[0.4.3] - 2019-09-24
Fixed
Upgrade versions of front-applet (JS API) & front-display (Emulator) for generated applet
[0.4.2] - 2019-09-23
Fixed
Applet generator will generate applet which works on older platforms (SSSP, Tizen 2, WebOS 3, BrightSign 7)
[0.4.1] - 2019-09-23
Fixed
Default API & BOX url are api.signageos.io & box.signageos.io
[0.4.0] - 2019-09-21
Added
Upload applet to cloud using sos applet upload
Fixed
Build production webpack will not start emulator
Live Reload webpack plugin of applet will trigger sos.onReady event
Errors are printed in red color
[0.3.2] - 2019-09-05
Fixed
Default env variables for sos command (for example api.signageos.io host)
[0.3.1] - 2019-09-05
Fixed
Private dependency from private npm registry (now it can install any user)
[0.3.0] - 2019-09-05
Added
Login account using username/email and password to access other REST resources sos login
Organization listing of currently logged account sos organization list & sos organization get
Timing listing of specific device and organization sos timing list
Webpack Plugin which allows run generated applet in local emulator
Allow set-default organization of current logged user (useful for Webpack Plugin)
Fixed
New UI for --help guide
--api-url will change the base url for REST API
.env file is looked for in default location first
Publishing public npm registry
[0.1.0] - 2019-08-02
Added