Claude-skill-registry cube-iml
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/cube-iml" ~/.claude/skills/majiayu000-claude-skill-registry-cube-iml && rm -rf "$T"
manifest:
skills/data/cube-iml/SKILL.mdsource content
Cube IML Skill
Check and repair the PyCharm/IntelliJ module configuration file.
Trigger
Use when:
- User runs
or asks about PyCharm/IntelliJ configuration/cube-iml - User reports "module not configured" or import resolution issues
- User says PyCharm doesn't recognize src or tests folders
Quick Check
Run this Python snippet to check the .iml file:
python -c " from pathlib import Path from xml.etree import ElementTree as ET iml = Path('.idea/cube.iml') if not iml.exists(): print('MISSING: .idea/cube.iml does not exist') exit(1) try: tree = ET.parse(iml) root = tree.getroot() except ET.ParseError as e: print(f'CORRUPTED: XML parse error: {e}') exit(1) # Check required elements sources = tree.findall('.//sourceFolder') has_src = any('src' in s.get('url', '') and s.get('isTestSource') == 'false' for s in sources) has_tests = any('tests' in s.get('url', '') and s.get('isTestSource') == 'true' for s in sources) has_sdk = tree.find('.//orderEntry[@type=\"jdk\"]') is not None issues = [] if not has_src: issues.append('Missing src as source folder') if not has_tests: issues.append('Missing tests as test source folder') if not has_sdk: issues.append('Missing Python SDK configuration') if issues: print('INCOMPLETE:') for i in issues: print(f' - {i}') exit(1) print('OK: cube.iml is valid and complete') "
Actions Based on Result
If MISSING or CORRUPTED or INCOMPLETE
Ask the user:
The .idea/cube.iml file is [missing/corrupted/incomplete]. Would you like me to reconstruct it? - Yes, reconstruct it - No, I'll fix it manually
If user says yes, run:
python scripts/reconstruct_iml.py
If OK
Report: "PyCharm configuration looks good. If you're still having issues, try:
- File → Invalidate Caches and Restart
- Right-click src folder → Mark Directory as → Sources Root"
Manual Fix
If the script doesn't exist or fails, create the file manually:
<?xml version="1.0" encoding="UTF-8"?> <module type="PYTHON_MODULE" version="4"> <component name="NewModuleRootManager"> <content url="file://$MODULE_DIR$"> <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/tests" isTestSource="true" /> </content> <orderEntry type="jdk" jdkName="Python 3.14 (cubesolve)" jdkType="Python SDK" /> <orderEntry type="sourceFolder" forTests="false" /> </component> </module>
Adjust the
jdkName to match the user's Python interpreter name.