Communitygithub.com

majiayu000/claude-skill-registry

Faça upload e gerencie arquivos usando a API Google Gemini File via scripts/. Use para enviar imagens, áudio, vídeos, PDFs e outros arquivos para uso com modelos Gemini. Suporta upload de arquivos, verificação de status e gerenciamento de arquivos. Aciona com 'upload file', 'file API', 'upload image', 'upload PDF', 'upload video', 'file management'.

O que é claude-skill-registry?

Esta skill permite que agentes de IA (como Claude Code, Cursor, Codex) façam upload e gerenciem arquivos usando a API Google Gemini File. Ela expõe scripts de linha de comando para enviar imagens, áudio, vídeos, PDFs e outros tipos de arquivo, verificar o status do processamento, listar arquivos enviados e integrá-los com outras skills Gemini, como `gemini-text` para análise multimodal ou `gemini-batch` para processamento em lote. A habilidade é acionada por frases como "upload file", "file API", "upload image" e "upload PDF", sendo útil para preparar dados para modelos multimodais e gerenciar o ciclo de vida dos arquivos. Ela suporta plataformas baseadas em linha de comando e oferece workflows detalhados para upload básico, com nome personalizado, com espera por processamento e combinações com outras skills, além de incluir uma referência de parâmetros, tipos de arquivo suportados, estados, práticas recomendadas e solução de problemas comuns.

Funciona com✓Claude Code~Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/majiayu000/claude-skill-registry/tree/HEAD/skills/ai-llm/gemini-files-akrindev-google-studio-skills

Perguntar na sua IA favorita

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

Documentação

Gemini File API

Faça upload e gerencie arquivos para uso com modelos Gemini através de scripts executáveis, suportando imagens, áudio, vídeos, PDFs e outros tipos de arquivo.

Quando Usar Esta Skill

Use esta skill quando precisar:

  • Enviar imagens para análise multimodal
  • Enviar vídeos para processamento de conteúdo
  • Enviar PDFs para análise de documentos
  • Enviar áudio para transcrição ou processamento
  • Pré-enviar arquivos para operações em lote
  • Verificar o status do processamento de arquivos
  • Listar e gerenciar arquivos enviados
  • Usar arquivos com outras skills Gemini (texto, imagem, etc.)

Scripts Disponíveis

scripts/upload.py

Propósito: Enviar arquivos para a API Gemini File

Quando usar:

  • Enviar qualquer arquivo para processamento Gemini
  • Preparar arquivos para geração multimodal
  • Enviar documentos para análise
  • Preparação de arquivos em lote

Parâmetros principais:

ParâmetroDescriçãoExemplo
pathCaminho do arquivo (obrigatório)image.jpg
--name, -nNome de exibição"my-document"
--wait, -wAguardar processamentoFlag

Saída: Nome do arquivo, URI e informações de status

Fluxos de Trabalho

Fluxo 1: Upload Básico de Arquivo

python scripts/upload.py image.jpg
  • Melhor para: Uploads rápidos, arquivos simples
  • Saída: Nome do arquivo e URI para uso na API
  • Estado: PROCESSING ou ACTIVE

Fluxo 2: Upload com Nome Personalizado

python scripts/upload.py document.pdf --name "Relatório Trimestral Q4 2026"
  • Melhor para: Organizar arquivos, rastrear uploads
  • Use quando: O nome original do arquivo não for descritivo o suficiente
  • O nome de exibição aparece nas listagens de arquivos

Fluxo 3: Upload e Aguardar Processamento

python scripts/upload.py video.mp4 --wait
  • Melhor para: Arquivos grandes, vídeos, áudio
  • Aguarda o arquivo ficar no estado ACTIVE
  • Use quando: Precisar usar o arquivo imediatamente após o upload

Fluxo 4: Upload de Imagem para Análise

# 1. Enviar imagem
python scripts/upload.py photo.png --name "foto-produto"

# 2. Usar com gemini-text para análise
python skills/gemini-text/scripts/generate.py "Descreva esta imagem" --image photo.png
  • Melhor para: Análise de imagem, legendagem, perguntas e respostas visuais
  • Combina com: gemini-text para processamento multimodal

Fluxo 5: Upload de PDF para Extração de Conteúdo

# 1. Enviar PDF
python scripts/upload.py artigo-pesquisa.pdf --name "Artigo-IA-Pesquisa" --wait

# 2. Extrair conteúdo com gemini-text
python skills/gemini-text/scripts/generate.py "Extraia as principais conclusões deste documento" --image artigo-pesquisa.pdf
  • Melhor para: Processamento de documentos, extração de conteúdo
  • Combina com: gemini-text para análise

Fluxo 6: Upload de Múltiplos Arquivos para Lote

# 1. Enviar vários arquivos
for file in *.jpg; do
    python scripts/upload.py "$file"
done

# 2. Criar job em lote usando arquivos enviados (skill gemini-batch)
  • Melhor para: Preparar arquivos para processamento em lote
  • Combina com: gemini-batch para operações em massa

Fluxo 7: Upload de Áudio para Transcrição

# 1. Enviar áudio
python scripts/upload.py entrevista.mp3 --name "entrevista-001" --wait

# 2. Processar com gemini-text (se transcrição disponível)
python skills/gemini-text/scripts/generate.py "Transcreva e resuma este áudio" --image entrevista.mp3
  • Melhor para: Processamento de áudio, transcrição, análise de podcasts
  • Combina com: gemini-text para análise de áudio

Fluxo 8: Upload de Vídeo para Análise de Conteúdo

# 1. Enviar vídeo (pode levar tempo)
python scripts/upload.py demo-produto.mp4 --name "video-demo" --wait

# 2. Analisar com gemini-text
python skills/gemini-text/scripts/generate.py "Analise este vídeo de demonstração do produto" --image demo-produto.mp4
  • Melhor para: Análise de vídeo, sumarização de conteúdo
  • Nota: Vídeos podem exigir tempo de processamento significativo

Referência de Parâmetros

Tipos de Arquivo Suportados

TipoExtensõesTamanho MáximoTempo de Processamento
Imagensjpg, jpeg, png, gif, webp20MBSegundos
Áudiomp3, wav, aac, flac25MBSegundos a minutos
Vídeomp4, mov, avi, webm2GBMinutos a horas
Documentospdf, txt50MBSegundos a minutos

Tipos MIME

O script detecta automaticamente com base na extensão:

  • Imagens: image/jpeg, image/png, image/gif, image/webp
  • Áudio: audio/mpeg, audio/wav
  • Vídeo: video/mp4, video/quicktime, video/webm
  • Documentos: application/pdf, text/plain

Estados do Arquivo

EstadoDescriçãoPronto para Uso
PROCESSINGO arquivo está sendo analisadoNão
ACTIVEO arquivo está prontoSim
FAILEDO processamento falhouNão

Interpretação da Saída

Resposta de Upload

Enviando photo.png...
Enviado: files/abc123...
URI: gs://generation-tmp/abc123...
Estado: PROCESSING
  • Nome do arquivo: Use em chamadas de API
  • URI: Referência interna do Google Cloud Storage
  • Estado: PROCESSING = aguardar, ACTIVE = pronto

Com a Flag --wait

Enviando video.mp4...
Enviado: files/xyz789...
URI: gs://generation-tmp/xyz789...
Estado: PROCESSING
Aguardando processamento...
Ainda processando...
Arquivo pronto!
  • O script consulta até o estado ser ACTIVE
  • Use para arquivos grandes que precisam de processamento
  • Pode levar minutos para vídeos

Usando Arquivos Enviados

Uma vez enviado, referencie o arquivo pelo nome:

# Com gemini-text
python skills/gemini-text/scripts/generate.py "Analise" --image <caminho-do-arquivo-enviado>

Problemas Comuns

"google-genai não instalado"

pip install google-genai

"Arquivo não encontrado"

  • Verifique se o caminho do arquivo está correto
  • Use caminhos absolutos se caminhos relativos falharem
  • Verifique se a extensão do arquivo corresponde aos tipos suportados

"Arquivo muito grande"

  • Verifique os limites de tamanho para o tipo de arquivo
  • Comprima imagens/vídeos se possível
  • Divida arquivos grandes em partes menores

"Tipo de arquivo não suportado"

  • Verifique as extensões suportadas
  • Converta para um formato suportado, se possível
  • Imagens: jpg, png, gif, webp
  • Vídeos: mp4, mov, avi, webm

"Falha no processamento"

  • Verifique se o arquivo não está corrompido
  • Tente reenviar o arquivo
  • Verifique se o formato do arquivo é válido
  • Verifique os limites de cota da API

"Arquivo ainda processando" (sem --wait)

  • O estado do arquivo é PROCESSING, não ACTIVE
  • Use a flag --wait ou verifique o status mais tarde
  • Arquivos grandes (especialmente vídeos) levam tempo
  • O processamento pode levar de minutos a horas

Melhores Práticas

Estratégia de Upload

  • Use --wait para arquivos que usará imediatamente
  • Pule --wait para uploads em lote para economizar tempo
  • Use --name descritivo para organização
  • Mantenha registro dos nomes dos arquivos para uso posterior

Organização de Arquivos

  • Use convenções de nomenclatura consistentes
  • Inclua datas ou versões nos nomes
  • Agrupe arquivos relacionados
  • Documente os nomes dos arquivos em seu código

Dicas de Performance

  • Envie vários arquivos em paralelo (processos separados)
  • Pré-envie arquivos para operações em lote
  • Verifique o estado do arquivo antes de usar em chamadas de API
  • Exclua arquivos antigos para gerenciar armazenamento

Tratamento de Erros

  • Verifique o estado retornado após o upload
  • Repita uploads com falha
  • Verifique a integridade do arquivo antes do upload
  • Registre nomes de arquivos para trilhas de auditoria

Integração com Outras Skills

  • gemini-text: Análise multimodal, processamento de documentos
  • gemini-image: Gerar imagens com base em referência enviada
  • gemini-batch: Usar arquivos enviados em jobs em lote
  • gemini-embeddings: Criar embeddings a partir do conteúdo do arquivo

Ciclo de Vida do Arquivo

  • Upload → PROCESSING → ACTIVE → Uso na API
  • Exclua arquivos antigos para liberar armazenamento
  • Arquivos podem expirar após determinado período
  • Baixe arquivos importantes para backup

Skills Relacionadas

  • gemini-text: Analisar arquivos enviados com geração de texto
  • gemini-image: Criar imagens com base em referências enviadas
  • gemini-batch: Usar arquivos enviados em processamento em lote
  • gemini-embeddings: Gerar embeddings a partir do conteúdo do arquivo

Referência Rápida

# Upload básico
python scripts/upload.py image.jpg

# Com nome personalizado
python scripts/upload.py document.pdf --name "Meu Documento"

# Aguardar processamento
python scripts/upload.py video.mp4 --wait

# Vários arquivos
for file in *.jpg; do python scripts/upload.py "$file"; done

API de Gerenciamento de Arquivos

Embora não esteja nos scripts, você também pode gerenciar arquivos via Python:

from google import genai

client = genai.Client()

# Listar todos os arquivos
for file in client.files.list():
    print(f"{file.name}: {file.display_name} ({file.state})")

# Obter informações do arquivo
file = client.files.get(name="files/abc123...")
print(f"Estado: {file.state}")

# Excluir arquivo
client.files.delete(name="files/abc123...")

Referência

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

majiayu000/claude-skill-registry

Builds, edit or validate Agent Skill through conversational discovery. Use when the user requests to "Create an Agent", "Optimize an Agent" or "Edit an Agent".

majiayu000/claude-skill-registry

Edit existing BMAD agents while maintaining compliance

majiayu000/claude-skill-registry

Edit existing BMAD agents while maintaining compliance

majiayu000/claude-skill-registry

Edit existing BMAD modules while maintaining coherence

majiayu000/claude-skill-registry

Edit existing BMAD modules while maintaining coherence

majiayu000/claude-skill-registry

Analyzes current state and user query to answer BMad questions or recommend the next workflow or agent. Use when user says what should I do next, what do I do now, or asks a question about BMad

majiayu000/claude-skill-registry

Build AI agents with Google ADK Python (Agent Development Kit). Use for multi-agent systems, workflow agents (sequential/parallel/loop), Vertex AI deployment, tool integration, human-in-the-loop.

majiayu000/claude-skill-registry

Build AI agents with Google ADK Python (Agent Development Kit). Use for multi-agent systems, workflow agents (sequential/parallel/loop), Vertex AI deployment, tool integration, human-in-the-loop.

majiayu000/claude-skill-registry

Portfolio allocation and rebalancing optimizer. Manages asset allocation across stocks/cash/bonds, performs periodic rebalancing, and ensures diversification according to market regime and risk tolerance.

majiayu000/claude-skill-registry

Create a hilarious and ultra-realistic video of an anthropomorphic animal acting like a human vlogger in a real-world setting.

majiayu000/claude-skill-registry

Speech-to-text transcription and translation via OpenAI Audio API -- models, response formats, timestamps, prompting, streaming, chunking, and diarization

majiayu000/claude-skill-registry

BlockRun works with Claude Code and Google Antigravity.

majiayu000/claude-skill-registry

This skill should be used when the user asks about libraries, frameworks, API references, or needs code examples. Activates for setup questions, code generation involving libraries, or mentions of specific frameworks like React, Vue, Next.js, Prisma, Supabase, etc.

majiayu000/claude-skill-registry

小省导购员数字人带货版即梦视频提示词生成系统,基于四大智能体协同(提示词生成师、质量管控师、知识库运维师、跨环节适配师),按照"主体+运动+场景+(镜头语言+光影+氛围)"公式输出中英文双版提示词,适配5s短视频。确保人物一致性、视觉连贯性、情绪连贯性,支持知识库智能复用和跨工具适配(Suno音乐、AI绘画),为数字人带货视频提供高质量提示词生成服务。

majiayu000/claude-skill-registry

CRITICAL: Use for MolyKit AI chat toolkit. Triggers on: BotClient, OpenAI, SSE streaming, AI chat, molykit, PlatformSend, spawn(), ThreadToken, cross-platform async, Chat widget, Messages, PromptInput, Avatar, LLM

majiayu000/claude-skill-registry

AI and machine learning workflow covering LLM application development, RAG implementation, agent architecture, ML pipelines, and AI-powered features.

majiayu000/claude-skill-registry

Analyze images/audio/video with Gemini API (better vision than Claude). Generate images (Imagen 4), videos (Veo 3). Use for vision analysis, transcription, OCR, design extraction, multimodal AI.

majiayu000/claude-skill-registry

Analyze images/audio/video with Gemini API (better vision than Claude). Generate images (Imagen 4), videos (Veo 3). Use for vision analysis, transcription, OCR, design extraction, multimodal AI.

majiayu000/claude-skill-registry

Conduct domain and industry research. Use when the user says "lets create a research report on [domain or industry]

majiayu000/claude-skill-registry

Skill for discovering and researching autonomous AI agents, tools, and ecosystems using the AgentFolio directory.

Habilidades Relacionadas