Sentry (Read-only)
Read production errors and issues from Sentry.
Setup
# Check token is set (does not print the value)
[ -n "$SENTRY_AUTH_TOKEN" ] && echo "SENTRY_AUTH_TOKEN: set" || echo "SENTRY_AUTH_TOKEN: MISSING"
echo "ORG=${SENTRY_ORG:-not set}"
echo "PROJECT=${SENTRY_PROJECT:-not set}"
If SENTRY_AUTH_TOKEN is missing:
- Go to https://sentry.io/settings/account/api/auth-tokens/
- Create a token with scopes:
project:read,event:read,org:read - Set
SENTRY_AUTH_TOKENin your environment
Set optional defaults to avoid passing flags every time:
export SENTRY_ORG=your-org-slug
export SENTRY_PROJECT=your-project-slug
Script path
SKILL_DIR="$(python3 -c "import os; print(os.path.dirname(os.path.realpath('$0')))" 2>/dev/null || echo "$HOME/.claude/skills/sentry")"
SENTRY_API="$SKILL_DIR/scripts/sentry_api.py"
Commands
List recent issues
python3 "$SENTRY_API" list-issues \
--org "$SENTRY_ORG" \
--project "$SENTRY_PROJECT" \
--time-range 24h \
--environment prod \
--limit 20 \
--query "is:unresolved"
Get issue detail
python3 "$SENTRY_API" issue-detail ISSUE_ID
Get events for an issue
python3 "$SENTRY_API" issue-events ISSUE_ID --limit 10
Get event detail (no stack traces by default)
python3 "$SENTRY_API" event-detail \
--org "$SENTRY_ORG" \
--project "$SENTRY_PROJECT" \
EVENT_ID
Add --include-entries to include stack traces.
Resolve a short ID (e.g. ABC-123) to issue ID
python3 "$SENTRY_API" list-issues \
--org "$SENTRY_ORG" \
--project "$SENTRY_PROJECT" \
--query "ABC-123" \
--limit 1
Parameters
| Flag | Default | Description |
|---|---|---|
--org | $SENTRY_ORG | Org slug |
--project | $SENTRY_PROJECT | Project slug |
--time-range | 24h | Stats period (e.g. 7d, 30d) |
--environment | prod | Environment filter |
--limit | 20 | Max results (max 50) |
--query | Sentry search query | |
--base-url | https://sentry.io | For self-hosted Sentry |
--no-redact | Disable PII redaction — avoid in shared/logged environments |
Notes
- PII (emails, IPs) is redacted by default
- Stack traces are excluded from event detail by default — add
--include-entriesonly when you need them and trust the environment --no-redactdisables PII redaction — avoid in shared or logged environments- For self-hosted Sentry, set
SENTRY_BASE_URLor use--base-url