用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/microsoft/github-copilot-modernization --skill configuration-inventory命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
Convert an arbitrary CSV report (e.g. a Black Duck export or a custom migration-issue inventory) into a schema-valid assessment `report.json` the modernization pipeline can consume — so it appears in the assessment UI and migration solutions resolve automatically. This skill is LLM-driven: you read and interpret the CSV yourself and author `report.json` by hand against the schema. A small helper script only does deterministic lookups (migration solutions, the ruleId for a solution) and validates the finished report. There is NO "convert everything" script and NO assumed column layout. Triggers: "convert csv to assessment report", "import csv report", "turn this spreadsheet into a report.json", "Black Duck csv to report", "build report.json from csv", "migrate a third-party assessment export". NOT for: AppCAT-style analysis from source (use `assessment`), generating a modernization plan (use `create-modernization-plan`), or editing a report.json the pipeline already produced.
Create a modernization plan to migrate the project to Azure
Create a test baseline for the project to be modernized. The baseline will be used for later verification of modernization tasks.
基于 SOC 职业分类
正在显示 SKILL.md
| name | configuration-inventory |
| description | Generate comprehensive configuration and externalized settings inventory |
Analyze the project to produce a comprehensive inventory of all configuration sources, build profiles, runtime profiles, externalized properties, secrets workflows, feature flags, startup dependencies, and framework versions. Save to .github/modernize/assessment/engines/facts/configuration-inventory.md.
Note: This skill produces a comprehensive reference document. For structured findings suitable for automated processing, see
fact-profile-settings,fact-environment-variables, andfact-xml-configs.
workspace-path (optional): Path to the project to analyze (defaults to current directory)This skill is part of a set of four complementary assessment skills. To avoid content duplication across their output documents, observe these scope rules:
data-architecture skill. In the Properties Inventory, list database-related property keys and values as raw configuration entries, but do NOT explain their behavioral implications (e.g., do not explain what spring.jpa.open-in-view=false means for lazy loading — that belongs in data-architecture.md).api-service-contracts skill. Do NOT list HTTP endpoints, controller routes, or actuator paths.business-workflows skill. Do NOT describe business processes or entity validation constraints.data-architecture and business-workflows. Do NOT enumerate entity names, fields, or relationships.Identify all configuration files and sources and produce the complete ## Configuration Sources section:
application.properties, application.yml, bootstrap.properties, bootstrap.yml — note that bootstrap.* files are distinct from application.* (bootstrap configures the config server connection and runs before application context; application configures the app itself)appsettings.json, appsettings.{Environment}.json, web.config, launchSettings.json.env, .env.local, .env.production, config/*.js, config/*.tsdocker-compose.yml environment sections, Kubernetes ConfigMaps/Secrets YAML filesspring.cloud.config.server.git.uri)Identify build-time profiles that affect compilation, packaging, and dependency resolution, and produce the complete ## Build Profiles section:
pom.xml (e.g., springboot, buildDocker, dev, cloud) — for each, document activation condition (auto, manual -P, system property -Denv=), purpose, and key dependencies or plugins addedbuild.gradlepackage.json, webpack/vite/esbuild configurations per environmentFor each build profile extract:
List all runtime profile-specific or environment-specific configuration and produce the complete ## Runtime Profiles section:
application-dev.yml, application-prod.yml), @Profile annotations, spring.profiles.active settings, combined profile activation (e.g., mysql,key-vault)appsettings.Development.json, appsettings.Production.json), ASPNETCORE_ENVIRONMENT usage.env.development, .env.production, NODE_ENV-based branchingFor each service/module, catalog all configuration properties and produce the complete ## Properties Inventory section:
${ENV_VAR}, %ENV_VAR%)Do NOT include JVM startup parameters,
-Xms/-Xmxheap settings,-Dsystem properties, container memory/CPU limits, or instance counts here — those belong in the## Startup Parameters & Resource Requirementssection (Step 5).
Document JVM startup options, runtime parameters, and per-service resource allocations, and produce the complete ## Startup Parameters & Resource Requirements section:
-Xms, -Xmx) per service-Dspring.profiles.active=, -Dazure.keyvault.uri=, etc.)SPRING_PROFILES_ACTIVE, ASPNETCORE_ENVIRONMENT)mem_limit, Kubernetes resources.requests/limits, cloud deployment settings)-Xms2048m -Xmx2048m for 2Gi services)Map the service startup order and readiness dependencies and produce the complete ## Startup Dependency Chain section:
dockerize wait-for-TCP, Kubernetes readiness probes, Spring Cloud Config retry, Docker Compose depends_on with health checksFlag sensitive configuration entries and document the secrets provisioning workflow, and produce the complete ## Secrets & Sensitive Configuration section (including the ### Secrets Provisioning Workflow subsection):
spring.datasource.password)Document how secrets flow through the system (### Secrets Provisioning Workflow):
get and list permissions on Key Vault")Identify feature toggles and conditional configuration and produce the complete ## Feature Flags section:
@ConditionalOnProperty, @ConditionalOnExpression)Catalog the technology stack versions that affect configuration and produce the complete ## Framework & Runtime Versions section:
openjdk:11-jre, mcr.microsoft.com/dotnet/aspnet:8.0)Save to .github/modernize/assessment/engines/facts/configuration-inventory.md with this exact structure:
# Configuration & Externalized Settings Inventory
A brief introduction (1-2 sentences) summarizing the configuration landscape.
## Configuration Sources
[Table: Source | Type | Path/Location | Notes]
## Build Profiles
[Table: Profile | Activation | Purpose | Key Dependencies/Plugins]
## Runtime Profiles
[Table: Profile | Activation Method | Config Files | Key Overrides]
## Properties Inventory
[Per-service tables: Property Key | Default | Profiles | Source]
## Startup Parameters & Resource Requirements
[Table: Service | JVM/Runtime Options | Memory | Instance Count]
## Startup Dependency Chain
[Ordered list: Service → waits for → Service, with mechanism (dockerize, health check, etc.)]
## Secrets & Sensitive Configuration
[Table: Secret Reference | Type | Storage (masked)]
### Secrets Provisioning Workflow
[Description of how secrets flow: source → identity/access → binding → services]
## Feature Flags
[Table: Flag Name | Default | Controlled By]
## Framework & Runtime Versions
[Table: Component | Version | Source]
> ERROR: Unsupported project type. This skill supports Java, .NET, JavaScript, and TypeScript projects only.> ERROR: No recognized configuration files found at {workspace-path}. Verify the path is correct.> Note: Some configuration sources or properties could not be fully identified..github/modernize/assessment/engines/facts/configuration-inventory.md