agentsclimarketplace

P6a

Skill partoska/p6a-skills/skills/p6a

Bring Partoska to your AI agent. A skill for managing event photos through the p6a CLI and the Partoska MCP server, covering setup, sync, automation, moderation, and design assets like QR stands and invitations.

Install
npx -y skills add partoska/p6a-skills --skill p6a

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Construct p6a CLI commands and workflows for Partoska.com photo-sharing — install and login, list/create/update events, upload and moderate media, download photos in full quality, bulk sync, QR codes and share cards, shell scripts and cron jobs, and design event assets.

The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

10.5 KB, as published. Nobody here has run it

p6a CLI Skill

Usage

  • /p6a — describe what you want to do; the assistant will figure out the right command
  • /p6a sync my photos to ~/backup — get the exact command to run
  • /p6a script to back up all my favorite events nightly — get a shell script
  • /p6a make a QR stand for event B-Day — design an asset using event data

What This Skill Does

This skill makes you an expert on the p6a command-line tool for Partoska.com — a photo-sharing service for events. p6a runs anywhere a shell runs — interactive terminals, shell scripts, cron jobs, CI/CD pipelines — and covers authentication, event management, media upload/download/moderation, full-quality bulk sync, and sharing via invite links, QR codes, and printable cards.

Setup

p6a requires a one-time install and OAuth login. When the user asks how to install, download, update, verify, or log in — or a command fails with p6a: command not found or an auth error — read references/install.md; it covers npm and platform-specific installers, release-asset selection, checksums, the login flow, and troubleshooting. If the user's environment cannot install software or open a browser for login, the task isn't possible with p6a in that environment — say so rather than improvising.

Quick sanity check on an already-set-up machine:

p6a version   # binary installed and on PATH
p6a list      # credentials valid — prints accessible events

Design Tasks

Partoska users frequently ask for design assets tied to their events — QR stands, posters, tickets, invitations, static HTML pages, slideshow slides, and photo-driven pieces like collages or photo recaps. When the user requests any of these, load references/design.md first before producing anything. It covers vibe inference from event metadata, asset-specific conventions (what should dominate, what to ask about, when not to promote Partoska), and how to incorporate full-quality event photos via p6a download.


Command Reference

Windows note: The shell examples below use Bash syntax. On Windows, use PowerShell or .bat equivalents unless you are running inside MSYS2, Git Bash, Cygwin, or WSL — in those environments the Bash examples work as-is.

Authentication

p6a login                          # Start OAuth device flow — opens a browser prompt
p6a login -i config.ini            # Import credentials from an existing INI file
p6a logout                         # Clear saved credentials

List Events

p6a list                           # All accessible events (plain table)
p6a list -q "Birthday"             # Filter by name
p6a list -o                        # Only events you own
p6a list -f                        # Only favorited events
p6a list -F json                   # JSON output (pipe to jq)
p6a list -F csv                    # CSV output
p6a list -1                        # IDs only, one per line (pipe-friendly)

Sync All Events

p6a sync -t ./photos               # Download all events into organized subdirs
p6a sync -t ~/backup -o            # Only events you own
p6a sync -t ~/backup -f            # Only favorited events

Sync creates one subdirectory per event, named YYYY-MM-DD Event Name, and skips files already downloaded. It is safe to run repeatedly.

Create & Update Events

p6a create -n "Summer BBQ"                              # New event, print table row
p6a create -n "Summer BBQ" -1                           # New event, print ID only

p6a update -e <event-id> -n "New Name"                 # Rename event
p6a update -e <event-id> -p                            # Make public
p6a update -e <event-id> -P                            # Make private
p6a update -e <event-id> -f                            # Mark as favorite
p6a update -e <event-id> -F                            # Unmark favorite
p6a update -e <event-id> -m                            # Enable upload moderation
p6a update -e <event-id> -M                            # Disable upload moderation
p6a update -e <event-id> -S 2025-06-01T12:00:00        # Set start date/time
p6a update -e <event-id> -E 2025-06-01T18:00:00        # Set end date/time

Dates use ISO 8601 format. Multiple update flags can be combined in one call.

Edit & Approve Media

# Favorite / unfavorite a media item
p6a edit -e <event-id> -m <media-id> -f    # mark as favorite
p6a edit -e <event-id> -m <media-id> -F    # unmark favorite

# Approve a media item in a moderated event (requires moderator permission)
p6a approve -e <event-id> -m <media-id>

Download Media

# Download all media for an event
p6a download -e <event-id> -t ./photos

# Download only your own uploads
p6a download -e <event-id> -t ./photos -o

# Download only favorited media
p6a download -e <event-id> -t ./photos -f

# Download a single media item by ID
p6a download -e <event-id> -m <media-id> -t ./output.jpg

Files are named IMG_0001.jpg, MOV_0001.mp4, etc., sequentially from existing files.

Upload a Photo

Upload a media file to an event. Prints the returned media UUID on success.

p6a upload -e <event-id> -s photo.jpg

On moderated events, uploaded media are created as unapproved and won't be visible to other guests until a moderator runs p6a approve.

List Media in an Event

p6a media -e <event-id>            # Plain table
p6a media -e <event-id> -F json    # JSON (pipe to jq)
p6a media -e <event-id> -1         # IDs only
p6a media -e <event-id> -o         # Only your uploads
p6a media -e <event-id> -f         # Only favorited items

Share an Event

p6a link -e <event-id>                           # Print invite URL to stdout
p6a qr -e <event-id>                             # Download QR code as <id>-qr.png
p6a qr -e <event-id> -t invite.png               # Download QR code to custom file
p6a qr -e <event-id> -F svg                      # SVG format instead of PNG

Download a Share Card

Pre-built themed cards containing the event QR code, intended to prompt guests to upload photos. Not a general-purpose design tool — for custom assets see references/design.md.

p6a card -e <event-id> -d bday                   # Birthday/anniversary theme (PDF)
p6a card -e <event-id> -d tech                   # Corporate/conference theme (PDF)
p6a card -e <event-id> -d match                  # Sport/tournament theme (PDF)
p6a card -e <event-id> -d forest                 # Outdoor/nature theme (PDF)
p6a card -e <event-id> -d garden                 # Garden/floral theme (PDF)
p6a card -e <event-id> -d gold                   # Luxury/elegant theme (PDF)
p6a card -e <event-id> -d romantic               # Romantic/wedding theme (PDF)
p6a card -e <event-id> -d silver                 # Cool/modern elegant theme (PDF)
p6a card -e <event-id> -d neon                   # Party/nightlife theme (PDF)
p6a card -e <event-id> -d nineties               # Retro/1990s theme (PDF)

p6a card -e <event-id> -d bday -F jpg            # JPEG instead of PDF
p6a card -e <event-id> -d bday -t card.pdf       # Custom output file
p6a card -e <event-id> -d tech -b                # White background (no-background mode)
p6a card -e <event-id> -d forest -l cs -L business -p letter  # Czech, tiled layout

Supported card options are locale en (default) or cs, layout single (default) or business, and paper size a4 (default) or letter. Downloading a share card requires organizer (admin) access.

Global Help and Configuration

InvocationDescription
-D, --dir <path>Use a custom config directory on supported commands (default: ~/.p6a)
p6a help, p6a -h, p6a --helpShow top-level command help

Common Workflows

Workflow: Nightly Backup Script

#!/usr/bin/env bash
set -euo pipefail
p6a sync -t ~/backup
echo "Sync complete: $(date)"

Schedule with cron: 0 2 * * * /path/to/backup.sh

Workflow: Export Events to CSV

p6a list -F csv > events.csv
p6a list -q "Birthday" -F csv > birthday-events.csv   # filtered

Workflow: Inspect Events with jq

# Pretty-print all events as JSON
p6a list -F json | jq .

# Extract just names and IDs
p6a list -F json | jq '.[] | {id: .id, name: .name}'

# Get IDs of all public events you own
p6a list -F json | jq -r '.[] | select(.public == true and .owner == true) | .id'

# Get IDs of moderated events (uploads need approval before becoming visible)
p6a list -F json | jq -r '.[] | select(.moderated == true) | .id'

# List unapproved media items for an event
p6a media -e <event-id> -F json | jq '.[] | select(.approved == false)'

Workflow: Download Media from Multiple Events

p6a list -1 | xargs -I{} sh -c 'mkdir -p ./media/{} && p6a download -e {} -t ./media/{}'

Workflow: Find and Download Media from an Event (PowerShell / Windows)

# Find an event by name and download its media (no Bash required)
$eventId = p6a list -q "Birthday" -1 | Select-Object -First 1
p6a download -e $eventId -t .\photos

Workflow: Upload Multiple Photos

EID=12cafe34-5b8a-4d2e-9f01-0203a4b5c6d7
for f in *.jpg; do
  p6a upload -e "$EID" -s "$f"
done

Workflow: Approve All Pending Media in a Moderated Event

EID=12cafe34-5b8a-4d2e-9f01-0203a4b5c6d7
p6a media -e "$EID" -F json | \
  jq -r '.[] | select(.approved == false) | .id' | \
  xargs -I{} p6a approve -e "$EID" -m {}

Workflow: Find and Share an Event

# Get event ID by name, then print QR and invite link
EVENT_ID=$(p6a list -q "Birthday" -1 | head -1)
p6a qr -e "$EVENT_ID" -t birthday-qr.png
p6a link -e "$EVENT_ID"

Tips

  • Use -1 / --format one to get IDs suitable for shell scripting.
  • p6a sync is idempotent — safe to run repeatedly without re-downloading.
  • Event IDs are UUIDs (e.g., 12cafe34-5b8a-4d2e-9f01-0203a4b5c6d7); use p6a list -1 to retrieve them.
  • Use -D to maintain separate credential profiles for different Partoska accounts.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.