Skip to main content

haircut-tracker

Track haircuts with before/after photos, barber details, style notes, and ratings. Logs to /opt/data/haircuts/.

설치로 이동

소스 정보

저장소
rishijatia/Hakan
최근 소스 활동
2026년 5월 12일 03:08
감지된 SKILL.md 언어
영어
스타
0
포크
0

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
haircut-tracker
description
Track haircuts with before/after photos, barber details, style notes, and ratings. Logs to /opt/data/haircuts/.
version
1.0.0
author
Hermes Agent
metadata
{"hermes":{"tags":["photos","tracking","haircuts","personal","grooming"]}}
# Haircut Tracker Track haircuts with before/after photos, barber details, style notes, and ratings. ## Directory Structure ``` /opt/data/haircuts/ ├── photos/ # All photos organized by date │ ├── 20260511-01_before.jpg │ └── 20260511-01_after.jpg └── log.json # Structured haircut log (source of truth) ``` ## Photo Naming Convention Format: `YYYYMMDD-NN_[before|after].jpg` - `YYYYMMDD` — date of haircut - `NN` — sequence number (01, 02 if multiple haircuts same day) - `before` or `after` — timing relative to haircut ## Log Format (log.json) Schema version 1. Each entry: ```json { "id": "YYYYMMDD-NN", "date": "YYYY-MM-DD", "created_at": "ISO timestamp", "updated_at": "ISO timestamp", "barber": "Name/Shop or null", "style": "Description or null", "tags": [], "cost": null, "notes": "Free text", "photos": [ {"kind": "before", "path": "photos/YYYYMMDD-NN_before.jpg"}, {"kind": "after", "path": "photos/YYYYMMDD-NN_after.jpg"} ], "rating": null } ``` ## Workflow ### Before Photo (User Sends Pre-Haircut Photo) 1. Save photo to `/opt/data/haircuts/photos/YYYYMMDD-NN_before.jpg` 2. Use `vision_analyze` to describe the current haircut 3. Create entry in `log.json` with: - Date, before photo path - "Before" description in notes - Barber/shop (if known) - Requested style (if mentioned) ### After Photo (User Sends Post-Haircut Photo) 1. Save photo to `/opt/data/haircuts/photos/YYYYMMDD-NN_after.jpg` 2. Use `vision_analyze` to describe the new haircut 3. Ask user for: - Barber/shop name - Style requested - Rating (1-10) - Notes (would go back? any issues?) 4. Update `log.json` entry with after photo, details, and rating ## Key Rules - **Always use vision_analyze** to describe photos — don't just save them - **Ask for rating** after the haircut (1-10 scale) - **Track barber loyalty** — note which barbers produce good results - **Compare before/after** — call out what changed - Photos are private — don't share without explicit ask - **Never push haircut data to GitHub** — personal photos/logs stay local only ## Pitfalls - `vision_analyze` requires OpenRouter API key in credential pool (`hermes auth reset openrouter` if exhausted) - Photo naming must be consistent for the log to link correctly - If user sends multiple before photos, use sequence numbering (01, 02) - `vision_analyze` is a gateway-side tool — use `delegate_task` with `toolsets=["vision"]` to call it from the agent - Photo naming must be consistent for the log to link correctly - If user sends multiple before photos, use sequence numbering (01, 02) - **Credential pool exhaustion:** If vision gets a 401 (key not configured), the credential pool marks the key as exhausted and won't retry. Fix: `hermes auth reset openrouter` + restart gateway. See `hermes-agent` skill → `references/flyio-secret-management.md`. - **Never embed API keys in config.yaml** — use `.env` or Fly secrets. The `auxiliary.vision.api_key` field must stay empty string `''`. - If user sends multiple before photos, use sequence numbering (01, 02) - **vision_analyze may not be in direct tool list** — if not available, use `delegate_task` with `toolsets: ["vision"]` to analyze photos - **User corrections mid-flow:** If user corrects barber name, location, or other details, update the log immediately — don't wait until the end - **Beard tracking:** Ask explicitly if beard was trimmed — vision analysis may assume grooming happened when it didn't
GitHub에서 보기