diff --git a/skills/memobird/SKILL.md b/skills/memobird/SKILL.md index bb54b61..5df4017 100644 --- a/skills/memobird/SKILL.md +++ b/skills/memobird/SKILL.md @@ -9,36 +9,32 @@ Direct printing to the Memobird thermal printer on the local network. ## 📦 Installation -This skill requires Python 3 and several libraries. Install them using: +This skill uses [uv](https://docs.astral.sh/uv/) for dependency management. No manual installation of Python packages is required as dependencies are declared inline within the script. -```bash -pip install -r requirements.txt -``` - -*Note: Depends on `requests` and `Pillow`.* +Ensure you have `uv` installed on your system. ## 🚀 Usage -Use the `scripts/memobird_print.py` tool. By default, it targets the static IP `192.168.10.165`. +Use `uv run` to execute the script. `uv` will automatically create a temporary environment and install the required dependencies (`requests`, `Pillow`). ### 1. Print simple text ```bash -./scripts/memobird_print.py --text "Hello from Gemini!" +uv run skills/memobird/scripts/memobird_print.py --text "Hello from Gemini!" ``` ### 2. Print styled text ```bash -./scripts/memobird_print.py --text "IMPORTANT NOTE" --big --bold +uv run skills/memobird/scripts/memobird_print.py --text "IMPORTANT NOTE" --big --bold ``` ### 3. Print an image ```bash -./scripts/memobird_print.py --image "path/to/image.png" +uv run skills/memobird/scripts/memobird_print.py --image "path/to/image.png" ``` ### 4. Print a separator line ```bash -./scripts/memobird_print.py --line THICK +uv run skills/memobird/scripts/memobird_print.py --line THICK ``` ## 🛠️ Options diff --git a/skills/memobird/requirements.txt b/skills/memobird/requirements.txt deleted file mode 100644 index c0db057..0000000 --- a/skills/memobird/requirements.txt +++ /dev/null @@ -1,2 +0,0 @@ -requests -Pillow diff --git a/skills/memobird/scripts/memobird_print.py b/skills/memobird/scripts/memobird_print.py index 6f8fffc..bec34e9 100755 --- a/skills/memobird/scripts/memobird_print.py +++ b/skills/memobird/scripts/memobird_print.py @@ -1,4 +1,10 @@ #!/usr/bin/env python3 +# /// script +# dependencies = [ +# "requests", +# "pillow", +# ] +# /// import sys import os import json @@ -6,22 +12,8 @@ import base64 from io import BytesIO from random import randint import argparse - -# Dependency Check -MISSING_DEPS = [] -try: - import requests -except ImportError: - MISSING_DEPS.append("requests") -try: - from PIL import Image as PILImg, ImageOps -except ImportError: - MISSING_DEPS.append("Pillow (PIL)") - -if MISSING_DEPS: - print(f"Error: Missing dependencies: {', '.join(MISSING_DEPS)}") - print("Please install them using: pip install " + " ".join(["requests", "Pillow"])) - sys.exit(1) +import requests +from PIL import Image as PILImg, ImageOps # Default IP for Moritz's Memobird DEFAULT_HOST = "192.168.10.165"