@eventcatalog/core 5.7.1 → 5.7.4
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/dist/analytics/analytics.cjs +1 -1
- package/dist/analytics/analytics.js +2 -2
- package/dist/analytics/log-build.cjs +1 -1
- package/dist/analytics/log-build.js +3 -3
- package/dist/{chunk-GRC67WHC.js → chunk-GOIDVIMH.js} +1 -1
- package/dist/{chunk-HZ3XZKUT.js → chunk-L2PFSX4L.js} +1 -1
- package/dist/{chunk-36XVRD36.js → chunk-PLTHZFTW.js} +1 -1
- package/dist/{chunk-CPF5WE3R.js → chunk-PXYVJK54.js} +1 -1
- package/dist/{chunk-AXWTR2FV.js → chunk-RUG7AIT5.js} +1 -1
- package/dist/constants.cjs +1 -1
- package/dist/constants.js +1 -1
- package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/01-what-is-eventcatalog-assistant.md +8 -0
- package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/02-configuration.md +24 -0
- package/dist/docs/development/studio/01-introduction.md +2 -1
- package/dist/docs/development/studio/04-collaborate-on-a-canvas.md +10 -2
- package/dist/docs/development/studio/05-connect-your-agent.md +4 -0
- package/dist/docs/development/studio/07-reference.md +40 -7
- package/dist/docs/development/studio/draw-with-ai.md +96 -0
- package/dist/eventcatalog.cjs +1 -1
- package/dist/eventcatalog.js +5 -5
- package/dist/generate.cjs +1 -1
- package/dist/generate.js +3 -3
- package/dist/utils/cli-logger.cjs +1 -1
- package/dist/utils/cli-logger.js +2 -2
- package/eventcatalog/src/components/ChatPanel/ChatPanel.tsx +113 -8
- package/eventcatalog/src/components/ChatPanel/panel-width.ts +28 -0
- package/eventcatalog/src/components/MDX/Steps/Step.astro +4 -2
- package/eventcatalog/src/components/SchemaExplorer/DiffViewer.tsx +2 -103
- package/eventcatalog/src/components/SchemaExplorer/diff-dark-styles.ts +104 -0
- package/eventcatalog/src/features/mcp/apps/generated/canvas.html +71 -71
- package/eventcatalog/src/features/mcp/apps/generated/viewer.html +1 -1
- package/eventcatalog/src/features/studio/components/StudioDesigner.tsx +25 -3
- package/eventcatalog/src/features/studio/hooks/use-canvas-webmcp.ts +1 -1
- package/eventcatalog/src/features/studio/server/canvas-mcp.ts +1 -1
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/changelog/_ChangelogPage.astro +297 -0
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/changelog/_index.data.spec.ts +101 -0
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/changelog/_index.data.ts +76 -47
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/changelog/index.astro +4 -168
- package/eventcatalog/src/pages/docs/services/[id]/[version]/changelog/index.astro +14 -0
- package/eventcatalog/src/pages/docs/services/[id]/changelog/index.astro +3 -3
- package/eventcatalog/src/utils/node-graphs/domain-levels-node-graph.ts +112 -28
- package/eventcatalog/src/utils/node-graphs/systems-node-graph.ts +24 -10
- package/package.json +4 -4
|
@@ -169,7 +169,7 @@ var verifyRequiredFieldsAreInCatalogConfigFile = async (projectDirectory) => {
|
|
|
169
169
|
var import_os = __toESM(require("os"), 1);
|
|
170
170
|
|
|
171
171
|
// package.json
|
|
172
|
-
var version = "5.7.
|
|
172
|
+
var version = "5.7.4";
|
|
173
173
|
|
|
174
174
|
// src/constants.ts
|
|
175
175
|
var VERSION = version;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
log_build_default
|
|
3
|
-
} from "../chunk-
|
|
3
|
+
} from "../chunk-PLTHZFTW.js";
|
|
4
4
|
import "../chunk-AD7CL772.js";
|
|
5
|
-
import "../chunk-
|
|
5
|
+
import "../chunk-GOIDVIMH.js";
|
|
6
6
|
import "../chunk-YRZK7HKX.js";
|
|
7
7
|
import "../chunk-CA6WCQ2T.js";
|
|
8
8
|
import "../chunk-CPW6G62V.js";
|
|
9
|
-
import "../chunk-
|
|
9
|
+
import "../chunk-L2PFSX4L.js";
|
|
10
10
|
import "../chunk-4G7FSRPN.js";
|
|
11
11
|
export {
|
|
12
12
|
log_build_default as default
|
package/dist/constants.cjs
CHANGED
package/dist/constants.js
CHANGED
|
@@ -18,3 +18,11 @@ It is embedded directly into your documentation site, enabling users to quickly
|
|
|
18
18
|
The assistant integrates with your preferred AI models using the [AI SDK](https://ai-sdk.dev/), giving you full control over which models power the experience.
|
|
19
19
|
|
|
20
20
|

|
|
21
|
+
|
|
22
|
+
## Draw with AI in Studio
|
|
23
|
+
|
|
24
|
+
<AddedIn version="5.7.1" />
|
|
25
|
+
|
|
26
|
+
On an [EventCatalog Studio](/docs/development/studio/introduction) canvas, the assistant can draw for you. Choose **Draw with AI** and describe what you want to design: the assistant draws it on the canvas, live, using the resources in your catalog. It can also review a design and flag risks with hotspots, or walk you through how something works, step by step.
|
|
27
|
+
|
|
28
|
+
See [Draw with AI](/docs/development/studio/draw-with-ai).
|
package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/02-configuration.md
CHANGED
|
@@ -78,6 +78,30 @@ export const configuration = {
|
|
|
78
78
|
}
|
|
79
79
|
```
|
|
80
80
|
|
|
81
|
+
#### Passing options to your provider
|
|
82
|
+
|
|
83
|
+
<AddedIn version="5.7.1" />
|
|
84
|
+
|
|
85
|
+
Use `configuration.providerOptions` to pass settings that only your model provider understands. They're passed to the [AI SDK's `providerOptions`](https://ai-sdk.dev/docs/foundations/prompts), keyed by the provider's name.
|
|
86
|
+
|
|
87
|
+
For example, to set how much effort an Anthropic model puts into its answers:
|
|
88
|
+
|
|
89
|
+
```js title="eventcatalog.chat.js"
|
|
90
|
+
import { anthropic } from '@ai-sdk/anthropic';
|
|
91
|
+
|
|
92
|
+
export default async () => {
|
|
93
|
+
return anthropic('claude-haiku-5-5');
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
export const configuration = {
|
|
97
|
+
providerOptions: {
|
|
98
|
+
anthropic: { effort: 'medium' },
|
|
99
|
+
},
|
|
100
|
+
}
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
Lower effort answers faster and costs less, which suits most drawing with [Draw with AI](/docs/development/studio/draw-with-ai). Raise it for harder questions. See your provider's page in the [AI SDK docs](https://ai-sdk.dev/providers/ai-sdk-providers) for the options it accepts.
|
|
104
|
+
|
|
81
105
|
Once you have configured your model, restart EventCatalog and you can start asking questions about your architecture.
|
|
82
106
|
|
|
83
107
|
### Troubleshooting
|
|
@@ -31,7 +31,7 @@ With Studio:
|
|
|
31
31
|
- **You sketch what's new next to what exists.** Add proposed services, messages and data stores, and connect them to the resources they change.
|
|
32
32
|
- **Team collaboration.** Everyone on a canvas sees each other's pointers and edits, and can comment and flag risks.
|
|
33
33
|
- **You record the decision.** Mark a canvas as proposed, accepted or rejected, with a note, so you can see later what was decided and why.
|
|
34
|
-
- **AI
|
|
34
|
+
- **AI works with you.** Choose [Draw with AI](/docs/development/studio/draw-with-ai) and describe what you want: the assistant draws it on the canvas with the model you configure. Agents such as Claude and Cursor can also connect through the [MCP server](/docs/development/ask-your-architecture/mcp-server/introduction) and edit the same canvas, using the resources in your catalog.
|
|
35
35
|
|
|
36
36
|
:::info Studio doesn't change your catalog
|
|
37
37
|
A canvas is a design, kept separately from your catalog files. Adding, editing or deleting anything on a canvas never changes your documentation.
|
|
@@ -57,4 +57,5 @@ Try [EventCatalog Studio on the web](https://www.eventcatalog.studio/). It runs
|
|
|
57
57
|
|
|
58
58
|
- [Create a canvas](/docs/development/studio/create-a-canvas)
|
|
59
59
|
- [Collaborate on a canvas](/docs/development/studio/collaborate-on-a-canvas)
|
|
60
|
+
- [Draw with AI](/docs/development/studio/draw-with-ai)
|
|
60
61
|
- [Connect your agent to a canvas](/docs/development/studio/connect-your-agent)
|
|
@@ -46,9 +46,17 @@ A hotspot flags a risk on a node or a spot, such as a single point of failure or
|
|
|
46
46
|
2. Click the node at risk.
|
|
47
47
|
3. Pick **Critical**, **Warning** or **Info**, and add a short title and, if you want, why it matters.
|
|
48
48
|
|
|
49
|
-
|
|
49
|
+
Click a marker to open its hotspot beside it. It shows the title, why it matters, and who flagged it and when. Edit or remove it from its header, or press <kbd>Delete</kbd> to remove it.
|
|
50
50
|
|
|
51
|
-
|
|
51
|
+
**Hotspots** at the bottom of the canvas lists every hotspot, most severe first, with the node it's on. Click a row, or rest the pointer on it, to go to that hotspot and open it. The list stays open, so you can work through them one by one.
|
|
52
|
+
|
|
53
|
+
At L1 and L2, hotspots inside a domain or system are shown on that domain or system, so zooming out never hides a risk. Deleting a node deletes its hotspots too.
|
|
54
|
+
|
|
55
|
+

|
|
56
|
+
|
|
57
|
+
:::tip Let the assistant find risks
|
|
58
|
+
Ask the assistant to review a canvas with [Draw with AI](/docs/development/studio/draw-with-ai#ask-it-to-review-a-design), and it flags what it finds with hotspots.
|
|
59
|
+
:::
|
|
52
60
|
|
|
53
61
|
## Add notes and text
|
|
54
62
|
|
|
@@ -12,6 +12,10 @@ description: Bring Claude, ChatGPT, Cursor or another AI agent onto a canvas to
|
|
|
12
12
|
|
|
13
13
|
AI agents can join a canvas and work on it with you, live. An agent can add resources from your catalog, sketch new components, connect them, tidy the layout, comment and change the status.
|
|
14
14
|
|
|
15
|
+
:::tip No agent to connect?
|
|
16
|
+
[Draw with AI](/docs/development/studio/draw-with-ai) uses the EventCatalog Assistant, built into your catalog, to draw on the canvas with the model you configure.
|
|
17
|
+
:::
|
|
18
|
+
|
|
15
19
|
Agents join like a person does. Each one has its own pointer and name, and you see what it's doing ("Connecting InstalmentPlanApproved to Notification Service") as it works. Choose **Follow** on the "is working" banner to move your view with it.
|
|
16
20
|
|
|
17
21
|

|
|
@@ -111,10 +111,15 @@ The bottom of the menu shows the connection status, for example **Connected**.
|
|
|
111
111
|
|
|
112
112
|
### Right-click menus
|
|
113
113
|
|
|
114
|
+
Items are grouped, with their shortcuts on the right. On a locked canvas, only the items that don't change it are shown.
|
|
115
|
+
|
|
114
116
|
| On | Items |
|
|
115
117
|
|---|---|
|
|
116
|
-
| A node | Add comment, Add hotspot, Add
|
|
117
|
-
|
|
|
118
|
+
| A node | Edit details · Cut, Copy, Paste, Duplicate · Add comment, Add hotspot, Add note · Delete |
|
|
119
|
+
| A sticky note or text | Edit text · Cut, Copy, Paste, Duplicate · Colour (sticky notes) · Add comment · Delete |
|
|
120
|
+
| The canvas | Paste here · Add sticky note, Add comment, Add hotspot · Reorder diagram |
|
|
121
|
+
|
|
122
|
+
**Cut** is offered at L3, where nodes can be copied.
|
|
118
123
|
|
|
119
124
|
### Statuses
|
|
120
125
|
|
|
@@ -136,8 +141,10 @@ The bottom of the menu shows the connection status, for example **Connected**.
|
|
|
136
141
|
| Title | Up to 120 characters, for example "Single point of failure" |
|
|
137
142
|
| Description | Optional. Why it matters, and what to do about it |
|
|
138
143
|
|
|
139
|
-
- A hotspot is on a node, and moves with it, or on a spot on the canvas.
|
|
140
|
-
-
|
|
144
|
+
- A hotspot is on a node, and moves with it, or on a spot on the canvas. Deleting a node deletes its hotspots, and undo brings them back.
|
|
145
|
+
- A marker shows the severity's icon, with a count when there's more than one hotspot on it. Click it to open the hotspot beside it.
|
|
146
|
+
- An open hotspot shows its title, description, and who flagged it and when. Edit or remove it from its header, or press <kbd>Delete</kbd> to remove it.
|
|
147
|
+
- The **Hotspots** list at the bottom left has one row per hotspot, most severe first, with the node it's on. Click a row, or rest the pointer on it, to go to that hotspot and open it.
|
|
141
148
|
- At L1 and L2, hotspots inside a domain or system are shown on that domain or system.
|
|
142
149
|
|
|
143
150
|
### Studio page
|
|
@@ -178,7 +185,7 @@ New components start at version `0.0.1`.
|
|
|
178
185
|
| People | Actor | Someone who uses it |
|
|
179
186
|
| | Team | Who owns what |
|
|
180
187
|
|
|
181
|
-
Sticky notes and text are added from the toolbar.
|
|
188
|
+
Sticky notes and text are added from the toolbar. Agents and the [assistant](/docs/development/studio/draw-with-ai) can add them too, and they're always placed clear of other nodes.
|
|
182
189
|
|
|
183
190
|
### Catalog resources
|
|
184
191
|
|
|
@@ -221,8 +228,8 @@ When Studio is on, the [EventCatalog MCP server](/docs/development/ask-your-arch
|
|
|
221
228
|
| `openCanvas` | Shows a canvas in the chat, in clients that support MCP Apps |
|
|
222
229
|
| `listCanvases` | Lists canvases and who is on each one |
|
|
223
230
|
| `createCanvas` | Creates a canvas and returns its link |
|
|
224
|
-
| `getCanvas` | Reads a canvas: its nodes, connections, comments and who is on it |
|
|
225
|
-
| `addToCanvas` | Adds catalog resources
|
|
231
|
+
| `getCanvas` | Reads a canvas: its nodes, connections, hotspots, comments and who is on it |
|
|
232
|
+
| `addToCanvas` | Adds catalog resources, new components, sticky notes and text, and connects them |
|
|
226
233
|
| `updateCanvasNode` | Renames, describes, versions or moves a node |
|
|
227
234
|
| `connectCanvasNodes` | Connects nodes |
|
|
228
235
|
| `removeFromCanvas` | Removes nodes or connections |
|
|
@@ -234,6 +241,12 @@ When Studio is on, the [EventCatalog MCP server](/docs/development/ask-your-arch
|
|
|
234
241
|
|
|
235
242
|
Every tool takes an optional `agentName`, the name people on the canvas see. It defaults to the name of the client, for example Claude, Claude Code, ChatGPT or Cursor.
|
|
236
243
|
|
|
244
|
+
`addToCanvas` can bring more than one resource at a time:
|
|
245
|
+
|
|
246
|
+
- `contents: true` on a catalog domain or system adds it with everything in it: its systems, services, messages and data stores, connected and laid out.
|
|
247
|
+
- `connections` on a catalog service or message adds what it connects to. For a service: `sends`, `receives` and `dataStores`. For a message: `senders` and `receivers`.
|
|
248
|
+
- A node with type `note` is a sticky note, and type `text` is text on the canvas, with an optional `fontSize`.
|
|
249
|
+
|
|
237
250
|
### How agents appear
|
|
238
251
|
|
|
239
252
|
- An agent has its own pointer and name on the canvas.
|
|
@@ -244,6 +257,25 @@ Every tool takes an optional `agentName`, the name people on the canvas see. It
|
|
|
244
257
|
|
|
245
258
|
When WebMCP is turned on in the **Connect your AI agent** dialog, the open canvas offers agents in the browser these tools: `get_canvas`, `search_catalog`, `add_to_canvas`, `update_node`, `connect_nodes`, `remove_from_canvas`, `layout_canvas`, `set_canvas_status`, `add_comment`, `reply_to_comment`, `resolve_comment` and `show_nodes`.
|
|
246
259
|
|
|
260
|
+
## Assistant tools {#assistant-tools}
|
|
261
|
+
|
|
262
|
+
When you [draw with AI](/docs/development/studio/draw-with-ai), the EventCatalog Assistant works on the canvas it was opened on with these tools, using the model in `eventcatalog.chat.js`. They're only offered when Studio is on.
|
|
263
|
+
|
|
264
|
+
| Tool | What it does |
|
|
265
|
+
|---|---|
|
|
266
|
+
| `getCanvas` | Reads the canvas: its nodes, connections, hotspots and comments |
|
|
267
|
+
| `addToCanvas` | Adds catalog resources, new components, sticky notes and text, like the [MCP tool](#mcp-tools) |
|
|
268
|
+
| `updateCanvasNode` | Renames, describes, versions, moves or resizes the text of a node |
|
|
269
|
+
| `connectCanvasNodes` | Connects nodes |
|
|
270
|
+
| `removeFromCanvas` | Removes nodes or connections |
|
|
271
|
+
| `layoutCanvas` | Lays out the whole canvas, when you ask it to |
|
|
272
|
+
| `addHotspot` | Flags a node or a spot with a critical, warning or info hotspot |
|
|
273
|
+
| `showOnCanvas` | Takes your view to nodes and highlights them |
|
|
274
|
+
| `walkThrough` | Shows a step-by-step walkthrough in the chat, with each step's nodes |
|
|
275
|
+
|
|
276
|
+
- The assistant appears on the canvas as **EventCatalog AI**, with its own pointer, like other agents. It works about three times as fast as an MCP agent, because you're waiting on it in the chat.
|
|
277
|
+
- After a turn where it added nodes or connections, the canvas is laid out again, with sticky notes and text kept beside what they're about.
|
|
278
|
+
|
|
247
279
|
## Keyboard shortcuts {#keyboard-shortcuts}
|
|
248
280
|
|
|
249
281
|
Press <kbd>?</kbd> on a canvas to see these shortcuts. On Windows and Linux, use <kbd>Ctrl</kbd> instead of <kbd>⌘</kbd>.
|
|
@@ -270,6 +302,7 @@ Press <kbd>?</kbd> on a canvas to see these shortcuts. On Windows and Linux, use
|
|
|
270
302
|
| Select everything | <kbd>⌘</kbd> <kbd>A</kbd> |
|
|
271
303
|
| Select several | <kbd>⇧</kbd> + click |
|
|
272
304
|
| Delete what's selected | <kbd>Delete</kbd> |
|
|
305
|
+
| Remove the open hotspot | <kbd>Delete</kbd> |
|
|
273
306
|
| Duplicate | <kbd>⌘</kbd> <kbd>D</kbd> |
|
|
274
307
|
| Copy / paste | <kbd>⌘</kbd> <kbd>C</kbd> / <kbd>⌘</kbd> <kbd>V</kbd> |
|
|
275
308
|
| Undo / redo | <kbd>⌘</kbd> <kbd>Z</kbd> / <kbd>⌘</kbd> <kbd>⇧</kbd> <kbd>Z</kbd> |
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
---
|
|
2
|
+
sidebar_position: 4.5
|
|
3
|
+
keywords:
|
|
4
|
+
- EventCatalog Studio
|
|
5
|
+
- Draw with AI
|
|
6
|
+
- AI architecture diagrams
|
|
7
|
+
- EventCatalog Assistant
|
|
8
|
+
sidebar_label: Draw with AI
|
|
9
|
+
title: Draw with AI
|
|
10
|
+
description: Describe what you want to design, and the assistant draws it on the canvas with the model you configure.
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
import AddedIn from '@site/src/components/MDX/AddedIn';
|
|
14
|
+
|
|
15
|
+
<AddedIn version="5.7.1" />
|
|
16
|
+
|
|
17
|
+
Describe what you want to design, and the [EventCatalog Assistant](/docs/development/ask-your-architecture/eventcatalog-assistant/what-is-eventcatalog-assistant) draws it on the canvas while you watch. It uses the resources in your catalog and the AI model you configure.
|
|
18
|
+
|
|
19
|
+

|
|
20
|
+
|
|
21
|
+
## Before you start
|
|
22
|
+
|
|
23
|
+
Draw with AI uses the EventCatalog Assistant, so your catalog needs:
|
|
24
|
+
|
|
25
|
+
- Studio turned on. It's on in `eventcatalog dev`; see [Run Studio in production](/docs/development/studio/run-studio-in-production) for a deployed catalog.
|
|
26
|
+
- A model configured in `eventcatalog.chat.js`. See [Configure the assistant](/docs/development/ask-your-architecture/eventcatalog-assistant/configuration).
|
|
27
|
+
|
|
28
|
+
**Draw with AI** only appears on a canvas when the assistant is available.
|
|
29
|
+
|
|
30
|
+
## Draw on a canvas
|
|
31
|
+
|
|
32
|
+
1. Open a canvas, or start one from a diagram with **Open in Studio**.
|
|
33
|
+
2. Choose **Draw with AI** at the top right. The assistant opens beside the canvas.
|
|
34
|
+
3. Describe what you want, for example "Map out the Payments domain", and press <kbd>Enter</kbd>.
|
|
35
|
+
|
|
36
|
+
The assistant reads the canvas, finds what you asked about in your catalog, and draws it with its own pointer, one step at a time. The chat shows what it's doing ("Reading the canvas", "Drawing on the canvas"). Your view follows it while it works; choose **Stop** on the "Following" banner to look around on your own.
|
|
37
|
+
|
|
38
|
+
When it's finished, the assistant tidies the layout and keeps sticky notes and text beside what they're about.
|
|
39
|
+
|
|
40
|
+
Everyone on the canvas sees the assistant's pointer and changes, as they see each other's.
|
|
41
|
+
|
|
42
|
+
## What it draws
|
|
43
|
+
|
|
44
|
+
- **Resources from your catalog**, with their real names, versions and summaries. A domain or system arrives with everything in it. A service or message can arrive with what it sends, receives and connects to.
|
|
45
|
+
- **New components** for what isn't in your catalog yet, such as a proposed service or event. They start at version `0.0.1`.
|
|
46
|
+
- **Sticky notes and text**, when you ask for them or ask for a review: assumptions, open questions, a title or headings.
|
|
47
|
+
|
|
48
|
+
Connections between catalog resources come from your catalog, not from the model. If the assistant can't find something you asked for, it says so in its reply.
|
|
49
|
+
|
|
50
|
+
:::info Your catalog doesn't change
|
|
51
|
+
Like everything on a canvas, what the assistant draws is a design. It never changes your catalog files.
|
|
52
|
+
:::
|
|
53
|
+
|
|
54
|
+
## Ask it to review a design
|
|
55
|
+
|
|
56
|
+
Ask the assistant to review a canvas, and it flags what it finds with [hotspots](/docs/development/studio/collaborate-on-a-canvas#flag-a-risk-with-a-hotspot) on the nodes they're about, marked **Critical**, **Warning** or **Info**. It can add sticky notes with suggestions too.
|
|
57
|
+
|
|
58
|
+
The hotspots it flags are listed under its reply. Click one to go to it on the canvas. Each one says **Flagged by EventCatalog AI**, so your team can tell them apart from their own.
|
|
59
|
+
|
|
60
|
+

|
|
61
|
+
|
|
62
|
+
## Ask how something works
|
|
63
|
+
|
|
64
|
+
Ask "walk me through how checkout works", and the assistant answers with a walkthrough: one step at a time, each with what happens and the nodes involved. Hover or click a step to go to its nodes on the canvas.
|
|
65
|
+
|
|
66
|
+
When the assistant mentions something on the canvas, its name in the reply links to it. Hover or click it to go there.
|
|
67
|
+
|
|
68
|
+

|
|
69
|
+
|
|
70
|
+
## Things to ask
|
|
71
|
+
|
|
72
|
+
When you open the assistant on a canvas, it suggests a few things to ask:
|
|
73
|
+
|
|
74
|
+
- **Create a new diagram**: the assistant asks what to draw.
|
|
75
|
+
- **Review my architecture, highlight any issues**: it flags problems with hotspots and adds sticky notes with its review.
|
|
76
|
+
- **How could we improve this architecture?**: it flags risks and suggests improvements on sticky notes.
|
|
77
|
+
|
|
78
|
+
Other things to try:
|
|
79
|
+
|
|
80
|
+
- "Map out the Payments domain"
|
|
81
|
+
- "Design how we could add buy now, pay later to checkout"
|
|
82
|
+
- "Add a fraud check between checkout and the Payment API"
|
|
83
|
+
- "How could we split the Order Service?"
|
|
84
|
+
- "Walk me through what happens when a payment fails"
|
|
85
|
+
|
|
86
|
+
After each answer, the assistant suggests follow-up questions based on what's on the canvas.
|
|
87
|
+
|
|
88
|
+
## Choosing a model
|
|
89
|
+
|
|
90
|
+
The assistant uses the model in `eventcatalog.chat.js`, so you choose the provider, the model and who pays for it. Your catalog talks to your provider directly.
|
|
91
|
+
|
|
92
|
+
A small, fast model is enough for most drawing. To trade speed for more careful answers, pass your provider's options with [`configuration.providerOptions`](/docs/development/ask-your-architecture/eventcatalog-assistant/configuration#configuring-eventcatalogchatjs), for example Anthropic's `effort`.
|
|
93
|
+
|
|
94
|
+
## The assistant and other agents
|
|
95
|
+
|
|
96
|
+
The assistant draws with the same canvas actions as agents that [connect through MCP](/docs/development/studio/connect-your-agent), such as Claude, Cursor or VS Code, and appears on the canvas the same way. It also has a few tools of its own: flagging hotspots, taking you to nodes, and walkthroughs. See the [reference](/docs/development/studio/reference#assistant-tools).
|
package/dist/eventcatalog.cjs
CHANGED
|
@@ -174,7 +174,7 @@ var verifyRequiredFieldsAreInCatalogConfigFile = async (projectDirectory) => {
|
|
|
174
174
|
var import_picocolors = __toESM(require("picocolors"), 1);
|
|
175
175
|
|
|
176
176
|
// package.json
|
|
177
|
-
var version = "5.7.
|
|
177
|
+
var version = "5.7.4";
|
|
178
178
|
|
|
179
179
|
// src/constants.ts
|
|
180
180
|
var VERSION = version;
|
package/dist/eventcatalog.js
CHANGED
|
@@ -7,12 +7,12 @@ import {
|
|
|
7
7
|
import "./chunk-CA4U2JP7.js";
|
|
8
8
|
import {
|
|
9
9
|
log_build_default
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-PLTHZFTW.js";
|
|
11
11
|
import {
|
|
12
12
|
getLicenseStatus,
|
|
13
13
|
printLicenseStatus
|
|
14
14
|
} from "./chunk-AD7CL772.js";
|
|
15
|
-
import "./chunk-
|
|
15
|
+
import "./chunk-GOIDVIMH.js";
|
|
16
16
|
import "./chunk-YRZK7HKX.js";
|
|
17
17
|
import "./chunk-CA6WCQ2T.js";
|
|
18
18
|
import "./chunk-CPW6G62V.js";
|
|
@@ -39,10 +39,10 @@ import {
|
|
|
39
39
|
} from "./chunk-NKNOXQ62.js";
|
|
40
40
|
import {
|
|
41
41
|
generate
|
|
42
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-RUG7AIT5.js";
|
|
43
43
|
import {
|
|
44
44
|
logger
|
|
45
|
-
} from "./chunk-
|
|
45
|
+
} from "./chunk-PXYVJK54.js";
|
|
46
46
|
import {
|
|
47
47
|
resolve_catalog_dependencies_default
|
|
48
48
|
} from "./chunk-PD7KTSYN.js";
|
|
@@ -79,7 +79,7 @@ import {
|
|
|
79
79
|
} from "./chunk-LFQJXLHG.js";
|
|
80
80
|
import {
|
|
81
81
|
VERSION
|
|
82
|
-
} from "./chunk-
|
|
82
|
+
} from "./chunk-L2PFSX4L.js";
|
|
83
83
|
import {
|
|
84
84
|
getEventCatalogConfigFile,
|
|
85
85
|
verifyRequiredFieldsAreInCatalogConfigFile
|
package/dist/generate.cjs
CHANGED
|
@@ -105,7 +105,7 @@ var getEventCatalogConfigFile = async (projectDirectory) => {
|
|
|
105
105
|
var import_picocolors = __toESM(require("picocolors"), 1);
|
|
106
106
|
|
|
107
107
|
// package.json
|
|
108
|
-
var version = "5.7.
|
|
108
|
+
var version = "5.7.4";
|
|
109
109
|
|
|
110
110
|
// src/constants.ts
|
|
111
111
|
var VERSION = version;
|
package/dist/generate.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
2
|
generate
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
5
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-RUG7AIT5.js";
|
|
4
|
+
import "./chunk-PXYVJK54.js";
|
|
5
|
+
import "./chunk-L2PFSX4L.js";
|
|
6
6
|
import "./chunk-4G7FSRPN.js";
|
|
7
7
|
export {
|
|
8
8
|
generate
|