본문으로 건너뛰기
cccskills
무료GitHub에 공개

media_library

Find personal photos in an uploaded library or connected device gallery using descriptions, dates, and locations. Inspect candidate photos and their capture details to identify the image relevant to a request.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

원문원문 설명 보기

Search and inspect the user's photo library, including connected device galleries. Use for photo requests and whenever a photo could ground or personalize a response; lookups of uploaded photos are cheap, so check opportunistically and move on if nothing fits.

설치 방법 보기

이럴 때 유용합니다

  • Finding photos from a trip or event
  • Searching for photos taken near a specific place
  • Checking photo details and capture dates
  • Finding personal photos in a connected device gallery

포함된 파일(1)

  • SKILL.md5.7 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Media Library

Purpose

Find the user's photos in Jarvis's uploaded library or a connected device gallery. The media-library CLI covers uploaded photos only.

Device Photos

Search connected galleries for explicit gallery requests, or when uploaded or attached images are insufficient for a personal photo request.

  1. Discover. Call device.list, then device.describe. Choose a reachable device advertising photos.search in commands: user-named first, then is_request_origin, then another phone. Clarify ambiguity.
  2. Search. Invoke photos.search, narrowing with its advertised filters; albums mean folders. Respect permission denial and retry after required setup succeeds. Follow pagination and report incomplete coverage rather than claiming no matches.
  3. Upload. Search returns metadata. For viewing or comparison, upload a shortlist using the advertised commands. Wait for completion and account for partial failures; acceptance is not completion.
  4. Locate. After completion, run /opt/hatch/bin/media-library recent --limit 20 for paths/IDs. Match capture dates, filenames, and GPS against device results; use get for details and date/GPS searches for older or already-uploaded photos. Filenames or recency alone cannot prove identity. Read confidently matched images; report uncertainty rather than guessing paths.

Tooling

Use exec to run /opt/hatch/bin/media-library <subcommand> [options] for uploaded photos.

Subcommands:

  • stats — library overview (total count, date range, description status)
  • search [--query "<terms>"] [--after YYYY-MM-DD] [--before YYYY-MM-DD] [--lat <f64>] [--long <f64>] [--radius <km>] [--has-gps] [--path <prefix>] [--limit N] — when --query is present, FTS ranked by BM25; otherwise structured filtering sorted by taken date
  • recent [--limit N] — latest uploads by upload time (default 20, max 50)
  • scan [--ids <id1,id2,...>] [--query "<terms>"] [--after YYYY-MM-DD] [--before YYYY-MM-DD] [--limit N] — richer summaries with full descriptions; requires at least one narrowing option (any of the flags above, including --limit alone)
  • get <media_id> — full detail for one photo (JSON)

Output contract:

  • stats: plain text with Total photos, Date range, and description status counts (ready, pending, failed, rejected).
  • search: each result line: <media_id> | <path> | <date> | [<location> |] <summary_short>, with optional match: snippet below.
  • recent: same compact format as search, without match snippets.
  • scan: text blocks per item: media_id, path, date, location, summary, detail.
  • get: JSON with media_id, rel_path, mime_type, size_bytes, taken_at_local, taken_at_local_date, gps_latitude, gps_longitude, location_text, location_json, exif_json, description_status, description (nested: summary_short, summary_full, people_text, activity_text, objects_text, ocr_text, location_hint_text).

The path field in results is relative to the home directory.

Operating Rules

  1. Workflow. stats on first use → search or recent → scan for richer detail on candidates → get for full info → read the image only if the user wants to see it or the description is insufficient. Most queries can be answered from descriptions alone.
  2. Stats interpretation. If total is 0, the uploaded library is empty or not set up yet — mention this briefly and check a connected device gallery, if available, for personal photo requests. If total is low (under ~20), note the library is small. If many are pending, text search will miss undescribed items — prefer recent or date-filtered searches instead.
  3. Opportunistic vs primary use. When the media library may help answer the question, do a quick probe — stats plus a search or recent — and move on if nothing useful comes back. When the user is explicitly asking to find, show, identify, date, or locate a photo, treat the media library as a primary source and iterate harder with multiple searches, scan, and get.
  4. Uploaded-library searches are cheap local PostgreSQL lookups (typically milliseconds). Don't hesitate to run many queries — try different terms, filters, and angles until you find what the user is looking for.
  5. FTS semantics. Bare terms are joined with implicit OR, ranked by BM25 (more matching terms = higher rank). AND/OR/NOT are supported. Terms are prefix-matched after punctuation stripping. Adding more OR terms makes results broader, not narrower — to narrow, use AND, date filters, or GPS filters instead.
  6. Start with the user's words, not guessed content. Broaden with synonyms, context from memory or conversation, or related terms only after direct queries come up short or return irrelevant results.
  7. Location. Geocoded city/county, state, and country names are in the search index — search --query "Tokyo" works. For GPS proximity, call map.geocode with the place as query, then use the returned coordinates with search --lat <lat> --long <lon> --radius <km> (scale: 0.1 for a spot, 5 for a neighborhood, 50 for a metro area).
  8. People. Use physical descriptions ("woman in red dress"), not names.
  9. Memory. Cross-reference memory for dates and locations when the user mentions events or trips.
  10. When finding a specific photo, show what you found and confirm it's the right one.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

3d-object

무료

Create a 3D object with three.js, inspect it from every angle in an interactive viewer, and download it as OBJ + MTL or GLB for use in other 3D applications.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Create a 3D object and inspect it from every angle
  • Export a model for further editing in Blender
  • Review an object's silhouette and materials
asgeirtj/system_prompts_leaks7만2026년 10월 20일 업데이트

Maintain a private task list with deadlines, next steps, waiting parties, and blockers. Update progress and dependencies, merge duplicate items, and archive closed tasks so ongoing commitments stay clear and easy to follow.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Record tasks and commitments with deadlines
  • Track pending replies and reasons work cannot proceed
  • Update task dependencies when prerequisites are completed
asgeirtj/system_prompts_leaks7만2026년 10월 20일 업데이트

agents

무료

Coordinate a task from a verifiable goal through completion. Handle work directly or split independent tasks across separate agent sessions, track progress, verify results, and arrange pull request merging when included in the goal.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Split independent tasks across agents
  • Check progress across ongoing tasks
  • Resume a previously started project
asgeirtj/system_prompts_leaks7만2026년 10월 20일 업데이트

Create animated HTML pages with smooth scene transitions and playback controls. An editable timeline lets users adjust scene lengths and speeds, with fixed landscape or portrait layouts prepared for video export.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Create an animated product walkthrough
  • Explain a message through moving text and graphics
  • Build a portrait animation for video export
asgeirtj/system_prompts_leaks7만2026년 10월 20일 업데이트

Review synced Apple Health records, including steps, heart rate, sleep, and workouts. Retrieve daily summaries or detailed samples for a chosen period, and check sync status and missing data before interpreting the results.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Review daily steps and heart rate over time
  • Check sleep stages, duration, and awakenings
  • Review workout duration, distance, and calories
asgeirtj/system_prompts_leaks7만2026년 10월 20일 업데이트

Create and edit Word documents and templates, reorganize text, replace images, and work with tracked changes or comments. Apply proper headings and lists, then render every page to check its appearance before delivery.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Create a structured Word document
  • Reorganize content in an existing document
  • Replace images or text in a document
asgeirtj/system_prompts_leaks7만2026년 10월 20일 업데이트

asgeirtj의 스킬 모두 보기

이 스킬의 문제 신고