Improve organic agent behavior when setting up Sentry
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 12/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Da chiarire
- Stato di attività
- Attiva
- Stack tecnologico
- javascript, typescript
- Ambito
- ai, developer-experience, documentation
Direzione di ricerca
This is open design research, not a bounded change. Start with packages/cli/src/lib/detect-agent.ts and packages/cli/src/lib/agent-skills.ts to see how agents are detected and skills installed, then review the llms.txt agent-instructions block and the platform Markdown pages the issue names. Done means a written map of where agents get Sentry information, measured against the benchmark, with recommended steering surfaces checked against the no-growth-hacks guardrail.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
When a developer asks a coding agent with no Sentry tooling installed to "set up Sentry", the agent mostly works Sentry out from first principles. It doesn't find or use the CLI, MCP, or skills. This issue covers the organic path: what agents actually do today, what pushes them toward the right setup (CLI-first, current SDK, the right features), and how we'll measure it.
Direction
- The remote-agent implementation of
sentry init(e.g. "set up my GitHub repo with Sentry") is being deprioritized. It is the only hard requirement for a remote agent, as opposed to assuming people already have their own coding agent, and its ROI is low by comparison. - This does not change the onboarding goal. The CLI is still the intended onboarding mechanism, and the CLI + MCP unification (#1357, getsentry/cli#1248) is the main bet.
- Open questions: do we bundle skills, do we need skills at all, is this a docs improvement, should docs be colocated (shipped with packages) or remote?
- Guardrail: help people adopt technology they want but don't yet understand. Don't push technology we want them to want (no growth hacks). Any steering toward CLI, MCP, or extra features has to hold up against this.
Observed organic behavior (one internal sample, 2026-10-14)
- Prompt: "set up Sentry for my web game" (browser JS), Opus 5.5, no plugin installed.
- Result: it worked, but only errors and tracing were set up. The CLI wasn't installed, MCP wasn't configured, and no plugin was installed.
- It picked an older SDK because v11 "looked sus". npm context at that time:
11.0.0shipped 2026-09-23 andlatestis11.7.0(2026-10-12). Thev10line was still publishing (10.76.2, 2026-10-08), and thenextdist-tag still points at11.0.0-rc.1. The agent's actual reasoning is unknown. - Sources it used, per its own session summary: the npm registry (
@sentry/browserversions and release dates) and the Sentry CDN (bundle names, integrity hashes). It did not read docs.sentry.io and ran no web searches. - The
@sentry/browsernpm README (about 1.1 KB) contains only two docs links. It has no agent guidance and doesn't point to the CLI, MCP, or skills. One idea from the discussion: since agents look at the registry first, registry-side instructions could steer them. - A second data point: asked how it would add Sentry, Claude described the ideal flow. It would inspect the project, fetch the official framework docs (preferring
llms.txtor Markdown), use non-interactivenpx @sentry/wizardflags or set things up by hand (interactive prompts often fail in agent shells), ask for the DSN, slugs, and token, and verify. The observed run skipped docs entirely, so what an agent says it will do is not a reliable proxy for what it does. - The same answer said type definitions (
.d.ts) are what it reads most in packages when writing config. JSDoc on each option (purpose, default, deprecation) could be high-leverage agent documentation that needs no new convention.
What we already have (verified 2026-10-14)
- Idea from the discussion: serve different content to agents on the docs site when we can detect them. Partly in place already:
- docs.sentry.io returns Markdown for
Accept: text/markdownand for.mdURLs, and it also returns Markdown for aClaude-UserUA. A bareaxios/*UA with no Accept header gets HTML.
- docs.sentry.io returns Markdown for
docs.sentry.io/llms.txthas an "Instructions for AI Coding Assistants" block. It tells agents to installnpx @sentry/agent-plugin installand useskills.sentry.dev/instrumentandmcp.sentry.dev. It does not mention thesentryCLI, which conflicts with the CLI-first direction.- The platform getting-started Markdown (e.g.
/platforms/javascript.md) doesn't mention the CLI, MCP, or skills. - The CLI already detects agents through env vars and the process tree (
packages/cli/src/lib/detect-agent.ts, adapted fromvercel/detect-agent). It uses this forcli setup, the init wizard, and telemetry, and it can install embedded skills (packages/cli/src/lib/agent-skills.ts). - Benchmark: Value Discovery aims to swap harness, model, plugin, and repo and score tasks like "set up Sentry". It must work without the plugin, so the same prompt can be compared across models with or without any Sentry tooling. Related: #1383 (run init evals on CI).
Industry learnings
- Detecting agents on the web:
- The
Acceptheader is the most reliable signal so far. As of Feb 2026, Claude Code, Cursor, and OpenCode sendtext/markdown. Codex (ChatGPT-UserUA), Gemini CLI (GoogleAgent-URLContext), Copilot, and Windsurf don't. User-Agent is inconsistent: Claude Code sendsaxios/*, and Cursor and OpenCode send a Chrome UA. (Checkly) - Cloudflare converts HTML to Markdown at the edge when the request asks for Markdown. It reports about 80% fewer tokens and adds
x-markdown-tokensandcontent-signalheaders. Vercel and Checkly report 99%+ reductions. (Cloudflare, Vercel) - Cryptographic identity is emerging: Web Bot Auth (HTTP message signatures) and Cloudflare's verified/signed-agent classification, which includes a "user-directed agent" category. (Cloudflare)
- The
- Detecting agents locally: the
vercel/detect-agentrules (env vars likeCLAUDECODE,CURSOR_AGENT,AI_AGENT) are becoming the shared registry. Next.js uses detection innext devto write managedAGENTS.mdblocks. - Always-on context vs. on-demand skills:
- Vercel found an 8 KB docs index in
AGENTS.mdscored 100% on Next.js 16 evals. Skills scored 53%, the same as no docs, because they weren't invoked in 56% of runs. Explicit "use the skill" instructions raised skills to 79%, but results were sensitive to wording. (Vercel) - OpenAI likewise treats skill triggering as something to eval, not assume: the skill's name and description drive invocation. (OpenAI)
- Vercel found an 8 KB docs index in
- Colocated, version-matched docs (Next.js 16.2+):
- Next.js ships docs in
node_modules/next/dist/docs/and writes a managedAGENTS.mdblock ("This is NOT the Next.js you know… read the bundled docs") when it detects an agent. - It also offers per-page
.mdandllms.txt, agent-readable error pages linked from CLI output,next upgrade --agent, and opt-in agent feedback. - Skills are reserved for multi-step workflows, not knowledge lookups. (Next.js, evals)
- Next.js ships docs in
- Agent-specific onboarding pages: Cloudflare docs link an "Agent setup" page from every page, with per-agent guides for Claude Code, Codex, Cursor, Copilot, and OpenCode covering skills and MCP. (Cloudflare)
Scope
- Map where agents actually get Sentry information in organic runs (package registries, READMEs, type definitions, CDN, docs, llms.txt, CLI output), using the benchmark rather than single samples or self-reports.
- Measure whether agents pick the current SDK, enable appropriate features, discover or install the CLI, and use CLI and MCP afterward.
- Evaluate the steering surfaces: package READMEs and registry metadata, JSDoc in type definitions, docs and
llms.txtwording, CLI output when an agent is detected, colocated docs vs. remote docs vs. skills. Check each against the no-growth-hacks guardrail. - Make agent-facing guidance consistent with the CLI-first direction (for example, the
llms.txtplugin-first wording).
Unknowns
- Why the agent distrusted v11. Candidates are release cadence, the parallel
v10publishes, the stalenexttag, or training-data priors. - How representative one Opus sample is across other harnesses and models.
- Whether skills earn their place for setup at all, given the trigger-rate findings above.
via David Cramer.
--
- Lingua principale
- TypeScript
- Stelle
- 938
- Fork
- 166
- Merge medio
- 1g 5h
- PR unite (30g)
- 171
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di getsentry/toolkit
-
bug MCP
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
getsentry/toolkit#1621 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
bug MCP
Difficoltà 2/5 1-3 ore Idoneità per principianti 73/100
getsentry/toolkit#1618 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Docs MCP tool failures omit isErrorForse già presa @thomasjiangcy l’ha presa 1 giorno fa. Apertabug MCP
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
getsentry/toolkit#1600 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
getsentry/toolkit#1471 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
getsentry/toolkit#1632 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di getsentry/toolkit
Issue simili
-
freshness freshness:observed-only
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
thoroc/context-radar#282 ·
-
bug P2 rust
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 1 giorno
-
area: web
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
gabe-santana/arkdraw#25 ·
-
bug require-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
expressjs/expressjs.com#2549 · 1 reazione ·
I maintainer di solito rispondono entro 1 giorno
-
bug good first issue hacktoberfest
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
codercops/discord-bot#101 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno