CommunityImagemgithub.com

lowlightstudio/the-lineage

A LÓGICA (THE LINEAGE), um departamento do LOWLIGHT STUDIO (THE STUDIO). Lê uma fotografia na máquina do usuário (luz, granulação, enquadramento, cor), descobre a década a que seu visual pertence, traça sua árvore genealógica visual até 1930 através de 107 looks nomeados (filmes, cinegrafistas, fotógrafos, processos), e cultiva o próximo ramo: um visual de 2027 que nenhuma entrada da biblioteca possui, com sua receita, um pôster imprimível da árvore e uma solicitação de geração para a conta Higgsfield do usuário.

O que é the-lineage?

THE LINEAGE é uma skill especializada para agentes de IA como Claude Code, Cursor ou Codex, que analisa fotografias do usuário e as conecta a uma linhagem visual que remonta a 1930. A skill mede dez características da imagem (luz, granulação, enquadramento e cor) no hardware local, determina a década dominante do visual e constrói uma árvore genealógica com 107 looks nomeados — incluindo filmes, cinegrafistas, fotógrafos e processos — justificando cada conexão. Em seguida, projeta um ramo para 2027: um visual inédito que não existe na biblioteca, com uma receita detalhada e a prova de que é uma lacuna genuína (ex: "Nenhum dos 107 looks é tão quente e tão granulado ao mesmo tempo"). O processamento inicial é totalmente local, sem custos; apenas a geração final da imagem recriada no visual de 2027 é enviada para a conta Higgsfield do usuário, após confirmação explícita. A skill suporta macOS (via sips) e qualquer sistema com ffmpeg, lê JPEG, PNG e HEIC, e inclui scripts para traçar, crescer, exportar e solicitar o resultado.

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

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

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

A LÓGICA (THE LINEAGE)

Uma fotografia é inserida. A skill mede dez características na máquina do usuário, descobre a década a que essas características pertencem e constrói a árvore genealógica da foto: um look por década no tronco, dos anos 1930 aos 2020, mais dois ao lado como ramos, cada um sendo um filme, cinegrafista, fotógrafo, campanha ou processo nomeado, com a razão de sua inclusão. Em seguida, estuda a direção do tronco e cultiva um ramo de 2027 no lugar onde a biblioteca não tem look algum: um nome, uma receita, o que herda de quem e a prova de que é uma lacuna ("Nenhum dos 107 looks é tão quente e tão granulado ao mesmo tempo"). Essa frase de lacuna é a assinatura: é o que torna o ramo um look que ninguém fez ainda, não um palpite.

Tudo até o ramo é aritmética local e não custa nada. A única coisa que gera é a re-iluminação final da própria foto do usuário nesse ramo, e ela roda na conta Higgsfield do usuário após ele dizer sim.

Instalação

bash install.sh              # a skill, sua pasta studio, uma verificação das ferramentas opcionais
bash install.sh --higgsfield # também a CLI + MCP do Higgsfield, para gerar na sua própria conta

Apenas Python da biblioteca padrão. JPEG e HEIC são abertos via sips (macOS) ou ffmpeg; PNG não precisa de nada.

Como executar

Quando o usuário solicitar, Claude:

  1. Traça a foto. python3 scripts/lineage.py trace "<foto>" --project "<projeto>" (qualquer JPG, PNG ou HEIC; o projeto padrão é the-lineage). Imprime as quatro leituras (luz, granulação, enquadramento, cor), a década com sua parcela da pontuação e o segundo colocado, e o tronco dos anos 1930 até agora com o que cada look compartilha com a foto. Diga ao usuário a década primeiro, depois os dois ou três looks do tronco que mais importam. Se disser "um palpite apertado", mencione ambas as décadas: essa é a leitura honesta.
  2. Cultiva o ramo. python3 scripts/lineage.py grow latest --project "<projeto>". Imprime o ramo de 2027: seu nome e declaração, a receita (luz, cor, pretos, granulação, óptica, formato), o que herda e de qual look, e a lacuna. Se o usuário quiser outra opção, --seed 1 (2, 3…) encontra outra lacuna com as mesmas regras.
  3. Exporta. python3 scripts/lineage.py export latest --project "<projeto>" escreve trees/<id>.svg (um pôster imprimível: o tronco subindo de 1930, o botão carmesim de 2027 no topo), trees/<id>.json (todos os números) e trees/<id>-branch.md (o cartão do ramo com a receita). Abra o pôster (open <arquivo> no Mac) e diga em uma linha o que olhar primeiro: o botão e o look do tronco logo abaixo dele.
  4. Para e pergunta antes de gerar. Somente se o usuário quiser o ramo na própria foto: python3 scripts/lineage.py request latest --project "<projeto>" escreve uma solicitação de edição de imagem. Diga a ele que é uma geração e quanto custa no plano Higgsfield dele, e espere um sim. Então execute (abaixo) e verifique com python3 scripts/lineage.py status latest --project "<projeto>".

Explicando um nó: python3 scripts/lineage.py node <id> imprime um look completo (por que está na linhagem, o que transmite, pessoas, onde encontrá-lo, pais). python3 scripts/lineage.py library --decade 1970 lista uma década. Suas próprias referências: python3 scripts/lineage.py add --name "..." --year 1994 --why "..." --image ref.jpg mede a imagem e adiciona o look à linhagem para todas as árvores futuras (as referências são globais por máquina, não por projeto; --project é aceito e ignorado).

Experimente com o exemplo incluído (nada é gasto): python3 scripts/lineage.py example --project demo (ou --photo pool para a segunda imagem). Para verificar se funciona nesta máquina: python3 scripts/selftest.py.

Como avaliar o resultado

  • Aviso sobre fundamento fraco. Sem pessoas, uma fonte de luz visível ou luz de estúdio, o medidor tem pouco em que se apoiar: correspondências abaixo de 30% em todo o tronco indicam que a foto é inadequada, portanto avise antes que o usuário interprete a árvore como histórico.

  • A década é uma leitura, não um veredito. Uma parcela acima de 25% com uma diferença clara para o segundo colocado é uma leitura firme; menos de 5 pontos de diferença é um palpite apertado e ambas as décadas são justas. Re-comprimir uma foto altera sua granulação e pode deslocá-la.

  • Um look no tronco merece seu lugar quando compartilha duas características distintivas com a foto (a linha compartilha), não apenas uma cor. Uma correspondência acima de 50% é parentesco próximo; abaixo de 30% a década simplesmente não tinha nada mais próximo, então diga isso.

  • Um ramo é bom quando sua frase de lacuna nomeia um par de características fortes que nenhum look na biblioteca possui juntas, seu look existente mais próximo está em 70% ou menos, e ainda mantém o enquadramento da foto. Recuse um ramo cuja receita se contradiz sobre o filme (viragem dividida em preto e branco): cultive outra semente.

  • Linhas sólidas são influência documentada; linhas pontilhadas são parentesco de características. Nunca apresente uma linha pontilhada como histórico.

  • Os números locais são aritmética que você pode verificar no JSON da árvore; references/method.md explica cada um e seus limites. library/reading-card.md é a mesma leitura feita a olho.

Gerando na conta Higgsfield do usuário

Nada nesta skill gera por si só. request escreve ~/LOWLIGHT STUDIO/<projeto>/requests/<id>.json (prompt, a foto do usuário como referência, proporção de aspecto). Claude o executa através do MCP Higgsfield conectado como o usuário e, em seguida, arquiva o resultado:

python3 scripts/studio_bus.py requests <projeto>
python3 scripts/studio_bus.py receive <projeto> <id> <arquivo baixado>

É uma edição de imagem: o prompt descreve apenas a luz, a cor e a superfície do filme do ramo. Use um modelo de edição que o plano do usuário ofereça (Nano Banana Pro ou um modelo de edição Seedream funcionam bem). Antes de executar qualquer coisa, diga ao usuário quantas gerações são e quanto custará no plano dele, e espere um sim. Veja references/generation.md.

Conversa com os outros departamentos

Veja references/studio.md. Ele lê taste de O Olho (THE EYE) quando existe (preferências e recusas orientam onde o ramo de 2027 cresce; o ramo diz taste_used) e publica lineage: as últimas doze árvores com seus nós e ramo, que O Olho pode usar como um baralho extra. Sem outros departamentos, funciona da mesma forma.

Arquivos

CaminhoO que é
scripts/lineage.pyo motor e sua linha de comando: example, trace, grow, export, request, status, trees, library, node, add
scripts/meter.pyo medidor de foto: dez características, leituras, paleta, formato (python3 scripts/meter.py photo.jpg --brief)
scripts/demo_photo.pydesenha as duas imagens de exemplo a partir do código (nenhuma foto de ninguém está incluída)
scripts/selftest.pyuma execução de teste com fotos sintéticas e os exemplos: python3 scripts/selftest.py
library/lineage.jsonos 107 looks, anos 1930 a 2020: pessoas, motivo, características, paleta, pais
library/examples/as duas imagens de exemplo, desenhadas a partir do código (veja seu README)
library/reading-card.mda mesma leitura a olho, para uma foto na parede ou no celular
references/method.mdcomo o medidor, a década, o tronco e a lacuna são calculados, e seus limites
references/library.mdcomo um look é escrito, como adicionar ou corrigir um
references/generation.mdconfiguração do Higgsfield e como a solicitação é construída
references/studio.mdo barramento compartilhado entre os departamentos do THE STUDIO

Os resultados vão para ~/LOWLIGHT STUDIO/<projeto>/: trees/, requests/, received/.

Habilidades Relacionadas