sentry

作者: openai

用于生产错误检查和健康摘要的只读Sentry API查询。需要具有只读作用域(project:read、event:read、org:read)的SENTRY_AUTH_TOKEN;支持可选的org、project和基础URL环境变量。核心命令:列出未解决的问题、获取问题详情、检索问题的事件、检查单个事件数据并自动进行PII编辑。默认24小时时间范围、生产环境、20条结果限制(最多50条);支持...

npx skills add https://github.com/openai/skills --skill sentry

Sentry (Read-only Observability)

Quick start

  • If not already authenticated, ask the user to run sentry auth login or set SENTRY_AUTH_TOKEN as an env var.
  • The CLI auto-detects org/project from DSNs in .env files, source code, config defaults, and directory names. Only specify <org>/<project> if auto-detection fails or picks the wrong target.
  • Defaults: time range 24h, environment production, limit 20.
  • Always use --json when processing output programmatically. Use --json --fields to select specific fields and reduce output size.
  • Use sentry schema <resource> to discover API endpoints quickly.

If the CLI is not installed, give the user these steps:

  1. Install the Sentry CLI: curl https://cli.sentry.dev/install -fsS | bash
  2. Authenticate: sentry auth login
  3. Confirm authentication: sentry auth status
  • Never ask the user to paste the full token in chat. Ask them to set it locally and confirm when ready.

Core tasks (use Sentry CLI)

Use the sentry CLI for all queries. It handles authentication, org/project detection, pagination, and retries automatically. Use --json for machine-readable output.

1) List issues (ordered by most recent)

sentry issue list \
  --query "is:unresolved environment:production" \
  --period 24h \
  --limit 20 \
  --json --fields shortId,title,priority,level,status

If auto-detection doesn't resolve org/project, pass them explicitly:

sentry issue list {your-org}/{your-project} \
  --query "is:unresolved environment:production" \
  --period 24h \
  --limit 20 \
  --json

2) Resolve an issue short ID to issue detail

sentry issue view {ABC-123} --json

Use the short ID format (e.g., ABC-123), not the numeric ID.

3) Issue detail

sentry issue view {ABC-123}

4) Issue events

sentry issue events {ABC-123} --limit 20 --json

5) Event detail

sentry event view {your-org}/{your-project}/{event_id} --json

6) AI-powered root cause analysis

sentry issue explain {ABC-123}

7) AI-powered fix plan

sentry issue plan {ABC-123}

Fallback: arbitrary API access

For endpoints not covered by dedicated CLI commands, use sentry api:

sentry api /api/0/organizations/{your-org}/ --method GET

Use sentry schema to discover available API endpoints:

sentry schema issues

Inputs and defaults

  • org_slug, project_slug: auto-detected by the CLI from DSNs, env vars, and directory names. Override with positional {your-org}/{your-project} if auto-detection fails.
  • time_range: default 24h (pass as --period 24h).
  • environment: default prod (pass as part of --query, e.g., environment:production).
  • limit: default 20 (pass as --limit).
  • search_query: optional --query parameter, uses Sentry search syntax (e.g., is:unresolved, assigned:me).
  • issue_short_id: use directly with sentry issue view.

Output formatting rules

  • Issue list: show title, short_id, status, first_seen, last_seen, count, environments, top_tags; order by most recent.
  • Event detail: include culprit, timestamp, environment, release, url.
  • If no results, state explicitly.
  • Redact PII in output (emails, IPs). Do not print raw stack traces.
  • Never echo auth tokens.

Golden test inputs

  • Org: {your-org}
  • Project: {your-project}
  • Issue short ID: {ABC-123}

Example prompt: "List the top 10 open issues for prod in the last 24h." Expected: ordered list with titles, short IDs, counts, last seen.