| name | sentry |
| description | Manage Sentry issues using sentry-cli and the Sentry API. List, resolve, mute, and unresolve issues. Get detailed issue information. Use for error tracking, issue triage, and managing application errors in Sentry. |
Sentry CLI
Manage Sentry issues via the sentry wrapper script and the REST API.
Important: Script Location
The sentry wrapper script is located in this skill's directory at scripts/sentry.
First, locate this skill directory by finding where this SKILL.md file is loaded from (check the path shown when reading this file), then use the script relative to that location.
For example, if this skill is at /path/to/skills/sentry/SKILL.md, run:
/path/to/skills/sentry/scripts/sentry <command>
Quick Reference
<skill-dir>/scripts/sentry config
<skill-dir>/scripts/sentry projects
<skill-dir>/scripts/sentry issues list --query "is:unresolved"
<skill-dir>/scripts/sentry issues resolve --id <ID>
<skill-dir>/scripts/sentry issues mute --id <ID>
Replace <skill-dir> with the actual path to this skill's directory.
Setup
The wrapper script wraps sentry-cli and finds .sentryclirc in parent directories, enabling per-org/project tokens.
Directory-Based Config
Place .sentryclirc files in parent directories for different orgs. Configs are merged from root to current directory, so you can set org-wide defaults and override per-project:
~/Development/
├── org-a/
│ ├── .sentryclirc # org-a token + org name
│ ├── project-1/
│ │ └── .sentryclirc # just: project=project-1
│ └── project-2/
│ └── .sentryclirc # just: project=project-2
└── org-b/
├── .sentryclirc # org-b token + org name
└── project-3/
Parent config (e.g., ~/Development/org-a/.sentryclirc):
[auth]
token=sntryu_xxx
[defaults]
org=my-org
Project-specific override (e.g., project-1/.sentryclirc):
[defaults]
project=project-1
Verify Setup
In the examples below, sentry refers to <skill-dir>/scripts/sentry.
sentry config
sentry info
sentry projects
List Issues
sentry issues list
sentry issues list --query "is:unresolved"
sentry issues list --query "is:resolved"
sentry issues list --query "is:unresolved" --max-rows 10
sentry issues list --status unresolved
Resolve Issues
sentry issues resolve --id 7055684245
sentry issues resolve --id 123456 --id 789012
sentry issues resolve --status unresolved
sentry issues resolve --id 123456 --next-release
Mute Issues
sentry issues mute --id 123456
sentry issues mute --status unresolved
Unresolve Issues
sentry issues unresolve --id 123456
Show Issue Details
sentry issues show --id 7055684245
sentry issues show --id 123456 --id 789012
Output includes: short ID, title, culprit, level, status, event count, user count, first/last seen, and permalink.
Search Query Syntax
The --query flag supports Sentry's search syntax:
| Query | Description |
|---|
is:unresolved | Unresolved issues |
is:resolved | Resolved issues |
is:ignored | Ignored/muted issues |
level:error | Error level only |
level:warning | Warning level only |
firstSeen:-24h | First seen in last 24 hours |
lastSeen:-7d | Last seen in last 7 days |
assigned:me | Assigned to you |
assigned:none | Unassigned |
Combine filters: is:unresolved level:error lastSeen:-24h
Full syntax: https://docs.sentry.io/concepts/search/
Sentry API
For anything beyond what the wrapper commands provide, use the REST API directly.
Get the auth token (walks up directory tree like the wrapper):
find_sentryclirc() {
local dir="$PWD"
while [[ "$dir" != "/" ]]; do
[[ -f "$dir/.sentryclirc" ]] && echo "$dir/.sentryclirc" && return
dir="$(dirname "$dir")"
done
echo ~/.sentryclirc
}
SENTRY_AUTH_TOKEN=$(grep -A1 '^\[auth\]' "$(find_sentryclirc)" | grep token | cut -d'=' -f2 | tr -d ' ')
API Reference
Global Options
These work with all commands:
| Option | Description |
|---|
-o, --org <ORG> | Override organization (default from config) |
-p, --project <PROJECT> | Override project (default from config) |
--auth-token <TOKEN> | Override auth token |
--quiet | Suppress output (for scripts) |
--log-level <LEVEL> | Set verbosity: trace, debug, info, warn, error |
Common Workflows
After Deploying a Fix
sentry issues list --query "is:unresolved"
sentry issues resolve --id <ISSUE_ID>
Weekly Triage
sentry issues list --query "is:unresolved lastSeen:-7d"
sentry issues mute --id <ISSUE_ID>
Help
sentry --help
sentry issues --help
sentry issues list --help
sentry issues resolve --help
Status Page
Check Sentry's operational status and recent incidents:
curl -s https://status.sentry.io/history.rss
Useful when investigating 403s, timeouts, or ingestion failures that may be on Sentry's side.
Troubleshooting
"Invalid token" or 401 Errors
Check your configuration:
sentry config
Verify the token works:
sentry info
If this fails, your token may be expired or invalid. Generate a new one at:
https://sentry.io/settings/account/api/auth-tokens/
"Project does not exist" Errors
The project slug in your .sentryclirc may not match the actual Sentry project.
List available projects:
sentry projects
Then update your .sentryclirc with the correct project slug.
Config Not Being Found
The wrapper walks up from your current directory looking for .sentryclirc. Make sure:
- You're in a subdirectory of where
.sentryclirc is located
- The file is named exactly
.sentryclirc (not .sentrycli.rc etc.)
- The INI format is correct:
[auth]
token=sntryu_xxx
[defaults]
org=my-org
project=my-project
Debug Mode
For verbose output, add --log-level=debug:
sentry --log-level=debug issues list