diff --git a/docs/ai/agent-plugin/index.mdx b/docs/ai/agent-plugin/index.mdx new file mode 100644 index 0000000000000..676998116c436 --- /dev/null +++ b/docs/ai/agent-plugin/index.mdx @@ -0,0 +1,80 @@ +--- +title: Agent Plugin +sidebar_order: 10 +description: "Install the Sentry plugin for your AI coding assistant so it can set up Sentry, find and fix production issues, and configure monitoring, all from a prompt." +keywords: + - agent plugin + - Claude Code + - Cursor + - Codex + - Grok + - AI coding assistant + - vibe coding + - AI setup +--- + +Whether you're adding Sentry to a new project, debugging a spike in errors, or wiring up alerts, just ask. The plugin gives your assistant the context it needs to do it right. + + + +Supports **Claude Code**, **Cursor**, **Codex**, and **Grok**. + + + +## Install + +Run this in your terminal: + +```bash +npx @sentry/ai install +``` + +The installer detects which assistants you have on your machine, lets you pick the ones you want, and wires the plugin into each. Already have it? The same command updates you to the latest version. + +Restart your AI tools afterward so they load the plugin. + +The plugin configures the [Sentry MCP server](https://mcp.sentry.dev) for you during install, so there's nothing else to connect. A few workflow tasks also need the [GitHub CLI](https://cli.github.com/) (`gh`) for reading and replying to PR comments. + +## What You Can Do + +**Set up Sentry in any project.** The plugin detects your stack, recommends the right features, and walks through the whole installation, so you're not copy-pasting from docs. + +```text {tabTitle:Prompt} +> Add Sentry to my Next.js app +> Set up Sentry in my Rails project +> Add error monitoring to my iOS app +``` + +**Find and fix production issues.** Query your Sentry environment, triage errors, and fix them in place. + +```text {tabTitle:Prompt} +> What are the top errors in the last 24 hours? +> Which issues are affecting the most users? +> Fix the recent Sentry errors +``` + +**Review code with Sentry context.** Resolve the bugs that Sentry and Seer flag in your pull request comments. + +```text {tabTitle:Prompt} +> Review PR #123 and fix the Sentry comments +``` + +**Configure monitoring.** Set up alerts, instrument your AI and LLM calls, and connect OpenTelemetry pipelines. + +```text {tabTitle:Prompt} +> Create a Slack alert for new high-priority issues +> Monitor my OpenAI calls with Sentry +> Set up an OTel Collector with the Sentry exporter +``` + +## Remove the Plugin + +```bash +npx @sentry/ai remove +``` + +This only offers the assistants that currently have the plugin and removes just the Sentry plugin, leaving each tool's marketplace registered. Restart your AI tools afterward to drop it. + +## Contributing + +The plugin is built from the [sentry-for-ai](https://github.com/getsentry/sentry-for-ai) repository, the source of truth for every skill and command. To add a skill or fix an existing one, open a pull request there. Skills follow the [Agent Skills specification](https://agentskills.io/specification): each is a directory with a `SKILL.md` file that holds YAML frontmatter and markdown instructions. diff --git a/docs/ai/agent-skills/index.mdx b/docs/ai/agent-skills/index.mdx deleted file mode 100644 index 41d1684791ca2..0000000000000 --- a/docs/ai/agent-skills/index.mdx +++ /dev/null @@ -1,161 +0,0 @@ ---- -title: Agent Skills -sidebar_order: 10 -description: "Teach your AI coding assistant how to set up and configure Sentry in your projects, and how to use Sentry's AI agents to debug and fix issues, even in your PRs." -keywords: - - agent skills - - Claude Code - - Cursor - - GitHub Copilot - - OpenAI Codex - - AI coding assistant - - vibe coding - - AI setup - - Windsurf - - AmpCode - - OpenCode ---- - -Agent skills are instruction sets that teach AI coding assistants how to perform specific tasks. Sentry's official agent skills give your AI assistant the knowledge to set up and configure Sentry in your projects with no manual configuration required. Use [workflow skills](https://skills.sh/getsentry/sentry-for-ai/sentry-workflow) to debug and fix issues in your projects. - - - -## Available Skills - -There are two types of official Sentry agent skills: - -- **Setup skills** - Set up Sentry in your projects with no manual configuration required. -- **Workflow skills** - Debug and fix issues in your projects. - -Check out the latest and full list of skills [here](https://skills.sh/getsentry/sentry-for-ai). - -## Install - -Run this in your project (or from any directory for user-level install) to add Sentry agent skills. Omit `--skill` to add all skills from the repo. - -```bash {tabTitle: npx skills} -npx skills add getsentry/sentry-for-ai --skill sentry-fix-issues -``` - -```bash {tabTitle: dotagents} -npx @sentry/dotagents add getsentry/sentry-for-ai --name sentry-fix-issues -``` - -To add all Sentry skills: - -```bash {tabTitle: npx skills} -npx skills add getsentry/sentry-for-ai -``` - -```bash {tabTitle: dotagents} -npx @sentry/dotagents add getsentry/sentry-for-ai -``` - -Alternatively, use [dotagents](/ai/dotagents/) to manage skills declaratively with locked versions. Initialize your project, add Sentry skills, then install: - -```bash -# Initialize dotagents in your project (creates agents.toml) -npx @sentry/dotagents init - -# Add a specific Sentry skill -npx @sentry/dotagents add getsentry/sentry-for-ai --name sentry-fix-issues - -# Or add all Sentry skills -npx @sentry/dotagents add getsentry/sentry-for-ai - -# Install all declared skills -npx @sentry/dotagents install -``` - -This creates an `agents.toml` that pins skill versions and can be committed to your repo, so every team member gets the same skills automatically. - -## Quick Reference - -Paths where each client looks for skills: **user-level** (all your projects) and **project-level** (current repository only). - -| Client | User-Level Path | Project-Level Path | -| --------------- | --------------------------- | ------------------ | -| **Claude Code** | `~/.claude/skills/` | `.claude/skills/` | -| **Codex** | `~/.codex/skills/` | `.codex/skills/` | -| **Copilot** | `~/.copilot/skills/` | `.github/skills/` | -| **Cursor** | `~/.cursor/skills/` | `.cursor/skills/` | -| **OpenCode** | `~/.config/opencode/skill/` | `.opencode/skill/` | -| **AmpCode** | `~/.config/agents/skills/` | `.agents/skills/` | - -## Usage - -Once installed, your AI assistant will automatically discover the skills. Simply ask it to perform Sentry-related tasks: - -### Setup - -| What to Say | Skill Used | -| ------------------------------------------ | ---------------------------- | -| "Add Sentry to my React app" | `sentry-react-sdk` | -| "Set up Sentry in React Native" | `sentry-react-native-sdk` | -| "Add Sentry to my Python/Django/Flask app" | `sentry-python-sdk` | -| "Set up Sentry in my Ruby/Rails app" | `sentry-ruby-sdk` | -| "Add Sentry to my iOS app" | `sentry-cocoa-sdk` | -| "Add Sentry to my Next.js app" | `sentry-nextjs-sdk` | -| "Add Sentry to my .NET app" | `sentry-dotnet-sdk` | -| "Add Sentry to my Go app" | `sentry-go-sdk` | -| "Add Sentry to my Svelte app" | `sentry-svelte-sdk` | -| "Monitor my OpenAI/LangChain calls" | `sentry-setup-ai-monitoring` | -| "Set up OpenTelemetry exporter" | `sentry-otel-exporter-setup` | - -### Debugging & Workflow - -| What to Say | Skill Used | -| -------------------------------------------------------------------- | ----------------------- | -| "Fix the recent Sentry errors" | `sentry-fix-issues` | -| "Debug the production TypeError" | `sentry-fix-issues` | -| "Work through my Sentry backlog" | `sentry-fix-issues` | -| "Review Sentry comments on PR #123" | `sentry-pr-code-review` | -| "Fix the issues Sentry found in my PR" | `sentry-pr-code-review` | -| "Review Sentry bot comments on my PR" | `sentry-code-review` | -| "Create an alert that emails me when a high priority issue resolves" | `sentry-create-alert` | -| "Set up a Slack notification for new Sentry issues" | `sentry-create-alert` | - -The assistant will load the appropriate skill and guide you through the process. - -## Contributing - -Want to contribute a new skill? Skills follow the [Agent Skills specification](https://agentskills.io/specification). Here's what one looks like: - -Each skill is a folder with a `SKILL.md` file. The file has YAML frontmatter (`name`, `description`) and markdown instructions the AI assistant will use. - -```text -skill-name/ - SKILL.md # Required: YAML frontmatter + markdown instructions -``` - -```markdown ---- -name: skill-name -description: Description of what this skill does and when to use it ---- - -# Skill Title - -Instructions for the AI assistant... -``` - -**Requirements:** - -1. Follow the [Agent Skills specification](https://agentskills.io/specification) -2. Have a valid `name` (lowercase, hyphens, 1-64 characters) -3. Include a clear `description` (1-1024 characters) -4. **Keep skills concise** — use tables over prose, avoid obvious information -5. Include an "Invoke This Skill When" section with trigger phrases -6. Verify technical details against Sentry docs - -### Style Guidelines - -- Prefer tables over paragraphs for reference information -- Use phases/steps for multi-stage workflows -- Include version requirements where applicable -- Add troubleshooting tables for common issues -- Target ~100-200 lines per skill to minimize token usage - -Submit contributions to the [sentry-for-ai repository](https://github.com/getsentry/sentry-for-ai). - - diff --git a/docs/ai/dotagents.mdx b/docs/ai/dotagents.mdx index 8e94a4601335e..6fd79477cac0c 100644 --- a/docs/ai/dotagents.mdx +++ b/docs/ai/dotagents.mdx @@ -188,5 +188,5 @@ To gitignore managed skills instead (collaborators must run `install`), set `git ## Learn More - [dotagents on GitHub](https://github.com/getsentry/dotagents) -- [Agent Skills](/ai/agent-skills/) +- [Agent Plugin](/ai/agent-plugin/) - [Sentry MCP Server](https://mcp.sentry.dev) diff --git a/docs/ai/index.mdx b/docs/ai/index.mdx index bc07ff5871622..ae54a06c2191b 100644 --- a/docs/ai/index.mdx +++ b/docs/ai/index.mdx @@ -1,7 +1,7 @@ --- title: Sentry for AI sidebar_order: 1 -description: "Connect Sentry to your AI coding assistants and workflows. Install agent skills, use the MCP server, or add monitoring to your AI applications." +description: "Connect Sentry to your AI coding assistants and workflows. Install the agent plugin, use the MCP server, or add monitoring to your AI applications." keywords: - AI - artificial intelligence @@ -9,7 +9,7 @@ keywords: - machine learning - MCP - Model Context Protocol - - agent skills + - agent plugin - AI monitoring - vibe coding - Claude @@ -24,10 +24,10 @@ keywords: - + The Sentry Exporter routes telemetry from multiple services to different Sentry projects through a single collector instance. Without it, you'd need to configure separate DSNs for each project or set up additional routing connectors. diff --git a/docs/platforms/android/index.mdx b/docs/platforms/android/index.mdx index e747818a6bb42..d49f65b5e2e1e 100644 --- a/docs/platforms/android/index.mdx +++ b/docs/platforms/android/index.mdx @@ -12,7 +12,7 @@ keywords: - ndk --- - + On this page, we get you up and running with Sentry's Android SDK, automatically reporting errors and exceptions in your application. diff --git a/docs/platforms/dart/common/index.mdx b/docs/platforms/dart/common/index.mdx index d1f8a13ac8bc4..2696984f35f61 100644 --- a/docs/platforms/dart/common/index.mdx +++ b/docs/platforms/dart/common/index.mdx @@ -9,7 +9,7 @@ categories: - server --- - + On this page, we get you up and running with Sentry's Dart SDK. diff --git a/docs/platforms/dart/guides/flutter/index.mdx b/docs/platforms/dart/guides/flutter/index.mdx index 4cd1e55ca1eed..5dd2b03984907 100644 --- a/docs/platforms/dart/guides/flutter/index.mdx +++ b/docs/platforms/dart/guides/flutter/index.mdx @@ -11,7 +11,7 @@ categories: - desktop --- - + On this page, we get you up and running with Sentry's Flutter SDK. diff --git a/docs/platforms/dotnet/common/index.mdx b/docs/platforms/dotnet/common/index.mdx index 37ae27b5c49a7..f18047fc7628c 100644 --- a/docs/platforms/dotnet/common/index.mdx +++ b/docs/platforms/dotnet/common/index.mdx @@ -1,4 +1,4 @@ - + diff --git a/docs/platforms/dotnet/common/logs/index.mdx b/docs/platforms/dotnet/common/logs/index.mdx index dbf31aeb0cdf8..6482e81370dc9 100644 --- a/docs/platforms/dotnet/common/logs/index.mdx +++ b/docs/platforms/dotnet/common/logs/index.mdx @@ -11,7 +11,7 @@ notSupported: - dotnet.xamarin --- - + With Sentry Structured Logs, you can send text-based log information from your applications to Sentry. Once in Sentry, these logs can be viewed alongside relevant errors, searched by text-string, or searched using their individual attributes. diff --git a/docs/platforms/dotnet/common/metrics/index.mdx b/docs/platforms/dotnet/common/metrics/index.mdx index 9cc88de027f68..14f85cd784d06 100644 --- a/docs/platforms/dotnet/common/metrics/index.mdx +++ b/docs/platforms/dotnet/common/metrics/index.mdx @@ -7,7 +7,7 @@ sidebar_section: features new: true --- - + Sentry metrics help you pinpoint and solve issues that impact user experience and app performance by measuring the data points that are important to you. You can track things like processing time, event size, user signups, and conversion rates, then correlate them back to tracing data in order to get deeper insights and solve issues faster. diff --git a/docs/platforms/dotnet/common/tracing/index.mdx b/docs/platforms/dotnet/common/tracing/index.mdx index 1be1831cd11f8..da1861c622645 100644 --- a/docs/platforms/dotnet/common/tracing/index.mdx +++ b/docs/platforms/dotnet/common/tracing/index.mdx @@ -6,7 +6,7 @@ sidebar_order: 4 sidebar_section: features --- - + With [tracing](/product/dashboards/sentry-dashboards/), Sentry tracks your software performance, measuring metrics like throughput and latency, and displaying the impact of errors across multiple systems. Sentry captures distributed traces consisting of transactions and spans, which measure individual services and individual operations within those services. Learn more about our model in [Distributed Tracing](/concepts/key-terms/tracing/distributed-tracing/). diff --git a/docs/platforms/elixir/index.mdx b/docs/platforms/elixir/index.mdx index ef748de4e2d40..40492192a99d8 100644 --- a/docs/platforms/elixir/index.mdx +++ b/docs/platforms/elixir/index.mdx @@ -9,7 +9,7 @@ categories: - server --- - + On this page, we get you up and running with Sentry's SDK. diff --git a/docs/platforms/go/common/index.mdx b/docs/platforms/go/common/index.mdx index a9f4c626e3e04..c85a524bb8129 100644 --- a/docs/platforms/go/common/index.mdx +++ b/docs/platforms/go/common/index.mdx @@ -1,4 +1,4 @@ - + On this page, we get you up and running with Sentry's SDK. If you are using our previous Go SDK, you can access the legacy SDK documentation, until further notice. diff --git a/docs/platforms/javascript/common/ai-agent-monitoring/index.mdx b/docs/platforms/javascript/common/ai-agent-monitoring/index.mdx index 2946f81cbdf32..5fc65d54d1b74 100644 --- a/docs/platforms/javascript/common/ai-agent-monitoring/index.mdx +++ b/docs/platforms/javascript/common/ai-agent-monitoring/index.mdx @@ -32,7 +32,7 @@ supported: With Sentry AI Agent Monitoring, you can monitor and debug your AI systems with full-stack context. You'll be able to track key insights like token usage, latency, tool usage, and error rates. AI Agent Monitoring data will be fully connected to your other Sentry data like logs, errors, and traces. - + ## Prerequisites diff --git a/docs/platforms/javascript/guides/cloudflare/index.mdx b/docs/platforms/javascript/guides/cloudflare/index.mdx index a3d2c93867eca..acd474a6197db 100644 --- a/docs/platforms/javascript/guides/cloudflare/index.mdx +++ b/docs/platforms/javascript/guides/cloudflare/index.mdx @@ -9,7 +9,7 @@ categories: - serverless --- - + Use this guide for general instructions on using the Sentry SDK with Cloudflare. If you're using any of the listed frameworks, follow their specific setup instructions: diff --git a/docs/platforms/javascript/guides/nestjs/index.mdx b/docs/platforms/javascript/guides/nestjs/index.mdx index 513f54c757d03..488eec35479e8 100644 --- a/docs/platforms/javascript/guides/nestjs/index.mdx +++ b/docs/platforms/javascript/guides/nestjs/index.mdx @@ -9,7 +9,7 @@ categories: - server-node --- - + diff --git a/docs/platforms/javascript/guides/nextjs/logs/index.mdx b/docs/platforms/javascript/guides/nextjs/logs/index.mdx index a3fa772bb9112..f42c04a34a39c 100644 --- a/docs/platforms/javascript/guides/nextjs/logs/index.mdx +++ b/docs/platforms/javascript/guides/nextjs/logs/index.mdx @@ -6,7 +6,7 @@ sidebar_order: 4 sidebar_section: features --- - + Sentry Logs let you send structured log data from your Next.js application. Unlike traditional string-based logging, structured logs include queryable attributes that help you debug issues faster by filtering on specific users, orders, or any business context you include. diff --git a/docs/platforms/javascript/guides/nextjs/tracing/index.mdx b/docs/platforms/javascript/guides/nextjs/tracing/index.mdx index 796215ac63554..802c9ced62d90 100644 --- a/docs/platforms/javascript/guides/nextjs/tracing/index.mdx +++ b/docs/platforms/javascript/guides/nextjs/tracing/index.mdx @@ -6,7 +6,7 @@ sidebar_order: 5 sidebar_section: features --- - + Tracing captures the timing and flow of requests through your Next.js application. Learn more about [tracing](/concepts/key-terms/tracing/) and how Sentry uses traces to track performance across services. diff --git a/docs/platforms/javascript/guides/react-router/index.mdx b/docs/platforms/javascript/guides/react-router/index.mdx index d72089e0fead4..a98ff66a21f54 100644 --- a/docs/platforms/javascript/guides/react-router/index.mdx +++ b/docs/platforms/javascript/guides/react-router/index.mdx @@ -9,7 +9,7 @@ categories: - server-node --- - diff --git a/docs/platforms/javascript/guides/svelte/index.mdx b/docs/platforms/javascript/guides/svelte/index.mdx index 2109304f7c58e..cee4ca62579bb 100644 --- a/docs/platforms/javascript/guides/svelte/index.mdx +++ b/docs/platforms/javascript/guides/svelte/index.mdx @@ -7,7 +7,7 @@ categories: - browser --- - + diff --git a/docs/platforms/javascript/guides/sveltekit/index.mdx b/docs/platforms/javascript/guides/sveltekit/index.mdx index c8e3acc4390fa..b73b4c33291bd 100644 --- a/docs/platforms/javascript/guides/sveltekit/index.mdx +++ b/docs/platforms/javascript/guides/sveltekit/index.mdx @@ -9,7 +9,7 @@ categories: - server-node --- - + diff --git a/docs/platforms/php/index.mdx b/docs/platforms/php/index.mdx index 0f3b26e707255..282e37b8841f4 100644 --- a/docs/platforms/php/index.mdx +++ b/docs/platforms/php/index.mdx @@ -9,7 +9,7 @@ categories: og_image: /og-images/platforms-php.png --- - + ## Prerequisites diff --git a/docs/platforms/python/index.mdx b/docs/platforms/python/index.mdx index 97614962e8661..c2203dd21b56d 100644 --- a/docs/platforms/python/index.mdx +++ b/docs/platforms/python/index.mdx @@ -10,7 +10,7 @@ categories: - serverless --- - + diff --git a/docs/platforms/python/integrations/openai-agents/index.mdx b/docs/platforms/python/integrations/openai-agents/index.mdx index 62e8eecb029c9..48005a0de05ea 100644 --- a/docs/platforms/python/integrations/openai-agents/index.mdx +++ b/docs/platforms/python/integrations/openai-agents/index.mdx @@ -12,7 +12,7 @@ The support for **OpenAI Agents SDK** is in its beta phase. Please test locally This integration connects Sentry with the [OpenAI Python SDK](https://openai.github.io/openai-agents-python/). The integration has been confirmed to work with OpenAI Agents version 0.0.19. - + Once you've installed this SDK, you can use the [AI Agents Dashboards](https://sentry.io/orgredirect/organizations/:orgslug/dashboards/?filter=onlyPrebuilt&query=agents&sort=mostPopular) to understand what's going on with your AI agents. diff --git a/docs/platforms/python/logs/index.mdx b/docs/platforms/python/logs/index.mdx index 116753d202e53..95c55b400de1c 100644 --- a/docs/platforms/python/logs/index.mdx +++ b/docs/platforms/python/logs/index.mdx @@ -6,7 +6,7 @@ sidebar_order: 4 sidebar_section: features --- - + With Sentry Structured Logs, you can send text-based log information from your applications to Sentry. Once in Sentry, these logs can be viewed alongside relevant errors, searched by text-string, or searched using their individual attributes. diff --git a/docs/platforms/python/metrics/index.mdx b/docs/platforms/python/metrics/index.mdx index b8bb2a83fb2d1..80808d8cd82cc 100644 --- a/docs/platforms/python/metrics/index.mdx +++ b/docs/platforms/python/metrics/index.mdx @@ -7,7 +7,7 @@ sidebar_section: features new: true --- - + Sentry metrics help you pinpoint and solve issues that impact user experience and app performance by measuring the data points that are important to you. You can track things like processing time, event size, user signups, and conversion rates, then correlate them back to tracing data in order to get deeper insights and solve issues faster. diff --git a/docs/platforms/python/tracing/index.mdx b/docs/platforms/python/tracing/index.mdx index 4c2ad8a7788e3..303f0270e6658 100644 --- a/docs/platforms/python/tracing/index.mdx +++ b/docs/platforms/python/tracing/index.mdx @@ -6,7 +6,7 @@ sidebar_order: 6 sidebar_section: features --- - + ## Prerequisites diff --git a/docs/platforms/python/tracing/instrumentation/custom-instrumentation/ai-agents-module.mdx b/docs/platforms/python/tracing/instrumentation/custom-instrumentation/ai-agents-module.mdx index 1dddfd27a49b4..c5528fefe9daf 100644 --- a/docs/platforms/python/tracing/instrumentation/custom-instrumentation/ai-agents-module.mdx +++ b/docs/platforms/python/tracing/instrumentation/custom-instrumentation/ai-agents-module.mdx @@ -6,7 +6,7 @@ description: "Learn how to manually instrument your code to use Sentry's Agents With Sentry AI Agent Monitoring, you can monitor and debug your AI systems with full-stack context. You'll be able to track key insights like token usage, latency, tool usage, and error rates. AI Agent Monitoring data will be fully connected to your other Sentry data like logs, errors, and traces. - + As a prerequisite to setting up AI Agent Monitoring with Python, you'll need to first set up tracing. Once this is done, the Python SDK will automatically instrument AI agents created with supported libraries. If that doesn't fit your use case, you can use custom instrumentation described below. diff --git a/docs/platforms/react-native/common/index.mdx b/docs/platforms/react-native/common/index.mdx index 10bfcaf88e487..382bcc1f18cae 100644 --- a/docs/platforms/react-native/common/index.mdx +++ b/docs/platforms/react-native/common/index.mdx @@ -9,7 +9,7 @@ categories: - mobile --- - + Read on to find out how to set up Sentry's React Native SDK which will automatically report errors and exceptions in your application. If you prefer to follow video instructions, see [How to Install the Sentry React Native SDK in 60 Seconds](https://vimeo.com/899369012). diff --git a/docs/platforms/react-native/guides/expo/index.mdx b/docs/platforms/react-native/guides/expo/index.mdx index 6142a6f0656aa..38ad51e19c6e9 100644 --- a/docs/platforms/react-native/guides/expo/index.mdx +++ b/docs/platforms/react-native/guides/expo/index.mdx @@ -9,7 +9,7 @@ categories: - mobile --- - + Use this guide to get fully set up with Sentry's React Native SDK in an [Expo](https://expo.dev/) project. The same `@sentry/react-native` SDK powers both bare React Native and Expo apps. This guide covers the Expo-specific setup (config plugin, Metro, EAS) and integrations. diff --git a/docs/platforms/ruby/common/index.mdx b/docs/platforms/ruby/common/index.mdx index 9494ba95ce22e..43468c64c1cfe 100644 --- a/docs/platforms/ruby/common/index.mdx +++ b/docs/platforms/ruby/common/index.mdx @@ -1,4 +1,4 @@ - + diff --git a/docs/platforms/ruby/common/metrics/index.mdx b/docs/platforms/ruby/common/metrics/index.mdx index 581f93e29a9ea..1b2cea5edccc3 100644 --- a/docs/platforms/ruby/common/metrics/index.mdx +++ b/docs/platforms/ruby/common/metrics/index.mdx @@ -7,7 +7,7 @@ sidebar_section: features new: true --- - + Sentry metrics help you pinpoint and solve issues that impact user experience and app performance by measuring the data points that are important to you. You can track things like processing time, event size, user signups, and conversion rates, then correlate them back to tracing data in order to get deeper insights and solve issues faster. diff --git a/docs/platforms/ruby/common/tracing/index.mdx b/docs/platforms/ruby/common/tracing/index.mdx index ede165e6ed632..4b8c7a913763b 100644 --- a/docs/platforms/ruby/common/tracing/index.mdx +++ b/docs/platforms/ruby/common/tracing/index.mdx @@ -6,7 +6,7 @@ sidebar_order: 6 sidebar_section: features --- - + With [tracing](/product/dashboards/sentry-dashboards/), Sentry tracks your software performance, measuring metrics like throughput and latency, and displaying the impact of errors across multiple systems. Sentry captures distributed traces consisting of transactions and spans, which measure individual services and individual operations within those services. Learn more about our model in [Distributed Tracing](/concepts/key-terms/tracing/distributed-tracing/). diff --git a/docs/platforms/ruby/logs/index.mdx b/docs/platforms/ruby/logs/index.mdx index 053e9532af070..d9eb0f8c055c7 100644 --- a/docs/platforms/ruby/logs/index.mdx +++ b/docs/platforms/ruby/logs/index.mdx @@ -6,7 +6,7 @@ sidebar_order: 4 sidebar_section: features --- - + With Sentry Structured Logs, you can send text-based log information from your applications to Sentry. Once in Sentry, these logs can be viewed alongside relevant errors, searched by text-string, or searched using their individual attributes. diff --git a/includes/apple-platform-getting-started.mdx b/includes/apple-platform-getting-started.mdx index f409f96856fbe..a93c778bee1c9 100644 --- a/includes/apple-platform-getting-started.mdx +++ b/includes/apple-platform-getting-started.mdx @@ -1,4 +1,4 @@ - + On this page, we get you up and running with Sentry's Apple SDK, which will automatically report errors and exceptions in your application. diff --git a/platform-includes/llm-rules-logs/_default.mdx b/platform-includes/llm-rules-logs/_default.mdx index 3701576999190..13d7d42c74686 100644 --- a/platform-includes/llm-rules-logs/_default.mdx +++ b/platform-includes/llm-rules-logs/_default.mdx @@ -1 +1 @@ - + diff --git a/platform-includes/llm-rules-logs/javascript.node.mdx b/platform-includes/llm-rules-logs/javascript.node.mdx index 50d8ba3805763..1d3486f03ced5 100644 --- a/platform-includes/llm-rules-logs/javascript.node.mdx +++ b/platform-includes/llm-rules-logs/javascript.node.mdx @@ -1 +1 @@ - + diff --git a/platform-includes/llm-rules-logs/javascript.react.mdx b/platform-includes/llm-rules-logs/javascript.react.mdx index 9853aeb0062bb..f43fac94f8fac 100644 --- a/platform-includes/llm-rules-logs/javascript.react.mdx +++ b/platform-includes/llm-rules-logs/javascript.react.mdx @@ -1 +1 @@ - + diff --git a/platform-includes/llm-rules-platform/_default.mdx b/platform-includes/llm-rules-platform/_default.mdx index 3701576999190..13d7d42c74686 100644 --- a/platform-includes/llm-rules-platform/_default.mdx +++ b/platform-includes/llm-rules-platform/_default.mdx @@ -1 +1 @@ - + diff --git a/platform-includes/llm-rules-platform/javascript.mdx b/platform-includes/llm-rules-platform/javascript.mdx index 1e3115bcd463c..83124f9c80552 100644 --- a/platform-includes/llm-rules-platform/javascript.mdx +++ b/platform-includes/llm-rules-platform/javascript.mdx @@ -1,4 +1,4 @@ - diff --git a/platform-includes/llm-rules-platform/javascript.nextjs.mdx b/platform-includes/llm-rules-platform/javascript.nextjs.mdx index 04d815b772c6a..cc01918651d8a 100644 --- a/platform-includes/llm-rules-platform/javascript.nextjs.mdx +++ b/platform-includes/llm-rules-platform/javascript.nextjs.mdx @@ -1 +1 @@ - + diff --git a/platform-includes/llm-rules-platform/javascript.node.mdx b/platform-includes/llm-rules-platform/javascript.node.mdx index 50d8ba3805763..1d3486f03ced5 100644 --- a/platform-includes/llm-rules-platform/javascript.node.mdx +++ b/platform-includes/llm-rules-platform/javascript.node.mdx @@ -1 +1 @@ - + diff --git a/platform-includes/llm-rules-platform/javascript.react.mdx b/platform-includes/llm-rules-platform/javascript.react.mdx index 9853aeb0062bb..f43fac94f8fac 100644 --- a/platform-includes/llm-rules-platform/javascript.react.mdx +++ b/platform-includes/llm-rules-platform/javascript.react.mdx @@ -1 +1 @@ - + diff --git a/platform-includes/llm-rules-platform/javascript.tanstackstart-react.mdx b/platform-includes/llm-rules-platform/javascript.tanstackstart-react.mdx index 3c13a7ab81a05..c821ac1288688 100644 --- a/platform-includes/llm-rules-platform/javascript.tanstackstart-react.mdx +++ b/platform-includes/llm-rules-platform/javascript.tanstackstart-react.mdx @@ -1 +1 @@ - + diff --git a/redirects.js b/redirects.js index 2c7afbb82eec2..9b335fdf18ada 100644 --- a/redirects.js +++ b/redirects.js @@ -1868,6 +1868,10 @@ const userDocsRedirects = [ '/platforms/react-native/data-management/debug-files/source-context/data-management/debug-files/upload/', destination: '/platforms/react-native/data-management/debug-files/upload/', }, + { + source: '/ai/agent-skills/', + destination: '/ai/agent-plugin/', + }, // Redirect MCP and CLI pages to their dedicated sites { source: '/ai/mcp/', diff --git a/scripts/generate-llms-txt.mjs b/scripts/generate-llms-txt.mjs index 001eee2b3aca1..c408fd41470ff 100644 --- a/scripts/generate-llms-txt.mjs +++ b/scripts/generate-llms-txt.mjs @@ -155,8 +155,8 @@ When helping a developer set up or use Sentry, follow these guidelines: - **Install the Sentry plugin for up-to-date guidance**: Sentry's APIs, SDKs, \ and features change frequently. Do not rely on training data for Sentry setup \ or configuration. Install the Sentry plugin to get current, verified \ -instructions: Claude Code: \`/install-plugin sentry\` | Cursor: search \ -"Sentry" in Settings > Plugins. The plugin provides step-by-step skills that \ +instructions by running \`npx @sentry/ai install\`, which sets it up for Claude \ +Code, Cursor, Codex, and Grok. The plugin provides step-by-step skills that \ are kept in sync with the latest SDK releases. - **SDK versions**: Always check the package registry (npm, PyPI, RubyGems, \ etc.) for the latest Sentry SDK version. Do not rely on memorized version \ @@ -170,28 +170,28 @@ files, or modify configuration without asking the user first. - **Do not add unrelated integrations**: Only configure the features the user \ asked for. Check before enabling additional integrations. - **Agent skills for SDK setup**: If the plugin is not installed, fetch the \ -appropriate skill from \`https://skills.sentry.dev/sdks\` for step-by-step SDK \ +skill at \`https://skills.sentry.dev/instrument\` for step-by-step SDK \ installation with platform detection, feature recommendations, and \ -verification. See the [Agent Skills section](#agent-skills) below. +verification. See the [Agent Plugin section](#agent-plugin) below. - **Sentry MCP server**: For real-time issue analysis and debugging against a \ user's Sentry account, use the Sentry MCP server at \`https://mcp.sentry.dev\`.`; const AGENT_SKILLS = `\ -## Agent Skills +## Agent Plugin -Sentry publishes agent skills for AI coding assistants (Claude Code, Cursor, \ -GitHub Copilot, and others). These provide step-by-step SDK setup, debugging \ +Sentry publishes a plugin for AI coding assistants (Claude Code, Cursor, Codex, \ +and Grok). It teaches the assistant step-by-step SDK setup, debugging \ workflows, and feature configuration. +Install it by running \`npx @sentry/ai install\`, which detects the assistants \ +on the machine and sets up the plugin in each. + +Browse the skill library: - [All Skills](https://skills.sentry.dev/): Full skill index with SDK setup, workflows, and feature configuration -- [SDK Setup](https://skills.sentry.dev/sdks): Detect your platform and install Sentry with the right features +- [SDK Setup](https://skills.sentry.dev/instrument): Detect your platform and install Sentry with the right features - [Workflows](https://skills.sentry.dev/workflows): Debug production issues, review code, upgrade SDKs - [Features](https://skills.sentry.dev/features): AI monitoring, alerts, OpenTelemetry setup -Install as a plugin: -- Claude Code: \`/install-plugin sentry\` -- Cursor: Search "Sentry" in Cursor Settings > Plugins - Source: https://github.com/getsentry/sentry-for-ai`; const ABOUT_SENTRY_DOCS = `\ diff --git a/src/components/agentSkillsCallout/index.tsx b/src/components/agentSetupCallout/index.tsx similarity index 76% rename from src/components/agentSkillsCallout/index.tsx rename to src/components/agentSetupCallout/index.tsx index 3cea70876d787..0c6145be52cab 100644 --- a/src/components/agentSkillsCallout/index.tsx +++ b/src/components/agentSetupCallout/index.tsx @@ -8,8 +8,7 @@ import {usePlausibleEvent} from 'sentry-docs/hooks/usePlausibleEvent'; import {DocMetrics} from 'sentry-docs/metrics'; import {CodeBlock} from '../codeBlock'; -import {CodeTabs} from '../codeTabs'; -import {buildDotagentsCommand, buildNpxSkillsCommand, buildPrompt} from './shared'; +import {buildPrompt} from './shared'; import styles from './style.module.scss'; type Props = { @@ -19,12 +18,12 @@ type Props = { skill?: string; }; -export function AgentSkillsCallout({skill, platformName}: Props) { +export function AgentSetupCallout({skill, platformName}: Props) { const [copied, setCopied] = useState(false); const [isExpanded, setIsExpanded] = useState(false); const {emit} = usePlausibleEvent(); - const prompt = buildPrompt(skill); + const prompt = buildPrompt(platformName); const copyPrompt = useCallback( async (event: React.MouseEvent) => { @@ -32,7 +31,7 @@ export function AgentSkillsCallout({skill, platformName}: Props) { event.preventDefault(); emit('Copy AI Prompt', { - props: {page: window.location.pathname, title: 'Agent Skills Callout'}, + props: {page: window.location.pathname, title: 'Agent Setup Callout'}, }); try { @@ -73,7 +72,7 @@ export function AgentSkillsCallout({skill, platformName}: Props) { {description} Works with Cursor, Claude Code, Codex, and more. - + View docs ↗ @@ -89,25 +88,18 @@ export function AgentSkillsCallout({skill, platformName}: Props) { ) : ( )} - Install the full skills package + Install the full plugin

- Run this in your project to add Sentry agent skills. See the{' '} - installation docs for more details. + Install the Sentry plugin to give your assistant every skill. See the{' '} + installation docs for more details.

- - -
-                {buildDotagentsCommand(skill)}
-              
-
- -
-                {buildNpxSkillsCommand(skill)}
-              
-
-
+ +
+              npx @sentry/ai install
+            
+
diff --git a/src/components/agentSetupCallout/shared.ts b/src/components/agentSetupCallout/shared.ts new file mode 100644 index 0000000000000..9fde0fb5383b8 --- /dev/null +++ b/src/components/agentSetupCallout/shared.ts @@ -0,0 +1,14 @@ +/** + * Shared constants and utilities for agent skills prompt building. + * Used by AgentSetupCallout (full banner) and inline copy-prompt buttons. + */ + +export const SKILLS_BASE_URL = 'https://skills.sentry.dev'; + +/** Single entrypoint skill that instruments any SDK; the SDK is named in prose. */ +export const INSTRUMENT_SKILL_URL = `${SKILLS_BASE_URL}/instrument`; + +export function buildPrompt(sdkName?: string): string { + const target = sdkName ? `the Sentry ${sdkName} SDK` : 'Sentry'; + return `Use curl to download, read and follow ${INSTRUMENT_SKILL_URL} to set up ${target}.`; +} diff --git a/src/components/agentSkillsCallout/style.module.scss b/src/components/agentSetupCallout/style.module.scss similarity index 100% rename from src/components/agentSkillsCallout/style.module.scss rename to src/components/agentSetupCallout/style.module.scss diff --git a/src/components/agentSkillsCallout/shared.ts b/src/components/agentSkillsCallout/shared.ts deleted file mode 100644 index 3decc8ede4243..0000000000000 --- a/src/components/agentSkillsCallout/shared.ts +++ /dev/null @@ -1,33 +0,0 @@ -/** - * Shared constants and utilities for agent skills prompt building. - * Used by AgentSkillsCallout (full banner) and inline copy-prompt buttons. - */ - -export const SKILLS_BASE_URL = 'https://skills.sentry.dev'; -export const SKILLS_REPO = 'getsentry/sentry-for-ai'; - -export function buildPromptUrl(skill?: string): string { - if (!skill) { - return SKILLS_BASE_URL + '/'; - } - return `${SKILLS_BASE_URL}/${skill}/SKILL.md`; -} - -export function buildPrompt(skill?: string): string { - const url = buildPromptUrl(skill); - return `Use curl to download, read and follow: ${url}`; -} - -export function buildDotagentsCommand(skill?: string): string { - if (!skill) { - return `npx @sentry/dotagents add ${SKILLS_REPO} --all`; - } - return `npx @sentry/dotagents add ${SKILLS_REPO} --name ${skill}`; -} - -export function buildNpxSkillsCommand(skill?: string): string { - if (!skill) { - return `npx skills add ${SKILLS_REPO}`; - } - return `npx skills add ${SKILLS_REPO} --skill ${skill}`; -} diff --git a/src/components/copyPromptButton/index.tsx b/src/components/copyPromptButton/index.tsx index b010c98c41971..ab9775a631916 100644 --- a/src/components/copyPromptButton/index.tsx +++ b/src/components/copyPromptButton/index.tsx @@ -8,21 +8,23 @@ import {useCallback, useMemo, useState} from 'react'; import {usePlausibleEvent} from 'sentry-docs/hooks/usePlausibleEvent'; import {DocMetrics} from 'sentry-docs/metrics'; -import {buildPrompt} from '../agentSkillsCallout/shared'; +import {buildPrompt} from '../agentSetupCallout/shared'; import styles from './style.module.scss'; type Props = { - /** Skill package name, e.g. "sentry-nextjs-sdk". */ + /** Skill package name, e.g. "sentry-nextjs-sdk". Used for analytics. */ skill: string; + /** Display name for the SDK, e.g. "Next.js". Named in the copied prompt. */ + platformName?: string; }; -export function CopyPromptButton({skill}: Props) { +export function CopyPromptButton({skill, platformName}: Props) { const [copied, setCopied] = useState(false); const {emit} = usePlausibleEvent(); const {resolvedTheme} = useTheme(); const isDark = resolvedTheme === 'dark'; - const prompt = buildPrompt(skill); + const prompt = buildPrompt(platformName); /** * Tooltip styles matching the onboarding tooltip pattern. diff --git a/src/components/home.tsx b/src/components/home.tsx index 3569d4e16ea6a..751fac6cc42ba 100644 --- a/src/components/home.tsx +++ b/src/components/home.tsx @@ -351,8 +351,8 @@ export async function Home() {

Integrate Sentry into your AI coding assistants using Sentry's{' '} - - Skills + + plugin {' '} and{' '} {/* Row 2: Guides and Pricing & Billing */} diff --git a/src/components/linkWithPlatformIcon.tsx b/src/components/linkWithPlatformIcon.tsx index 17ae9d8b53e1a..b44627ba812f1 100644 --- a/src/components/linkWithPlatformIcon.tsx +++ b/src/components/linkWithPlatformIcon.tsx @@ -30,7 +30,7 @@ export function LinkWithPlatformIcon({platform, label, url, skill}: Props) { /> {label ?? platform} - {skill && } + {skill && } ); } diff --git a/src/mdxComponents.ts b/src/mdxComponents.ts index b0cc414fec2c1..32d2c7d68363a 100644 --- a/src/mdxComponents.ts +++ b/src/mdxComponents.ts @@ -1,4 +1,4 @@ -import {AgentSkillsCallout} from './components/agentSkillsCallout'; +import {AgentSetupCallout} from './components/agentSetupCallout'; import {Alert} from './components/alert'; import {Arcade} from './components/arcade'; import {AvailableSince} from './components/availableSince'; @@ -74,7 +74,7 @@ export function mdxComponents( wrapper: any = ({children}) => children ) { return { - AgentSkillsCallout, + AgentSetupCallout, Alert, Arcade, AvailableSince, diff --git a/src/metrics.ts b/src/metrics.ts index 8e0343e3f7064..bf7eacd6da4ce 100644 --- a/src/metrics.ts +++ b/src/metrics.ts @@ -162,7 +162,7 @@ export const DocMetrics = { }, /** - * Track "Copy Prompt" button clicks in the Agent Skills Callout + * Track "Copy Prompt" button clicks in the Agent Setup Callout * @param pathname - Page where the prompt was copied * @param skill - Skill name if present (e.g., "sentry-nextjs-sdk") * @param success - Whether the clipboard copy succeeded