@progress/kendo-cli
v1.23.0
Published
To install:
Readme
Kendo CLI
To install:
npm install --global @progress/kendo-cliInteractive Mode
Run kendo without any arguments to launch the interactive wizard — a guided, tree-structured experience that walks you through every command with a visual step-by-step flow.
kendoMenu Structure
The wizard presents a two-level menu. The top level contains direct actions and two sub-menus that group related commands:
● Create new project
○ Set up your environment
○ Enhance Project ──────────────────────────────────────────────
○ Add pages / components (kendo scaffold)
○ Add Kendo to existing project (kendo add)
○ Migrate to latest version (kendo migrate)
○ Build custom jQuery bundle (kendo custom-build)
○ Configure AI generator (MCP) (kendo mcp)
○ Go Back
○ Utilities ────────────────────────────────────────────────────
○ Manage license (kendo license)
○ Account settings
○ Display system & configuration info
○ Print machine ID
○ Go Back
○ Upgrade CLI
○ ExitGuided Flows
Each command prompts you through its options interactively:
- Create — Select product, template, app name, theme, swatch, and styling
- Scaffold — Select product, detect/confirm project directory, choose component
- Add — Detect framework, choose Kendo UI packages to add
- Setup — Detects already-configured products, prompts only for remaining ones
- MCP — Detects already-configured servers, prompts for product and IDE
- Migrate — Choose scope, target version, mode, optional codemods, and AI mode
- License — Choose action (View info, Activate, Download / refresh, Go Back)
- Custom Build — Runs the jQuery custom bundle build flow
- Account settings — Show current user or log in via browser OAuth
Tree UI
The wizard uses a tree-flow visual style to show progress through selections:
◆ Kendo CLI
│
◆ Interactive Menu
● Create new project (kendo create)
○ Set up your environment
...After each selection a completed node is printed and persists in the terminal history:
◇ Interactive Menu
│ Create new project
│
◇ Which product?
│ KendoReact
│
◇ KendoReact app ready ✓──────────────────────────────────────╮
│ │
│ Next steps │
│ • cd KendoReactApp │
│ • npm install │
│ • npm run dev │
│ │
│ Theme Meridian │
│ Swatch meridian-main │
│ Styling CSS │
│ License KendoReact Perpetual (2029-07-04) │
│ │
│ Docs https://www.telerik.com/kendo-react-ui/components/ │
╰────────────────────────────────────────────────────────────────╯
│
? What would you like to do next?
› Back to main menu
ExitFeatures
- Tree-flow UI with
◆/◇/│visual connectors for clear step progression - Nested sub-menus for grouped commands (Enhance Project, Utilities)
- Color-coded selection indicators (
●selected,○unselected, faded non-selected items) - Meridian theme listed first in theme selection; Default listed last
- Automatic detection of already-configured products (setup, MCP)
- Project detection for scaffold commands
- Progress spinner during command execution
- Connected result box after each command (box border joins the tree trunk)
- "What would you like to do next?" prompt after Account settings and Upgrade CLI
License
A valid Telerik / Kendo UI license is required to use the components in your projects.
Activate your license
Find your license key at https://www.telerik.com/account/your-licenses, then run:
kendo license activateThe command searches for a license key in the TELERIK_LICENSE / KENDO_UI_LICENSE environment variables and in telerik-license.txt / kendo-ui-license.txt files located in the current directory, any parent directory, or ~/.telerik/.
Download / refresh a license key
Opens a browser to authenticate with telerik.com and saves a fresh key to ~/.telerik/telerik-license.txt:
kendo license refreshInspect the active license
kendo license infoPrints the audience, issue date, and the list of products covered by the current license key.
license activate options
| Option | Description |
|--------|-------------|
| --ignore-no-license | Exit with code 0 even when no license file is found. Useful in CI pipelines where a missing license should be a warning, not a failure. |
Kendo UI Agent (MCP)
Connect your AI coding assistant to the Kendo UI / Telerik MCP servers so it can look up components, APIs, and best practices directly from the official documentation.
Configure for a specific product and IDE
# Configure the KendoReact MCP server for Cursor
kendo mcp config react --ide=cursor
# Configure the Kendo UI for jQuery MCP server for Visual Studio
kendo mcp config jquery --ide=visualstudio
# Configure for all supported IDEs at once
kendo mcp config react --ide=allAvailable products: react, angular, jquery, all
Supported IDEs: cursor, vscode, visualstudio, all
Configure all products for all IDEs in one shot
kendo mcp allForce-overwrite existing entries
By default, mcp config and mcp all skip servers that are already present in a config file. Pass --force to overwrite them instead — useful after a CLI update that ships corrected package names or new arguments:
kendo mcp config react --ide=cursor --force
kendo mcp all --forceJSON output (useful in scripts / CI)
Pass --json to any mcp command to get machine-readable output:
kendo mcp config react --ide=cursor --json{
"exitCode": 0,
"message": "MCP servers registered successfully.",
"data": {
"registered": [
{ "ide": "Cursor", "configPath": "/Users/you/.cursor/mcp.json" }
]
},
"success": true
}MCP config files written per IDE:
| IDE | Config file |
|-----|-------------|
| Cursor | ~/.cursor/mcp.json |
| Visual Studio Code | ~/Library/Application Support/Code/User/mcp.json (macOS) |
| Visual Studio | ~/.mcp.json |
MCP command synopsis
kendo mcp config <product>
Configures MCP servers for a specific IDE and product
Positionals:
product Product to configure
[string] [required]
[choices: "angular", "jquery", "react", "all"]
Options:
--ide IDE to configure
[string] [required] [choices: "cursor", "vscode", "visualstudio", "all"] [default: "all"]
--json Output in JSON format [boolean] [default: false]
--force Overwrite existing MCP server entries instead of skipping them
[boolean] [default: false]kendo mcp all
Configures all MCP servers for all IDEs and products
Options:
--json Output in JSON format [boolean] [default: false]
--force Overwrite existing MCP server entries instead of skipping them
[boolean] [default: false]mcp options reference
| Option | Applies to | Description |
|--------|-----------|-------------|
| --ide=<ide> | mcp config | IDE to configure. One of cursor, vscode, visualstudio, all. Defaults to all. |
| --json | mcp config, mcp all | Print a machine-readable JSON result instead of human-readable output. |
| --force | mcp config, mcp all | Overwrite server entries that are already present in a config file. Without this flag, existing entries are left untouched. |
KendoReact Project Generator
Kendo ♥ Next.js
To use KendoReact and create a new React project using Next.js:
# JavaScript with routing
npx kendo create react nextjs MyKendoApp --theme
# JavaScript without routing
npx kendo create react nextjs MyKendoApp --no-app
# TypeScript with routing
npx kendo create react nextjs MyKendoApp --ts
# TypeScript without routing
npx kendo create react nextjs MyKendoApp --ts --no-appOptions
Language options:
--js- Use JavaScript (default)--ts- Use TypeScript
Theme options:
--theme=meridian--theme=bootstrap--theme=material--theme=fluent--theme=default
Other:
--eslint- Initialize with eslint config.--no-app- Initialize as no App Router project.--no-src-dir- Initialize without asrc/directory.--import-alias="@/*"- Specify import alias to use.
Build and Run
After the project is generated, navigate into the new directory, install packages, build and run:
cd MyKendoApp
npm install
npm run devKendoReact Project Generator Synopsis
kendo create react nextjs [name]
Create KendoReact app based on NextJS
Positionals:
name Name of the generated application. [string] [default: "KendoReactApp"]
Options:
--help Show help [boolean]
--version Show version number [boolean]
-v, --verbose Set verbosity level, e.g. -vvv sets verbosity to level
3. max 5. [count] [default: 1]
-q, --quiet Silence output as much as possible. Sets verbosity to
level 0. [boolean] [default: false]
--javascript, --js Initialize as a JavaScript project.
[boolean] [default: false]
--typescript, --ts Initialize as a TypeScript project.
[boolean] [default: false]
--eslint Initialize with eslint config.
[boolean] [default: false]
--app Initialize as an App Router project.
[boolean] [default: true]
--src-dir Initialize inside a `src/` directory.
[boolean] [default: true]
--import-alias Specify import alias to use (default "@/*").
[string] [default: "@/*"]
--theme Kendo theme to apply.
[string] [choices: "meridian", "bootstrap", "material", "fluent", "default"] [default: "default"]Kendo ♥ Vite
To use KendoReact and create a new React project using Vite:
# Create KendoReact app with Vite with theme option
npx kendo create react nextjs MyKendoApp --theme=bootstrap
# Create KendoReact app with Vite with styling option
npx kendo create react nextjs MyKendoApp --styling=SassOptions
Styling options:
--styling=CSS- Use CSS styling (default)--styling=Sass- Use Sass styling
Theme options:
--theme=meridian--theme=bootstrap--theme=material--theme=fluent--theme=default
Other options:
--free- Use KendoReact Free components only.
kendo create react vite [name]
Create KendoReact app with Vite.
Positionals:
name Name of the generated application. [string] [default: "KendoReactApp"]
Options:
--help Show help [boolean]
--version Show version number [boolean]
-v, --verbose Set verbosity level, e.g. -vvv sets verbosity to level
3. max 5. [count] [default: 1]
-q, --quiet Silence output as much as possible. Sets verbosity to
level 0. [boolean] [default: false]
--typescript, --ts Initialize as a TypeScript project.
[boolean] [default: false]
--styling Styling language
[string] [choices: "CSS", "Sass"] [default: "CSS"]
--theme Kendo theme to apply.
[string] [choices: "meridian", "bootstrap", "material", "fluent", "default"] [default: "default"]Kendo ♥ Astro
To use KendoReact and create a new React project using Astro:
# Create KendoReact app with Astro with theme option
npx kendo create react astro MyKendoApp --theme=bootstrap
# Create KendoReact app with Astro with styling option
npx kendo create react astro MyKendoApp --styling=SassOptions
Styling options:
--styling=CSS- Use CSS styling (default)--styling=Sass- Use Sass styling
Theme options:
--theme=meridian--theme=bootstrap--theme=material--theme=fluent--theme=default
kendo create react astro [name]
Create KendoReact app with Astro.
Positionals:
name Name of the generated application. [string] [default: "KendoReactApp"]
Options:
--help Show help [boolean]
--version Show version number [boolean]
-v, --verbose Set verbosity level, e.g. -vvv sets verbosity to level
3. max 5. [count] [default: 1]
-q, --quiet Silence output as much as possible. Sets verbosity to
level 0. [boolean] [default: false]
--typescript, --ts Initialize as a TypeScript project.
[boolean] [default: false]
--styling Styling language
[string] [choices: "CSS", "Sass"] [default: "CSS"]
--theme Kendo theme to apply.
[string] [choices: "meridian", "bootstrap", "material", "fluent", "default"] [default: "default"]Kendo jQuery Project Generator
To use Kendo UI for jQuery and create a new jQuery project using our new project templates:
- Blank Template - A simple ASP.NET MVC project with no pages with included Kendo UI for jQuery scripts and stylesheets.
# Create Kendo UI for jQuery app with Blank Template
npx kendo create jquery jba MyjQueryBlankApp - Admin Template - A complex ASP.NET MVC application with multiple views which include a Task Dashboard, Products and Performance statistics as well as an Account Settings page (back-end is not included). The project showcases many Kendo UI for jQuery components, including Grid, Charts, and many navigational components.
# Create Kendo UI for jQuery app with Admin Template
npx kendo create jquery jqa MyjQueryAdminApp- *Dashboard Template - An ASP.NET MVC project which mocks a Team Efficiency report, with a ListView component that contains team members, and a Scheduler and Chart components that represent task and performance information.
# Create Kendo UI for jQuery app with Dashboard Template
npx kendo create jquery jda MyjQueryDashboardApp- *Dashboard Layout Template - An ASP.NET MVC project that represents various data displayed through multiple Chart components, which are placed in a TileLayout.
# Create Kendo UI for jQuery app with Dashboard Layout Template
npx kendo create jquery jdla MyjQueryDashboardLayoutApp- Grid Template - An ASP.NET MVC project that demonstrates a simple Grid configuration.
# Create Kendo UI for jQuery app with Grid Template
npx kendo create jquery jga MyjQueryGridApp- Standard Template - An ASP.NET MVC project that showcases some of the navigational components in the Kendo UI for jQuery suite, such as PanelBar, Menu, TabStrip, and TreeView.
# Create Kendo UI for jQuery app with Standard Template
npx kendo create jquery jsa MyjQueryStandardAppOptions
Theme options:
--theme=meridian--theme=bootstrap--theme=material--theme=fluent--theme=default
Build and Run
After the project is generated, navigate into the new directory, install packages, build and run:
cd MyKendojQueryApp
npm install
npm startKendo UI for jQuery Project Generator Synopsis
kendo create jquery [template] [name]
Create a new jQuery app.
Commands:
kendo create jquery jqa [name] Create jQuery Admin app
kendo create jquery jba [name] Create jQuery Blank app
kendo create jquery jda [name] Create jQuery Dashboard app
kendo create jquery jdla [name] Create jQuery Dashboard Layout app
kendo create jquery jga [name] Create jQuery Grid app
kendo create jquery jsa [name] Create jQuery Standard app
Options:
--help Show help [boolean]
--version Show version number [boolean]
-v, --verbose Set verbosity level, e.g. -vvv sets verbosity to level 3. max
5. [count] [default: 1]
-q, --quiet Silence output as much as possible. Sets verbosity to level 0.
[boolean] [default: false]
--theme Kendo theme to apply.
[string] [choices: "meridian", "bootstrap", "material", "fluent", "default"] [default: "default"]Kendo Angular Project Generator
To use Kendo UI for Angular and create a new Angular project using our new project template:
- Blank Template - A simple Angular project with no pages with included Kendo UI for Angular scripts and stylesheets.
# Create Kendo UI for Angular app with Blank Template
npx kendo create angular aba MyAngularBlankApp Options
Theme options:
--theme=meridian--theme=bootstrap--theme=material--theme=fluent--theme=default
Swatch options:
--swatch=default-main--swatch=default-main-dark--swatch=default-nordic--swatch=default-purple--swatch=default-turquoise--swatch=default-ocean-blue--swatch=default-ocean-blue-a11y--swatch=fluent-main--swatch=fluent-main-dark--swatch=bootstrap-main--swatch=bootstrap-main-dark--swatch=bootstrap-nordic--swatch=bootstrap-urban--swatch=bootstrap-vintage--swatch=material-main--swatch=material-main-dark--swatch=material-arctic--swatch=material-lime-dark--swatch=material-nova
Build and Run
After the project is generated, navigate into the new directory, install packages, build and run:
cd MyAngularBlankApp
npm install
ng build
ng serveKendo UI for Angular Project Generator Synopsis
Create a new Kendo UI for Angular app.
Commands:
kendo create angular aba [name] Create Angular Blank app
Options:
-h, --help Show help [boolean]
--version Show version number [boolean]
-v, --verbose Set verbosity level, e.g. -vvv sets verbosity to level 3. max
5. [count] [default: 1]
-q, --quiet Silence output as much as possible. Sets verbosity to level 0.
[boolean] [default: false]
--theme Kendo theme to apply.
[string] [choices: "meridian", "bootstrap", "material", "fluent", "default"] [default: "default"]
--swatch Kendo theme swatch to apply.
[string] [choices: "default-main", "default-main-dark", "default-nordic", "default-purple", "default-turquoise", "default-ocean-blue", "default-ocean-blue-a11y",
"fluent-main", "fluent-main-dark", "bootstrap-main", "bootstrap-main-dark", "bootstrap-nordic", "bootstrap-urban", "bootstrap-vintage",
"material-main", "material-main-dark", "material-arctic", "material-lime-dark", "material-nova"] Kendo UI for Vue Project Generator Synopsis
To use Kendo UI for Vue and create a new Vue project using Vite:
# Create KendoReact app with Vite with theme option
npx kendo create vue vite MyKendoVueApp --theme=bootstrap
# Create KendoReact app with Vite with styling option
npx kendo create vue vite MyKendoVueApp --styling=SassOptions
Styling options:
--styling=CSS- Use CSS styling (default)--styling=Sass- Use Sass styling
Theme options:
--theme=meridian--theme=bootstrap--theme=material--theme=fluent--theme=default
kendo create vue vite [name]
Create Kendo UI for Vue app with Vite.
Positionals:
name Name of the generated application. [string] [default: "KendoUIForVueApp"]
Options:
--help Show help [boolean]
--version Show version number [boolean]
-v, --verbose Set verbosity level, e.g. -vvv sets verbosity to level
3. max 5. [count] [default: 1]
-q, --quiet Silence output as much as possible. Sets verbosity to
level 0. [boolean] [default: false]
--typescript, --ts Initialize as a TypeScript project.
[boolean] [default: false]
--styling Styling language
[string] [choices: "CSS", "Sass"] [default: "CSS"]
--theme Kendo theme to apply.
[string] [choices: "meridian", "bootstrap", "material", "fluent", "default"] [default: "default"]Custom Build
Generate a custom Kendo UI for jQuery UMD bundle that includes only the components you need, reducing the overall file size.
Quick Start
# Run interactive component selection and build
kendo custom-build jquery
# Use a specific Kendo UI version
kendo custom-build jquery --version 2026.1.1
# Use an existing config file without prompts
kendo custom-build jquery --no-interactive
# Specify a custom config file path
kendo custom-build jquery --config path/to/kendo-config.jsonHow It Works
- The CLI resolves and installs the target
@progress/kendo-uiversion. - It discovers all available components from the installed package.
- In interactive mode, you select the components and features to include.
- The CLI bundles the selected components into a single
kendo-custom.min.jsfile. - A
kendo-config.jsonfile is saved so you can reproduce the build later.
Options
| Option | Description | Default |
|--------|-------------|---------|
| --version | Target @progress/kendo-ui version (2026+ only) | Latest |
| --config, -c | Path to kendo-config.json | kendo-config.json |
| --interactive | Run interactive selection (use --no-interactive to skip) | true |
Custom Build Synopsis
kendo custom-build jquery [options]
Generate a custom Kendo UI for jQuery UMD bundle with selected components.
Options:
--help Show help [boolean]
--version Target @progress/kendo-ui version (2026+ only) [string]
-c, --config Path to kendo-config.json [string] [default: "kendo-config.json"]
--interactive Run interactive selection (use --no-interactive to skip)
[boolean] [default: true]Setup
Set up Kendo UI in your development environment. The setup wizard walks you through license activation and MCP server configuration for your IDE.
Quick Start
# Set up KendoReact
kendo setup react
# Set up Kendo UI for Angular
kendo setup angular
# Set up Kendo UI for jQuery
kendo setup jquery
# Set up Kendo UI for Vue
kendo setup vueAvailable products: react, vue, jquery, angular
What the Setup Wizard Does
- License — Checks for a valid Kendo license and opens a browser to authenticate if needed.
- MCP Server — Configures the product-specific MCP server for your IDE (Cursor, VS Code).
Machine ID
Print a hardware-based hash for your machine. Useful for license troubleshooting.
kendo machine-idUpgrade CLI
Check whether a newer version of the Kendo CLI is available and print the upgrade command.
kendo upgradeAlso available from the interactive wizard under Utilities → Upgrade CLI.
The command compares the installed version against the latest published version on npm and shows:
| Field | Description |
|-------|-------------|
| Status | Whether you are up to date or an update is available |
| Upgrade command | The exact npm install -g command to run |
Account Settings
View your Telerik / Progress account details from within the interactive wizard.
kendo
# → Utilities → Account settings| Action | Description | |--------|-------------| | Show current user | Displays email and name from the stored session | | Log in | Opens a browser to authenticate with telerik.com and saves the session | | Go Back | Returns to the Utilities sub-menu |
Assisted Migration
Overview
Install the Kendo CLI globally.
npm i -g @progress/kendo-cliIn the root of your project, run:
npx @progress/kendo-cli migrateIf not already installed, you will be prompted to install the Kendo CLI. Next, this command checks for available Kendo UI updates (including any peer dependencies), prompts you to install the updates, and then applies any available codemods on top.
Confirm that you want to install the available updates.
Confirm that you want to apply the available transformations.
Review and accept the suggested transformations.The Kendo CLI begins to apply the available codemods version by version, starting with the transformations for the earliest version.
Look for newly added code comments to your code. These indicate that you need to further adjust any existing custom logic.
Finally, do a test run of your project to verify that everything works as expected.
Best Practices
For a more manageable migration process, consider the following recommended practices:
- Migrate between consecutive major versions. For example, migrate from v10 to v11. This lets you review and adjust your code version by version, avoiding possible conflicts between breaking changes.
- Migrate one package at a time. This provides finer control over the migration process.
Codemod Discovery Process
When upgrading a package, kendo-cli uses the package's package.json file to discover the available codemods.
The package metadata contains the codemod configuration, which defines the migration files associated with specific package versions.
The CLI reads this configuration and determines the codemods available for the requested upgrade version. The codemod definitions can either be provided directly in the package metadata or referenced through an external configuration file.
Codemod Configuration
Codemods are defined per package version. Each version can either contain:
- A codemod definition directly.
- An array of codemod definitions.
- A path to a file that contains the codemod definition or the array of codemod definitions.
Supported Codemod Formats
Inline Codemod Configuration
The version property can directly contain the codemod or an array of codemod objects:
migrations: {
...,
codemods {
version: {
description: "string description",
file: "path/to/codemod/file",
instructionsOnly: boolean
},
}
}migrations: {
...,
codemods {
version: [
{
description: "string description",
file: "path/to/codemod/file",
instructionsOnly: boolean
},
...
];
}
}Example:
migrations: {
...,
codemods {
"5.0.0": [
{
"description": "Update deprecated Grid configuration",
"file": "./codemods/grid-update.js",
"instructionsOnly": false
}
]
}
}
External Codemod Configuration File
Instead of defining the codemods directly inside package.json, the version properties can reference an external JSON file that contains the codemod definitions.
This approach is useful when a package contains multiple codemods or when keeping the package.json configuration minimal is preferred.
Example:
migrations: {
...,
codemods {
"v5": "/codemods/v5.json",
}
}The referenced JSON file should contain an array of codemod objects:
[
{
"description": "Update deprecated Grid configuration",
"file": "./grid-update.js",
"instructionsOnly": false
}
]The CLI resolves the provided path, loads the JSON file, and uses the array inside it as the codemod configuration for the specified version.
The structure of the codemod objects inside the external file is the same as the inline configuration format:
Both inline and external configurations result in the same internal codemod structure used by kendo-cli.
CLI Quick Guide
The following list describes the most common migration scenarios.
- You can run any of the listed commands with or without a package specified.
- If not already installed, you will be prompted to install the Kendo CLI when running
npx @progress/kendo-cli migratefor the first time. - Once installed, you can also run commands with the
kendohandle instead ofnpx @progress/kendo-cli. For example:kendo migrate.
# Install the Kendo CLI globally.
npm i -g @progress/kendo-cli
# Run a guided migration. You will be prompted every step of the way.
npx @progress/kendo-cli migrate
# Migrate a specific package.
npx @progress/kendo-cli migrate @progress/kendo-react-grid
# Migrate between specific versions.
npx @progress/kendo-cli migrate @progress/kendo-react-grid --from 10 --to 11
# Run a quick migration without any prompts.
npx @progress/kendo-cli migrate --force
# Only install the available updates. Do not run any codemods.
# Useful when you want to manually migrate your code.
npx @progress/kendo-cli migrate --no-codemods
# Only run the available codemods. Do not install any packages.
# Useful when you already have the packages installed.
npx @progress/kendo-cli migrate @progress/kendo-react-grid --no-install
# Ignoring specific files or directories during the migration.
npx @progress/kendo-cli migrate @progress/kendo-react-grid --no-install --ignore-pattern="dist/**"CLI Arguments
If you want more control over the migration, you can use any of the following arguments when running npx @progress/kendo-cli migrate.
| Argument | Description | Sample Use |
| -------- | ----------- | ---------- |
| <pkg> | Specifies one or more packages for which to execute the assisted migration (with any additional arguments). If not set, runs for all available Kendo packages. | npx @progress/kendo-cli migrate @progress/kendo-react-grid |
| --help | Prints the help for the command. | npx @progress/kendo-cli migrate --help |
| --version | Prints the version of the Kendo CLI. | npx @progress/kendo-cli --version |
| --verbose | Sets the verbosity level of the command output on a level from 0 (silent) to 5 (most verbose). By default: 1. | npx @progress/kendo-cli migrate --verbose=3 |
| --quiet | Silences the output as much as possible. Shorthand for --verbose=0. | npx @progress/kendo-cli migrate --quiet |
| --force | Runs in force mode and does not ask for any confirmations. | npx @progress/kendo-cli migrate --force |
| --to | Specifies the package version to migrate to. If not set, migrates to the latest available version of the respective package(s). | npx @progress/kendo-cli migrate @progress/kendo-react-grid --codemods --to=11 |
| --from | Specifies the package version to migrate from. If not set, uses the current version. | npx @progress/kendo-cli migrate @progress/kendo-react-grid --codemods --from=10 |
| --no-install | Skips the installation part of the migration. Use this option if you have already updated your packages and want to only run the available codemods. | npx @progress/kendo-cli migrate --no-install |
| --no-codemods | Skips the codemods step of the migration. Use this option to only install the available updates. | npx @progress/kendo-cli migrate --no-codemods |
| --no-peer-deps | Skips the installation of any peer dependencies for the updated packages. By default, the migrate command always installs the available peer dependencies. | npx @progress/kendo-cli migrate --no-peer-deps |
| --no-optional | Skips the optional codemods, if any. Use this option to run only the required transformations. | npx @progress/kendo-cli migrate --no-optional |
| --ignore-pattern | Specifies a glob pattern to ignore specific files or directories during the migration. Use this option to exclude files that you do not want to be modified. | npx @progress/kendo-cli migrate --ignore-pattern="dist/**" |
Telemetry
The Kendo CLI collects anonymous usage telemetry to help us understand how the tool is used and to improve it. Telemetry is sent to Progress Telerik's Application Insights service via OpenTelemetry.
What we collect
For each invocation we record a span that includes:
- the executed command path (e.g.
react create,jquery scaffold grid) - the action type (
ProjectCreation,Scaffolding,Setup,Migrate,CustomBuild,Mcp,License) - the product code (e.g.
KENDOUIREACT), template/scaffolder name and framework when applicable - the outcome (
Success/Failure/Cancelled) - the CLI version, Node.js version, OS platform
- an exit code and a sanitized error message when the command fails
We do not collect file contents, project names, source code, or any
personally identifiable information. Absolute paths and email addresses
that may appear in error messages are masked ([path],
a*****@example.com) before they leave your machine.
Opting out
Telemetry honors the same environment variables as the .NET Telerik CLI:
| Variable | Effect |
| ------------------------------------- | ----------------------------------------------------- |
| TELERIK_TELEMETRY_OPTOUT=1 | Disables telemetry for all Telerik CLIs. |
| TELERIK_KENDO_CLI_TELEMETRY_OPTOUT=1| Disables telemetry for the Kendo CLI only. |
Set either variable to 1, true, yes, or on to opt out. The first
time the CLI runs after telemetry is enabled it prints a one-time notice
to stderr and creates a sentinel file under your user profile so the
notice is not shown again.
Local debugging
Set TELERIK_KENDO_CLI_TELEMETRY_LOG=/path/to/file.log to also write
each span and log record to a local pipe-delimited file. This is useful
for verifying what the CLI is about to send before opting in to remote
collection.
The file sink is additive — by default the CLI still ships spans to its development Application Insights workspace at the same time. To run file-only (for example, during local development of new telemetry without polluting the shared dev workspace), explicitly disable the Azure exporter:
TELERIK_KENDO_CLI_APPINSIGHTS_CONNECTION_STRING=none \
TELERIK_KENDO_CLI_TELEMETRY_LOG=/tmp/kendo.log \
node libs/kendo-cli/dist/index.js machine-idAccepted disable tokens: none, off, disabled, 0, false, empty
string. Any other value is treated as a real connection string override.
Copyright © 2023 Progress Software Corporation and/or its subsidiaries or affiliates. All Rights Reserved.
Progress, Telerik, and certain product names used herein are trademarks or registered trademarks of Progress Software Corporation and/or one of its subsidiaries or affiliates in the U.S. and/or other countries.
