absorb-mod
Standardized workflow for integrating external mods into the StellarisPlus framework.
Install
mkdir -p .claude/skills/absorb-mod && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/15172" && unzip -o skill.zip -d .claude/skills/absorb-mod && rm skill.zipInstalls to .claude/skills/absorb-mod
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Absorb an external Stellaris mod into StellarisPlus by backing it up, analyzing its contents, integrating files, resolving conflicts, and validating the result. Also supports undoing a previous absorption. Use when user says "absorb mod", "integrate mod", "merge mod", "import mod", "add Workshop mod", "include mod", "copy mod into StellarisPlus", "undo absorb", "remove mod", "revert mod", "unmerge mod", "de-integrate mod", or wants to incorporate or remove a Stellaris mod (by Workshop ID, folder path, or zip file) in this project.Key capabilities
- →Locate and backup external Stellaris mods
- →Parse mod descriptor files for metadata
- →Build file manifests and categorize mod content
- →Detect and resolve conflicts with existing workspace files
- →Integrate mod files by copying and merging
- →Validate integrated mod content through cross-reference checks
How it works
The skill processes an external Stellaris mod through phases of locating, backing up, inventorying, analyzing, integrating, and validating its content, resolving conflicts and updating attribution.
Inputs & outputs
When to use absorb-mod
- →Integrating a new Stellaris mod
- →Backing up a mod before integration
- →Resolving mod file conflicts
About this skill
Absorb Mod
Purpose & Scope
Integrate an external Stellaris mod into StellarisPlus. For removal requests,
load references/undo-absorption.md and follow
that branch instead of the absorption workflow below.
- Load
doc/mod_load_reference.mdbefore conflict or prefix decisions. - Load
doc/mod_defines_reference.mdwhen incoming content introduces an unfamiliar file type, anddoc/mod_mechanics_reference.mdwhen it changes a documented gameplay system. - Always absorb the entire mod. Partial absorption is not allowed (creates broken cross-references).
Absorption Workflow
Phase 1 -- Locate and Backup
-
Resolve source:
Input Source path Workshop ID C:\Program Files (x86)\Steam\steamapps\workshop\content\281990\<id>\Folder path As-is Zip file Extract to $env:TEMP, finddescriptor.modinside -
Parse
descriptor.modand extractname,tags,supported_version, andremote_file_id. -
Resolve the Workshop ID from the explicit input or
remote_file_id. Stop and ask for the ID when neither source provides one; do not invent a backup or credits identifier. -
Backup to
backup/<id>/. Stop if that path exists; never overwrite an absorption baseline without explicit user confirmation and a separately preserved copy.
Phase 1 is complete only when the source, descriptor metadata, and Workshop ID are verified and the immutable absorption backup contains the complete source.
Phase 2 -- Inventory and Analysis
-
Build file manifest -- categorize all files in backup:
Pattern Category common/**/*.txtGameplay script events/*.txtEvent script interface/*.gfx,*.guiGFX/GUI localisation/**/*.ymlLocalisation gfx/**,sound/**,flags/**Assets *.mod,thumbnail.*Metadata (skip) -
Detect conflicts -- for each file, check if the same relative path exists in workspace:
When any conflict is found, load
references/conflict-patterns.mdand apply the matching resolution pattern.Conflict Action None Direct copy Identical content Skip Both override vanilla differently Merge review Both define same custom content Manual merge -
Check load-order -- flag prefix clashes per
doc/mod_load_reference.md. -
Check scripted variables -- flag shadowed
@variabledefinitions (same name, different value). -
Report conflict table to user and wait for approval.
Phase 2 is complete only when every source file has a manifest category, every conflict and variable shadow has a disposition, and the user approves the integration plan.
Phase 3 -- Integration
After user confirms:
- Copy non-conflicting files preserving directory structure.
- Merge conflicting files by type:
- Scripts (
common/**/*.txt): read both fully; combine blocks, deduplicate; preserve brace nesting. If both override vanilla, integrate both change-sets. - Localisation (
.yml): add new keys; for duplicates keep ours; maintainl_english:header and:0format. - GFX (
.gfx): add new sprites; for duplicate names keep ours and warn. - GUI (
.gui): merge widget trees; new widgets at correct nesting; modified widgets merge properties (keep our positioning). Record every major hierarchy restructure for Phase 4 visual verification. - Assets (
gfx/,sound/): copy directly; if exists, ask user which to keep.
- Scripts (
- Adjust load order -- rename prefixes if needed per
doc/mod_load_reference.md. - Resolve variable conflicts -- present shadowed vars to user; user picks value.
Phase 3 is complete only when every manifest entry is copied, merged, or intentionally skipped and every approved conflict decision is applied.
Phase 4 -- Validation
- Cross-reference check: verify script-to-localisation, script-to-GFX, GFX-to-DDS, inline_script calls, event refs in on_actions.
- Multi-language localisation: if incoming mod has only English,
copy English strings as fallback to
l_braz_por,l_french,l_german,l_polish,l_russian,l_simp_chinese,l_spanish. - Visual verification: when Phase 3 changed a GUI hierarchy, perform the relevant in-game visual check. If the environment cannot run it, record the check as blocked and obtain explicit user acceptance before completion.
- Re-read every changed file and run the quality gate until two consecutive runs are clean.
Phase 4 is complete only when cross-references, localisation fallbacks, visual checks, changed-file rereads, and both final gate runs are accounted for.
Phase 5 -- Finalize
-
Update
credits.mdwith mod name, Workshop ID, source path, author. Add a probe entry for the Workshop ID intools/credits_date_probes.jsonwhen grep/path heuristics help. -
Run
& "tools/stellarisplus-refresh-credits-dates.ps1"to fillLast updateddates from git history. -
Update
descriptor.modonly to add newtagsif applicable. -
Report summary:
Metric Count Files copied / merged / skipped X / X / X Conflicts resolved X Validation errors fixed X
Phase 5 is complete only when attribution metadata is current and the report counts reconcile with the Phase 2 manifest and Phase 4 evidence.
Completion Criteria
Absorption is complete only when every phase criterion is satisfied and the final report accounts for every source file, conflict, reference, validation result, and attribution change.
When not to use it
- →When performing partial absorption of a mod
- →When overwriting an absorption baseline without explicit user confirmation
- →When reversing a credited absorption
Limitations
- →Partial absorption is not allowed
- →Overwriting an absorption baseline requires explicit user confirmation
- →The skill does not handle removal requests
How it compares
This skill automates the complex process of integrating an entire external mod into StellarisPlus, including conflict resolution and validation, which is more structured than manual file merging.
Compared to similar skills
absorb-mod side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| absorb-mod (this skill) | 0 | 2mo | No flags | Advanced |
| resolve-conflicts | 81 | 8mo | Review | Intermediate |
| claude-automation-recommender | 47 | 2mo | Review | Beginner |
| codex-skill | 12 | 5mo | Review | Advanced |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
resolve-conflicts
antinomyhq
Use this skill immediately when the user mentions merge conflicts that need to be resolved. Do not attempt to resolve conflicts directly - invoke this skill first. This skill specializes in providing a structured framework for merging imports, tests, lock files (regeneration), configuration files, and handling deleted-but-modified files with backup and analysis.
claude-automation-recommender
anthropics
Analyze a codebase and recommend Claude Code automations (hooks, subagents, skills, plugins, MCP servers). Use when user asks for automation recommendations, wants to optimize their Claude Code setup, mentions improving Claude Code workflows, asks how to first set up Claude Code for a project, or wants to know what Claude Code features they should use.
codex-skill
feiskyer
Use when user asks to leverage codex, gpt-5, or gpt-5.1 to implement something (usually implement a plan or feature designed by Claude). Provides non-interactive automation mode for hands-off task execution without approval prompts.
git-advanced-workflows
wshobson
Master advanced Git workflows including rebasing, cherry-picking, bisect, worktrees, and reflog to maintain clean history and recover from any situation. Use when managing complex Git histories, collaborating on feature branches, or troubleshooting repository issues.
subagent-driven-development
davila7
Use when executing implementation plans with independent tasks in the current session
validate-openapi-specs
epieczko
Validates and registers hook manifest files (YAML) in the Hook Registry for versioned hook management.