Skip to content

Add agent skill for required input dependency migrations#20100

Merged
teresaromero merged 4 commits into
elastic:mainfrom
teresaromero:skill-requires-input-migration
Jul 15, 2026
Merged

Add agent skill for required input dependency migrations#20100
teresaromero merged 4 commits into
elastic:mainfrom
teresaromero:skill-requires-input-migration

Conversation

@teresaromero

@teresaromero teresaromero commented Jul 13, 2026

Copy link
Copy Markdown
Contributor

Enhancement

Proposed commit message

Add agent skill for required input dependency migrations.

WHAT:

Adds .agents/skills/migrate-required-input-dependency/SKILL.md, an agent skill that walks developers through migrating integration packages to use required input dependencies (requires.input, streams[].package). The skill follows a discover → decide → execute → verify workflow with decision gates for dataset naming, variable overrides, stack constraints, and tests before any package files are edited.

WHY:

Follow-up to the elastic_package_registry input-package migration (#19719). Gives agents and developers a repeatable, gated workflow aligned with the elastic-package how-to guide.

Note: This PR is pending until the how-to guide is published on elastic/elastic-package#3753

Checklist

  • I have reviewed tips for building integrations and this pull request is aligned with them.
  • I have verified that all data streams collect metrics or logs. (N/A — agent skill only)
  • I have added an entry to my package's changelog.yml file. (N/A — agent skill only)
  • I have verified that Kibana version constraints are current according to guidelines. (N/A — agent skill only)
  • I have verified that any added dashboard complies with Kibana's Dashboard good practices. (N/A — agent skill only)

Author's Checklist

  • Skill references the elastic-package how-to guide as authoritative source
  • Skill gathers developer decisions before applying migration changes
  • How-to guide published on elastic-package main (blocks merge — TBD)

How to test this PR locally

Install the skill from this branch:

npx skills@latest add https://github.com/elastic/integrations/tree/skill-requires-input-migration/.agents/skills

Then invoke the skill when migrating an integration (for example, ask the agent to migrate a package to requires.input) and confirm it runs through the decision gates before editing files.

Related issues

Screenshots

N/A

Made with Cursor

Guides agents through discover-decide-execute-verify with decision gates for dataset naming, variable overrides, and tests before editing packages.

Co-authored-by: Cursor <cursoragent@cursor.com>
@teresaromero
teresaromero requested a review from a team as a code owner July 13, 2026 07:44

## Phase 1 — Discover the package

0. Confirm `elastic-package version` succeeds. If missing, stop and point to the [elastic-package install guide](https://github.com/elastic/elastic-package#getting-started).

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should it be added the minimum elastic-package version for this ? Is v0.125.1 ?


| Decision | Options / prompt |
| --- | --- |
| Field mapping fixes | Any `long` → `double` or similar fixes? (`bugfix` changelog) |

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It could be added here that it is needed to check for any breaking changes if there are updates in the mapping types.

Comment on lines +167 to +169
elastic-package test policy -v
elastic-package test system
elastic-package test

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why not running just elastic-package test ?
Is it to show all the possible errors in policy and system tests independently ?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i usually first run policy tests; have them green; then move to system and finally run the whole suite. But an agent can run just test and get the feedback from all. 👍🏻

- [ ] Pipeline regression tests for edge cases found during migration
- [ ] Changelog entries: migration, stack constraint, field-mapping fixes
- [ ] Docs manually updated if `{{ inputDocs }}` is empty
- [ ] Dashboards validated on the target stack version

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've aligned this with the how-to guide (last commit)

@andrewkroh andrewkroh added the documentation Improvements or additions to documentation. Applied to PRs that modify *.md files. label Jul 13, 2026
…ding implications for existing indices and changelog categorization. Clarify checklist item for changelog entries to specify usage of `breaking-change` for incompatible type updates.
…ification and template binding for migration plans. Clarify the importance of understanding variable layers in agent policy merges and emphasize the need for explicit confirmation on hardcoded values. Update the variable matrix to include intent and template binding details for better clarity during the migration process.
@teresaromero
teresaromero requested a review from mrodm July 14, 2026 13:02
@mergify

mergify Bot commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

Queued — the merge queue status continues in this comment ↓.

@mergify

mergify Bot commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

Merge Queue Status

  • 🟠 Waiting for queue conditions
  • ⏳ Enter queue
  • ⏳ Run checks
  • ⏳ Merge
Waiting for
  • -closed [📌 queue requirement]
All conditions
  • -closed [📌 queue requirement]
  • -conflict [📌 queue requirement]
  • -draft [📌 queue requirement]
  • any of [📌 queue -> configuration change requirements]:
    • -mergify-configuration-changed
    • check-success = Configuration changed
  • any of [🔀 queue conditions]:
    • all of [📌 queue conditions of queue rule default]:
      • github-review-approved [🛡 GitHub branch protection]
      • github-review-approved [🛡 GitHub repository ruleset rule [org] Require a PR for Renovate]
      • github-review-approved [🛡 GitHub repository ruleset rule [org] Require a PR]
      • github-review-decision = APPROVED [🛡 GitHub branch protection]
      • any of [🛡 GitHub branch protection]:
        • check-success = CLA
        • check-neutral = CLA
        • check-skipped = CLA
      • any of [🛡 GitHub branch protection]:
        • check-success = buildkite/integrations
        • check-neutral = buildkite/integrations
        • check-skipped = buildkite/integrations

@teresaromero
teresaromero merged commit 3c05c7d into elastic:main Jul 15, 2026
7 of 8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation. Applied to PRs that modify *.md files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants