Claude Code Plugins

Community-maintained marketplace

Feedback

castella-packaging

@i2y/castella
34
19

Package Castella applications for distribution using ux, PyInstaller, or Nuitka. Create executables, macOS app bundles, and cross-compile for other platforms.

Install Skill

Shared

Installs to .agents/skills, used by Codex, Amp, Warp, Cursor, OpenCode, and more.

CodexAmp
Warp
CursorOpenCode
Cline
Gemini CLI
GitHub Copilot
Personal

Available across projects.

$npx skills-installer add @i2y/castella/castella-packaging --client shared
Project

Writes to .agents/skills.

$npx skills-installer add @i2y/castella/castella-packaging -p --client shared
Note: Review the skill instructions before using it.

SKILL.md

name castella-packaging
description Package Castella applications for distribution using ux, PyInstaller, or Nuitka. Create executables, macOS app bundles, and cross-compile for other platforms.

Castella App Packaging

When to use: "package Castella app", "create executable", "bundle for distribution", "macOS app bundle", "code signing", "cross-compile"

ux (Recommended)

ux creates single executables using uv. End users don't need Python installed.

Installation

uv tool install ux-py

Basic Usage

ux bundle --project . --output ./dist/

Configuration (pyproject.toml)

[tool.ux]
entry = "your_app"
include = ["assets/"]

[tool.ux.macos]
icon = "assets/icon.png"
bundle_identifier = "com.example.yourapp"
bundle_name = "Your App"

macOS App Bundle

# Signed .app bundle
ux bundle --format app --codesign --output ./dist/

# With DMG
ux bundle --format app --codesign --dmg --output ./dist/

# With notarization
ux bundle --format app --codesign --notarize --dmg --output ./dist/

Cross-Compilation

ux bundle --target linux-x86_64 --output ./dist/
ux bundle --target windows-x86_64 --output ./dist/

Supported Targets

Target PyPI
darwin-x86_64 Yes
darwin-aarch64 Yes
linux-x86_64 Yes
linux-aarch64 GitHub
windows-x86_64 Yes

PyInstaller

Alternative bundler:

uv add --dev pyinstaller
uv run pyinstaller --onefile --windowed your_app.py

Nuitka

Compiles Python to native code:

uv add --dev nuitka
uv run nuitka --standalone --onefile --disable-console your_app.py

Reference

  • docs/packaging.md - Full packaging documentation