AgentSift
Security scanner for AI agent plugins, skills, and MCP packages
npm audit for the AI agent ecosystem
Features | Quick Start | Ecosystems | Contributing | Roadmap
The Problem
AI agent ecosystems are under attack. The numbers are alarming:
- 12% of ClawHub packages contain malicious payloads (ClawHavoc incident)
- 41.7% of 2,890+ OpenClaw skills have serious security vulnerabilities
- 43% of MCP servers have command injection vulnerabilities
- 43% of MCP servers have OAuth authentication flaws
- $16M+ in losses from a single supply chain attack campaign
Traditional security scanners (Snyk, Trivy, Semgrep) were built for traditional software. They cannot detect threats unique to AI agent ecosystems: tool poisoning, prompt injection via plugins, credential theft through MCP servers, and behavioral manipulation of autonomous agents.
AgentSift fills this gap.
Features
- Static Analysis -- Detect suspicious patterns: obfuscated code, hidden network calls, credential access, crypto wallet targeting
- Behavioral Sandbox -- Execute plugins in an isolated environment and monitor actual system calls, network connections, and file access
- Reputation Scoring -- Risk score based on author history, download patterns, code similarity to known malware, and community signals
- SBOM Generation -- Software Bill of Materials in CycloneDX/SPDX format for compliance
- CI/CD Integration -- SARIF output for GitHub Advanced Security, GitLab SAST, and other platforms
- Detection Rules -- Extensible YAML-based rule engine (bring your own rules or use built-in detections)
Quick Start
# Install
pip install agentsift
# Scan a ClawHub skill
agentsift scan clawhub:cryptocurrency-trader
# Scan an MCP package from npm
agentsift scan npm:@modelcontextprotocol/server-postgres
# Scan a local plugin directory
agentsift scan ./my-agent-plugin/
# Scan with full behavioral analysis (slower, more thorough)
agentsift scan --deep clawhub:cryptocurrency-trader
# Output SARIF for CI/CD
agentsift scan --format sarif -o results.sarif clawhub:some-skill
# Generate SBOM
agentsift sbom --format cyclonedx clawhub:some-skill
Supported Ecosystems
| Ecosystem | Status | Description |
|---|---|---|
| ClawHub | v0.1 |
OpenClaw skills marketplace |
| MCP (npm) | v0.1 |
Model Context Protocol servers on npm |
| MCP (PyPI) | v0.2 |
MCP servers on PyPI |
| LangChain Hub | Planned | LangChain tools and chains |
| CrewAI Tools | Planned | CrewAI tool packages |
| Custom | v0.1 |
Any local directory with agent code |
How It Works
+-----------------+
| agentsift |
| scan <pkg> |
+--------+--------+
|
+--------------+--------------+
| | |
+--------v---+ +------v------+ +----v--------+
| Static | | Behavioral | | Reputation |
| Analysis | | Sandbox | | Scoring |
+--------+---+ +------+------+ +----+--------+
| | |
+--------------+--------------+
|
+--------v--------+
| Risk Score & |
| Report Output |
| (JSON/SARIF/ |
| CycloneDX) |
+-----------------+
Static Analysis
Scans source code for patterns known to be associated with malicious AI agent plugins:
- Network exfiltration: Hidden HTTP calls, DNS tunneling, WebSocket connections to unknown hosts
- Credential harvesting: Access to environment variables, SSH keys, browser credential stores, crypto wallets
- Code obfuscation: Base64-encoded payloads,
eval()/exec()usage, dynamic imports - Prompt injection: Embedded instructions designed to manipulate the host AI agent
- Privilege escalation: Attempts to escape sandboxes, modify system files, or escalate permissions
Behavioral Sandbox
Executes the plugin in an isolated container and monitors:
- System calls (via seccomp-bpf)
- Network connections (DNS queries, HTTP requests, raw sockets)
- File system access (reads, writes, deletes outside expected paths)
- Process spawning (unexpected child processes)
- Resource consumption (CPU, memory, disk anomalies)
Reputation Scoring
Calculates a 0-100 risk score based on:
- Author account age and verification status
- Download count and velocity patterns
- Code similarity to known malicious packages (via fuzzy hashing)
- Dependency chain analysis
- Community reports and flags
Detection Rules
AgentSift uses YAML-based detection rules:
# rules/credential-access.yaml
id: AS-001
name: environment-variable-exfiltration
severity: critical
description: Plugin accesses sensitive environment variables and makes network calls
patterns:
- type: code
match: "os.environ|process.env"
context: "network_call_in_same_scope"
- type: behavior
match: "dns_query_after_env_read"
tags: [credential-theft, exfiltration]
ecosystems: [clawhub, mcp, npm]
Write custom rules and contribute them back to the community!
CI/CD Integration
GitHub Actions
- name: Scan MCP dependencies
uses: agentsift/agentsift-action@v1
with:
targets: "mcp-packages.json"
fail-on: "high"
GitLab CI
agentsift-scan:
image: agentsift/agentsift:latest
script:
- agentsift scan --format sarif -o gl-agentsift-report.sarif ./
artifacts:
reports:
sast: gl-agentsift-report.sarif
Comparison with Existing Tools
| Feature | AgentSift | Cisco MCP Scanner | Snyk | Trivy |
|---|---|---|---|---|
| AI agent plugin scanning | Yes | MCP only | No | No |
| Behavioral sandbox | Yes | No | No | No |
| ClawHub support | Yes | No | No | No |
| MCP server scanning | Yes | Yes | No | No |
| Prompt injection detection | Yes | No | No | No |
| SBOM generation | Yes | No | Yes | Yes |
| SARIF output | Yes | No | Yes | Yes |
| Custom detection rules | Yes | Limited | No | Yes |
Project Status
Alpha -- Under active development. APIs may change. Not yet recommended for production use.
See the Roadmap for planned features and milestones.
Contributing
We welcome contributions! See CONTRIBUTING.md for guidelines.
Priority areas:
- Detection rules for new attack patterns
- Support for additional ecosystems
- Behavioral sandbox improvements
- Documentation and translations
Security
Found a vulnerability in AgentSift itself? See SECURITY.md for responsible disclosure.
License
Apache License 2.0 -- See LICENSE
Acknowledgments
This project is informed by research from:
- OWASP Top 10 for Agentic Applications
- Cisco MCP Scanner
- Meta LlamaFirewall
- NVIDIA NemoClaw
- Ona Research on AI sandbox escapes
Built with the belief that AI agents should be safe by default.
Metadata
Release files for agentsift 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| agentsift-0.1.0.tar.gz | 37.1 kB | Without provenance | Details for agentsift-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| agentsift-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for agentsift-0.1.0-py3-none-any.whl |
Total release size: 70.3 kB
Release files / agentsift-0.1.0.tar.gz
| Download URL | agentsift-0.1.0.tar.gz |
|---|---|
| Size | 37.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
082551bee2f40de6260d58cadad6a8b810cae4b49351a60c1fd692ff7ad1b647
|
|
BLAKE2b-256 checksum How to use checksums |
eb502831ac165fd8c89808f28973524ecbd3132a6d627aa101f958b5dd21c8bb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.3
|
Release files / agentsift-0.1.0-py3-none-any.whl
| Download URL | agentsift-0.1.0-py3-none-any.whl |
|---|---|
| Size | 33.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0bec068b22218ec4a2b20316520170e818261c6f732115717c7160701f36906d
|
|
BLAKE2b-256 checksum How to use checksums |
9da44504dbd8d372becd19c5bcb59b976313d087ebd11ff7e4bfb7f04ab7221b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.3
|
Security for agentsift 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.