Intelligence Package Manager - Agent skill virtual environment manager
Project description
IpMan - Intelligence Package Manager
I can take on ten.
Agent skill virtual environment manager — like conda/uv, but for AI agent skills. With built-in defense against malicious skills.
Documentation | 中文文档 | 中文 README
36% of AI agent skills contain prompt injection. 824+ confirmed malicious skills exist in the wild. IpMan doesn't just manage skills — it protects you from them.
Why IpMan?
The AI agent skill ecosystem is the new software supply chain — and it's under attack. Skills run with full agent permissions, have no sandbox by default, and the barrier to publishing is just a Markdown file. IpMan provides:
- Risk assessment before installation — every skill is scanned for red flags (credential theft, data exfiltration, obfuscated code, prompt injection)
- Four security modes — from PERMISSIVE (install everything) to STRICT (only verified-safe skills)
- Community-driven threat reporting — flag suspicious skills, report counts feed back into risk scoring
- Publish-time gatekeeping — HIGH/EXTREME risk skills are blocked from IpHub at the door
Features
Security First
- Risk Assessment Engine — Detects credential harvesting, obfuscated code (base64/eval/exec), unauthorized network calls, sudo escalation, access to sensitive paths (~/.ssh, ~/.aws), and prompt injection patterns. Risk levels: LOW / MEDIUM / HIGH / EXTREME
- Security Modes — PERMISSIVE, DEFAULT, CAUTIOUS, STRICT. Control the risk tolerance for your environment
- Smart Trust Model — IpHub skills carry pre-assessed risk labels. Local/URL installs trigger mandatory on-device assessment. Override with
--vetor--no-vet - Security Logging — All blocked/warned installs are logged to
~/.ipman/security.log - Community Reporting —
ipman hub report <name>to flag suspicious skills. Report counts are publicly visible
Package Management
- Virtual Environments — Create isolated skill environments per project, user, or machine
- IP Packages — Bundle skills into distributable
.ip.yamlfiles - Dependency Resolution — Recursive dependencies with version constraints (
>=,^,~) - Agent Agnostic — Works with Claude Code, OpenClaw, and more via adapter plugins
IpHub Registry
- Search & Browse — Find skills by keyword, filter by agent
- Publish — Submit skills/IP packages via automated GitHub PR workflow
- Rankings — Top skills by install count
- Mirror Support — Configure alternative hub URLs for regional access (CNB mirror available)
Installation
# Via PyPI
pip install ipman-cli
# Via uv
uv pip install ipman-cli
# Via curl (Linux / macOS)
curl -sSL https://raw.githubusercontent.com/twisker/ipman/main/install.sh | bash
Pre-built binaries for Windows/macOS/Linux are available on GitHub Releases.
Quick Start
# Create and activate a skill environment
ipman env create myenv
ipman env activate myenv
# Install a skill (auto-assessed for security risks)
ipman install web-scraper
# Install from a local IP package (triggers mandatory risk scan)
ipman install frontend-kit.ip.yaml
# Pack current environment
ipman pack --name my-kit --version 1.0.0
# Search and publish to IpHub
ipman hub search scraper
ipman hub publish my-skill --description "My awesome skill"
# Report a suspicious skill
ipman hub report sketchy-tool --reason "Sends data to unknown server"
For the full guide, see the Documentation.
Security Modes
| Mode | Behavior | Use case |
|---|---|---|
permissive |
Install everything, warn only on EXTREME | Trusted internal environments |
default |
Block EXTREME, warn on HIGH | General use |
cautious |
Block HIGH+EXTREME, warn on MEDIUM | Production environments |
strict |
Only LOW allowed; re-assess all sources locally | High-security deployments |
See the Security Guide for details.
IpHub Rankings
Rankings will appear here once IpHub has install data.
Star History
License
Apache License 2.0 — see LICENSE for details.
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 ipman_cli-0.1.73.tar.gz.
File metadata
- Download URL: ipman_cli-0.1.73.tar.gz
- Upload date:
- Size: 278.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
47f5f3c906d4d5d2d2c9af644d1b5712f763c3cb9cafd366dccd8e7a783c4f5e
|
|
| MD5 |
7309eb76b8c65f053aa8df05c42ac965
|
|
| BLAKE2b-256 |
d8d827883ca19aedd6e5e45f30aadc218250f1cd829597bc1fccafb9009f4448
|
Provenance
The following attestation bundles were made for ipman_cli-0.1.73.tar.gz:
Publisher:
publish.yml on twisker/ipman
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ipman_cli-0.1.73.tar.gz -
Subject digest:
47f5f3c906d4d5d2d2c9af644d1b5712f763c3cb9cafd366dccd8e7a783c4f5e - Sigstore transparency entry: 1100150110
- Sigstore integration time:
-
Permalink:
twisker/ipman@ea20f9e88a4d1554b94108ec45446134b86c776f -
Branch / Tag:
refs/tags/v0.1.73 - Owner: https://github.com/twisker
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@ea20f9e88a4d1554b94108ec45446134b86c776f -
Trigger Event:
push
-
Statement type:
File details
Details for the file ipman_cli-0.1.73-py3-none-any.whl.
File metadata
- Download URL: ipman_cli-0.1.73-py3-none-any.whl
- Upload date:
- Size: 39.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
578f7a7450a8200a3f364473f5e1c74d2208bf2430015411c39f405ab3232e65
|
|
| MD5 |
839cbba4ca385d16ce7e008aca96fd41
|
|
| BLAKE2b-256 |
cf5af38120a6fb8c88528229588096a06525cd014b15bba3ea11279b25c2586c
|
Provenance
The following attestation bundles were made for ipman_cli-0.1.73-py3-none-any.whl:
Publisher:
publish.yml on twisker/ipman
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ipman_cli-0.1.73-py3-none-any.whl -
Subject digest:
578f7a7450a8200a3f364473f5e1c74d2208bf2430015411c39f405ab3232e65 - Sigstore transparency entry: 1100150144
- Sigstore integration time:
-
Permalink:
twisker/ipman@ea20f9e88a4d1554b94108ec45446134b86c776f -
Branch / Tag:
refs/tags/v0.1.73 - Owner: https://github.com/twisker
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@ea20f9e88a4d1554b94108ec45446134b86c776f -
Trigger Event:
push
-
Statement type: