Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Integracao completa com Instagram via Graph API. Publicacao, analytics, comentarios, DMs, hashtags, agendamento, templates e gestao de contas Business/Creator.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-08 | ✗→✓ | ▲ Improved | — | — |
| case-02 | ✗→✓ | ▲ Improved | — | — |
| case-15 | ✗→✓ | ▲ Improved | — | — |
| case-11 | ✗→✓ | ▲ Improved | — | — |
| case-13 | ✗→✓ | ▲ Improved | — | — |
Integracao completa com Instagram via Graph API. Publicacao, analytics, comentarios, DMs, hashtags, agendamento, templates e gestao de contas Business/Creator.
Controle completo da conta Instagram via Graph API. Publicação, comunidade, analytics, DMs, hashtags, templates e dashboard — tudo gerido com governança (rate limits, audit log, confirmações antes de ações públicas).
| Área | Scripts | O que faz | |------|---------|-----------| | Setup | account_setup.py, auth.py | Configurar conta, OAuth, token | | Publicação | publish.py, schedule.py | Publicar foto/vídeo/reel/story/carrossel, agendar | | Comunidade | comments.py, messages.py | Comentários, DMs, menções | | Analytics | insights.py, analyze.py | Métricas, melhores horários, top posts | | Hashtags | hashtags.py | Pesquisa e tracking | | Inteligência | templates.py, analyze.py | Templates de conteúdo, tendências | | Infra | export.py, serve_api.py, run_all.py | Exportar, dashboard, sync | | Leitura | profile.py, media.py | Perfil, listar mídia |
C:\Users\renat\skills\instagram\
├── SKILL.md
├── scripts/
│ ├── requirements.txt
│ │ # ── CORE ──
│ ├── config.py # Paths, constantes, specs de mídia
│ ├── db.py # SQLite: accounts, posts, comments, insights
│ ├── auth.py # OAuth 2.0, token storage/refresh
│ ├── api_client.py # Instagram Graph API wrapper + retry
│ ├── governance.py # Rate limits, audit log, confirmações
│ │ # ── FEATURES ──
│ ├── account_setup.py # Detecção conta, migração, verificação
│ ├── publish.py # Publicar + upload local via Imgur
│ ├── schedule.py # Orquestrador: approved → published
│ ├── comments.py # Ler/responder/deletar comentários
│ ├── messages.py # DMs (enviar/receber/listar)
│ ├── insights.py # Fetch + store métricas
│ ├── hashtags.py # Pesquisa + tracking
│ ├── profile.py # Ver/atualizar perfil
│ ├── media.py # Listar mídia, detalhes
│ │ # ── INTELIGÊNCIA ──
│ ├── templates.py # Templates de caption/hashtags
│ ├── analyze.py # Melhores horários, top posts
│ │ # ── INFRA ──
│ ├── export.py # Exportar JSON/CSV/JSONL
│ ├── serve_api.py # FastAPI + dashboard
│ └── run_all.py # Sync completo
├── references/
│ ├── graph_api.md # Endpoints e parâmetros
│ ├── permissions.md # Scopes OAuth por feature
│ ├── rate_limits.md # Limites 2025
│ ├── account_types.md # Business vs Creator
│ ├── publishing_guide.md # Specs de mídia
│ ├── setup_walkthrough.md # Guia Meta App
│ └── schema.md # ER diagram
├── static/
│ └── dashboard.html # Dashboard Chart.js
└── data/
## Instalação (Uma Vez)
pip install -r C:\Users\renat\skills\instagram\scripts\requirements.txt
## Configuração Inicial
python C:\Users\renat\skills\instagram\scripts\account_setup.py --check
python C:\Users\renat\skills\instagram\scripts\auth.py --setup
python C:\Users\renat\skills\instagram\scripts\profile.py --view
Se a conta for pessoal, o script `account_setup.py --guide` dá instruções de migração
para Business ou Creator.
## Foto (Aceita Arquivo Local — Faz Upload Automático Via Imgur)
python C:\Users\renat\skills\instagram\scripts\publish.py --type photo --image caminho/foto.jpg --caption "Texto do post"
## Vídeo
python C:\Users\renat\skills\instagram\scripts\publish.py --type video --video caminho/video.mp4 --caption "Meu vídeo"
## Reel
python C:\Users\renat\skills\instagram\scripts\publish.py --type reel --video caminho/reel.mp4 --caption "Novo reel!"
## Story
python C:\Users\renat\skills\instagram\scripts\publish.py --type story --image caminho/story.jpg
## Carrossel (2-10 Imagens)
python C:\Users\renat\skills\instagram\scripts\publish.py --type carousel --images img1.jpg img2.jpg img3.jpg --caption "Carrossel"
## Criar Como Rascunho (Não Publica Imediatamente)
python C:\Users\renat\skills\instagram\scripts\publish.py --type photo --image foto.jpg --caption "Texto" --draft
## Aprovar Rascunho Para Publicação
python C:\Users\renat\skills\instagram\scripts\publish.py --approve --id 5python C:\Users\renat\skills\instagram\scripts\schedule.py --type photo --image foto.jpg --caption "Post agendado" --at "2026-03-01T10:00"
python C:\Users\renat\skills\instagram\scripts\schedule.py --list
python C:\Users\renat\skills\instagram\scripts\schedule.py --process
python C:\Users\renat\skills\instagram\scripts\schedule.py --cancel --id 5
## Listar Comentários De Um Post
python C:\Users\renat\skills\instagram\scripts\comments.py --list --media-id 12345
## Responder A Um Comentário
python C:\Users\renat\skills\instagram\scripts\comments.py --reply --comment-id 67890 --text "Obrigado!"
## Deletar Comentário
python C:\Users\renat\skills\instagram\scripts\comments.py --delete --comment-id 67890
## Ver Menções
python C:\Users\renat\skills\instagram\scripts\comments.py --mentions
## Comentários Não Respondidos
python C:\Users\renat\skills\instagram\scripts\comments.py --unrepliedpython C:\Users\renat\skills\instagram\scripts\messages.py --send --user-id 12345 --text "Olá!"
python C:\Users\renat\skills\instagram\scripts\messages.py --conversations
python C:\Users\renat\skills\instagram\scripts\messages.py --thread --conversation-id 12345
## Métricas De Um Post Específico
python C:\Users\renat\skills\instagram\scripts\insights.py --media --media-id 12345
## Métricas Da Conta (Últimos 7 Dias)
python C:\Users\renat\skills\instagram\scripts\insights.py --user --period day --since 7
## Buscar E Salvar Insights De Todos Os Posts Recentes
python C:\Users\renat\skills\instagram\scripts\insights.py --fetch-all --limit 20python C:\Users\renat\skills\instagram\scripts\analyze.py --best-times
python C:\Users\renat\skills\instagram\scripts\analyze.py --top-posts --limit 10
python C:\Users\renat\skills\instagram\scripts\analyze.py --growth --period 30
## Buscar Posts Recentes Com Uma Hashtag
python C:\Users\renat\skills\instagram\scripts\hashtags.py --search "artificialintelligence" --limit 25
## Top Posts De Uma Hashtag
python C:\Users\renat\skills\instagram\scripts\hashtags.py --top "tecnologia"
## Info Da Hashtag (Contagem De Posts)
python C:\Users\renat\skills\instagram\scripts\hashtags.py --info "marketing"python C:\Users\renat\skills\instagram\scripts\templates.py --create --name "promo" --caption "Nova promoção: {produto}! {desconto}% OFF" --hashtags "#oferta,#desconto,#promoção"
python C:\Users\renat\skills\instagram\scripts\templates.py --list
python C:\Users\renat\skills\instagram\scripts\publish.py --type photo --image foto.jpg --template promo --vars produto="Tênis" desconto=30
## Ver Perfil
python C:\Users\renat\skills\instagram\scripts\profile.py --view
## Listar Posts Recentes
python C:\Users\renat\skills\instagram\scripts\media.py --list --limit 10
## Detalhes De Um Post
python C:\Users\renat\skills\instagram\scripts\media.py --details --media-id 12345python C:\Users\renat\skills\instagram\scripts\export.py --type insights --format csv
python C:\Users\renat\skills\instagram\scripts\export.py --type comments --format json
python C:\Users\renat\skills\instagram\scripts\export.py --type all --format csv
python C:\Users\renat\skills\instagram\scripts\serve_api.py
## Status Da Autenticação
python C:\Users\renat\skills\instagram\scripts\auth.py --status
## Sync Completo (Busca Perfil + Mídia + Insights + Comentários)
python C:\Users\renat\skills\instagram\scripts\run_all.py
## Sync Parcial
python C:\Users\renat\skills\instagram\scripts\run_all.py --only media insightsA skill rastreia automaticamente os rate limits da API:
Quando em 90% do limite, a skill emite warnings. Se exceder, bloqueia a ação e informa quanto tempo esperar.
Ações que afetam conteúdo público requerem confirmação:
O script retorna os detalhes da ação e pede confirmação antes de executar.
Todas as ações que modificam dados são logadas no banco SQLite (action_log table):
python C:\Users\renat\skills\instagram\scripts\db.pyO token OAuth (60 dias) é renovado automaticamente quando está a 7 dias de expirar. Sem intervenção manual necessária.
Coisas que a Instagram Graph API não permite:
bashpython C:\Users\renat\skills\instagram\scripts\publish.py --type photo --image foto.jpg --caption "Texto"
bashpython C:\Users\renat\skills\instagram\scripts\run_all.py --only insights python C:\Users\renat\skills\instagram\scripts\analyze.py --summary
bashpython C:\Users\renat\skills\instagram\scripts\analyze.py --best-times
bashpython C:\Users\renat\skills\instagram\scripts\comments.py --reply --comment-id ID --text "Resposta"
bashpython C:\Users\renat\skills\instagram\scripts\run_all.py
bashpython C:\Users\renat\skills\instagram\scripts\serve_api.py
Consultar quando precisar de detalhes:
references/graph_api.md — Endpoints, parâmetros e responses da APIreferences/publishing_guide.md — Specs de mídia (dimensões, formatos, tamanhos)references/rate_limits.md — Rate limits detalhados e estratégiasreferences/account_types.md — Diferenças Business vs Creator, migraçãoreferences/permissions.md — Scopes OAuth necessários por featurereferences/setup_walkthrough.md — Guia passo-a-passo de setup do Meta Appreferences/schema.md — Schema do banco SQLite (ER diagram, campos, índices, queries)social-orchestrator - Complementary skill for enhanced analysistelegram - Complementary skill for enhanced analysiswhatsapp-cloud-api - Complementary skill for enhanced analysis| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-08 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-02 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-15 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-04 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-11 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-22 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-13 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-17 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-07 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-16 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-03 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-05 | pass→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-21 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-06 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-14 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-23 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-19 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-20 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-01 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-09 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-10 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-12 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-18 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 23 cases were attempted. The headline lift of +83 percentage points is the difference between those two pass rates over the 23 comparable cases.
The per-case answers from this run were removed by the retention sweep, so the case table below shows the verdicts without the text either arm produced. The counts above were recorded at the time and are unaffected. Answers are now kept for 180 days.
Other measured skills in the registry, with their headline benchmark lift.