AI-powered supply chain security. Blocks malicious packages at install and import time. Works with Claude Code, Cursor, Devin, and every AI coding agent.
Project description
stillrunning
Supply chain security for developers and AI coding agents. Blocks malicious packages at install AND import time.
What's new in v2.0
- Python import hook — blocks at execution, not just install
- MCP server — Claude Code checks packages before installing
- Interactive Telegram approvals — default deny, one tap to allow
- Works with every AI coding agent — Claude Code, Cursor, Devin, Replit, Windsurf, Aider
- Autonomous mode for CI/CD pipelines
- Hash verification against PyPI registry
What it blocks
| Attack Vector | Status |
|---|---|
pip install malicious-pkg |
Blocked |
pip3 install malicious-pkg |
Blocked |
python3 -m pip install malicious-pkg |
Blocked |
npm install malicious-pkg |
Blocked |
pip install -r requirements.txt |
Scans all packages |
import malicious_pkg |
Blocked (via hook) |
from malicious_pkg import x |
Blocked (via hook) |
Known limitations
| Gap | Workaround |
|---|---|
/usr/bin/pip direct binary |
Use import hook for coverage |
| Virtual env pip | Activate intercept or use import hook |
| Conda/poetry/pipx | Manual activation required |
Quick start (30 seconds)
pip install stillrunning
stillrunning --setup
Import protection (one line)
import stillrunning.hook
Always-on import protection
stillrunning --install-hook
Telemetry
stillrunning sends an anonymous heartbeat every 6 hours if you opt in during setup. No email, IP, or log content — just a random ID so we know how many agents are running.
Disable by setting telemetry: false in stillrunning.yaml.
Autonomous mode (CI/CD + AI agents)
export STILLRUNNING_APP_NAME="my-app"
export STILLRUNNING_TELEGRAM_TOKEN="..."
export STILLRUNNING_CHAT_ID="..."
stillrunning --autonomous
MCP / Claude Code integration
Add to ~/.claude/settings.json:
{
"mcpServers": {
"stillrunning": {
"type": "url",
"url": "https://stillrunning.io/mcp",
"name": "stillrunning"
}
}
}
Claude Skill
Install the stillrunning skill for automatic package checking in every Claude Code session:
github.com/johhnyg/stillrunning-skill
Works with every AI coding agent
Claude Code, Cursor, Devin, Replit, GitHub Copilot, Windsurf, Aider
Setup: stillrunning.io/agent-setup
Commands
stillrunning --setup # 3-minute setup wizard
stillrunning --doctor # Health check
stillrunning --install-hook # Enable always-on import protection
stillrunning --autonomous # CI/CD mode (no prompts)
stillrunning --allow <pkg> # Allow a blocked package
stillrunning --block <pkg> # Manually block a package
stillrunning whitelist add <pkg> # Add to whitelist
stillrunning whitelist remove <pkg> # Remove from whitelist
stillrunning whitelist list # Show whitelist
Pricing
| Tier | Price | AI Scans | Features |
|---|---|---|---|
| Free | $0 | 0 | Blocklist checks (10/day) |
| Personal | $9/mo | 0 | Guard daemon, 1 machine, blocklist |
| Basic | $29/mo | 0 | Dashboard, 3 machines, Telegram, blocklist |
| AI | $49/mo | 100/day | AI package review, unlimited machines |
| Enterprise | $499/mo | 10,000/day | SIEM, SSO, compliance |
| Enterprise+ | $2,499/mo | Unlimited | Dedicated support, on-prem |
Badge

Links
License
MIT License
Patent Pending — US Provisional Application filed April 12, 2026
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file stillrunning-2.2.2.tar.gz.
File metadata
- Download URL: stillrunning-2.2.2.tar.gz
- Upload date:
- Size: 67.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
613749542e48967b280c85bba54c7f2dec52e676ab827e9ee3009c63650ab277
|
|
| MD5 |
2e110f4a77b8ceb6feab83f636effd05
|
|
| BLAKE2b-256 |
58b1daf1956dd51e19cd39a88c0c0f0b4aa3f963a226789ae442248d6e9087f3
|
File details
Details for the file stillrunning-2.2.2-py3-none-any.whl.
File metadata
- Download URL: stillrunning-2.2.2-py3-none-any.whl
- Upload date:
- Size: 71.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8f1571856284ac9790a2c3685eebdd488b7eee2b9794eeccdb46598b161c34ec
|
|
| MD5 |
448b8d2f207f1c3ddd0a4c131aa96db7
|
|
| BLAKE2b-256 |
4ef1c0ed7245ae7e930724698b29ac1f4991c35a3c2e0cd505cc75fae920c81d
|