Dashboard › cli › Distillation
23546824-93f1-4713-aa88-9c420e5626d3["lore_tm_v1_t6j7dQhU1wbIcK61QFU11YaDZZKtRTeKlkRs0KENiKw","lore_tm_v1_sTs8BWqisNZqSjJmZhPFk1P0NWiOn0o920-OrMdJYpY","lore_tm_v1_IqXtB6fIwbEMjx58YbNjMI-N-9TdWJNYyy3dMUh2OyE","lore_tm_v1_ik3nR_92Pde1bw9Xl5AY2Uw5rqup4YEVL7W79uT69aw","lore_tm_v1_1uVncg-jnDx1dGUgVwywmKaJ88iJRIORh3gwRENdyes","lore_tm_v1_y3wvl_h0md5C3XeSBFmmOqUatTMphKV_wYn5gM6NifE"]
π΄ (20:43) packages/cli/script/check-stale-references.ts is a 192-line tsx script that reads packageManager from package.json, derives currentPM by splitting at "@", and exits 1 with β Cannot determine package manager from package.json when the field is absent or empty.
π΄ (20:43) packages/cli/script/check-stale-references.ts defines ALL_PACKAGE_MANAGERS = ["bun", "yarn", "pnpm", "npm"], treats every entry other than currentPM as stale, and exits 0 with β No stale package manager patterns to check if no stale managers remain.
π΄ (20:43) The stale-reference patterns in packages/cli/script/check-stale-references.ts detect non-current package-manager development commands matching run, remove, or add -d/add -D, plus case-insensitive prerequisite prose matching forms such as requires Bun, Yarn installed, or Bun runtime; findings explain either Use '${currentPM}' commands instead or Project uses ${currentPM}, not these runtimes.
π΄ (20:43) packages/cli/script/check-stale-references.ts scans curated documentation files DEVELOPMENT.md, plugins/README.md, ${DOCS_CONTENT}/contributing.md, and ${DOCS_CONTENT}/library-usage.md, plus every .ts file directly under script/; it excludes itself via SELF = "script/check-stale-references.ts" and silently skips missing optional files.
π΄ (20:43) Markdown scanning in packages/cli/script/check-stale-references.ts strips fenced backtick or tilde code blocks using FENCED_CODE_BLOCK_RE = /^({3,}|~{3,}).\n[\s\S]?\n\1\s*$/gm` to avoid flagging user installation examples; scripts are scanned without stripping.
π΄ (20:43) Findings from packages/cli/script/check-stale-references.ts contain file, line, text, and reason; markdown line numbers are recovered by findOriginalLineNumber(original, strippedLine), which returns the first original line whose trimmed text equals the stripped line and falls back to 0.
π΄ (20:43) packages/cli/script/check-stale-references.ts exits 0 when no findings exist and reports the current package manager plus ${FILES_TO_SCAN.length}; otherwise it prints the exact finding count, each ${file}:${line}: ${text}, the reason, and exits 1.
π΄ (20:43) packages/cli/README.md describes Sentry CLI as βThe command-line interface for Sentry. Built for developers and AI agents.β and links to https://cli.sentry.dev, https://cli.sentry.dev/getting-started/, and https://cli.sentry.dev/commands/.
π΄ (20:43) packages/cli/README.md lists installation methods in this order: 1. recommended install script curl https://cli.sentry.dev/install -fsS | bash; 2. Homebrew brew install getsentry/tools/sentry; 3. global package-manager installs npm install -g sentry, pnpm add -g sentry, yarn global add sentry, and bun add -g sentry; 4. no-install execution via npx sentry@latest, pnpm dlx sentry --help, yarn dlx sentry --help, and bunx sentry --help.
π΄ (20:43) packages/cli/README.md states the npm/pnpm/yarn packages require Node.js 18+; Node.js 22.15+ uses built-in node:sqlite, while Node.js 18β22.14 transparently falls back to a bundled WASM SQLite driver.
π΄ (20:43) The packages/cli/README.md quick start uses, in order: sentry auth login, sentry issue list, sentry issue explain PROJ-ABC, and sentry issue plan PROJ-ABC.
π΄ (20:43) packages/cli/README.md lists 5 features: 1. DSN auto-detection from .env files or source code without flags; 2. Seer AI root-cause analysis and fix plans; 3. monorepo support with short aliases; 4. --json output for scripting and pipelines; 5. -w to open resources in a browser.
π΄ (20:43) packages/cli/README.md states credentials are stored under ~/.sentry/ with restricted mode 600.
π΄ (20:43) The packages/cli/README.md library example imports default createSentrySDK from "sentry", creates an SDK with { token: "sntrys_..." }, and demonstrates sdk.org.list(), sdk.issue.list({ orgProject: "acme/frontend", limit: 5 }), sdk.issue.view({ issue: "ACME-123" }), sdk.dashboard.widget.add({ display: "line", query: "count" }, "my-org/my-dashboard"), sdk.run("--version"), and sdk.run("issue", "list", "-l", "5").
π΄ (20:43) packages/cli/README.md documents optional SDK options token, url, org, project, text, cwd, and signal; token falls back to SENTRY_AUTH_TOKEN / SENTRY_TOKEN, cwd defaults to process.cwd(), text affects only run(), and signal cancels streaming --follow or --refresh commands.
π΄ (20:43) packages/cli/README.md states streaming SDK commands return AsyncIterable and can be stopped with break, while failures are thrown as SentryError carrying .exitCode and .stderr.
π΄ (20:43) The generated development prerequisite in packages/cli/README.md requires Node.js v22.15+ and pnpm v10.11+; setup uses git clone https://github.com/getsentry/cli.git, cd cli, and pnpm install.
π΄ (20:43) The generated development scripts in packages/cli/README.md are ordered as: 1. pnpm run build; 2. pnpm run typecheck; 3. pnpm run lint; 4. pnpm run lint:fix; 5. pnpm run test:unit; 6. pnpm run test:e2e; 7. pnpm run generate:docs.
π΄ (20:43) apps/cli-docs/src/content/docs/getting-started.mdx documents stable installation with curl https://cli.sentry.dev/install -fsS | bash and nightly installation with curl https://cli.sentry.dev/install -fsS | bash -s -- --version nightly; nightly is built from main and updated on every commit.
π΄ (20:43) apps/cli-docs/src/content/docs/getting-started.mdx documents version pinning with SENTRY_VERSION=0.19.0 curl https://cli.sentry.dev/install -fsS | bash or SENTRY_VERSION=nightly curl https://cli.sentry.dev/install -fsS | bash; --version takes precedence over SENTRY_VERSION, and the selected channel is persisted so sentry cli upgrade continues tracking it.
π΄ (20:43) The generated supported-platform table in apps/cli-docs/src/content/docs/getting-started.mdx lists: macOS x64 and arm64 (Apple Silicon); Linux x64 and arm64 with glibc and musl/Alpine support; Windows x64 via Git Bash, MSYS2, or WSL.
π΄ (20:43) apps/cli-docs/src/content/docs/getting-started.mdx lists global package-manager installs as npm install -g sentry, pnpm add -g sentry, yarn global add sentry, and bun add -g sentry, and states the npm/pnpm/yarn packages require Node.js 22.15+.
π΄ (20:43) apps/cli-docs/src/content/docs/getting-started.mdx states package-manager installations, unlike the install script and Homebrew, do not set up shell completions or agent skills; users should run sentry cli setup once to enable them.
π΄ (20:43) Direct execution examples in apps/cli-docs/src/content/docs/getting-started.mdx are npx sentry --help, pnpm dlx sentry --help, yarn dlx sentry --help, and bunx sentry --help; OAuth device-flow authentication is recommended via sentry auth login.
π΄ (20:44) The repository-root .gitignore still contains the comment # dependencies (bun install) at line 1; its matched ignored/generated paths include dist, dist-bin, dist-build, apps/cli-docs/dist, packages/cli/src/generated/, packages/cli/src/sdk.generated.ts, and packages/cli/src/sdk.generated.d.cts, with !packages/cli/src/generated/banner-sixel.ts explicitly unignored.
π΄ (20:44) packages/cli/.gitignore includes dist, dist-bin, dist-build, src/generated/, src/sdk.generated.ts, and src/sdk.generated.d.cts, while explicitly unignoring !src/generated/banner-sixel.ts; fixture files packages/cli/test/init-eval/templates/react-vite-app/.gitignore and packages/cli/test/init-eval/templates/express-app/.gitignore each ignore dist/.
π΄ (20:44) Commit cf165f5ba is titled chore: pre-shape repo into pnpm-workspace monorepo layout. (meaning July 15, 2026)
π΄ (20:44) Commit def5a353a is titled fix(install): pass through no-agent-skills flag (#919). (meaning May 5, 2026)
π΄ (20:44) Commit ff574c983 is titled chore: regenerate docs. (meaning April 23, 2026)