一键导入
module-config-change
// Use for config.yml, module enablement, modesets, config migration, configurable module assignment, and per-module option changes; do not use for unrelated integration-test triage, release publishing, or PR summaries.
// Use for config.yml, module enablement, modesets, config migration, configurable module assignment, and per-module option changes; do not use for unrelated integration-test triage, release publishing, or PR summaries.
Use when rewriting CHANGELOG.md, GitHub release notes, or Release Please PR changelog sections into user-facing release notes; do not use for release publishing, assets, licence, or workflow readiness checks.
Supports preparing commits, pre-commit hooks, Spotless, formatting or linting, validation before commit, staging files, and writing conventional commits.
Use for GitHub issue triage and local investigation, including gh issue workflows, picking a fresh issue, reproducing issue reports, and planning regression coverage.
Use for Dependabot PRs, dependency bumps, Gradle or Maven dependency updates, GitHub Actions updates, dependency changelog/licence/release-note review, JVM/classfile checks, and validation recommendations.
Use when running, selecting, authoring, or triaging integration tests, Kotest specs, Gradle matrix tasks, FakePlayer-backed test cases, or compact test-result files; do not use for unrelated production-only edits, release publishing, or general PR prose.
Use for Java 8 backports, Bukkit/Paper version differences, NMS/reflection, PacketEvents compatibility, fake-player implementation choices, and feature-detection design; do not use for release publishing, PR wording, or simple test-running decisions.
| name | module-config-change |
| description | Use for config.yml, module enablement, modesets, config migration, configurable module assignment, and per-module option changes; do not use for unrelated integration-test triage, release publishing, or PR summaries. |
Use this skill when changing module configuration, defaults, migration, or runtime handling driven by config.yml.
config.yml defaults or comments.always_enabled_modules, disabled_modules, modesets, or config migration logic.integration-test-verification.compatibility-strategy as well.release-readiness-review.always_enabled_modules, disabled_modules, or the aggregate modesets category. The same module may appear in more than one individual modeset because modesets are alternative player modes.modeset-listener, attack-cooldown-tracker, entity-damage-listener) are always enabled and must not be listed.enabled: toggles; the module lists and modesets are authoritative.scripts/validate-module-assignments.sh for a quick static check that bundled configurable lists do not conflict across always_enabled_modules, disabled_modules, and the aggregate modesets category; do not duplicate entries within the same exact list or modeset; and do not include internal modules.KotestRunner.withClasses(...).old-tool-damage.tooltip.enabled is enabled by default so players can see configured damage in-game.attack-range is listed in disabled_modules by default and is Paper 1.21.11+ only.sword-blocking.paper-animation defaults to true; when false, sword blocking uses the legacy shield fallback and strips stale Paper consumable state.disable-attack-cooldown.held-item-attack-speeds.<MATERIAL> with XMaterial/Material matching and restores vanilla attack speed when disabled.Config area:
Default changed:
Migration needed:
Enabled-path validation:
Disabled/modeset validation:
KotestRunner registration needed:
../integration-test-verification/references/relocated-agents-notes.md.