Agent skill

Reproduce macOS Python Flavors

by Nuitka in Nuitka/Nuitka

Reproduce macOS Nuitka issues across Python distributions and GitHub Actions Python packaging.

AGPL-3.0Auto-check passedDevOps & Cloud

Install Reproduce macOS Python Flavors

skills CLI
$ npx skills add Nuitka/Nuitka --skill reproduce-macos-python-flavors -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Nuitka/Nuitka reproduce-macos-python-flavors --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Nuitka/Nuitka.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/reproduce-macos-python-flavors .claude/skills/reproduce-macos-python-flavors && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
reproduce-macos-python-flavors
GitHub stars
15k
Token cost
~1.7k tokens
SKILL.md length
670 words
Files
1
Skills in repo
6
Repo updated
First seen
Licence
AGPL-3.0

At a glance

Reproduce macOS Nuitka issues across Python distributions and GitHub Actions Python packaging.

  • Works in 6 steps: Establish the runtime matrix first → Use the same oracle for every flavor → Flavor-specific notes → …
  • A macOS issue may depend on CPython Official
  • SKILL.md covers 1. Establish the runtime…, 2. Use the same oracle for…, 3. Flavor-specific notes and 4. Run GitHub Actions Python…, plus 2 more sections
  • Calls python

What it does

Reproduce macOS Python Flavors is an agent skill from Nuitka/Nuitka. Reproduce macOS Nuitka issues across Python distributions and GitHub Actions Python packaging. Use when a macOS issue may depend on CPython Official, Homebrew, Conda, Miniforge, or actions/setup-python runtimes.

Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in DevOps & Cloud, covering CI/CD. It works with Python, macOS, Homebrew and GitHub Actions. The repository describes itself as: Nuitka is a Python compiler written in Python. It's fully compatible with Python 2.6, 2.7, 3.4-3.14. You feed it your Python app, it does a lot of clever things, and spits out an… The licence is AGPL-3.0.

When your agent uses it

  • A macOS issue may depend on CPython Official
  • Actions/setup-python runtimes

Example prompts

  • “/reproduce-macos-python-flavors”

Requirements

  • Python 3

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Establish the runtime matrix first
  2. Use the same oracle for every flavor
  3. Flavor-specific notes
  4. Run GitHub Actions Python locally on macOS
  5. Run the reproducer under the local Actions runtime
  6. Report the result cleanly

What it can do on your machine

Read from SKILL.md and the folder at commit 5efaf76. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • python

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Reproduce macOS Python Flavors loads about 1.7k tokens when it runs. Until then it costs about 61 tokens; SKILL.md has 670 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~61
When it runs · the whole SKILL.md, loaded when a task matches
~1.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from Nuitka/Nuitka at commit 5efaf76, republished under its AGPL-3.0 licence (© Nuitka). 670 words, ~1,707 tokens.

Download SKILL.mdSave it as .claude/skills/reproduce-macos-python-flavors/SKILL.md (or your agent's skills folder).
name
reproduce-macos-python-flavors
description
Reproduce macOS Nuitka issues across Python distributions and GitHub Actions Python packaging. Use when a macOS issue may depend on CPython Official, Homebrew, Conda, Miniforge, or actions/setup-python runtimes.

Reproduce macOS Python Flavor Issues

Use this workflow when a Nuitka issue on macOS might depend on the Python distribution, framework layout, or CI packaging. Typical signals are:

  • Different behavior between CPython Official, Homebrew, Anaconda/Conda, and CI.
  • otool -L differences.
  • Absolute libpython or framework paths in standalone or app bundle outputs.
  • Issue reports that mention actions/setup-python, actions/python-versions, Miniforge, or hosted runners.

1. Establish the runtime matrix first

Before reducing or patching, run the same minimal reproducer across the most relevant macOS Python flavors in this order:

  1. Python.org CPython (Flavor: CPython Official).
  2. Homebrew Python.
  3. Conda or Miniforge, if the report mentions Anaconda, Conda, Miniforge, or CONDA_PREFIX.
  4. GitHub Actions Python, if the report specifically depends on hosted runner packaging or actions/setup-python.

Keep the reproducer, reports, extracted runtimes, and logs in tests/scratch/.

2. Use the same oracle for every flavor

Record the exact same evidence for each runtime:

  1. python bin/nuitka --version
  2. The source runtime linkage:
    • For framework builds: otool -L <python_home>/Python
    • For libpython builds: otool -L <libpython.dylib>
  3. The built output linkage:
    • otool -L <dist app main executable>
    • If relevant, otool -L <dist app embedded Python or libpython copy>
  4. A compilation report in tests/scratch/ via --report=...

For issue 3733-like bugs, the important oracle is usually the app bundle main executable, not just the copied framework binary.

When running in an agent or sandboxed environment, keep caches local:

sh
env NUITKA_CACHE_DIR="$PWD/tests/scratch/cache/nuitka" \
    CCACHE_DIR="$PWD/tests/scratch/cache/ccache" \
    <python> bin/nuitka --version

3. Flavor-specific notes

Python.org CPython
  • Use the explicit framework interpreter path when possible, e.g. /Library/Frameworks/Python.framework/Versions/3.12/bin/python3.
  • Inspect the framework binary with otool -L /Library/Frameworks/Python.framework/Versions/3.12/Python.
Homebrew Python
  • Use the explicit Cellar or opt interpreter path, not a guessed shell alias.
  • Inspect the framework binary under Homebrew, e.g. /opt/homebrew/opt/python@3.13/Frameworks/Python.framework/Versions/3.13/Python.
Conda or Miniforge
  • This is the primary target when the report mentions Anaconda Python, Miniforge, or conda-incubator/setup-miniconda.
  • Inspect the source runtime with otool -L "$CONDA_PREFIX/lib/libpythonX.Y.dylib".
  • Preserve the environment as closely as possible to the report before introducing any local simplifications.

4. Run GitHub Actions Python locally on macOS

Current macOS archives from actions/python-versions are package-based. The tarball does not contain a ready-to-run toolcache tree. Instead, it contains:

  • setup.sh
  • python-<version>-macos11.pkg

The upstream setup script installs the package into /Library/Frameworks/... and then creates hosted-toolcache symlinks. For local reproduction, you can avoid a system-wide install by expanding the package payload and exposing it under a synthetic framework root.

Show full SKILL.md (288 more words)Show less
Download and extract
  1. Download the exact archive for your architecture from the matching actions/python-versions release.
  2. Extract it into tests/scratch/gha-python-<version>/.
  3. Expand the package payload:
sh
pkgutil --expand-full \
    tests/scratch/gha-python-<version>/python-<version>-macos11.pkg \
    tests/scratch/gha-python-<version>/pkg-expanded

If the release does not publish a macOS archive for the version you need, note that explicitly and do not pretend to have matched the runtime.

Create a synthetic framework root
sh
mkdir -p tests/scratch/gha-python-<version>/local-root/Library/Frameworks
ln -sfn "$PWD/tests/scratch/gha-python-<version>/pkg-expanded/Python_Framework.pkg/Payload" \
    tests/scratch/gha-python-<version>/local-root/Library/Frameworks/Python.framework
Use a wrapper script

Create a wrapper in tests/scratch/ that launches the unpacked interpreter with the correct dyld and Python home overrides:

sh
#!/usr/bin/env bash

set -euo pipefail

script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
gha_root="$script_dir/gha-python-3.13.13"
frameworks_root="$gha_root/local-root/Library/Frameworks"
python_home="$frameworks_root/Python.framework/Versions/3.13"
python_bin="$python_home/bin/python3.13"

export DYLD_FRAMEWORK_PATH="$frameworks_root"
export PYTHONHOME="$python_home"

exec "$python_bin" "$@"
Verify you are using the unpacked runtime

Run:

sh
tests/scratch/run_gha_python.sh -c 'import sys; print(sys.version); print(sys.executable); print(sys.prefix); print(sys.base_prefix)'

Checks:

  • sys.version must match the downloaded Actions version exactly.
  • sys.prefix and sys.base_prefix should point into your synthetic tests/scratch/.../Library/Frameworks/Python.framework/Versions/X.Y tree.

If direct execution of the unpacked bin/python3.X reports a different patch version than the archive you downloaded, it is probably binding to an already-installed /Library/Frameworks/Python.framework/... on the host. In that case:

  • Use the wrapper script above.
  • Debug with DYLD_PRINT_LIBRARIES=1.
Caveats
  • sysconfig may still report install-name-based paths under /Library/Frameworks/... for values like LIBDIR. That comes from packaging metadata and does not by itself prove the override failed.
  • Nuitka may show Flavor: Unknown for this runtime. That is expected for the unpacked local variant.

5. Run the reproducer under the local Actions runtime

Once the wrapper works, use it exactly like a normal interpreter:

sh
env NUITKA_CACHE_DIR="$PWD/tests/scratch/cache-gha/nuitka" \
    CCACHE_DIR="$PWD/tests/scratch/cache-gha/ccache" \
    tests/scratch/run_gha_python.sh bin/nuitka --version

Then compile the same scratch reproducer and capture the same otool -L evidence as for the other flavors.

6. Report the result cleanly

Summarize the result by flavor:

  • Whether the bug reproduced.
  • The exact Python flavor and version.
  • The source runtime linkage.
  • The output binary linkage.
  • Which flavor first reproduced, if any.

If no flavor reproduces locally, say so explicitly and identify the closest remaining gap, e.g. Conda environment contents, GitHub runner image version, or signing/notarization steps not yet matched.

© Nuitka, AGPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/reproduce-macos-python-flavors of Nuitka/Nuitka.

Open the folder on GitHubat commit 5efaf76

Compare with similar skills

Reproduce macOS Python Flavors next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Reproduce macOS Python Flavors compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Reproduce macOS Python Flavors this skillNuitka/Nuitka15k—~1.7kAutomated safety check: PassAGPL-3.0
CI Pipeline Synthesizerkajisho5/ffmpeg-skill1.9k1 repos~1.1kAutomated safety check: PassMIT
GitHub Actionstddworks/ClaudeBar1.5k—~1.1kAutomated safety check: PassApache-2.0
Releasingmarciogranzotto/clawd-tank165—~923Automated safety check: PassMIT
Release Flowromankurnovskii/BrewMate300—~976Automated safety check: PassMIT
DDNS Build and Release MaintenanceNewFuture/DDNS4.7k—~444Automated safety check: PassMIT

Similar skills

  • CI Pipeline Synthesizer

    kajisho5/ffmpeg-skill

    Generate GitHub Actions CI/CD pipeline configurations for automated building and testing of library and package projects.

    1.9k GitHub starsUsed in 1 repo~1.1k tokens
    DevOps & CloudAuto-check passed
  • GitHub Actions

    tddworks/ClaudeBar

    Manage ClaudeBar's GitHub Actions CI/CD pipelines: build, test, and release workflows.

    1.5k GitHub stars~1.1k tokensUpdated today
    DevOps & CloudAuto-check passed
  • Releasing

    marciogranzotto/clawd-tank

    Cuts a new versioned release of the Clawd Tank macOS menu bar app.

    165 GitHub stars~923 tokensUpdated 4 mo ago
    DevOps & CloudAuto-check passed
  • Release Flow

    romankurnovskii/BrewMate

    Automate the full application release flow for BrewMate, including committing local changes, bumping version, waiting for GitHub Actions release build, and pushing the in-repo cask update…

    300 GitHub stars~976 tokensUpdated 12 days ago
    DevOps & CloudAuto-check passed
  • Maintains the DDNS project's GitHub Actions, Docker and Nuitka builds, packaging and release preparation without touching publishing credentials.

    4.7k GitHub stars~444 tokensUpdated 2 days ago
    DevOps & CloudAuto-check passed
  • Audit Review

    testflows/TestFlows-GitHub-Hetzner-Runners

    Perform deep feature audits with transition-matrix and logical fault-injection validation.

    102 GitHub stars~2.1k tokensUpdated 18 days ago
    DevOps & CloudAuto-check passed

More from Nuitka/Nuitka

  • Diagnose and fix ModuleNotFoundError in Nuitka standalone binaries caused by missing implicit imports.

    15k GitHub stars~519 tokensUpdated today
    Auto-check passed
  • Setup PR Branch

    Nuitka/Nuitka

    Set up a local branch that tracks a fork PR and can be pushed back to it, without fetching the whole fork.

    15k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Create a Nuitka planning document under .planning/ from the standard template.

    15k GitHub stars~468 tokensUpdated today
    Auto-check passed
  • Create Mre

    Nuitka/Nuitka

    Create or reduce a Minimally Reproducible Example (MRE) for a Nuitka bug from a larger reproducer.

    15k GitHub stars~1.7k tokensUpdated today
    Auto-check passed
  • Obs Build Logs

    Nuitka/Nuitka

    Access and diagnose openSUSE Build Service (OBS) package build logs.

    15k GitHub stars~849 tokensUpdated today
    Auto-check passed

Categories

Questions about Reproduce macOS Python Flavors

What does Reproduce macOS Python Flavors do?

Reproduce macOS Nuitka issues across Python distributions and GitHub Actions Python packaging. Reproduce macOS Python Flavors is an agent skill from Nuitka/Nuitka. Reproduce macOS Nuitka issues across Python distributions and GitHub Actions Python packaging.

When should I use Reproduce macOS Python Flavors?

Reproduce macOS Python Flavors fits situations like: A macOS issue may depend on CPython Official; actions/setup-python runtimes.

How do I install Reproduce macOS Python Flavors in Claude Code?

Run `npx skills add Nuitka/Nuitka --skill reproduce-macos-python-flavors -a claude-code`. Or copy the skill folder (.agents/skills/reproduce-macos-python-flavors in Nuitka/Nuitka) into .claude/skills/reproduce-macos-python-flavors in your project. Claude Code loads it when a task matches its description.

How do I install Reproduce macOS Python Flavors in Codex?

Run `npx skills add Nuitka/Nuitka --skill reproduce-macos-python-flavors -a codex`. Or copy the skill folder (.agents/skills/reproduce-macos-python-flavors in Nuitka/Nuitka) into .agents/skills/reproduce-macos-python-flavors in your project. Codex loads it when a task matches its description.

Can I use Reproduce macOS Python Flavors in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Nuitka/Nuitka --skill reproduce-macos-python-flavors -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/reproduce-macos-python-flavors, .gemini/skills/reproduce-macos-python-flavors, .github/skills/reproduce-macos-python-flavors and .opencode/skills/reproduce-macos-python-flavors in your project.

What does Reproduce macOS Python Flavors need to run?

Going by SKILL.md and its folder, Reproduce macOS Python Flavors needs the command-line tools its instructions call (python). Our summary lists: Python 3.

Does Reproduce macOS Python Flavors access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Reproduce macOS Python Flavors safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Reproduce macOS Python Flavors use?

Reproduce macOS Python Flavors is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Reproduce macOS Python Flavors use?

About 1.7k tokens (SKILL.md is roughly 6.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Reproduce macOS Python Flavors?

Skills that share tags, products or a category with Reproduce macOS Python Flavors: CI Pipeline Synthesizer (kajisho5/ffmpeg-skill, 1.9k stars), GitHub Actions (tddworks/ClaudeBar, 1.5k stars), Releasing (marciogranzotto/clawd-tank, 165 stars) and Release Flow (romankurnovskii/BrewMate, 300 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Reproduce macOS Python Flavors?

Nuitka (a GitHub organization) maintains it in Nuitka/Nuitka, which has 15,182 GitHub stars. The repository holds 6 skills in this directory. The repository was last updated on October 9, 2026.

Source: Nuitka/Nuitka on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.