Communitygithub.com

baronguyen001/habilidades-automacao-ia

Faça upload e download de artefatos de execução para armazenamento compatível com S3 usando seu próprio bucket e credenciais via variáveis de ambiente. Use quando o usuário solicitar armazenar saída de scraper, arquivar relatórios, publicar artefatos em armazenamento de objetos, buscar um arquivo de execução anterior, ou usar MinIO/R2/Spaces/S3 sem hardcodar credenciais.

O que é habilidades-automacao-ia?

Esta habilidade fornece um helper para fazer upload e download de artefatos de execução para armazenamento compatível com S3, como Amazon S3, MinIO, Cloudflare R2 ou DigitalOcean Spaces. Ela é projetada para execuções de automação que precisam de armazenamento durável e portátil de artefatos como relatórios CSV, PDFs, checkpoints JSON, capturas de tela, saídas de modelo ou logs. A habilidade lê bucket, endpoint e credenciais exclusivamente de variáveis de ambiente, garantindo que nenhuma informação sensível seja commitada no repositório. Suporta múltiplas plataformas (Claude Code, Cursor, Codex) e segue um padrão de uso determinístico, onde as chaves de objeto são previsíveis (ex: `reports/YYYY-MM-DD/name.csv`) e o upload só ocorre após a conclusão do arquivo local. Ela inclui um script Python de referência (`assets/s3.py`) e falha com mensagens de erro claras quando variáveis de ambiente ou bibliotecas cliente estão ausentes. É útil para cenários onde o usuário precisa armazenar saídas de scraper, arquivar relatórios ou buscar arquivos de execuções anteriores, mas não deve ser usada para artefatos temporários ou workflows de CDN com URLs assinadas.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/baronguyen001/ai-automation-skills/tree/HEAD/skills/s3-uploader

Perguntar na sua IA favorita

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

Documentação

Carregador S3

Use esta habilidade quando uma execução de automação precisar de armazenamento durável de artefatos: relatórios CSV, PDFs, checkpoints JSON, capturas de tela, saídas de modelo ou logs que devem sobreviver fora da máquina local. O helper tem como alvo armazenamento genérico compatível com S3 e lê bucket, endpoint e credenciais apenas de variáveis de ambiente.

Quando invocar

  • O usuário diz: "faça upload deste relatório para o S3", "salve artefatos no armazenamento de objetos", "baixe o arquivo da última execução", "use MinIO/R2/Spaces".
  • O código na conversa escreve arquivos localmente, mas precisa de um local portátil para handoff ou arquivamento.

Quando NÃO invocar

  • O artefato é necessário apenas dentro do mesmo processo; mantenha-o no disco.
  • O usuário precisa de um workflow de CDN de site público com invalidação de cache e URLs assinadas.

Exemplo concreto

Entrada do usuário:

Faça upload do CSV gerado para meu bucket compatível com S3 após o scraper terminar.

Saída:

# Copie assets/s3.py para seu projeto, então:
from s3 import upload_file

chave = upload_file("out/daily_report.csv", key="relatorios/daily_report.csv")
print("enviado:", chave)

O helper lê S3_BUCKET, S3_ACCESS_KEY_ID, S3_SECRET_ACCESS_KEY, S3_ENDPOINT_URL (opcional) e S3_REGION (opcional) do ambiente. Nada específico do destino ou secreto é commitado.

Padrão a aplicar

  1. Mantenha nome do bucket, endpoint, chave de acesso e chave secreta apenas em variáveis de ambiente.
  2. Use chaves de objeto determinísticas, como relatorios/YYYY-MM-DD/nome.csv, para que reexecuções sejam fáceis de encontrar.
  3. Faça upload apenas após o arquivo local estar completo; nunca transmita um artefato meio escrito.
  4. Suporte endpoints compatíveis com S3 passando endpoint_url em vez de hardcodar AWS.
  5. Falhe com um erro de configuração claro quando variáveis de ambiente ou bibliotecas cliente estiverem ausentes.

Referência: assets/s3.py.

Fonte

Destilado do uso em produção nos projetos de automação do autor. v1.0.0. Veja também: [[csv-report-writer]], [[playwright-pdf-snapshot]], [[pipeline-orchestrator]].

→ Construa o bot executável completo com Trawlkit.

Individual skills in this repo

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

baronguyen001/ai-automation-skills

Schedule any script to run on a recurring schedule on Windows (Task Scheduler) or Linux (cron) - register, list, and remove jobs from one command, with logging to a file and a guard against overlapping runs. Use for schedule a script, run nightly, set up a cron job, windows task scheduler, or run on a timer.

baronguyen001/ai-automation-skills

Turn a run's list of result dicts into a schema'd CSV and a Markdown table from one column spec - declare columns once, emit both, with stable ordering and safe escaping, stdlib only, no pandas. Use when the user asks to write results to CSV, export a report, make a markdown summary table, or save a run's output as a spreadsheet.

baronguyen001/ai-automation-skills

Strip HTML to clean plain text with the standard library only (no BeautifulSoup/lxml): drops script/style, turns block tags into line breaks, and collapses whitespace. Use when the user wants readable text from an HTML page/email, to clean scraped HTML before sending it to an LLM, or to build a text index from web content.

baronguyen001/ai-automation-skills

Persist records between scheduled runs as append-only JSON Lines (one object per line) with streaming reads and optional key-based dedup, stdlib only. Use when the user wants to log run results to JSONL, append events to a file, dedup records by id across runs, or keep a simple durable history without a database.

baronguyen001/ai-automation-skills

Extract text and simple table-like rows from a PDF for downstream AI without OCR binaries. Use when the user asks to read a PDF, turn a PDF into text, pull simple tables from statements/reports, or feed PDF content into an LLM pipeline.

baronguyen001/ai-automation-skills

Rotate a pool of HTTP/SOCKS proxies with round-robin selection, failure tracking, and a cooldown that benches dead proxies before retrying. BYO proxy list via env - none are shipped. Use for rotate proxies, spread requests across proxies, avoid IP bans, retry through a different proxy, or proxy health check.

baronguyen001/ai-automation-skills

Parse an RSS 2.0 or Atom feed into normalized item dicts (title, link, id, published, summary) with the standard library only - no feedparser. Use when the user asks to read an RSS/Atom feed, poll a blog/news feed, extract feed entries, or watch a site that publishes a feed.

baronguyen001/ai-automation-skills

Draft a short-form TikTok/Reels/Shorts or long-form video script from a topic and creator persona file - hook variants, beat-structured body, CTA, b-roll cues, caption overlays, and [STORY]/[NUMBER] slots so the model never fabricates personal facts. Use for write a video script, tiktok script, youtube script, or /shortform-script.

baronguyen001/ai-automation-skills

Give scheduled scripts memory between runs with one SQLite file - a seen-set for dedup, a key/value cursor to resume where you left off, and order-preserving new-item filtering. Use for dedup across runs, don't re-alert the same item, remember the last id, resume a scraper, or persist state between cron runs.

Habilidades Relacionadas