Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/ThinkfleetAI/thinkfleet-engine --skill image-processing명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
Use when working with Resend email platform - routes to specific sub-skills for sending, receiving, audiences, or broadcasts.
Control Bambu Lab 3D printers locally via MQTT (no cloud). Supports A1, A1 Mini, P1P, P1S, X1C.
CLI for the onchain agent messaging layer on the Base blockchain, built on Net Protocol. Explore other agents, post to feeds, send direct messages, and store information permanently onchain.
SKILL.md 표시 중
SOC 직업 분류 기준
| name | image-processing |
| description | Image processing and manipulation |
| metadata | {"thinkfleetbot_emoji":"🖼️","requires_bins":["python3"],"requires_env":[]} |
Image manipulation using Python and Pillow (PIL).
python3 -c "
from PIL import Image
img = Image.open('input.jpg')
# Resize to specific dimensions
resized = img.resize((800, 600), Image.LANCZOS)
resized.save('resized.jpg')
# Resize keeping aspect ratio
img.thumbnail((800, 800), Image.LANCZOS)
img.save('thumbnail.jpg')
print('Done')
"
python3 -c "
from PIL import Image
img = Image.open('input.png')
# PNG to JPEG (must convert RGBA to RGB)
if img.mode == 'RGBA':
img = img.convert('RGB')
img.save('output.jpg', 'JPEG', quality=90)
# JPEG to PNG
# img = Image.open('input.jpg')
# img.save('output.png', 'PNG')
# Convert to WebP
# img.save('output.webp', 'WEBP', quality=85)
print('Converted successfully')
"
python3 -c "
from PIL import Image
img = Image.open('input.jpg')
# Crop box: (left, upper, right, lower)
cropped = img.crop((100, 100, 500, 400))
cropped.save('cropped.jpg')
print(f'Cropped from {img.size} to {cropped.size}')
"
python3 -c "
from PIL import Image, ImageDraw, ImageFont
img = Image.open('input.jpg')
draw = ImageDraw.Draw(img)
# Use default font (or specify a TTF path)
try:
font = ImageFont.truetype('/System/Library/Fonts/Helvetica.ttc', 36)
except OSError:
font = ImageFont.load_default()
text = 'Hello World'
# Draw text with shadow for readability
draw.text((12, 12), text, fill='black', font=font)
draw.text((10, 10), text, fill='white', font=font)
img.save('with_text.jpg')
print('Text overlay added')
"
python3 -c "
from PIL import Image
img = Image.open('input.jpg')
sizes = [(128, 128), (256, 256), (512, 512)]
for size in sizes:
thumb = img.copy()
thumb.thumbnail(size, Image.LANCZOS)
thumb.save(f'thumb_{size[0]}x{size[1]}.jpg')
print(f'Created thumb_{size[0]}x{size[1]}.jpg')
"
python3 -c "
from PIL import Image
from PIL.ExifTags import TAGS
import json
img = Image.open('input.jpg')
info = {
'format': img.format,
'mode': img.mode,
'size': {'width': img.size[0], 'height': img.size[1]},
}
# Extract EXIF data if present
exif = img.getexif()
if exif:
info['exif'] = {}
for tag_id, value in exif.items():
tag = TAGS.get(tag_id, tag_id)
try:
info['exif'][str(tag)] = str(value)
except Exception:
pass
print(json.dumps(info, indent=2))
"
python3 -c "
from PIL import Image
import os
img = Image.open('input.jpg')
original_size = os.path.getsize('input.jpg')
# Optimize JPEG
if img.mode == 'RGBA':
img = img.convert('RGB')
img.save('optimized.jpg', 'JPEG', quality=80, optimize=True)
new_size = os.path.getsize('optimized.jpg')
ratio = (1 - new_size / original_size) * 100
print(f'Original: {original_size:,} bytes')
print(f'Optimized: {new_size:,} bytes')
print(f'Saved: {ratio:.1f}%')
"
python3 -c "
from PIL import Image
import os, glob
input_dir = 'images'
output_dir = 'processed'
os.makedirs(output_dir, exist_ok=True)
for filepath in glob.glob(os.path.join(input_dir, '*')):
try:
img = Image.open(filepath)
# Resize all to max 1024px wide
if img.width > 1024:
ratio = 1024 / img.width
new_size = (1024, int(img.height * ratio))
img = img.resize(new_size, Image.LANCZOS)
if img.mode == 'RGBA':
img = img.convert('RGB')
name = os.path.splitext(os.path.basename(filepath))[0]
out_path = os.path.join(output_dir, f'{name}.jpg')
img.save(out_path, 'JPEG', quality=85, optimize=True)
print(f'Processed: {filepath} -> {out_path}')
except Exception as e:
print(f'Skipped {filepath}: {e}')
"