| name | modernize-modpack |
| description | Modernizes an existing Minecraft 1.12.2 modpack for Cleanroom by reading the latest Cleanroom preparation guide, locating the real mods directory, planning replacements/additions/removals from filenames only, optionally downloading latest CurseForge-compatible replacements or additions, and disabling removed mods as .disabled files. |
Modernize Minecraft Modpack
The key words MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD, SHOULD NOT, RECOMMENDED, MAY, and OPTIONAL are to be interpreted as described in RFC 2119.
Modernize a Minecraft 1.12.2 modpack for Cleanroom using the live Cleanroom guidance and filename-only mod detection.
Hard Rules
- The agent MUST read the latest guide before making decisions: https://raw.githubusercontent.com/CleanroomMC/Website/refs/heads/main/docs/wiki/end-user-guide/preparing-your-modpack.md
- The agent MUST use the
detect-mods-directory skill to locate the real mods/ directory before reading mod filenames.
- The agent MUST NOT inspect
.jar internals. The agent MUST NOT unzip, decompile, list archive entries, parse manifests, run Java tools on JARs, or use any other method that reads inside a JAR.
- The agent MUST base all installed-mod detection only on filenames and directory names under
mods/.
- The agent MUST disable every installed mod that the guide says to remove by renaming
<original_name> to <original_name>.disabled.
- The agent MUST ask the user whether to automatically download latest CurseForge-compatible replacement or addition mods when CurseForge links are available.
- The agent MUST describe every operation in the final result, including replacement, disable, add, skip, and download decisions with reasons.
Workflow
- The agent MUST fetch the Cleanroom preparation guide from the URL above.
- The agent MUST extract current guidance into remove/disable, replace, and add action sets.
- The remove/disable set MUST include rows whose action says remove, plus incompatible entries with no replacement.
- The replace set MUST include rows that recommend another mod or fork.
- The add set SHOULD include companion or optimization mods recommended by the guide and applicable to detected installed mods.
- The agent MUST locate the real
mods/ directory using detect-mods-directory. If no credible directory is found, the agent MUST stop and ask the user for the Minecraft instance or mods/ path.
- The agent MUST list files under
mods/, including nested directories, and MUST use only filenames for matching.
- The agent MUST include files already ending in
.disabled in the report but MUST NOT disable them again.
- The agent MUST match installed mods against the guide using conservative filename matching.
- The agent MUST produce an action plan with installed filename, matched guide entry, action, replacement/addition link, and reason.
- If a mod requires manual configuration, the action plan MUST include the REQUIRED steps.
- If the action plan contains CurseForge replacement or addition links, the agent MUST ask whether to automatically download the latest Minecraft
1.12.2 compatible files from CurseForge.
- The agent MAY apply safe rename actions when the user requested modernization and SHOULD ask before applying if the request was only for analysis.
- After changes, the agent MUST list the final disabled files and downloaded or added files.
Filename Matching
The agent MUST use conservative matching to avoid false positives:
- The agent SHOULD normalize filenames by lowercasing, removing extensions such as
.jar and .disabled, and treating spaces, underscores, hyphens, dots, and version separators as word boundaries.
- The agent MUST match guide names and common aliases only when the normalized filename clearly identifies the mod.
- The agent MUST NOT infer a mod from package names, metadata, class names, manifests, or archive contents.
- If a filename could match multiple guide entries, the agent MUST mark it ambiguous and ask the user before acting.
- If a guide entry names a family, such as
Polyfrost series, the agent MUST act only when the filename clearly belongs to that family.
Applying Changes
The agent MUST disable removals and replaced originals by renaming the exact file:
<original_name> -> <original_name>.disabled
If <original_name>.disabled already exists, the agent MUST NOT overwrite it. The agent MUST ask the user how to proceed or use a clearly distinct suffix only with user approval.
Automatic downloads MAY be performed only when all conditions are true:
- The guide MUST provide a clear replacement or addition link.
- A direct downloadable artifact MUST be obtainable without authentication or guesswork, or the available tool MUST safely resolve the linked project to a Minecraft 1.12.2-compatible file.
- The target filename MUST be known before writing.
- The download MUST be saved into the confirmed
mods/ directory.
If those conditions are not met, the agent MUST NOT download. The agent MUST report the recommended link and explain why manual download is REQUIRED.
Optional CurseForge Downloads
When the user opts in to automatic CurseForge downloads:
- The agent MUST use the
curseforge/check-prerequisites skill to ask for a CurseForge API key and choose a Python 3.12 runner.
- If the user does not provide an API key, the agent MUST skip automatic CurseForge downloads and report the CurseForge links for manual download.
- The agent MUST use the
curseforge/download-mods skill for CurseForge project URLs or slugs.
- The agent MUST download only the latest file whose CurseForge
latestFiles[].gameVersions contains 1.12.2.
- The agent MUST save downloaded files into the confirmed
mods/ directory.
- The agent MUST NOT overwrite existing files unless the user explicitly approves overwriting.
When the user opts out, the agent MUST NOT ask for a CurseForge API key and MUST report the CurseForge links as manual download recommendations.
Required Output
The agent MUST use this structure in the final response:
## Mods Directory
- Path: <mods path>
- Evidence: <config/options.txt/logs markers and contents summary>
## Guide Source
- URL: https://raw.githubusercontent.com/CleanroomMC/Website/refs/heads/main/docs/wiki/end-user-guide/preparing-your-modpack.md
- Read status: <success/failure>
## Disabled Mods
| Original file | New file | Guide match | Reason |
| --- | --- | --- | --- |
## Replacements
| Original file | Replacement | Link | Status | Reason |
| --- | --- | --- | --- | --- |
## Additions
| Addition | Link | Status | Reason |
| --- | --- | --- | --- |
## Skipped Or Ambiguous
| File or recommendation | Status | Reason |
| --- | --- | --- |
The agent MUST include empty tables or state None when no items apply.
Stop Conditions
The agent MUST stop and ask the user when:
- The guide cannot be fetched and no user-approved cached copy is available.
- The
mods/ directory cannot be found or only weak candidates exist.
- A filename match is ambiguous and would cause a rename or download.
- A target
.disabled file already exists and would be overwritten.