{"id":14962085,"url":"https://github.com/d-corler/ota-cli","last_synced_at":"2025-10-24T22:31:08.301Z","repository":{"id":39916236,"uuid":"464140042","full_name":"d-corler/ota-cli","owner":"d-corler","description":"Uploads firmware over the air to devices like Arduino, ESP8266, ESP32, etc.","archived":false,"fork":false,"pushed_at":"2025-08-10T14:22:39.000Z","size":91,"stargazers_count":1,"open_issues_count":11,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-20T13:56:16.480Z","etag":null,"topics":["arduino","cli","esp32","esp8266","ota"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/d-corler.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2022-02-27T13:10:32.000Z","updated_at":"2023-06-12T08:04:48.000Z","dependencies_parsed_at":"2023-10-12T23:42:36.565Z","dependency_job_id":"5738013e-f1dd-490c-b88e-0249d4f1476e","html_url":"https://github.com/d-corler/ota-cli","commit_stats":{"total_commits":23,"total_committers":3,"mean_commits":7.666666666666667,"dds":0.4782608695652174,"last_synced_commit":"1c831f55fa977b19e0e63425d6849cee626945bb"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/d-corler/ota-cli","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d-corler%2Fota-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d-corler%2Fota-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d-corler%2Fota-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d-corler%2Fota-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/d-corler","download_url":"https://codeload.github.com/d-corler/ota-cli/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d-corler%2Fota-cli/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280878370,"owners_count":26406641,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-24T02:00:06.418Z","response_time":73,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["arduino","cli","esp32","esp8266","ota"],"created_at":"2024-09-24T13:29:06.047Z","updated_at":"2025-10-24T22:31:08.004Z","avatar_url":"https://github.com/d-corler.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ota-cli\n\n[![Version](https://img.shields.io/github/package-json/v/d-corler/ota-cli?style=flat-square)](https://github.com/d-corler/ota-cli/blob/main/)\n[![Version](https://img.shields.io/npm/v/ota-cli?style=flat-square)](https://npmjs.org/package/ota-cli)\n[![License](https://img.shields.io/github/license/d-corler/ota-cli?style=flat-square)](https://github.com/d-corler/ota-cli/blob/main/LICENSE)\n[![License](https://img.shields.io/github/issues/d-corler/ota-cli?style=flat-square)](https://github.com/d-corler/ota-cli/issues)\n\nUploads firmware over the air to devices like Arduino, ESP8266, ESP32, etc.\n\nAuthentication supported.\n\n# Summary\n\n\u003c!-- toc --\u003e\n* [ota-cli](#ota-cli)\n* [Summary](#summary)\n* [Usage](#usage)\n* [Commands](#commands)\n\u003c!-- tocstop --\u003e\n\n# Usage\n\n\u003c!-- usage --\u003e\n```sh-session\n$ npm install -g ota-cli\n$ ota COMMAND\nrunning command...\n$ ota (--version)\nota-cli/0.1.0-pre win32-x64 node-v16.13.2\n$ ota --help [COMMAND]\nUSAGE\n  $ ota COMMAND\n...\n```\n\u003c!-- usagestop --\u003e\n\n# Commands\n\n\u003c!-- commands --\u003e\n* [`ota help [COMMAND]`](#ota-help-command)\n* [`ota plugins`](#ota-plugins)\n* [`ota plugins:inspect PLUGIN...`](#ota-pluginsinspect-plugin)\n* [`ota plugins:install PLUGIN...`](#ota-pluginsinstall-plugin)\n* [`ota plugins:link PLUGIN`](#ota-pluginslink-plugin)\n* [`ota plugins:uninstall PLUGIN...`](#ota-pluginsuninstall-plugin)\n* [`ota plugins:update`](#ota-pluginsupdate)\n* [`ota upload`](#ota-upload)\n\n## `ota help [COMMAND]`\n\nDisplay help for ota.\n\n```\nUSAGE\n  $ ota help [COMMAND] [-n]\n\nARGUMENTS\n  COMMAND  Command to show help for.\n\nFLAGS\n  -n, --nested-commands  Include all nested commands in the output.\n\nDESCRIPTION\n  Display help for ota.\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v5.1.11/src/commands/help.ts)_\n\n## `ota plugins`\n\nList installed plugins.\n\n```\nUSAGE\n  $ ota plugins [--core]\n\nFLAGS\n  --core  Show core plugins.\n\nDESCRIPTION\n  List installed plugins.\n\nEXAMPLES\n  $ ota plugins\n```\n\n_See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v2.1.0/src/commands/plugins/index.ts)_\n\n## `ota plugins:inspect PLUGIN...`\n\nDisplays installation properties of a plugin.\n\n```\nUSAGE\n  $ ota plugins:inspect PLUGIN...\n\nARGUMENTS\n  PLUGIN  [default: .] Plugin to inspect.\n\nFLAGS\n  -h, --help     Show CLI help.\n  -v, --verbose\n\nDESCRIPTION\n  Displays installation properties of a plugin.\n\nEXAMPLES\n  $ ota plugins:inspect myplugin\n```\n\n_See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v2.1.0/src/commands/plugins/inspect.ts)_\n\n## `ota plugins:install PLUGIN...`\n\nInstalls a plugin into the CLI.\n\n```\nUSAGE\n  $ ota plugins:install PLUGIN...\n\nARGUMENTS\n  PLUGIN  Plugin to install.\n\nFLAGS\n  -f, --force    Run yarn install with force flag.\n  -h, --help     Show CLI help.\n  -v, --verbose\n\nDESCRIPTION\n  Installs a plugin into the CLI.\n\n  Can be installed from npm or a git url.\n\n  Installation of a user-installed plugin will override a core plugin.\n\n  e.g. If you have a core plugin that has a 'hello' command, installing a user-installed plugin with a 'hello' command\n  will override the core plugin implementation. This is useful if a user needs to update core plugin functionality in\n  the CLI without the need to patch and update the whole CLI.\n\nALIASES\n  $ ota plugins:add\n\nEXAMPLES\n  $ ota plugins:install myplugin \n\n  $ ota plugins:install https://github.com/someuser/someplugin\n\n  $ ota plugins:install someuser/someplugin\n```\n\n_See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v2.1.0/src/commands/plugins/install.ts)_\n\n## `ota plugins:link PLUGIN`\n\nLinks a plugin into the CLI for development.\n\n```\nUSAGE\n  $ ota plugins:link PLUGIN\n\nARGUMENTS\n  PATH  [default: .] path to plugin\n\nFLAGS\n  -h, --help     Show CLI help.\n  -v, --verbose\n\nDESCRIPTION\n  Links a plugin into the CLI for development.\n\n  Installation of a linked plugin will override a user-installed or core plugin.\n\n  e.g. If you have a user-installed or core plugin that has a 'hello' command, installing a linked plugin with a 'hello'\n  command will override the user-installed or core plugin implementation. This is useful for development work.\n\nEXAMPLES\n  $ ota plugins:link myplugin\n```\n\n_See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v2.1.0/src/commands/plugins/link.ts)_\n\n## `ota plugins:uninstall PLUGIN...`\n\nRemoves a plugin from the CLI.\n\n```\nUSAGE\n  $ ota plugins:uninstall PLUGIN...\n\nARGUMENTS\n  PLUGIN  plugin to uninstall\n\nFLAGS\n  -h, --help     Show CLI help.\n  -v, --verbose\n\nDESCRIPTION\n  Removes a plugin from the CLI.\n\nALIASES\n  $ ota plugins:unlink\n  $ ota plugins:remove\n```\n\n_See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v2.1.0/src/commands/plugins/uninstall.ts)_\n\n## `ota plugins:update`\n\nUpdate installed plugins.\n\n```\nUSAGE\n  $ ota plugins:update [-h] [-v]\n\nFLAGS\n  -h, --help     Show CLI help.\n  -v, --verbose\n\nDESCRIPTION\n  Update installed plugins.\n```\n\n_See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v2.1.0/src/commands/plugins/update.ts)_\n\n## `ota upload`\n\nUpload a firmware to a device\n\n```\nUSAGE\n  $ ota upload -f \u003cvalue\u003e -i \u003cvalue\u003e [--debug \u003cvalue\u003e] [--deviceIp \u003cvalue\u003e] [--devicePass \u003cvalue\u003e]\n    [--dnsServiceName \u003cvalue\u003e] [--dnsServiceType \u003cvalue\u003e]\n\nFLAGS\n  -f, --file=path/to/firmware.bin  (required) Path to the firmware binary file\n  -i, --interfaceIp=\u003cvalue\u003e        (required) Provide IP of your default local network interface\n  --debug=\u003cvalue\u003e\n  --deviceIp=path/to/firmware.bin  (WIP) Skip the scanning step by providing the device IP address directly\n  --devicePass=\u003cvalue\u003e             Skip the authentication step by providing the password directly\n  --dnsServiceName=\u003cvalue\u003e         [default: _arduino._tcp.local] Provide the name of the DNS service to lookup\n  --dnsServiceType=\u003cvalue\u003e         [default: PTR] Provide the type of the DNS service to lookup\n\nDESCRIPTION\n  Upload a firmware to a device\n```\n\n_See code: [dist/commands/upload/index.ts](https://github.com/d-corler/ota-cli/blob/v0.1.0-pre/dist/commands/upload/index.ts)_\n\u003c!-- commandsstop --\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fd-corler%2Fota-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fd-corler%2Fota-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fd-corler%2Fota-cli/lists"}