SDK reference
Mushi Mushi’s npm packages ship on independent semver tracks (see npm for live versions). Current workspace snapshots:
| Package | Version |
|---|---|
| @mushi-mushi/core, @mushi-mushi/web | 1.33.x |
| @mushi-mushi/react | 1.33.x |
| @mushi-mushi/react-native | 0.24.x |
| @mushi-mushi/cli | 0.37.x |
| @mushi-mushi/mcp | 0.30.x |
| @mushi-mushi/capacitor | 1.1.x |
| @mushi-mushi/node | 1.3.x |
| @mushi-mushi/angular, @mushi-mushi/vue, @mushi-mushi/svelte | 1.0.x |
| mushi-mushi (launcher) | 0.8.x |
See Project ID & API keys for credential formats (project UUID, and the one mushi_… key format every SDK and the MCP server share).
Maturity, honestly
Version numbers don’t tell the maturity story (a 1.0.x wrapper can be younger and less used than a 0.x SDK), so this table says it directly: what each tier means and where each package sits.
| Tier | What it means | Packages |
|---|---|---|
| Battle-tested | Runs in production apps daily, including the Mushi Mushi console itself; full capture surface; deep test suites | @mushi-mushi/core, @mushi-mushi/web, @mushi-mushi/react, @mushi-mushi/react-native, @mushi-mushi/cli, @mushi-mushi/mcp |
| Solid | Complete for the documented surface, used in real apps, smaller scope | @mushi-mushi/capacitor, @mushi-mushi/node, @mushi-mushi/adapters |
| Functional wrapper | Thin framework binding over @mushi-mushi/web (100 to 200 lines each); everything documented works, but expect fewer framework-specific niceties | @mushi-mushi/vue, @mushi-mushi/svelte, @mushi-mushi/angular |
| Native preview | Full native implementations, not yet published to CocoaPods, Maven Central or pub.dev; install from the GitHub repo | iOS (Swift), Android (Kotlin), Flutter |
If a “functional wrapper” is missing something you need, the underlying
@mushi-mushi/web API is always available alongside it, and
issues for framework
bindings get prioritized by demand.
The JS packages are MIT-licensed; the server packages (@mushi-mushi/server, @mushi-mushi/agents, @mushi-mushi/verify) are AGPLv3, an OSI-approved open-source license. A small enterprise-edition boundary (packages/server/ee/) is source-available but commercial for production use.
Web & frameworks
| Package | Registry | Description |
|---|---|---|
@mushi-mushi/core | npm | Shared primitives: normaliseThrown, createBreadcrumbBuffer, captureEnvironment |
@mushi-mushi/web | npm | Browser SDK: report widget, breadcrumbs, session replay, optional WASM pre-classifier |
@mushi-mushi/react | npm | React provider + hooks + <MushiRewardsBadge /> |
@mushi-mushi/vue | npm | Vue 3 plugin + composables |
@mushi-mushi/svelte | npm | Svelte stores + context |
@mushi-mushi/angular | npm | Angular service, error handler and provideMushi() |
@mushi-mushi/adapters | npm | Inbound observability webhooks (Sentry, Datadog, Bugsnag, …) |
Server
| Package | Registry | Description |
|---|---|---|
@mushi-mushi/node | npm | Forward unhandled exceptions + HTTP error handlers |
Mobile & native
| Package | Registry | Description |
|---|---|---|
@mushi-mushi/react-native | npm | React Native SDK: shake-to-report, bottom-sheet widget, offline queue |
MushiMushi | Preview: SwiftPM from master (no CocoaPods yet) | iOS / macOS / tvOS native Swift SDK |
dev.mushimushi:mushi-android | Preview: build from source (not on Maven Central yet) | Android Kotlin SDK, bottom-sheet widget, file-backed queue |
mushi_mushi | Preview: git: dependency (not on pub.dev yet) | Flutter SDK written in Dart, sensors_plus shake detection |
@mushi-mushi/capacitor | npm | Capacitor plugin that wraps the native SDKs for hybrid apps |
Tooling & automation
| Package | Registry | Description |
|---|---|---|
@mushi-mushi/cli | npm | Project setup, RAG indexing, report management, mushi migrate |
mushi-mushi | npm | Launcher: the npx mushi-mushi setup wizard |
@mushi-mushi/mcp | npm | MCP server: triage reports from Cursor, Claude, Codex |
@mushi-mushi/mcp-ci | npm | GitHub Action: triage-coverage gate, fix dispatch, pre-release gates, crawler sign-in |
eslint-plugin-mushi-mushi | npm | Lint rules for empty event handlers (no-dead-handler) and leftover mock data (no-mock-leak) |
Infrastructure & advanced
| Package | Registry | Description |
|---|---|---|
@mushi-mushi/wasm-classifier | npm | On-device pre-classifier (heuristic; ONNX mode experimental) that drops junk before sending |
@mushi-mushi/plugin-sdk | npm | Build your own Marketplace plugin |
@mushi-mushi/inventory-schema | npm | Zod schemas for inventory_nodes and user stories |
@mushi-mushi/inventory-auth-runner | npm | Logs in with Playwright from your inventory.yaml auth script so the crawler can reach pages behind a login |
Recipes & presets
| Page | Description |
|---|---|
| SDK presets | production-calm, beta-loud, manual-only, internal-debug |
| Next.js App Router + CSP | Content-Security-Policy allowlist for the widget |
| Next.js static export | Static export + client-only init |
| Capacitor bottom dock | Anchor widget above tab bars |
| Sentry Replay coexistence | Run Mushi Mushi replay alongside Sentry |
| Screenshot preview & consent | Visible preview + privacy caption (screenshotSensitiveHint, 1.19+) |
Installation
# Minimal (browser app)
npm install @mushi-mushi/web
# React app
npm install @mushi-mushi/react
# React Native
npm install @mushi-mushi/react-native
# MCP server
npx @mushi-mushi/mcpUpgrade from 0.x
See the @mushi-mushi/* 0.x → 1.0 migration guide for breaking-change details and a codemod.