Community이미지github.com

lowlightstudio/the-lineage

사진 한 장으로부터 그 사진이 속한 시대를 읽고, 1930년대부터 현재까지 107개의 시각적 룩을 따라 가계도를 그린 후, 아무도 만들지 않은 2027년의 새로운 룩을 제안합니다.

the-lineage란 무엇인가요?

THE LINEAGE는 LOWLIGHT STUDIO의 부서 중 하나로, 사용자가 제공한 사진의 빛, 입자, 프레이밍, 색상 등 10가지 특성을 기계 내에서 측정하고 분석합니다. 이 측정값을 기반으로 해당 사진이 어떤 시대(decade)에 속하는지 판별하고, 1930년대부터 2020년대까지 주요 영화, 촬영 감독, 사진가, 프로세스 등 107개의 명명된 룩으로 구성된 시각적 가계도를 그려냅니다. 이후 가계도의 방향성을 연구하여 라이브러리에 존재하지 않는 완전히 새로운 2027년 룩을 제안합니다. 이 룩에는 이름, 레시피, 각 선대 룩으로부터 물려받은 특성, 그리고 '기존 107개 룩 중 이렇게 따뜻하면서 입자가 거친 룩은 없다'는 식의 '갭(gap)' 증거가 포함됩니다. 이 스킬은 사용자의 기기에서 로컬로 실행되며, 마지막으로 제안된 룩을 사용자의 사진에 적용하는 이미지 생성만 Higgsfield 계정을 통해 사용자 승인 후 진행됩니다.

지원 대상✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/lowlightstudio/the-lineage/tree/HEAD

Installed? Explore more 이미지 skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

THE LINEAGE

사진 한 장이 입력됩니다. 스킬은 사용자 기기에서 열 가지 특성을 측정하고, 해당 특성이 어떤 시대에 속하는지 판독한 후 사진의 가계도를 작성합니다. 1930년대부터 2020년대까지, 줄기(trunk)에는 각 시대별 룩 하나씩, 그 옆으로 두 개의 가지(branches)가 더 있어, 각각 명명된 영화, 촬영 감독, 사진가, 캠페인 또는 프로세스와 그 룩이 포함된 이유를 제시합니다. 그런 다음 줄기의 방향성을 연구하여 라이브러리에 전혀 없는 룩이 위치할 자리에 2027년 가지를 생성합니다. 이 가지에는 이름, 레시피, 누구로부터 무엇을 물려받았는지, 그리고 그것이 갭(gap)임을 증명하는 문장(예: "107개 룩 중 이렇게 따뜻하면서 동시에 입자가 거친 룩은 없습니다")이 포함됩니다. 이 갭 문장이 핵심입니다. 이는 그 가지가 추측이 아닌, 아직 아무도 만들지 않은 룩임을 증명합니다.

가지 생성 이전까지의 모든 과정은 로컬 연산이며 비용이 들지 않습니다. 유일하게 생성(Generate)이 발생하는 부분은 사용자의 사진을 해당 가지의 룩으로 최종 재조명(re-light)하는 단계이며, 이는 사용자가 승인한 후 사용자의 Higgsfield 계정에서 실행됩니다.

설치

bash install.sh              # 스킬, 스튜디오 폴더, 선택적 도구 확인
bash install.sh --higgsfield # Higgsfield CLI + MCP도 함께 설치, 사용자 계정에서 생성 가능

표준 라이브러리 Python만 필요합니다. JPEG와 HEIC는 sips(macOS) 또는 ffmpeg를 통해 열리며, PNG는 추가 도구가 필요 없습니다.

실행 방법

사용자가 요청하면 Claude는 다음을 수행합니다:

  1. 사진 추적. python3 scripts/lineage.py trace "<photo>" --project "<project>" (JPG, PNG 또는 HEIC 파일; 프로젝트 기본값은 the-lineage). 빛, 입자, 프레이밍, 색상의 네 가지 판독값, 점수와 차점과 함께 해당 시대, 그리고 1930년대부터 현재까지의 줄기(trunk)와 각 룩이 사진과 공유하는 특성을 출력합니다. 사용자에게 먼저 시대를 알려주고, 그다음 가장 중요한 두세 개의 줄기 룩을 알려줍니다. "아주 근소한 차이(a close call)"라고 표시되면 두 시대를 모두 언급하세요. 그것이 정직한 판독입니다.
  2. 가지 생성. python3 scripts/lineage.py grow latest --project "<project>". 2027년 가지를 출력합니다: 이름과 설명, 레시피(빛, 색상, 검은색, 입자, 광학, 포맷), 어떤 룩으로부터 무엇을 물려받았는지, 그리고 갭(gap). 사용자가 다른 옵션을 원하면 --seed 1 (2, 3…)을 사용하여 동일한 규칙으로 다른 갭을 찾습니다.
  3. 내보내기. python3 scripts/lineage.py export latest --project "<project>" 는 trees/<id>.svg (인쇄 가능한 포스터: 1930년대부터 올라가는 줄기와 꼭대기의 진홍색 2027 새싹), trees/<id>.json (모든 숫자 데이터) 및 trees/<id>-branch.md (레시피가 포함된 가지 카드)를 작성합니다. 포스터를 열고(open <file> (Mac)), 무엇을 먼저 볼지 한 줄로 말하세요: 새싹과 그 바로 아래 줄기 룩입니다.
  4. 생성 전에 멈추고 질문. 오직 사용자가 자신의 사진에 가지를 적용하길 원할 때만 진행합니다. python3 scripts/lineage.py request latest --project "<project>" 는 하나의 이미지 편집 요청을 작성합니다. 사용자에게 이는 한 번의 생성이며 Higgsfield 요금제에서 얼마의 비용이 드는지 알리고, 승인을 기다립니다. 그런 다음 아래 명령어를 실행하고 python3 scripts/lineage.py status latest --project "<project>" 로 결과를 확인합니다.

노드 설명: python3 scripts/lineage.py node <id> 는 룩 전체 정보를 출력합니다(가계도에 포함된 이유, 전달하는 특성, 관련 인물, 찾을 수 있는 곳, 부모 룩). python3 scripts/lineage.py library --decade 1970 은 해당 시대의 룩 목록을 보여줍니다. 사용자 참조 추가: python3 scripts/lineage.py add --name "..." --year 1994 --why "..." --image ref.jpg 는 이미지를 측정하고 그 후 모든 트리에 대해 해당 룩을 사용자의 가계도에 추가합니다(참조는 기기 전체에 적용되며 프로젝트별로 저장되지 않습니다. --project 옵션은 허용되지만 무시됩니다).

번들된 예제로 테스트해보세요 (비용 없음): python3 scripts/lineage.py example --project demo (또는 두 번째 스틸 사진의 경우 --photo pool). 이 기기에서 작동하는지 확인하려면: python3 scripts/selftest.py.

결과 판단 방법

  • 약한 근거에 대해 경고. 인물, 눈에 띄는 광원 또는 스튜디오 조명이 없으면 측정기가 잡을 대상이 부족합니다. 줄기 전체에서 일치도가 30% 미만이면 사진이 적합하지 않다는 의미이므로, 사용자가 트리를 역사로 읽기 전에 알려주세요.
  • 시대는 판독일 뿐, 최종 판결이 아닙니다. 25% 이상의 점수와 차점과의 명확한 차이는 확실한 판독을 의미합니다. 5포인트 미만의 차이는 근소한 차이이며 두 시대 모두 가능합니다. 사진을 재압축하면 입자가 변하여 결과가 달라질 수 있습니다.
  • 줄기 룩의 자격 은 사진과 두 가지의 뚜렷한 특성을 공유할 때(shares 라인) 주어지며, 단순히 색상 하나만 공유해서는 안 됩니다. 50% 이상의 일치도는 가까운 친척 관계입니다. 30% 미만이면 해당 시대에 더 가까운 룩이 없었다는 의미이므로 그렇게 말해주세요.
  • 좋은 가지 는 갭 문장이 라이브러리 내 어떤 룩도 동시에 가지고 있지 않은 강력한 특성 쌍을 명명하고, 가장 가까운 기존 룩과의 일치도가 70% 이하이며, 사진의 프레임을 유지할 때 좋습니다. 레시피가 필름 특성과 모순되는 가지(예: 흑백에 분할 톤 적용)는 거부하고 다른 시드(seed)로 다시 생성하세요.
  • 실선은 문서화된 영향 관계를, 점선은 특성의 유사성을 나타냅니다. 점선을 역사적 사실로 제시하지 마십시오.
  • 로컬 숫자는 트리 JSON에서 확인할 수 있는 계산값입니다. references/method.md 는 모든 계산과 그 한계를 설명합니다. library/reading-card.md 는 육안으로 동일한 판독을 수행하는 방법입니다.

사용자 Higgsfield 계정에서 생성하기

이 스킬은 자체적으로 생성되지 않습니다. request 명령어는 ~/LOWLIGHT STUDIO/<project>/requests/<id>.json (프롬프트, 참조용 사용자 사진, 종횡비)을 작성합니다. Claude는 사용자로 로그인된 Higgsfield MCP를 통해 이를 실행한 후 결과를 정리합니다:

python3 scripts/studio_bus.py requests <project>
python3 scripts/studio_bus.py receive <project> <id> <다운로드된 파일>

이는 이미지 편집입니다. 프롬프트는 오직 가지의 빛, 색상 및 필름 표면만을 설명합니다. 사용자 요금제에서 제공하는 편집 모델(예: Nano Banana Pro 또는 Seedream 편집 모델이 잘 작동합니다)을 사용하세요. 실행 전에, 사용자에게 몇 번의 생성이 필요하고 요금제에서 얼마의 비용이 발생할지 알리고 승인을 기다리세요. 자세한 내용은 references/generation.md 를 참조하세요.

다른 부서와의 연동

references/studio.md 를 참조하세요. The Eye 부서가 존재할 경우 taste(취향)를 읽어들여(선호, 기피 정보가 2027 가지가 생성되는 위치에 영향을 줍니다. 가지 결과물에는 taste_used 라고 표시됩니다.) lineage를 게시합니다: 마지막 12개의 트리와 각각의 노드 및 가지 정보로, The Eye에서 추가 덱(decks)으로 사용할 수 있습니다. 다른 부서가 없어도 정상 작동합니다.

파일

경로설명
scripts/lineage.py핵심 엔진 및 명령줄: example, trace, grow, export, request, status, trees, library, node, add
scripts/meter.py사진 측정기: 열 가지 특성, 판독값, 팔레트, 포맷 (python3 scripts/meter.py photo.jpg --brief)
scripts/demo_photo.py코드로 두 개의 예시 스틸 사진을 생성합니다 (아무 사진도 번들로 포함되지 않음)
scripts/selftest.py합성 사진과 예제를 사용한 건식 실행: python3 scripts/selftest.py
library/lineage.json107개 룩, 1930년대~2020년대: 인물, 이유, 특성, 팔레트, 부모 룩
library/examples/두 개의 예시 스틸 사진, 코드로 생성됨 (README 참조)
library/reading-card.md벽이나 휴대폰에서 사진을 육안으로 판독하는 방법
references/method.md측정기, 시대 판별, 줄기 및 갭 계산 방법과 한계
references/library.md룩 작성 방법, 추가 또는 수정 방법
references/generation.mdHiggsfield 설정 및 요청 구성 방법
references/studio.mdTHE STUDIO 부서 간 공유 버스

출력물은 ~/LOWLIGHT STUDIO/<project>/ 디렉토리 안에 저장됩니다: trees/, requests/, received/.

관련 스킬