$npx skillfedfor your agent

pyarmor

A tool used to obfuscate python scripts, bind obfuscated scripts to fixed machine or expire obfuscated scripts.

With conditionsPyPI UtilitiesReleased Jul 2026649.7K downloads / moFree To Use But RestrictedPure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — pyarmor-9.2.6-2-py3-none-any.whl · pyarmor-9.2.6-3-py3-none-any.whl · pyarmor-9.2.6-4-py3-none-any.whl
v9.2.6 · released 2026-07-23

Yes, if you need to protect Python source code and the non-standard license terms are acceptable for your use case. The tool is actively maintained, has no dependencies, and installs easily. However, verify the 'Free To Use But Restricted' license carefully before using it in commercial or open-source projects, and test obfuscated output thoroughly in your target environment.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Low install friction with no runtime dependencies.
  • Actively maintained with a recent release 22 days ago and ongoing repository activity.

License · maintenance · safety

Free To Use But Restricted (unclear) — License is marked 'Free To Use But Restricted' with no SPDX identifier, meaning terms are non-standard and unclear—review the actual license before relying on this tool in commercial or open-source projects.

last release 2026-07-23 (22 days) · last repo commit 2026-08-14 · 5,168 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 649,651 downloads/mo, #5,571 on PyPI

Verify before relying

pip install pyarmor
pyarmor gen foo.py
python dist/foo.py
  • Whether 'Free To Use But Restricted' license permits commercial distribution of obfuscated scripts
  • Whether obfuscated output maintains full compatibility with all Python 3.7–3.15 features in practice
  • Performance overhead of obfuscated scripts compared to originals
Same gist for agents: .md · .json

What it is and what it does

Pyarmor is a command-line tool that transforms Python scripts into obfuscated versions that remain valid `.py` files but with renamed identifiers and optional C-compiled functions. It supports binding obfuscated scripts to specific machines or adding expiration dates, making it useful for protecting proprietary code before distribution.

The tool generates obfuscated output that can typically replace original scripts without modification. It offers multiple obfuscation strategies to balance security and performance, and supports Python 3.7–3.15 across Windows, Linux, macOS (Intel and Apple Silicon), and embedded systems. No runtime dependencies are required beyond the pyarmor command itself.

Use it for

  • Obfuscate proprietary Python applications before shipping to customers or deploying to untrusted environments
  • Bind obfuscated scripts to specific machines to prevent unauthorized copying or redistribution
  • Add expiration dates to obfuscated scripts for time-limited licenses or trial periods
  • Convert performance-critical Python functions to compiled C code while protecting the overall codebase
  • Protect intellectual property in closed-source Python tools distributed as standalone executables

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

With conditions

Yes, if you need to protect Python source code and the non-standard license terms are acceptable for your use case.

The tool is actively maintained, has no dependencies, and installs easily. However, verify the 'Free To Use But Restricted' license carefully before using it in commercial or open-source projects, and test obfuscated output thoroughly in your target environment.

Install

pyarmor on PyPI

Before you install

Low install friction with no runtime dependencies. Actively maintained with a recent release 22 days ago and ongoing repository activity.

License in practice

License is marked 'Free To Use But Restricted' with no SPDX identifier, meaning terms are non-standard and unclear—review the actual license before relying on this tool in commercial or open-source projects.

Quickstart

pip install pyarmor
pyarmor gen foo.py
python dist/foo.py

Verify before relying

  • Whether 'Free To Use But Restricted' license permits commercial distribution of obfuscated scripts
  • Whether obfuscated output maintains full compatibility with all Python 3.7–3.15 features in practice
  • Performance overhead of obfuscated scripts compared to originals

Package facts

LicenseFree To Use But Restricted unclear
Python supportNot specified
Install frictionLow. Pure-Python wheel
Runtime dependenciesNone
MaintenanceActively maintained 22 days since the last release
Last repo commit
First released
Downloads649,651 / month, #5,571 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: Free To Use But RestrictedOperating System :: MacOSOperating System :: Microsoft :: WindowsOperating System :: POSIXProgramming Language :: Python :: 2Programming Language :: Python :: 3Topic :: SecurityTopic :: Software Development :: Build ToolsTopic :: System :: Software DistributionTopic :: Utilities

Evidence: pyarmor-9.2.6-2-py3-none-any.whl; pyarmor-9.2.6-3-py3-none-any.whl; pyarmor-9.2.6-4-py3-none-any.whl; pyarmor-9.2.6-py3-none-any.whl

Tags

Capabilities
python script obfuscationprotect python source codepython code encryptionmachine binding for pythonpython script expirationpython code protection toolirreversible python obfuscation
Topics
code-protectionobfuscationlicensing-unclear
PyPI keywords
protectobfuscateencryptobfuscationdistribute

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “protect python source code”

  • pyarmorPyarmor obfuscates Python scripts to protect source code, and can…
  • pyarmor.cli.coreProvides prebuilt extension modules required by Pyarmor to obfuscate…
  • pyarmor.cli.core.linuxPyarmor.cli.core.linux provides pre-built extension modules for…

Give your agent the search over MCP, or paste the wish link into any chat.

More Utilities packages

idna Worth it
PyPI · Python Modules · released Jun 2026

Converts domain names between Unicode and ASCII-compatible encoding (Punycode) according to IDNA 2008 and Unicode Technical Standard 46, with security validation and broader script coverage than the standard library.

Install it if you work with internationalized domain names, need to validate domains, or use HTTP clients that depend on it transitively.

BSD-3-Clausepure Python · 3.9+
1.8Bdownloads / mo
charset-normalizer Worth it
PyPI · Utilities · released Aug 2026

Detects and normalizes text encoding from unknown or ambiguous sources, supporting all IANA character sets that Python's core library provides codecs for, with the ability to register custom codecs.

permissive licensepure Python · 3.7+
1.7Bdownloads / mo
setuptools Worth it
PyPI · Python Modules · released Aug 2026

Setuptools is a Python build backend and package management tool that handles building, distributing, and installing Python packages, including support for C/C++ extension modules.

MITpure Python · 3.10+
1.6Bdownloads / mo
pluggy Worth it
PyPI · Libraries · released May 2025

Pluggy provides a plugin system that lets you define hook specifications and register implementations to be called in sequence, enabling extensible Python applications without tight coupling.

Install it if you're building an extensible application or framework.

MITpure Python · 3.9+aging
1.3Bdownloads / mo
Pygments Worth it
PyPI · Utilities · released Mar 2026

Pygments is a syntax highlighter that colorizes source code and text in over 500 languages and formats, outputting to HTML, LaTeX, RTF, SVG, images, or ANSI terminal sequences.

Install it if you need to display or transform source code.

BSD-2-Clausepure Python · 3.9+
1.3Bdownloads / mo
six With conditions
PyPI · Libraries · released Dec 2024

Six provides utility functions to write Python code that runs on both Python 2.7 and Python 3.3+, smoothing over language differences between the two versions.

MITpure Python
1.2Bdownloads / mo

See also pyarmor.cli.core · pyarmor.cli.core.alpine · pyarmor.cli.core.linux · hashids · jsbeautifier · expiring-dict · pyrage · pyAesCrypt · django-session-timeout · nono-py