migrate-required-input-dependency

Installation
SKILL.md

migrate-required-input-dependency

Migrate an integration package to integrations with required input dependencies.

Authoritative guide: HOWTO: Migrate an integration package to use required input dependencies (docs/howto/migrate_integration_required_input_dependency.md in elastic-package on main)

At the start of Phase 1, read that guide from a local elastic-package checkout or from the URL above.

Reference implementation: elastic/integrations#19719 (packages/elastic_package_registry). If main still shows legacy input: / inline collector templates, diff against the PR branch — do not copy pre-migration patterns from main.

Rules

  1. Never edit package files until all decision gates in Phase 2 are answered and you have presented a migration plan summary for confirmation.
  2. Prefer manifest variable overrides over hardcoding values in stream.yml.hbs (hardcoding causes Fleet UI values that have no effect). For each variable, be explicit about intent per the how-to guide Variable overrides section: who sets it (integration author vs end user), whether it appears in Fleet, and whether the rendered agent template references it via {{variable}} rather than a hardcoded literal.
  3. Set dataset: on the data stream manifest when the integration dataset must differ from the input package default — do not expose data_stream.dataset as a user variable unless the developer explicitly chooses that approach.
  4. Keep local stream.yml.hbs limited to integration-owned template fragments only.
  5. Run elastic-package build and elastic-package test after migration; use elastic-package test policy --generate only after the developer reviews generated expectations.
  6. Do not treat an unmigrated reference package on main as source of truth — use the guide and PR #19719 when packages/elastic_package_registry is still legacy.
Installs
1
GitHub Stars
328
First Seen
Jul 21, 2026
migrate-required-input-dependency — elastic/integrations