migrate-appsettings

Generate a validated Kentico Migration Tool CLI appsettings.json from a migration plan.

14|7|Updated Nov 25, 2025
One-click install
npx skills add https://github.com/Kentico/xperience-by-kentico-kenticopilot --skill migrate-appsettings
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: migrate-appsettings
Source: https://github.com/Kentico/xperience-by-kentico-kenticopilot/tree/main/plugins/kx13-content-migration/skills/migrate-appsettings
Command: npx skills add https://github.com/Kentico/xperience-by-kentico-kenticopilot --skill migrate-appsettings

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) and assets (resource) components.

What problem does it solve?

It prevents broken or incomplete Migration Tool CLI configurations by generating a complete, validated appsettings.json tailored to your KX13 → Xperience by Kentico migration plan.

Core Features & Use Cases

  • Discovers infrastructure automatically (optional): Connection strings, CMS root paths, source instance URI, framework/NuGet compatibility signals, and workspace-root protocol placement when matching projects exist in the workspace.
  • Converts migration-plan intent into correct settings: Supports ConvertClassesToContentHub, CreateReusableFieldSchemaForClasses, entity exclusions, custom module display name patterns, SEO/extended metadata, opt-in widget API discovery, field migrations, asset placement, and workspace targeting.
  • Ensures operational correctness before output: Enforces semicolon-separated string requirements, correct nesting, exclusion completeness, and guards against common runtime pitfalls (e.g., placeholders, invalid protocol path placement, empty collections).
  • Supports widget migration API discovery: Prepares ToolApiController deployment details when QuerySourceInstanceApi is needed and the user can enable it.

Quick Start

Ask the AI to run migrate-appsettings by providing your migration plan file path, and then output the generated appsettings.json to the Migration.Tool.CLI/appsettings.json location.

Frequently Asked Questions about migrate-appsettings

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I generate an appsettings.json file for a KX13 to Xperience by Kentico migration?

You generate an appsettings.json file for a KX13 to Xperience by Kentico migration by providing a migration plan or free-text description to produce a complete, validated configuration for the Kentico Migration Tool CLI.

What settings are required when converting classes to Content Hub during a Kentico migration?

Converting classes to Content Hub requires configuring CreateReusableFieldSchemaForClasses, defining entity exclusions, and applying semicolon-separated class lists to ensure correct JSON nesting and operational runtime correctness.

How do I configure media and asset handling in the Kentico Migration Tool CLI?

Configure media and asset handling in the Kentico Migration Tool by defining field migrations and AssetRootFolders, ensuring correct asset placement and workspace targeting within the generated appsettings.json file.

Can I discover widget APIs from the source instance during a Kentico migration?

Yes, you can discover widget APIs from the source instance by enabling the optional QuerySourceInstanceApi setting, which prepares ToolApiController deployment details for widget API discovery during the migration process.

Where should the MigrationProtocolPath be placed in the appsettings.json for a Kentico migration?

The MigrationProtocolPath must be placed under the workspace root as an absolute path, ensuring strict JSON correctness and preventing common runtime pitfalls like invalid protocol path placement or placeholders.

Why does my Kentico migration appsettings.json fail validation due to class lists?

Your Kentico migration appsettings.json fails validation because the configuration enforces strict semicolon-separated string requirements for class lists, guarding against empty collections and incorrect JSON nesting that cause runtime errors.