ComposioHQ/sentry-triage

Diagnostique problemas do Sentry sem copiar e colar stack traces. Usa a CLI do Composio para buscar detalhes do problema, eventos, breadcrumbs e commits suspeitos, mapeando os frames para o código fonte local para que o agente possa propor uma correção diretamente.

O que é sentry-triage?

Esta skill permite que um agente de IA (como Claude Code, Cursor ou Codex) interaja diretamente com a API do Sentry por meio da CLI do Composio, eliminando a necessidade de copiar e colar manualmente stack traces. Ela é útil para desenvolvedores que desejam automatizar a triagem de issues do Sentry, diagnosticar regressões e propor correções de forma integrada ao ambiente de desenvolvimento. A skill suporta desde a análise de uma única issue (buscando detalhes, eventos, breadcrumbs e commits suspeitos) até a triagem em lote, gerando resumos ranqueados. O agente mapeia cada frame da stack trace para o arquivo fonte local, lê o código ao redor da linha indicada e pode sugerir um patch, executar testes e até marcar a issue como resolvida. Também é possível encadear ações com outras ferramentas, como Linear ou Slack, para criar tickets automaticamente. A configuração inicial é simples: instalar a CLI, fazer login e vincular a conta do Sentry. A skill inclui um workflow exemplo em TypeScript e dicas de troubleshooting para problemas comuns.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/ComposioHQ/awesome-codex-skills/tree/main/sentry-triage

Installed? Explore more Programação e Desenvolvimento skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Perguntar na sua IA favorita

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

Documentação

Sentry Triage

Puxe issues, eventos e commits suspeitos do Sentry diretamente para o agente via CLI do Composio. Pule a dança de copiar e colar stack traces.

Quando Usar

  • Novo alerta do Sentry e você quer que o agente investigue, não apenas cite o assunto.
  • Diagnosticando uma regressão: encontre as releases, o commit suspeito e os arquivos afetados.
  • Criando um resumo das "10 issues não resolvidas mais frequentes" com dicas de reprodução.

Pré-requisitos

curl -fsSL https://composio.dev/install | bash
composio login
composio link sentry        # token de autenticação com event:read + project:read

Descobrir Ferramentas

composio search "get sentry issue" --toolkits sentry
composio search "list events for issue" --toolkits sentry
composio tools list sentry

Slugs comuns (verifique com --get-schema):

  • SENTRY_GET_AN_ISSUE
  • SENTRY_LIST_AN_ISSUES_EVENTS
  • SENTRY_RETRIEVE_AN_EVENT_FOR_A_PROJECT
  • SENTRY_LIST_A_PROJECTS_ISSUES
  • SENTRY_UPDATE_AN_ISSUE

Diagnosticar uma Única Issue

  1. Busque a issue (pelo ID curto como PROJ-1F4 ou ID numérico):
    composio execute SENTRY_GET_AN_ISSUE -d '{"issue_id":"PROJ-1F4"}'
    
  2. Pegue o evento mais recente com stack completo + breadcrumbs:
    composio execute SENTRY_LIST_AN_ISSUES_EVENTS \
      -d '{"issue_id":"PROJ-1F4","full":true,"limit":1}'
    
  3. Mapeie cada frame para o código fonte local. Para cada filename + lineno na stack, o agente abre o arquivo e lê ±20 linhas. Sem copiar e colar manualmente.
  4. Verifique commits suspeitos (o Sentry anexa estes quando o rastreamento de releases está configurado) — abra-os com git show <sha> localmente.
  5. Proponha uma correção com um diff, execute testes e — quando estiver verde — marque a issue como resolvida:
    composio execute SENTRY_UPDATE_AN_ISSUE \
      -d '{"issue_id":"PROJ-1F4","status":"resolved","statusDetails":{"inNextRelease":true}}'
    

Triagem em Lote

composio execute SENTRY_LIST_A_PROJECTS_ISSUES -d '{
  "organization_slug":"acme",
  "project_slug":"api",
  "query":"is:unresolved age:-24h",
  "sort":"freq",
  "limit":20
}'

Encaminhe para jq para um resumo ranqueado:

composio execute SENTRY_LIST_A_PROJECTS_ISSUES -d '{"organization_slug":"acme","project_slug":"api","query":"is:unresolved"}' \
  | jq -r '.[] | "\(.count)\t\(.shortId)\t\(.title)"' | sort -rn | head

Arquivo de Workflow

scripts/sentry-diag.ts, execute com composio run --file scripts/sentry-diag.ts -- --id PROJ-1F4:

const id = process.argv[process.argv.indexOf("--id") + 1];

const issue = await execute("SENTRY_GET_AN_ISSUE", { issue_id: id });
const [event] = await execute("SENTRY_LIST_AN_ISSUES_EVENTS", {
  issue_id: id, full: true, limit: 1
});

const frames = (event?.entries ?? [])
  .filter(e => e.type === "exception")
  .flatMap(e => e.data.values.flatMap(v => v.stacktrace?.frames ?? []))
  .filter(f => f.inApp)
  .map(f => ({ file: f.filename, line: f.lineno, fn: f.function }));

console.log(JSON.stringify({ title: issue.title, culprit: issue.culprit, frames }, null, 2));

O agente então lê cada file na line ± 20 e elabora um patch.

Rotear para Linear / Slack

Encadeie ferramentas para abrir um ticket para a issue não resolvida mais frequente:

composio run '
  const [top] = await execute("SENTRY_LIST_A_PROJECTS_ISSUES", {
    organization_slug: "acme", project_slug: "api",
    query: "is:unresolved", sort: "freq", limit: 1
  });
  await execute("LINEAR_CREATE_ISSUE", {
    teamId: "TEAM_ID",
    title: `[Sentry] ${top.title}`,
    description: `Short ID: ${top.shortId}\nPermalink: ${top.permalink}\nCount: ${top.count}`
  });
'

Solução de Problemas

  • 404 on issue_id → use o ID curto (PROJ-1F4), não o slug da URL.
  • Eventos vazios → a issue foi resolvida/arquivada; consulte com query:"is:resolved" ou aumente limit.
  • Commit suspeito ausente → o rastreamento de releases não está configurado no Sentry; configure sentry-cli releases no CI.
  • Nenhum frame inApp → source maps não foram enviados; a stack mostrará apenas código de fornecedor.

Referência completa da CLI: docs.composio.dev/docs/cli

Individual skills in this repo

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

ComposioHQ/-21risk-automation

Automate 21risk tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/-2chat-automation

Automate 2chat tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/ably-automation

Automate Ably tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/abstract-automation

Automate Abstract tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/abuselpdb-automation

Automate Abuselpdb tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/abyssale-automation

Automate Abyssale tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/accelo-automation

Automate Accelo tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/accredible-certificates-automation

Automate Accredible Certificates tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/acculynx-automation

Automate Acculynx tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/active-campaign-automation

Automate ActiveCampaign tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/addresszen-automation

Automate Addresszen tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/adobe-automation

Automate Adobe tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/adrapid-automation

Automate Adrapid tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/adyntel-automation

Automate Adyntel tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/aeroleads-automation

Automate Aeroleads tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/aero-workflow-automation

Automate Aero Workflow tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/affinda-automation

Automate Affinda tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/affinity-automation

Automate Affinity tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/agencyzoom-automation

Automate Agencyzoom tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/agent-deep-links

Build, validate, and troubleshoot deep links for Codex, Cursor, VS Code, Visual Studio, and similar tools. Use when users ask for clickable links (especially in Slack) that open threads, files, folders, or app settings.

Habilidades Relacionadas