From typescript-plugin
Implements Sentry SDK for error capture, breadcrumbs, performance spans, cron monitoring, source maps, structured logging, profiling, and enrichment in Bun/Node.js/Next.js apps.
npx claudepluginhub laurigates/claude-plugins --plugin typescript-pluginThis skill is limited to using the following tools:
| Use this skill when... | Use another approach when... |
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
| Use this skill when... | Use another approach when... |
|---|---|
| Adding error monitoring to a project | Setting up logging (use a logger library) |
| Instrumenting performance spans | Monitoring infrastructure metrics (use Prometheus/Grafana) |
| Setting up cron job monitoring | Setting up uptime monitoring (use Pingdom/UptimeRobot) |
| Configuring source maps for Sentry | Debugging errors locally (use debugger) |
| Adding structured logging to Sentry | Configuring project-level Sentry compliance (use /configure:sentry) |
| Setting up profiling, replay, or enrichment helpers | Managing Sentry project settings in the dashboard |
| Implementing error/transaction filtering | Creating Sentry alerting rules |
Sentry provides error monitoring and performance tracking:
enableLogs)bun add @sentry/bun
bun add @sentry/node
bun add @sentry/nextjs @sentry/profiling-node
bun add @sentry/react
# or
bun add @sentry/browser
try {
await riskyOperation();
} catch (error) {
Sentry.captureException(error);
throw error; // Re-throw if needed
}
Sentry.captureException(error, {
tags: {
feature: "checkout",
paymentProvider: "stripe",
},
extra: {
orderId: order.id,
userId: user.id,
cartItems: cart.items.length,
},
level: "error", // fatal, error, warning, info, debug
});
// Simple message
Sentry.captureMessage("User completed onboarding");
// With level
Sentry.captureMessage("Rate limit approaching", "warning");
// With context
Sentry.captureMessage("Payment failed", {
level: "error",
tags: { gateway: "stripe" },
extra: { errorCode: "card_declined" },
});
| Context | Command |
|---|---|
| Install Bun | bun add @sentry/bun |
| Install Node | bun add @sentry/node |
| Install Next.js | bun add @sentry/nextjs @sentry/profiling-node |
| Install React | bun add @sentry/react |
| Install CLI | bun add -D @sentry/cli |
| Upload maps | npx sentry-cli sourcemaps inject ./dist && npx sentry-cli sourcemaps upload ./dist |
| Setup wizard | npx @sentry/wizard@latest -i sourcemaps |
| Test capture | Sentry.captureMessage("Test from dev") |
| Method | Purpose |
|---|---|
captureException(error) | Capture error with stack trace |
captureMessage(msg) | Capture text message |
captureCheckIn(opts) | Cron job check-in |
addBreadcrumb(crumb) | Add navigation/action trail |
| Method | Purpose |
|---|---|
setTag(key, value) | Add filterable tag |
setExtra(key, value) | Add debug data |
setUser(user) | Set user context |
withScope(callback) | Scoped context |
| Method | Purpose |
|---|---|
startSpan(opts, callback) | Create performance span |
withMonitor(slug, callback) | Monitor cron job |
| Level | Use Case |
|---|---|
fatal | App crash, unrecoverable |
error | Error requiring attention |
warning | Potential issue |
info | Informational |
debug | Debugging only |
| Option | Description |
|---|---|
dsn | Project data source name |
environment | Environment name (production, staging) |
release | Application version |
tracesSampleRate | Transaction sample rate (0.0-1.0) |
tracesSampler | Dynamic sampling function |
sendDefaultPii | Capture IP/headers |
integrations | SDK integrations array |
enableLogs | Forward structured logs to Sentry |
profileSessionSampleRate | Profiling sample rate (0.0-1.0) |
profileLifecycle | "trace" profiles every traced request |
replaysSessionSampleRate | Session replay sample rate |
replaysOnErrorSampleRate | Replay capture rate on errors |
ignoreErrors | Array of error patterns to suppress |
beforeSend | Filter/modify events before sending |
beforeSendTransaction | Filter transactions before sending |
beforeSendLog | Filter structured logs before sending |
For detailed examples, advanced patterns, and best practices, see REFERENCE.md.