Small, cross-platform CLI for builders.
CozyUtils
CozyUtils is a utility package designed to streamline the tedious and repetitive tasks I find myself doing on almost every project. It streamlines asset workflows and helps generate Git commit and PR messages.
SVG to TSX
Convert SVGs into React components, normalize attributes, and generate a clean export index.
Image Export Index
Scan a directory and emit named exports for image assets in a single index file.
Commit & PR Messages
Generate commit and PR messages from git diffs using Gemini models, with clipboard support.
Cross-platform Builds
Target macOS (Intel/Apple Silicon), Linux, and Windows with size-focused release builds.
Quick install
./install.sh
cargo build --release
# binary: target/release/cozyutilsUsage
./cozyutils -svg2tsx ./icons --dry-run
./cozyutils -img2export ./icons ./index.ts
./cozyutils -prmsg --base=origin/dev --clipboardCommands
-svg2tsx <directory> [--ext=.svg] [--dry-run] [--force] [--no-move]-img2export <directory> <output_file> [--ext=.svg,.png] [--dry-run]-cmsg [--out=path] [--model=gemini-3-flash-preview] [--clipboard] [--clipboard-only] [--commit]-prmsg [--base=origin/dev] [--out=path] [--model=gemini-3-flash-preview] [--clipboard] [--clipboard-only] [--setup]Gemini API key setup
The PR and commit message commands read the API key from the `GEMINI_API_KEY` environment variable, or from `~/.cozyutils/config.json`. You can create the config with:
./cozyutils -prmsg --setup --key=YOUR_KEY