@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.
- package/CHANGELOG.md +193 -0
- 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
|
|
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
|
|
129
|
-
"@mastra/
|
|
130
|
-
"@mastra/
|
|
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/
|
|
158
|
-
"@mastra/core": "1.1.0
|
|
159
|
-
"@mastra/react": "0.2.0
|
|
160
|
-
"@mastra/
|
|
161
|
-
"@mastra/
|
|
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": {
|