| --- |
| license: openmdw-1.1 |
| tags: |
| - security |
| - malware-detection |
| - onnx |
| --- |
| |
| # Vigil |
|
|
| Vigil is a compact classifier designed to run directly on laptops, desktops, |
| and other endpoint devices. It scans complete AI agent skill packages, including |
| instructions and supporting files, to identify credential theft, data |
| exfiltration, unsafe execution, persistence, and other harmful behavior before |
| a skill is trusted. |
|
|
| ## Model |
|
|
| - Format: ONNX |
| - Family: hashed word/character linear classifier |
| - Input: `features` (65,552 features produced by Vigil's preprocessing contract) |
| - Output: uncalibrated maliciousness score |
| - Recommended threshold: `0.0000019818544387817383` |
| - Model size: 262,828 bytes |
|
|
| The repository includes the model weights, complete runtime source, prebuilt |
| runtimes for supported devices, and a local browser scanner. |
|
|
| ## Getting started |
|
|
| Install Git and Python 3.10 or newer, then run: |
|
|
| ```bash |
| git clone https://huggingface.co/turenlabs/Vigil |
| cd Vigil |
| python3 tools/local-harness/server.py |
| ``` |
|
|
| On Windows, use: |
|
|
| ```powershell |
| git clone https://huggingface.co/turenlabs/Vigil |
| cd Vigil |
| python tools/local-harness/server.py |
| ``` |
|
|
| The launcher detects the device, installs the matching runtime from this |
| repository, verifies its SHA-256 hash, starts the scanner, and opens the browser. |
| Choose a skill folder and select **Scan package**. Skill files are staged |
| temporarily and are never executed. |
|
|
| Supported devices are macOS Apple Silicon, Linux AMD64 and ARM64, and Windows |
| AMD64 and ARM64. See [`tools/local-harness`](tools/local-harness/README.md) for |
| harness details, [`runtime`](runtime/README.md) for prebuilt packages, and |
| [`source`](source/README.md) for the complete runtime source. |
|
|
| ## Evaluation |
|
|
| Evaluated on all 7,944 packages from |
| [MalSkillBench: A Runtime-Verified Benchmark of Malicious Agent Skills](https://arxiv.org/abs/2606.07131): |
|
|
| - F1: `0.9000` |
| - Precision: `0.8874` |
| - Recall: `0.9130` |
|
|
| ## Limitations |
|
|
| The output is a ranking score, not a calibrated probability. Vigil can produce |
| false positives and false negatives and should be used as one layer of skill |
| review, not as a sandbox or a guarantee of safety. |
|
|
| Training data is not included in this release. |
|
|
| License: [OpenMDW-1.1](https://openmdw.ai/license/). See `LICENSE`. |
|
|
| ## Citation |
|
|
| ```bibtex |
| @misc{bowyer2026vigil, |
| author = {Tom Bowyer}, |
| title = {Vigil: A Compact Classifier for Malicious AI Agent Skills}, |
| year = {2026}, |
| organization = {Turen Labs, Inc.}, |
| url = {https://huggingface.co/turenlabs/Vigil} |
| } |
| ``` |
|
|
| ## References |
|
|
| - Wenbo Guo, Wei Zeng, Chengwei Liu, Xiaojun Jia, Yijia Xu, Lei Tang, |
| Yong Fang, and Yang Liu. [MalSkillBench: A Runtime-Verified Benchmark of |
| Malicious Agent Skills](https://arxiv.org/abs/2606.07131). arXiv:2606.07131, |
| 2026. |
|
|