unimol — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited unimol (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
This skill provides practical command patterns for Uni-Mol molecular representation / training / prediction using the standardized CLI wrapper: <skill_path>/scripts/unimol_helper.py.
Key behaviors (important for Agents):
*.skipped.csv (no crash).[RESULT] repr_npy=/abs/path.npy[RESULT] model_dir=/abs/model_dir[RESULT] pred_csv=/abs/pred.csvCheck CLI help:
uv run python <skill_path>/scripts/unimol_helper.py --helpCheck subcommand help:
uv run python <skill_path>/scripts/unimol_helper.py repr --help
uv run python <skill_path>/scripts/unimol_helper.py train --help
uv run python <skill_path>/scripts/unimol_helper.py predict --helpDisable environment printing (optional):
uv run python <skill_path>/scripts/unimol_helper.py --no-env repr --smiles "CCO" --output out.npySingle SMILES:
uv run python <skill_path>/scripts/unimol_helper.py repr \
--smiles "CCO" \
--output /tmp/ccO.repr.npyFrom CSV (default SMILES column is smiles):
uv run python <skill_path>/scripts/unimol_helper.py repr \
--file data.csv \
--smiles-col smiles \
--output data.repr.npyFrom SMI:
uv run python <skill_path>/scripts/unimol_helper.py repr \
--file molecules.smi \
--output molecules.repr.npyForce CPU / GPU:
# Force CPU
uv run python <skill_path>/scripts/unimol_helper.py repr --smiles "CCO" --no-gpu --output out.npy
# Force GPU (will warn & fall back if CUDA is unavailable)
uv run python <skill_path>/scripts/unimol_helper.py repr --smiles "CCO" --use-gpu --output out.npyRegression training (CSV must contain smiles and target columns):
uv run python <skill_path>/scripts/unimol_helper.py train \
--task regression \
--input train.csv \
--smiles-col smiles \
--target-col target \
--epochs 50 \
--output ./model_regClassification training:
uv run python <skill_path>/scripts/unimol_helper.py train \
--task classification \
--input train.csv \
--smiles-col smiles \
--target-col target \
--epochs 50 \
--output ./model_clsMultilabel regression training (explicit multi-target columns):
uv run python <skill_path>/scripts/unimol_helper.py train \
--task multilabel_regression \
--input train.csv \
--smiles-col smiles \
--target-cols target_0,target_1,target_2 \
--epochs 50 \
--output ./model_mregMultilabel classification training:
uv run python <skill_path>/scripts/unimol_helper.py train \
--task multilabel_classification \
--input train.csv \
--smiles-col smiles \
--target-cols y_cls_0,y_cls_1,y_cls_2 \
--epochs 50 \
--output ./model_mclsTarget recognition for training:
classification / regression): use --target-col (default target).--target-cols (comma-separated).--target-cols is omitted for multilabel tasks, the helper auto-detects columns named target or prefixed with target_ (case-insensitive).Force CPU:
uv run python <skill_path>/scripts/unimol_helper.py train \
--task regression \
--input train.csv \
--epochs 50 \
--output ./model_cpu \
--no-cudaPredict from CSV:
uv run python <skill_path>/scripts/unimol_helper.py predict \
--model ./model_reg \
--input test.csv \
--smiles-col smiles \
--output pred.csvPredict from SMI:
uv run python <skill_path>/scripts/unimol_helper.py predict \
--model ./model_reg \
--input test.smi \
--output pred.csvNotes:
pred / pred_* columns.pred.csv.skipped.csv (or your --error-log path).When using this skill for users:
.csv requires a SMILES column (default smiles).smi uses the first token of each line as SMILES--smiles "[C]([H])([H])[H]"repr: --smiles-coltrain: --smiles-col and --target-col / --target-colspredict: --smiles-col*.skipped.csv and decide whether to fix or permanently drop them[RESULT] ...=/abs/path in stdoutUNIMOL_HELPER_TRACE=1 uv run python <skill_path>/scripts/unimol_helper.py ...~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.