Skip to content

Merge sentry-cli + sentry-mcp into getsentry/toolkit monorepo (master) #1248

Description

@BYK

Tracking issue for merging getsentry/cli into the existing getsentry/sentry-mcp repository, validating the combined monorepo there, and only then renaming it to getsentry/toolkit. The final repository is a pnpm workspace (no Turbo) with independent prefixed releases and phased shared code.

Full plan: https://gist.github.com/BYK/8c0ce6cec64608f41fe5654b7827228e

Settled architecture

  • Use getsentry/sentry-mcp as the destination; do not create a fresh repository. This preserves MCP production secrets, environments, GitHub App, webhooks, Vercel, and Cloudflare wiring.
  • Import CLI while the repository is still named getsentry/sentry-mcp. Rename only after the integrated monorepo and live deployment paths pass every gate.
  • Preserve CLI and docs history through two filtered git subtree imports into packages/cli and apps/cli-docs.
  • Release products independently with cli@x.y.z and mcp@x.y.z.
  • CLI docs and previews are release-gated on Cloudflare; https://cli.sentry.dev/install remains unchanged. The MCP Worker remains on Cloudflare.
  • Drop Turbo for pnpm-native orchestration.
  • Manage patches at the workspace root and use a shared dependency catalog.
  • Colocate first; extract @sentry/toolkit-core later.

Ordered migration gates

1. Prerequisites

2. Bridge CLI release — hard blocker

3. Import and integrate under the current name

4. Pre-rename validation

5. Rename and revalidate

6. Cutover and compatibility window

  • Dual-publish CLI releases and nightlies to Toolkit and getsentry/cli.
  • Announce Toolkit as canonical.
  • Keep getsentry/cli writable; do not archive it while dual publishing is active.
  • After at least two stable releases and roughly 90 days, verify legacy usage has ended, then archive getsentry/cli with a redirect.

7. Follow-up

Highest risks

Every gate is sequential. Never rename before pre-rename validation, and never archive getsentry/cli before the compatibility window ends.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions