一键导入
一键导入
Attempt a small, verified fix for a GitHub issue in `getsentry/sentry-javascript`, then open a PR. Bail out and comment on the issue if the fix is non-trivial.
Vendor an OpenTelemetry instrumentation package into the Sentry JavaScript SDK. Use when vendoring, inlining, or copying an @opentelemetry/instrumentation-* package (or similar like @prisma/instrumentation, @fastify/otel) into the SDK source. Also use when the user says "vendor", "inline instrumentation", or references the Vendor OpenTelemetry Instrumentation project.
Analyze and propose fixes for Dependabot security alerts
Write high-quality unit tests (Vitest) and E2E tests (Playwright) following senior test-engineering practices. Use this skill whenever asked to write tests, add test coverage, create test cases, fix failing tests, add missing assertions, test a new feature, write specs, or cover edge cases. Also trigger when the user says "write tests for", "add tests", "test this", "cover this", "needs tests", "add E2E test", "add unit test", "test coverage", or when reviewing code and noticing missing test coverage.
Manage agent skill dependencies with dotagents. Use when asked to "add a skill", "install skills", "remove a skill", "update skills", "dotagents init", "agents.toml", "agents.lock", "sync skills", "list skills", "set up dotagents", "configure trust", "add MCP server", "add hook", "wildcard skills", "user scope", or any dotagents-related task.
Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.
| name | e2e |
| description | Run E2E tests for Sentry JavaScript SDK test applications |
| argument-hint | <test-app-name> [--variant <variant-name>] |
This skill runs end-to-end tests for Sentry JavaScript SDK test applications. It ensures SDK packages are built before running tests.
The user provides a test application name and optionally a variant:
e2e-tests/test-applications/nextjs-app-dir (full path)nextjs-app-dir (just the app name)nextjs-app-dir --variant nextjs-15 (with variant)Extract the test app name from user input:
e2e-tests/test-applications/ prefix if present--variant nextjs-15)nextjs-app-dir)If the user recently edited files in packages/*, identify which packages were modified:
# Check which packages have uncommitted changes (including untracked files)
git status --porcelain | grep "^[ MARC?][ MD?] packages/" | cut -d'/' -f2 | sort -u
For each modified package, rebuild its tarball:
cd packages/<package-name>
yarn build && yarn build:tarball
cd ../..
Option C: User Specifies Packages
If the user says "I changed @sentry/node" or similar, rebuild just that package:
cd packages/node
yarn build && yarn build:tarball
cd ../..
Check that the test app exists:
ls -d dev-packages/e2e-tests/test-applications/<app-name>
If it doesn't exist, list available test apps:
ls dev-packages/e2e-tests/test-applications/
Ask the user which one they meant.
Navigate to the e2e-tests directory and run the test:
cd dev-packages/e2e-tests
yarn test:run <app-name>
If a variant was specified:
cd dev-packages/e2e-tests
yarn test:run <app-name> --variant <variant-name>
After the test completes, provide a summary:
If tests passed:
✅ E2E tests passed for <app-name>
All tests completed successfully. Your SDK changes work correctly with this test application.
If tests failed:
❌ E2E tests failed for <app-name>
[Include relevant error output]
If package rebuild was needed:
📦 Rebuilt SDK packages: <list of packages>
🧪 Running E2E tests for <app-name>...
yarn build && yarn build:tarball at repository rootyarn build:tarball at the repo root, then yarn test:prepare in dev-packages/e2e-testsHere are frequently tested applications:
nextjs-app-dir - Next.js App Routernextjs-15 - Next.js 15.xreact-create-hash-router - React with React Routernode-express-esm-loader - Node.js Express with ESMsveltekit-2 - SvelteKit 2.xremix-2 - Remix 2.xnuxt-3 - Nuxt 3.xTo see all available test apps:
ls dev-packages/e2e-tests/test-applications/
# User: "Run e2e tests for node-express-esm-loader"
# Step 1: Detect recent changes to packages/node
# Step 2: Rebuild the modified package
cd packages/node
yarn build && yarn build:tarball
cd ../..
# Step 3: Run the test
cd dev-packages/e2e-tests
yarn test:run node-express-esm-loader
# User: "Run e2e tests for nextjs-app-dir"
# Step 1: Check for existing tarballs
# Step 2: None found, build all packages
yarn build && yarn build:tarball
# Step 3: Run the test
cd dev-packages/e2e-tests
yarn test:run nextjs-app-dir
# User: "Run e2e tests for nextjs-app-dir with nextjs-15 variant"
# Step 1: Rebuild if needed
# Step 2: Run with variant
cd dev-packages/e2e-tests
yarn test:run nextjs-app-dir --variant nextjs-15
This skill integrates with the standard SDK development workflow:
packages/*/e2e <app-name> to test your changesThe skill automates the tedious parts of: