Sentry
Skill foryourhealth111-pixel/Vibe-Skills/bundled/skills/sentry
Use when the user asks to inspect Sentry issues or events, summarize recent production errors, or pull basic Sentry health data via the Sentry API; perform read-only queries with the bundled script and require `SENTRY_AUTH_TOKEN`.From its SKILL.md
npx -y skills add foryourhealth111-pixel/Vibe-Skills --skill sentryAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
SKILL.md
3.7 KB, 965 tokens by cl100k_base, as published. Nobody here has run it
Sentry (Read-only Observability)
Quick start
- If not already authenticated, ask the user to provide a valid
SENTRY_AUTH_TOKEN(read-only scopes such asproject:read,event:read) or to log in and create one before running commands. - Set
SENTRY_AUTH_TOKENas an env var. - Optional defaults:
SENTRY_ORG,SENTRY_PROJECT,SENTRY_BASE_URL. - Defaults: org/project
{your-org}/{your-project}, time range24h, environmentprod, limit 20 (max 50). - Always call the Sentry API (no heuristics, no caching).
If the token is missing, give the user these steps:
- Create a Sentry auth token: https://sentry.io/settings/account/api/auth-tokens/
- Create a token with read-only scopes such as
project:read,event:read, andorg:read. - Set
SENTRY_AUTH_TOKENas an environment variable in their system. - Offer to guide them through setting the environment variable for their OS/shell if needed.
- Never ask the user to paste the full token in chat. Ask them to set it locally and confirm when ready.
Core tasks (use bundled script)
Use scripts/sentry_api.py for deterministic API calls. It handles pagination and retries once on transient errors.
Skill path (set once)
export CODEX_HOME="${CODEX_HOME:-$HOME/.codex}"
export SENTRY_API="$CODEX_HOME/skills/sentry/scripts/sentry_api.py"
User-scoped skills install under $CODEX_HOME/skills (default: ~/.codex/skills).
1) List issues (ordered by most recent)
python3 "$SENTRY_API" \
list-issues \
--org {your-org} \
--project {your-project} \
--environment prod \
--time-range 24h \
--limit 20 \
--query "is:unresolved"
2) Resolve an issue short ID to issue ID
python3 "$SENTRY_API" \
list-issues \
--org {your-org} \
--project {your-project} \
--query "ABC-123" \
--limit 1
Use the returned id for issue detail or events.
3) Issue detail
python3 "$SENTRY_API" \
issue-detail \
1234567890
4) Issue events
python3 "$SENTRY_API" \
issue-events \
1234567890 \
--limit 20
5) Event detail (no stack traces by default)
python3 "$SENTRY_API" \
event-detail \
--org {your-org} \
--project {your-project} \
abcdef1234567890
API requirements
Always use these endpoints (GET only):
- List issues:
/api/0/projects/{org_slug}/{project_slug}/issues/ - Issue detail:
/api/0/issues/{issue_id}/ - Events for issue:
/api/0/issues/{issue_id}/events/ - Event detail:
/api/0/projects/{org_slug}/{project_slug}/events/{event_id}/
Inputs and defaults
org_slug,project_slug: default to{your-org}/{your-project}(avoid non-prod orgs).time_range: default24h(pass asstatsPeriod).environment: defaultprod.limit: default 20, max 50 (paginate until limit reached).search_query: optionalqueryparameter.issue_short_id: resolve via list-issues query first.
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.
What ships with it: 5 files
20.5 KB alongside SKILL.md, 1 of them executable
agents/
- openai.yaml316 B
assets/
- sentry.png2.0 KB
- sentry-small.svg661 B
scripts/
- sentry_api.pyruns7.1 KB
- LICENSE.txt10.5 KB
Gives 0 of the 12 instructions most log analysis skills give in 965 tokens
Counted across 325 of the 341 authors here whose files we hold, read 2026-09-06
- Use structured JSON loggingin 32 of 325, across 30 files
- Link every alert to a runbookin 15 of 325, across 13 files
- Alert on symptoms, not causesin 11 of 325, across 10 files
- Include correlation IDs in every log linein 10 of 325
- Propagate trace context across service boundariesin 9 of 325, across 8 files
- Include request IDs for correlationin 8 of 325, across 6 files
- Include trace_id in every structured log entryin 8 of 325, across 7 files
- Include request and user context in every log entryin 8 of 325
- Correlate logs and traces with shared trace IDin 7 of 325, across 6 files
- Record exceptions and set span status on errorsin 7 of 325
- Confirm connection is ACTIVE before running workflowsin 6 of 325, across 3 files
- Call RUBE_SEARCH_TOOLS first for current schemasin 6 of 325, across 3 files
Said here and by no other author read
- ask the user to set SENTRY_AUTH_TOKEN locally
- always call the Sentry API
- use the bundled script for API calls
- give token setup steps when token missing
- use only the listed GET endpoints
- resolve short IDs via list-issues first
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.