Unofficial Suno Player

Unofficial Suno Player plays user-owned audio in a workspace and turns song ideas into manual, reviewable briefs. It does not automate provider spending or depend on captured browser credentials.

Unofficial Suno Player with a local track playing, a channel queue, and a manual brief action.
The media surface keeps playback local while channel, specialist, and workflow operations cross explicit host APIs.

Why It Was Made

Media experiences pressure an SDK in different ways from dashboards. This example explores responsive playback, user-owned binary input, channel context, event publication, specialist-assisted briefs, and package-declared workflows while keeping unsupported provider automation visibly absent.

Surface Map

SurfaceWhat this example declares
UIWorkspace-left, workspace scope, singleton, retained persistence
Storageunofficial-suno-player for JSON player and brief metadata
PresenceCurrent surface participation in the selected workspace context
EventsMount, unmount, track started, track reacted, and brief approved
Workflow hostOne manual brief workflow and one pure checkpoint node
Host APIsChannel reads and messages, profile reads, specialist listing and invocation, workflow listing and invocation
CredentialsMetadata-only readiness for future supported provider connections

The code uses sdk.auth, sdk.authorization, sdk.channels, sdk.presence, sdk.specialist, sdk.storage, and sdk.workflows.

Design Boundaries to Notice

  • Imported audio is decoded locally. The app does not send it to a provider as a side effect of playback.
  • JSON metadata can be retained, but the current public SDK does not provide readable persisted binary artifacts. The UI explains when a user must re-import audio.
  • A brief can become a declared workflow input without claiming that a provider generation API exists.
  • Published playback and brief events are contracts for other consumers, not an excuse to expose the entire player store.

What to Read in the Code

Run It Locally

pnpm --filter @tap-examples/unofficial-suno-player dev

Link apps/unofficial-suno-player/tap-package once. The developer command rebuilds both the desktop and workflow-host targets into that package output.

Browse the source or return to the example gallery.