Install
openclaw skills install python-harmony-compatibility-checkerCheck Python library compatibility with HarmonyOS. Downloads source from GitHub/PyPI, detects Windows-specific dependencies, runs pytest with per-test-case reporting, and generates detailed compatibility reports.
openclaw skills install python-harmony-compatibility-checker# Single package
python scripts/check_compatibility.py requests
# Multiple packages (parallel, 4 workers default)
python scripts/check_compatibility.py requests numpy pandas flask
# Specify workers
python scripts/check_compatibility.py --workers 8 requests numpy pandas
# From requirements file
python scripts/check_compatibility.py -r requirements.txt
python scripts/check_compatibility.py -w 8 -r requirements.txt
# Sequential mode (debugging)
python scripts/check_compatibility.py --sequential requests numpy
# Keep downloaded source for verification
python scripts/check_compatibility.py --keep-source numpy
| Option | Description | Default |
|---|---|---|
-w, --workers N | Number of parallel workers | 4 |
--sequential | Run checks one at a time | False |
-r, --requirements FILE | Check packages from requirements file | - |
--keep-source | Keep downloaded source code for verification | False |
Reports saved to current directory:
compatibility_report_*.md - Markdown with summary and detailscompatibility_report_*.json - Machine-readable with per-test-case resultsTimestamps use 东八区时间 (UTC+8/北京时间).
📦 numpy v2.2.1
Status: ✅ Compatible
Test Pass Rate: 88.9%
Total: 45 tests | Passed: 40 | Failed: 5
| Metric | Description |
|---|---|
| Total Tests | Individual test functions run |
| Passed | Successfully completed |
| Failed | Failed due to code issues |
| Environment Issues | Permission/temp dir failures (not counted) |
| Pass Rate | passed / total |
| Valid Pass Rate | passed / (passed + failed) - excludes environment issues |
| Status | Criteria |
|---|---|
| ✅ Compatible | Installs + valid pass rate ≥ 80% + no Windows deps |
| ⚠️ Partial | Installs + valid pass rate 50-79% |
| ❌ Incompatible | Cannot install OR valid pass rate < 50% OR Windows deps detected |
| Type | Description | Counts Against |
|---|---|---|
| Environment | Permission errors, temp dir issues | ❌ No |
| Code | Import errors, API incompatibilities | ✅ Yes |
| Platform | Windows/macOS/X11 dependencies | ✅ Yes |
| Platform | Problematic Packages | Alternative |
|---|---|---|
| Windows | pywin32, wmi, pythoncom, xlwings | Cross-platform libs |
| macOS | applescript, quartz, cocoa | - |
| X11 | python-xlib, xcb | pynput |
Scans for: win32api, win32con, win32gui, win32com, pythoncom, pywintypes, ctypes.windll, winsound, msvcrt
Detection includes:
import win32api, from win32com import ...importlib.import_module('pythoncom')ctypes.windll, ctypes.WinDLLrequests, numpy (45 tests, 88.9%), pandas, flask, django, pytest, beautifulsoup4, pillowFeatures:
--keep-source)pytest Integration:
pytest -v --tb=short --import-mode=importlib/tmp to avoid source import conflicts# Clean up pytest temp directories
rm -rf pytest-of-*
# Keep source for inspection
python scripts/check_compatibility.py --keep-source xlwings
# Check Windows imports
grep -r "import win32" /path/to/source/
Some failures may be due to:
Review detailed reports to distinguish real incompatibilities from environment issues.
- name: HarmonyOS Compatibility
run: python scripts/check_compatibility.py -r requirements.txt --keep-source
from scripts.check_compatibility import check_package
result = check_package("requests")
print(f"Compatible: {result.compatible}, Issues: {result.issues}")
references/python-env-setup.md - Python setup on HarmonyOSreferences/compatibility-database.md - Known package status--keep-source to verify tested code@pytest.mark.skipif)if sys.platform == 'win32'