@mastra/playground-ui 8.0.0-alpha.2 → 8.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/CHANGELOG.md +193 -0
  2. package/package.json +9 -9
package/CHANGELOG.md CHANGED
@@ -1,5 +1,198 @@
1
1
  # @mastra/playground-ui
2
2
 
3
+ ## 8.0.0
4
+
5
+ ### Minor Changes
6
+
7
+ - Moved model provider and model selection dropdowns from the agent side panel to the chat composer area for easier access during conversations ([#12407](https://github.com/mastra-ai/mastra/pull/12407))
8
+
9
+ - Refactored Combobox component to use @base-ui/react instead of custom Radix UI Popover implementation. This removes ~70 lines of manual keyboard navigation code while preserving the same props interface and styling. ([#12377](https://github.com/mastra-ai/mastra/pull/12377))
10
+
11
+ - Added dynamic agent management with CRUD operations and version tracking ([#12038](https://github.com/mastra-ai/mastra/pull/12038))
12
+
13
+ **New Features:**
14
+ - Create, edit, and delete agents directly from the Mastra Studio UI
15
+ - Full version history for agents with compare and restore capabilities
16
+ - Visual diff viewer to compare agent configurations across versions
17
+ - Agent creation modal with comprehensive configuration options (model selection, instructions, tools, workflows, sub-agents, memory)
18
+ - AI-powered instruction enhancement
19
+
20
+ **Storage:**
21
+ - New storage interfaces for stored agents and agent versions
22
+ - PostgreSQL, LibSQL, and MongoDB implementations included
23
+ - In-memory storage for development and testing
24
+
25
+ **API:**
26
+ - RESTful endpoints for agent CRUD operations
27
+ - Version management endpoints (create, list, activate, restore, delete, compare)
28
+ - Automatic versioning on agent updates when enabled
29
+
30
+ **Client SDK:**
31
+ - JavaScript client with full support for stored agents and versions
32
+ - Type-safe methods for all CRUD and version operations
33
+
34
+ **Usage Example:**
35
+
36
+ ```typescript
37
+ // Server-side: Configure storage
38
+ import { Mastra } from '@mastra/core';
39
+ import { PgAgentsStorage } from '@mastra/pg';
40
+
41
+ const mastra = new Mastra({
42
+ agents: { agentOne },
43
+ storage: {
44
+ agents: new PgAgentsStorage({
45
+ connectionString: process.env.DATABASE_URL,
46
+ }),
47
+ },
48
+ });
49
+
50
+ // Client-side: Use the SDK
51
+ import { MastraClient } from '@mastra/client-js';
52
+
53
+ const client = new MastraClient({ baseUrl: 'http://localhost:3000' });
54
+
55
+ // Create a stored agent
56
+ const agent = await client.createStoredAgent({
57
+ name: 'Customer Support Agent',
58
+ description: 'Handles customer inquiries',
59
+ model: { provider: 'ANTHROPIC', name: 'claude-sonnet-4-5' },
60
+ instructions: 'You are a helpful customer support agent...',
61
+ tools: ['search', 'email'],
62
+ });
63
+
64
+ // Create a version snapshot
65
+ await client.storedAgent(agent.id).createVersion({
66
+ name: 'v1.0 - Initial release',
67
+ changeMessage: 'First production version',
68
+ });
69
+
70
+ // Compare versions
71
+ const diff = await client.storedAgent(agent.id).compareVersions('version-1', 'version-2');
72
+ ```
73
+
74
+ **Why:**
75
+ This feature enables teams to manage agents dynamically without code changes, making it easier to iterate on agent configurations and maintain a complete audit trail of changes.
76
+
77
+ - Added Command component (CMDK) with CommandDialog, CommandInput, CommandList, CommandEmpty, CommandGroup, CommandItem, CommandSeparator, and CommandShortcut subcomponents for building command palettes and searchable menus ([#12360](https://github.com/mastra-ai/mastra/pull/12360))
78
+
79
+ - Bump playground-ui to v7.1.0 ([#12186](https://github.com/mastra-ai/mastra/pull/12186))
80
+
81
+ - Added keyboard navigation support to Table component with new `useTableKeyboardNavigation` hook and `isActive` prop on Row ([#12352](https://github.com/mastra-ai/mastra/pull/12352))
82
+
83
+ - Added global command palette (Cmd+K) for quick navigation to any entity in Mastra Studio. Press Cmd+K (or Ctrl+K on Windows/Linux) to search and navigate to agents, workflows, tools, scorers, processors, and MCP servers. ([#12360](https://github.com/mastra-ai/mastra/pull/12360))
84
+
85
+ - Improved command palette with sidebar toggle, direct links to agent/workflow traces, and preserved search result ordering ([#12406](https://github.com/mastra-ai/mastra/pull/12406))
86
+
87
+ - Added workspace UI components for the Mastra playground. ([#11986](https://github.com/mastra-ai/mastra/pull/11986))
88
+
89
+ **New components:**
90
+ - `FileBrowser` - Browse and manage workspace files with breadcrumb navigation
91
+ - `FileViewer` - View file contents with syntax highlighting
92
+ - `SkillsTable` - List and search available skills
93
+ - `SkillDetail` - View skill details, instructions, and references
94
+ - `SearchPanel` - Search workspace content with BM25/vector/hybrid modes
95
+ - `ReferenceViewerDialog` - View skill reference file contents
96
+
97
+ **Usage:**
98
+
99
+ ```tsx
100
+ import { FileBrowser, FileViewer, SkillsTable } from '@mastra/playground-ui';
101
+
102
+ // File browser with navigation
103
+ <FileBrowser
104
+ entries={files}
105
+ currentPath="/docs"
106
+ onNavigate={setPath}
107
+ onFileSelect={handleFileSelect}
108
+ />
109
+
110
+ // Skills table with search
111
+ <SkillsTable
112
+ skills={skills}
113
+ onSkillSelect={handleSkillSelect}
114
+ />
115
+ ```
116
+
117
+ - Developers can now configure a custom API route prefix in the Studio UI, enabling Studio to work with servers using custom base paths (e.g., `/mastra` instead of the default `/api`). See #12261 for more details. ([#12295](https://github.com/mastra-ai/mastra/pull/12295))
118
+
119
+ ### Patch Changes
120
+
121
+ - Fix link to evals documentation ([#12122](https://github.com/mastra-ai/mastra/pull/12122))
122
+
123
+ - Added ghost variant support to domain comboboxes (AgentCombobox, WorkflowCombobox, MCPServerCombobox, ScorerCombobox, ToolCombobox) and moved them into the breadcrumb for a cleaner navigation pattern ([#12357](https://github.com/mastra-ai/mastra/pull/12357))
124
+
125
+ - Added processor combobox to processor page header for quick navigation between processors ([#12368](https://github.com/mastra-ai/mastra/pull/12368))
126
+
127
+ - Restructured stored agents to use a thin metadata record with versioned configuration snapshots. ([#12488](https://github.com/mastra-ai/mastra/pull/12488))
128
+
129
+ The agent record now only stores metadata fields (id, status, activeVersionId, authorId, metadata, timestamps). All configuration fields (name, instructions, model, tools, etc.) live exclusively in version snapshot rows, enabling full version history and rollback.
130
+
131
+ **Key changes:**
132
+ - Stored Agent records are now thin metadata-only (StorageAgentType)
133
+ - All config lives in version snapshots (StorageAgentSnapshotType)
134
+ - New resolved type (StorageResolvedAgentType) merges agent record + active version config
135
+ - Renamed `ownerId` to `authorId` for multi-tenant filtering
136
+ - Changed `memory` field type from `string` to `Record<string, unknown>`
137
+ - Added `status` field ('draft' | 'published') to agent records
138
+ - Flattened CreateAgent/UpdateAgent input types (config fields at top level, no nested snapshot)
139
+ - Version config columns are top-level in the agent_versions table (no single snapshot jsonb column)
140
+ - List endpoints return resolved agents (thin record + active version config)
141
+ - Auto-versioning on update with retention limits and race condition handling
142
+
143
+ - Added Request Context tab to Tools, Agents, and Workflows in Mastra Studio. When an entity defines a requestContextSchema, a form is displayed allowing you to input context values before execution. ([#12259](https://github.com/mastra-ai/mastra/pull/12259))
144
+
145
+ - Fixed keyboard events in command palette propagating to underlying page elements like tables ([#12458](https://github.com/mastra-ai/mastra/pull/12458))
146
+
147
+ - fix workflow run input caching bug in studio UI ([#11784](https://github.com/mastra-ai/mastra/pull/11784))
148
+
149
+ - Refactored agent model dropdowns to use the Combobox design system component, reducing code complexity while preserving all features including custom model ID support and provider connection status indicators. ([#12367](https://github.com/mastra-ai/mastra/pull/12367))
150
+
151
+ - Fixed model combobox auto-opening on mount. The model selector now only opens when explicitly changing providers, improving the initial page load experience. ([#12456](https://github.com/mastra-ai/mastra/pull/12456))
152
+
153
+ - Fixed legacy agent runs so each request now gets a unique run ID, improving trace readability in observability tools. ([#12229](https://github.com/mastra-ai/mastra/pull/12229))
154
+
155
+ - Improved skill activation styling with cleaner badge appearance and dark-themed tooltip on hover. ([#12487](https://github.com/mastra-ai/mastra/pull/12487))
156
+
157
+ - Added workflow run ID to breadcrumbs with truncation and copy functionality ([#12409](https://github.com/mastra-ai/mastra/pull/12409))
158
+
159
+ - Refactored WorkflowTrigger component into focused sub-components for better maintainability. Extracted WorkflowTriggerForm, WorkflowSuspendedSteps, WorkflowCancelButton, and WorkflowStepsStatus. Added useSuspendedSteps and useWorkflowSchemas hooks for memoized computations. No changes to public API. ([#12349](https://github.com/mastra-ai/mastra/pull/12349))
160
+
161
+ - Use useExecuteWorkflow hook from @mastra/react instead of local implementation in playground-ui ([#12138](https://github.com/mastra-ai/mastra/pull/12138))
162
+
163
+ - Refined color palette for a more polished dark theme. Surfaces now use warm near-blacks, accents are softer and less neon, borders are subtle white overlays for a modern look. ([#12350](https://github.com/mastra-ai/mastra/pull/12350))
164
+
165
+ - Added useCancelWorkflowRun hook to @mastra/react for canceling workflow runs. This hook was previously only available internally in playground-ui and is now exported for use in custom applications. ([#12142](https://github.com/mastra-ai/mastra/pull/12142))
166
+
167
+ - Fixed skill detail page crashing when skills have object-typed compatibility or metadata fields. Skills from skills.sh and other external sources now display correctly. ([#12491](https://github.com/mastra-ai/mastra/pull/12491))
168
+
169
+ - Remove hardcoded temperature: 0.5 and topP: 1 defaults from playground agent settings ([#12256](https://github.com/mastra-ai/mastra/pull/12256))
170
+ Let agent config and provider defaults handle these values instead
171
+
172
+ - Added useStreamWorkflow hook to @mastra/react for streaming workflow execution. This hook supports streaming, observing, resuming, and time-traveling workflows. It accepts tracingOptions and onError as parameters for better customization. ([#12151](https://github.com/mastra-ai/mastra/pull/12151))
173
+
174
+ - Added view transitions to internal sidebar navigation links for smoother page transitions ([#12358](https://github.com/mastra-ai/mastra/pull/12358))
175
+
176
+ - Added raw SKILL.md source view in skill detail page. The 'Source' toggle now shows the full file contents including YAML frontmatter. ([#12497](https://github.com/mastra-ai/mastra/pull/12497))
177
+
178
+ - Added IconButton design system component that combines button styling with built-in tooltip support. Replaced TooltipIconButton with IconButton throughout the chat interface for consistency. ([#12410](https://github.com/mastra-ai/mastra/pull/12410))
179
+
180
+ - Updated dependencies [[`90fc0e5`](https://github.com/mastra-ai/mastra/commit/90fc0e5717cb280c2d4acf4f0410b510bb4c0a72), [`1cf5d2e`](https://github.com/mastra-ai/mastra/commit/1cf5d2ea1b085be23e34fb506c80c80a4e6d9c2b), [`b99ceac`](https://github.com/mastra-ai/mastra/commit/b99ceace2c830dbdef47c8692d56a91954aefea2), [`deea43e`](https://github.com/mastra-ai/mastra/commit/deea43eb1366d03a864c5e597d16a48592b9893f), [`60d9d89`](https://github.com/mastra-ai/mastra/commit/60d9d899e44b35bc43f1bcd967a74e0ce010b1af), [`833ae96`](https://github.com/mastra-ai/mastra/commit/833ae96c3e34370e58a1e979571c41f39a720592), [`943772b`](https://github.com/mastra-ai/mastra/commit/943772b4378f625f0f4e19ea2b7c392bd8e71786), [`b5c711b`](https://github.com/mastra-ai/mastra/commit/b5c711b281dd1fb81a399a766bc9f86c55efc13e), [`0350626`](https://github.com/mastra-ai/mastra/commit/03506267ec41b67add80d994c0c0fcce93bbc75f), [`3efbe5a`](https://github.com/mastra-ai/mastra/commit/3efbe5ae20864c4f3143457f4f3ee7dc2fa5ca76), [`1e49e7a`](https://github.com/mastra-ai/mastra/commit/1e49e7ab5f173582154cb26b29d424de67d09aef), [`751eaab`](https://github.com/mastra-ai/mastra/commit/751eaab4e0d3820a94e4c3d39a2ff2663ded3d91), [`69d8156`](https://github.com/mastra-ai/mastra/commit/69d81568bcf062557c24471ce26812446bec465d), [`60d9d89`](https://github.com/mastra-ai/mastra/commit/60d9d899e44b35bc43f1bcd967a74e0ce010b1af), [`5c544c8`](https://github.com/mastra-ai/mastra/commit/5c544c8d12b08ab40d64d8f37b3c4215bee95b87), [`771ad96`](https://github.com/mastra-ai/mastra/commit/771ad962441996b5c43549391a3e6a02c6ddedc2), [`2b0936b`](https://github.com/mastra-ai/mastra/commit/2b0936b0c9a43eeed9bef63e614d7e02ee803f7e), [`3b04f30`](https://github.com/mastra-ai/mastra/commit/3b04f3010604f3cdfc8a0674731700ad66471cee), [`97e26de`](https://github.com/mastra-ai/mastra/commit/97e26deaebd9836647a67b96423281d66421ca07), [`ac9ec66`](https://github.com/mastra-ai/mastra/commit/ac9ec6672779b2e6d4344e415481d1a6a7d4911a), [`dc82e6c`](https://github.com/mastra-ai/mastra/commit/dc82e6c5a05d6a9160c522af08b8c809ddbcdb66), [`dc82e6c`](https://github.com/mastra-ai/mastra/commit/dc82e6c5a05d6a9160c522af08b8c809ddbcdb66), [`10523f4`](https://github.com/mastra-ai/mastra/commit/10523f4882d9b874b40ce6e3715f66dbcd4947d2), [`cb72d20`](https://github.com/mastra-ai/mastra/commit/cb72d2069d7339bda8a0e76d4f35615debb07b84), [`42856b1`](https://github.com/mastra-ai/mastra/commit/42856b1c8aeea6371c9ee77ae2f5f5fe34400933), [`70237c5`](https://github.com/mastra-ai/mastra/commit/70237c51e9e92332eb55d6e3c6dd7f1ea8435d26), [`66f33ff`](https://github.com/mastra-ai/mastra/commit/66f33ff68620018513e499c394411d1d39b3aa5c), [`910367c`](https://github.com/mastra-ai/mastra/commit/910367ce8f89905bd1d958ccfdf0ba1e713696aa), [`ab3c190`](https://github.com/mastra-ai/mastra/commit/ab3c1901980a99910ca9b96a7090c22e24060113), [`d4f06c8`](https://github.com/mastra-ai/mastra/commit/d4f06c85ffa5bb0da38fb82ebf3b040cc6b4ec4e), [`0caf854`](https://github.com/mastra-ai/mastra/commit/0caf854cdeea7bd524e5149de9df56e862be4bc9), [`1d70a4a`](https://github.com/mastra-ai/mastra/commit/1d70a4a6d53c3f2571544dc0767f2c5f4e445ba0), [`0350626`](https://github.com/mastra-ai/mastra/commit/03506267ec41b67add80d994c0c0fcce93bbc75f), [`a64a24c`](https://github.com/mastra-ai/mastra/commit/a64a24c9bce499b989667c7963f2f71a11d90334), [`bc9fa00`](https://github.com/mastra-ai/mastra/commit/bc9fa00859c5c4a796d53a0a5cae46ab4a3072e4), [`f46a478`](https://github.com/mastra-ai/mastra/commit/f46a4782f595949c696569e891f81c8d26338508), [`90fc0e5`](https://github.com/mastra-ai/mastra/commit/90fc0e5717cb280c2d4acf4f0410b510bb4c0a72), [`f05a3a5`](https://github.com/mastra-ai/mastra/commit/f05a3a5cf2b9a9c2d40c09cb8c762a4b6cd5d565), [`a64a24c`](https://github.com/mastra-ai/mastra/commit/a64a24c9bce499b989667c7963f2f71a11d90334), [`a291da9`](https://github.com/mastra-ai/mastra/commit/a291da9363efd92dafd8775dccb4f2d0511ece7a), [`c5d71da`](https://github.com/mastra-ai/mastra/commit/c5d71da1c680ce5640b1a7f8ca0e024a4ab1cfed), [`07042f9`](https://github.com/mastra-ai/mastra/commit/07042f9f89080f38b8f72713ba1c972d5b1905b8), [`0423442`](https://github.com/mastra-ai/mastra/commit/0423442b7be2dfacba95890bea8f4a810db4d603)]:
181
+ - @mastra/core@1.1.0
182
+ - @mastra/client-js@1.1.0
183
+ - @mastra/react@0.2.0
184
+ - @mastra/ai-sdk@1.0.3
185
+
186
+ ## 8.0.0-alpha.3
187
+
188
+ ### Patch Changes
189
+
190
+ - Updated dependencies [[`a64a24c`](https://github.com/mastra-ai/mastra/commit/a64a24c9bce499b989667c7963f2f71a11d90334), [`a64a24c`](https://github.com/mastra-ai/mastra/commit/a64a24c9bce499b989667c7963f2f71a11d90334)]:
191
+ - @mastra/client-js@1.1.0-alpha.2
192
+ - @mastra/react@0.2.0-alpha.2
193
+ - @mastra/ai-sdk@1.0.3-alpha.0
194
+ - @mastra/core@1.1.0-alpha.2
195
+
3
196
  ## 8.0.0-alpha.2
4
197
 
5
198
  ### Patch Changes
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mastra/playground-ui",
3
3
  "type": "module",
4
- "version": "8.0.0-alpha.2",
4
+ "version": "8.0.0",
5
5
  "description": "Mastra Playground components",
6
6
  "main": "dist/index.umd.js",
7
7
  "module": "dist/index.es.js",
@@ -125,9 +125,9 @@
125
125
  "react": ">=19.0.0",
126
126
  "react-dom": ">=19.0.0",
127
127
  "tailwindcss": "^3.0.0",
128
- "@mastra/client-js": "^1.1.0-alpha.1",
129
- "@mastra/react": "0.2.0-alpha.1",
130
- "@mastra/ai-sdk": "^1.0.3-alpha.0",
128
+ "@mastra/client-js": "^1.1.0",
129
+ "@mastra/ai-sdk": "^1.0.3",
130
+ "@mastra/react": "0.2.0",
131
131
  "@mastra/schema-compat": "1.0.0"
132
132
  },
133
133
  "devDependencies": {
@@ -154,11 +154,11 @@
154
154
  "vite-plugin-dts": "^4.5.4",
155
155
  "vite-plugin-lib-inject-css": "^2.2.2",
156
156
  "vitest": "4.0.16",
157
- "@mastra/client-js": "^1.1.0-alpha.1",
158
- "@mastra/core": "1.1.0-alpha.1",
159
- "@mastra/react": "0.2.0-alpha.1",
160
- "@mastra/schema-compat": "1.0.0",
161
- "@mastra/ai-sdk": "^1.0.3-alpha.0"
157
+ "@mastra/ai-sdk": "^1.0.3",
158
+ "@mastra/core": "1.1.0",
159
+ "@mastra/react": "0.2.0",
160
+ "@mastra/client-js": "^1.1.0",
161
+ "@mastra/schema-compat": "1.0.0"
162
162
  },
163
163
  "homepage": "https://mastra.ai",
164
164
  "repository": {