@eventcatalog/core 3.40.2 → 3.41.1

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 (175) hide show
  1. package/dist/__mocks__/astro-content.d.cts +1 -1
  2. package/dist/__mocks__/astro-content.d.ts +1 -1
  3. package/dist/analytics/analytics.cjs +1 -1
  4. package/dist/analytics/analytics.js +2 -2
  5. package/dist/analytics/count-resources.cjs +1 -0
  6. package/dist/analytics/count-resources.js +1 -1
  7. package/dist/analytics/log-build.cjs +3 -1
  8. package/dist/analytics/log-build.js +4 -4
  9. package/dist/catalog-to-astro-content-directory.cjs +1 -0
  10. package/dist/catalog-to-astro-content-directory.js +2 -2
  11. package/dist/{chunk-4UVFXLPI.js → chunk-3DVHEVHQ.js} +1 -0
  12. package/dist/{chunk-K3ZVEX2Y.js → chunk-3H2RT3CM.js} +1 -1
  13. package/dist/{chunk-PWIB7GLR.js → chunk-6C2H2YLW.js} +1 -1
  14. package/dist/{chunk-D6UVZABG.js → chunk-GNLFCESR.js} +1 -1
  15. package/dist/{chunk-55D645EH.js → chunk-IR4IAKWS.js} +1 -0
  16. package/dist/{chunk-YDXB3BD2.js → chunk-O6KT4DPL.js} +1 -1
  17. package/dist/{chunk-D6IBLY3O.js → chunk-QMORF42U.js} +1 -0
  18. package/dist/{chunk-5FFRK3S5.js → chunk-UGNBEYJJ.js} +3 -2
  19. package/dist/{chunk-HSSCHCQA.js → chunk-X5JM6SAH.js} +1 -1
  20. package/dist/{chunk-B7LKNRMT.js → chunk-Z5A2F2DN.js} +1 -1
  21. package/dist/constants.cjs +1 -1
  22. package/dist/constants.js +1 -1
  23. package/dist/docs/development/components/components/04-agent-tools.md +43 -0
  24. package/dist/docs/development/guides/agents/01-introduction.md +43 -0
  25. package/dist/docs/development/guides/agents/02-adding-agents.md +152 -0
  26. package/dist/docs/development/guides/agents/03-adding-tools.md +92 -0
  27. package/dist/docs/development/guides/agents/04-model-metadata.md +96 -0
  28. package/dist/docs/development/guides/agents/_category_.json +11 -0
  29. package/dist/docs/development/guides/agents/adding-to-agents/01-messages.md +122 -0
  30. package/dist/docs/development/guides/agents/adding-to-agents/02-datastores.md +62 -0
  31. package/dist/docs/development/guides/agents/adding-to-agents/_category_.json +10 -0
  32. package/dist/docs/development/guides/agents/ownership/01-owners.md +67 -0
  33. package/dist/docs/development/guides/agents/ownership/_category_.json +11 -0
  34. package/dist/docs/development/guides/agents/versioning-and-lifecycle/01-versioning.md +48 -0
  35. package/dist/docs/development/guides/agents/versioning-and-lifecycle/02-changelog.md +40 -0
  36. package/dist/docs/development/guides/agents/versioning-and-lifecycle/03-deprecating.md +41 -0
  37. package/dist/docs/development/guides/agents/versioning-and-lifecycle/_category_.json +11 -0
  38. package/dist/docs/development/guides/domains/02-creating-domains/03-adding-services-to-domains.md +27 -0
  39. package/dist/docs/development/guides/flows/03-flow-nodes.md +30 -0
  40. package/dist/eventcatalog.cjs +5 -1
  41. package/dist/eventcatalog.config.d.cts +4 -0
  42. package/dist/eventcatalog.config.d.ts +4 -0
  43. package/dist/eventcatalog.js +10 -10
  44. package/dist/generate.cjs +1 -1
  45. package/dist/generate.js +3 -3
  46. package/dist/map-catalog-to-astro.cjs +1 -0
  47. package/dist/map-catalog-to-astro.js +1 -1
  48. package/dist/search-indexer.cjs +1 -0
  49. package/dist/search-indexer.js +1 -1
  50. package/dist/utils/cli-logger.cjs +1 -1
  51. package/dist/utils/cli-logger.js +2 -2
  52. package/dist/watcher.cjs +1 -0
  53. package/dist/watcher.js +2 -2
  54. package/eventcatalog/public/agents/anthropic-dark.svg +1 -0
  55. package/eventcatalog/public/agents/anthropic-light.svg +1 -0
  56. package/eventcatalog/public/agents/openai-dark.svg +1 -0
  57. package/eventcatalog/public/agents/openai-light.svg +1 -0
  58. package/eventcatalog/public/agents/openai.svg +1 -0
  59. package/eventcatalog/public/icons/agent/anthropic-dark.svg +1 -0
  60. package/eventcatalog/public/icons/agent/anthropic-light.svg +1 -0
  61. package/eventcatalog/public/icons/agent/anthropic.svg +1 -0
  62. package/eventcatalog/public/icons/agent/gemini.svg +1 -0
  63. package/eventcatalog/public/icons/agent/openai-dark.svg +1 -0
  64. package/eventcatalog/public/icons/agent/openai-light.svg +1 -0
  65. package/eventcatalog/public/icons/agent/openai.svg +1 -0
  66. package/eventcatalog/public/icons/agents/anthropic-dark.svg +1 -0
  67. package/eventcatalog/public/icons/agents/anthropic-light.svg +1 -0
  68. package/eventcatalog/public/icons/agents/anthropic.svg +1 -0
  69. package/eventcatalog/public/icons/agents/gemini.svg +1 -0
  70. package/eventcatalog/public/icons/agents/openai-dark.svg +1 -0
  71. package/eventcatalog/public/icons/agents/openai-light.svg +1 -0
  72. package/eventcatalog/public/icons/agents/openai.svg +1 -0
  73. package/eventcatalog/public/icons/protocols/mcp-dark.svg +1 -0
  74. package/eventcatalog/public/icons/protocols/mcp-light.svg +1 -0
  75. package/eventcatalog/public/icons/protocols/mcp.svg +1 -0
  76. package/eventcatalog/public/icons/tools/datadog.svg +1 -0
  77. package/eventcatalog/public/icons/tools/github.svg +1 -0
  78. package/eventcatalog/public/icons/tools/hubspot.svg +1 -0
  79. package/eventcatalog/public/icons/tools/slack.svg +1 -0
  80. package/eventcatalog/public/icons/tools/snowflake.svg +1 -0
  81. package/eventcatalog/public/icons/tools/zendesk.svg +1 -0
  82. package/eventcatalog/src/components/Badge.astro +41 -2
  83. package/eventcatalog/src/components/Grids/MessageGrid.tsx +16 -11
  84. package/eventcatalog/src/components/MDX/AgentTools/AgentTools.astro +132 -0
  85. package/eventcatalog/src/components/MDX/NodeGraph/NodeGraph.astro +2 -0
  86. package/eventcatalog/src/components/MDX/ResourceRef/ResourceRef.astro +8 -3
  87. package/eventcatalog/src/components/MDX/components.tsx +2 -0
  88. package/eventcatalog/src/components/Search/SearchModal.tsx +3 -0
  89. package/eventcatalog/src/components/Search/search-utils.ts +2 -0
  90. package/eventcatalog/src/components/SideNav/NestedSideBar/SearchBar.tsx +3 -0
  91. package/eventcatalog/src/components/SideNav/NestedSideBar/index.tsx +3 -0
  92. package/eventcatalog/src/components/Tables/Discover/DiscoverTable.tsx +165 -0
  93. package/eventcatalog/src/components/Tables/Discover/columns.tsx +132 -7
  94. package/eventcatalog/src/components/Tables/Table.tsx +2 -0
  95. package/eventcatalog/src/components/Tables/columns/TeamsTableColumns.tsx +17 -0
  96. package/eventcatalog/src/components/Tables/columns/UserTableColumns.tsx +17 -0
  97. package/eventcatalog/src/content.config.ts +83 -25
  98. package/eventcatalog/src/enterprise/collections/resource-docs-utils.ts +7 -4
  99. package/eventcatalog/src/enterprise/mcp/mcp-server.ts +9 -2
  100. package/eventcatalog/src/enterprise/tools/catalog-tools.ts +62 -28
  101. package/eventcatalog/src/layouts/VerticalSideBarLayout.astro +13 -1
  102. package/eventcatalog/src/pages/_index.astro +1 -3
  103. package/eventcatalog/src/pages/architecture/[type]/[id]/[version]/_index.data.ts +5 -5
  104. package/eventcatalog/src/pages/architecture/[type]/[id]/[version]/index.astro +5 -2
  105. package/eventcatalog/src/pages/directory/[type]/index.astro +2 -0
  106. package/eventcatalog/src/pages/discover/[type]/_index.data.ts +5 -0
  107. package/eventcatalog/src/pages/discover/[type]/index.astro +69 -23
  108. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/[docType]/[docId].mdx.ts +1 -0
  109. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/_index.data.ts +1 -0
  110. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/changelog/_index.data.ts +1 -1
  111. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/index.astro +47 -2
  112. package/eventcatalog/src/pages/docs/[type]/[id]/[version].md.ts +2 -0
  113. package/eventcatalog/src/pages/docs/[type]/[id]/[version].mdx.ts +2 -0
  114. package/eventcatalog/src/pages/docs/[type]/[id]/_index.data.ts +1 -0
  115. package/eventcatalog/src/pages/docs/llm/llms-full.txt.ts +3 -0
  116. package/eventcatalog/src/pages/docs/llm/llms.txt.ts +3 -0
  117. package/eventcatalog/src/pages/docs/teams/[id]/index.astro +24 -1
  118. package/eventcatalog/src/pages/docs/users/[id]/index.astro +24 -1
  119. package/eventcatalog/src/pages/visualiser/[type]/[id]/[version]/_index.data.ts +2 -1
  120. package/eventcatalog/src/stores/sidebar-store/builders/agent.ts +141 -0
  121. package/eventcatalog/src/stores/sidebar-store/builders/domain.ts +9 -0
  122. package/eventcatalog/src/stores/sidebar-store/builders/flow.ts +19 -0
  123. package/eventcatalog/src/stores/sidebar-store/builders/message.ts +8 -2
  124. package/eventcatalog/src/stores/sidebar-store/builders/shared.ts +10 -7
  125. package/eventcatalog/src/stores/sidebar-store/state.ts +121 -2
  126. package/eventcatalog/src/types/index.ts +3 -1
  127. package/eventcatalog/src/utils/collection-colors.ts +5 -0
  128. package/eventcatalog/src/utils/collections/agents.ts +163 -0
  129. package/eventcatalog/src/utils/collections/commands.ts +3 -2
  130. package/eventcatalog/src/utils/collections/domains.ts +94 -15
  131. package/eventcatalog/src/utils/collections/events.ts +3 -2
  132. package/eventcatalog/src/utils/collections/flows.ts +20 -3
  133. package/eventcatalog/src/utils/collections/icons.ts +3 -1
  134. package/eventcatalog/src/utils/collections/messages.ts +35 -5
  135. package/eventcatalog/src/utils/collections/queries.ts +3 -2
  136. package/eventcatalog/src/utils/collections/schemas.ts +4 -4
  137. package/eventcatalog/src/utils/collections/services.ts +1 -1
  138. package/eventcatalog/src/utils/collections/teams.ts +5 -1
  139. package/eventcatalog/src/utils/collections/types.ts +1 -0
  140. package/eventcatalog/src/utils/collections/users.ts +5 -1
  141. package/eventcatalog/src/utils/collections/util.ts +2 -0
  142. package/eventcatalog/src/utils/eventcatalog-config/catalog.ts +1 -0
  143. package/eventcatalog/src/utils/llms.ts +1 -1
  144. package/eventcatalog/src/utils/node-graphs/agents-node-graph.ts +4 -0
  145. package/eventcatalog/src/utils/node-graphs/container-node-graph.ts +2 -2
  146. package/eventcatalog/src/utils/node-graphs/domains-node-graph.ts +42 -9
  147. package/eventcatalog/src/utils/node-graphs/export-mermaid.ts +20 -0
  148. package/eventcatalog/src/utils/node-graphs/export-node-graph.ts +4 -0
  149. package/eventcatalog/src/utils/node-graphs/flows-node-graph.ts +22 -1
  150. package/eventcatalog/src/utils/node-graphs/message-node-graph.ts +175 -98
  151. package/eventcatalog/src/utils/node-graphs/services-node-graph.ts +117 -23
  152. package/eventcatalog/src/utils/node-graphs/utils/utils.ts +30 -0
  153. package/eventcatalog/src/utils/page-loaders/page-data-loader.ts +2 -0
  154. package/eventcatalog/src/utils/resource-reference-colors.ts +1 -0
  155. package/package.json +4 -4
  156. /package/dist/docs/development/components/components/{04-attachments.md → 05-attachments.md} +0 -0
  157. /package/dist/docs/development/components/components/{05-channel-information.md → 06-channel-information.md} +0 -0
  158. /package/dist/docs/development/components/components/{06-design.md → 07-design.md} +0 -0
  159. /package/dist/docs/development/components/components/{07-entitymap.md → 08-entitymap.md} +0 -0
  160. /package/dist/docs/development/components/components/{08-flow.md → 09-flow.md} +0 -0
  161. /package/dist/docs/development/components/components/{09-link.md → 10-link.md} +0 -0
  162. /package/dist/docs/development/components/components/{10-mermaid-file-loader.md → 11-mermaid-file-loader.md} +0 -0
  163. /package/dist/docs/development/components/components/{11-message-table.md → 12-message-table.md} +0 -0
  164. /package/dist/docs/development/components/components/{12-nodegraph.md → 13-nodegraph.md} +0 -0
  165. /package/dist/docs/development/components/components/{13-openapi.md → 14-openapi.md} +0 -0
  166. /package/dist/docs/development/components/components/{14-prompt.md → 15-prompt.md} +0 -0
  167. /package/dist/docs/development/components/components/{15-remote-schema.md → 16-remote-schema.md} +0 -0
  168. /package/dist/docs/development/components/components/{16-resource-group-table.md → 17-resource-group-table.md} +0 -0
  169. /package/dist/docs/development/components/components/{17-resource-link.md → 18-resource-link.md} +0 -0
  170. /package/dist/docs/development/components/components/{18-schema.md → 19-schema.md} +0 -0
  171. /package/dist/docs/development/components/components/{19-schema-viewer.md → 20-schema-viewer.md} +0 -0
  172. /package/dist/docs/development/components/components/{20-steps.md → 21-steps.md} +0 -0
  173. /package/dist/docs/development/components/components/{21-tabs.md → 22-tabs.md} +0 -0
  174. /package/dist/docs/development/components/components/{22-tiles.md → 23-tiles.md} +0 -0
  175. /package/dist/docs/development/components/components/{23-visibility.md → 24-visibility.md} +0 -0
@@ -1,5 +1,5 @@
1
1
  declare const getCollection: (key: string, filter?: (entry: any) => boolean) => Promise<never[]>;
2
- type CollectionKey = 'events' | 'services' | 'commands' | 'queries' | 'domains' | 'channels' | 'flows' | 'messages' | 'entities' | 'schemas';
2
+ type CollectionKey = 'agents' | 'events' | 'services' | 'commands' | 'queries' | 'domains' | 'channels' | 'flows' | 'messages' | 'entities' | 'schemas';
3
3
  type CollectionEntry<T extends CollectionKey> = {
4
4
  id: string;
5
5
  slug: string;
@@ -1,5 +1,5 @@
1
1
  declare const getCollection: (key: string, filter?: (entry: any) => boolean) => Promise<never[]>;
2
- type CollectionKey = 'events' | 'services' | 'commands' | 'queries' | 'domains' | 'channels' | 'flows' | 'messages' | 'entities' | 'schemas';
2
+ type CollectionKey = 'agents' | 'events' | 'services' | 'commands' | 'queries' | 'domains' | 'channels' | 'flows' | 'messages' | 'entities' | 'schemas';
3
3
  type CollectionEntry<T extends CollectionKey> = {
4
4
  id: string;
5
5
  slug: string;
@@ -37,7 +37,7 @@ var import_axios = __toESM(require("axios"), 1);
37
37
  var import_os = __toESM(require("os"), 1);
38
38
 
39
39
  // package.json
40
- var version = "3.40.2";
40
+ var version = "3.41.1";
41
41
 
42
42
  // src/constants.ts
43
43
  var VERSION = version;
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  raiseEvent
3
- } from "../chunk-PWIB7GLR.js";
4
- import "../chunk-HSSCHCQA.js";
3
+ } from "../chunk-6C2H2YLW.js";
4
+ import "../chunk-X5JM6SAH.js";
5
5
  export {
6
6
  raiseEvent
7
7
  };
@@ -26,6 +26,7 @@ __export(count_resources_exports, {
26
26
  module.exports = __toCommonJS(count_resources_exports);
27
27
  var import_glob = require("glob");
28
28
  var RESOURCE_PATTERNS = {
29
+ agents: ["**/agents/*/index.@(md|mdx)"],
29
30
  events: ["**/events/*/index.@(md|mdx)"],
30
31
  commands: ["**/commands/*/index.@(md|mdx)"],
31
32
  queries: ["**/queries/*/index.@(md|mdx)"],
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  countResources,
3
3
  serializeCounts
4
- } from "../chunk-4UVFXLPI.js";
4
+ } from "../chunk-3DVHEVHQ.js";
5
5
  export {
6
6
  countResources,
7
7
  serializeCounts
@@ -111,7 +111,7 @@ var import_axios = __toESM(require("axios"), 1);
111
111
  var import_os = __toESM(require("os"), 1);
112
112
 
113
113
  // package.json
114
- var version = "3.40.2";
114
+ var version = "3.41.1";
115
115
 
116
116
  // src/constants.ts
117
117
  var VERSION = version;
@@ -143,6 +143,7 @@ async function raiseEvent(eventData) {
143
143
  // src/analytics/count-resources.js
144
144
  var import_glob = require("glob");
145
145
  var RESOURCE_PATTERNS = {
146
+ agents: ["**/agents/*/index.@(md|mdx)"],
146
147
  events: ["**/events/*/index.@(md|mdx)"],
147
148
  commands: ["**/commands/*/index.@(md|mdx)"],
148
149
  queries: ["**/queries/*/index.@(md|mdx)"],
@@ -189,6 +190,7 @@ var getFeatures = async (configFile) => {
189
190
  };
190
191
  var CLOUD_ANALYTICS_ENDPOINT = "https://api.ecingest.dev/v1/analytics/ingest";
191
192
  var toCloudResourceCounts = (counts) => ({
193
+ agents: counts.agents || 0,
192
194
  domains: counts.domains || 0,
193
195
  services: counts.services || 0,
194
196
  events: counts.events || 0,
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  log_build_default
3
- } from "../chunk-5FFRK3S5.js";
4
- import "../chunk-PWIB7GLR.js";
5
- import "../chunk-4UVFXLPI.js";
6
- import "../chunk-HSSCHCQA.js";
3
+ } from "../chunk-UGNBEYJJ.js";
4
+ import "../chunk-6C2H2YLW.js";
5
+ import "../chunk-3DVHEVHQ.js";
6
+ import "../chunk-X5JM6SAH.js";
7
7
  import "../chunk-5T63CXKU.js";
8
8
  export {
9
9
  log_build_default as default
@@ -120,6 +120,7 @@ var verifyRequiredFieldsAreInCatalogConfigFile = async (projectDirectory) => {
120
120
  // src/map-catalog-to-astro.js
121
121
  var import_node_path2 = __toESM(require("path"), 1);
122
122
  var COLLECTION_KEYS = [
123
+ "agents",
123
124
  "events",
124
125
  "commands",
125
126
  "services",
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  catalogToAstro
3
- } from "./chunk-YDXB3BD2.js";
4
- import "./chunk-55D645EH.js";
3
+ } from "./chunk-O6KT4DPL.js";
4
+ import "./chunk-IR4IAKWS.js";
5
5
  import "./chunk-5T63CXKU.js";
6
6
  export {
7
7
  catalogToAstro
@@ -1,6 +1,7 @@
1
1
  // src/analytics/count-resources.js
2
2
  import { glob } from "glob";
3
3
  var RESOURCE_PATTERNS = {
4
+ agents: ["**/agents/*/index.@(md|mdx)"],
4
5
  events: ["**/events/*/index.@(md|mdx)"],
5
6
  commands: ["**/commands/*/index.@(md|mdx)"],
6
7
  queries: ["**/queries/*/index.@(md|mdx)"],
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  mapCatalogToAstro
3
- } from "./chunk-55D645EH.js";
3
+ } from "./chunk-IR4IAKWS.js";
4
4
 
5
5
  // src/watcher.js
6
6
  import watcher from "@parcel/watcher";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  VERSION
3
- } from "./chunk-HSSCHCQA.js";
3
+ } from "./chunk-X5JM6SAH.js";
4
4
 
5
5
  // src/analytics/analytics.js
6
6
  import axios from "axios";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  VERSION
3
- } from "./chunk-HSSCHCQA.js";
3
+ } from "./chunk-X5JM6SAH.js";
4
4
 
5
5
  // src/utils/cli-logger.ts
6
6
  import pc from "picocolors";
@@ -1,6 +1,7 @@
1
1
  // src/map-catalog-to-astro.js
2
2
  import path from "path";
3
3
  var COLLECTION_KEYS = [
4
+ "agents",
4
5
  "events",
5
6
  "commands",
6
7
  "services",
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  mapCatalogToAstro
3
- } from "./chunk-55D645EH.js";
3
+ } from "./chunk-IR4IAKWS.js";
4
4
  import {
5
5
  verifyRequiredFieldsAreInCatalogConfigFile
6
6
  } from "./chunk-5T63CXKU.js";
@@ -4,6 +4,7 @@ import path from "path";
4
4
  import { glob } from "glob";
5
5
  import matter from "gray-matter";
6
6
  var RESOURCE_COLLECTIONS = {
7
+ agents: { docsPath: "agents", type: "Agent" },
7
8
  channels: { docsPath: "channels", type: "Channel" },
8
9
  commands: { docsPath: "commands", type: "Command" },
9
10
  containers: { docsPath: "containers", type: "Container" },
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  raiseEvent
3
- } from "./chunk-PWIB7GLR.js";
3
+ } from "./chunk-6C2H2YLW.js";
4
4
  import {
5
5
  countResources,
6
6
  serializeCounts
7
- } from "./chunk-4UVFXLPI.js";
7
+ } from "./chunk-3DVHEVHQ.js";
8
8
  import {
9
9
  getEventCatalogConfigFile,
10
10
  verifyRequiredFieldsAreInCatalogConfigFile
@@ -21,6 +21,7 @@ var getFeatures = async (configFile) => {
21
21
  };
22
22
  var CLOUD_ANALYTICS_ENDPOINT = "https://api.ecingest.dev/v1/analytics/ingest";
23
23
  var toCloudResourceCounts = (counts) => ({
24
+ agents: counts.agents || 0,
24
25
  domains: counts.domains || 0,
25
26
  services: counts.services || 0,
26
27
  events: counts.events || 0,
@@ -1,5 +1,5 @@
1
1
  // package.json
2
- var version = "3.40.2";
2
+ var version = "3.41.1";
3
3
 
4
4
  // src/constants.ts
5
5
  var VERSION = version;
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  logger
3
- } from "./chunk-D6UVZABG.js";
3
+ } from "./chunk-GNLFCESR.js";
4
4
  import {
5
5
  cleanup,
6
6
  getEventCatalogConfigFile
@@ -25,7 +25,7 @@ __export(constants_exports, {
25
25
  module.exports = __toCommonJS(constants_exports);
26
26
 
27
27
  // package.json
28
- var version = "3.40.2";
28
+ var version = "3.41.1";
29
29
 
30
30
  // src/constants.ts
31
31
  var VERSION = version;
package/dist/constants.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  VERSION
3
- } from "./chunk-HSSCHCQA.js";
3
+ } from "./chunk-X5JM6SAH.js";
4
4
  export {
5
5
  VERSION
6
6
  };
@@ -0,0 +1,43 @@
1
+ ---
2
+ sidebar_position: 2
3
+ keywords:
4
+ - components
5
+ - agents
6
+ - agent tools
7
+ sidebar_label: AgentTools
8
+ title: AgentTools
9
+ description: Component for displaying the tools an agent can call in EventCatalog
10
+ ---
11
+
12
+ import AddedIn from '@site/src/components/MDX/AddedIn';
13
+
14
+ <AddedIn version="3.41.0" />
15
+
16
+ The `<AgentTools/>` component renders a table of the tools an agent can call (MCP servers, REST APIs, internal search indexes, databases, and so on).
17
+
18
+ The component reads the `tools` array from the current agent's frontmatter, so it requires no props.
19
+
20
+ ### Use case
21
+
22
+ - Display all the external capabilities an agent reaches out to at runtime.
23
+ - Show MCP server endpoints, REST APIs, and other integrations on the agent page.
24
+
25
+ **Basic Example**
26
+
27
+ ```jsx /agents/OrderSupportAgent/index.mdx
28
+ <AgentTools />
29
+ ```
30
+
31
+ ### Output
32
+
33
+ ![Example output](./img/agent-tools.png)
34
+
35
+ ### Props
36
+
37
+ The `<AgentTools/>` component takes no props — it reads the `tools` array from the current agent's frontmatter.
38
+
39
+ For details on the `tools` frontmatter shape, see [Agent tools](/docs/development/guides/agents/adding-tools).
40
+
41
+ ### Support
42
+
43
+ The `<AgentTools/>` component is supported in agent pages only. If you add it to a service, message, or domain page, the catalog will display a warning and skip the table.
@@ -0,0 +1,43 @@
1
+ ---
2
+ sidebar_position: 1
3
+ keywords:
4
+ - EventCatalog agents
5
+ - AI agents
6
+ - LLM agents
7
+ - agent documentation
8
+ sidebar_label: What are agents?
9
+ title: Understanding agents
10
+ description: Document and govern AI agents alongside your services and events.
11
+ ---
12
+
13
+ import AddedIn from '@site/src/components/MDX/AddedIn';
14
+
15
+ <AddedIn version="3.41.0" />
16
+
17
+ In EventCatalog, agents represent AI-powered components in your architecture. They sit alongside services, messages, domains, and flows as first-class catalog resources.
18
+
19
+ An agent typically wraps a large language model (LLM) and is given access to tools (MCP servers, APIs, databases) so it can take autonomous or semi-autonomous actions.
20
+
21
+ ![Agent detail page showing model, tools, and connected messages](./img/agent-documentation.png)
22
+
23
+ ## Why document agents?
24
+
25
+ As AI agents take on real responsibilities in production systems they become part of your architecture whether or not they are documented.
26
+
27
+ Cataloging them gives your team:
28
+
29
+ - **Discoverability** — engineers and stakeholders can find what agents exist, what they do, and who owns them.
30
+ - **Model governance** — the `model` block captures which provider, model, and snapshot version the agent runs on so drift is visible in the catalog.
31
+ - **Tool transparency** — the `tools` array lists every external capability (MCP server, API, database) the agent can reach.
32
+
33
+ ## Where agents live in your architecture
34
+
35
+ Agents can belong to a domain or subdomain, or sit at the root of your catalog alongside services. They participate in flows as first-class steps and appear in search, the sidebar, and the discover page.
36
+
37
+ ![Agent rendered as a node in the EventCatalog visualiser, connected to its tools and messages](./img/agent-visualizer.png)
38
+
39
+ ## Finding agents in your catalog
40
+
41
+ Agents appear in the discover page alongside services, messages, domains, and flows. You can search, filter, and browse them the same way you would any other resource.
42
+
43
+ ![Explore page listing agents in the catalog with their owners and domains](./img/explore-agents.png)
@@ -0,0 +1,152 @@
1
+ ---
2
+ sidebar_position: 2
3
+ keywords:
4
+ - EventCatalog agents
5
+ - AI agents
6
+ - creating agents
7
+ sidebar_label: Creating an agent
8
+ title: Creating agents
9
+ description: Creating and managing agents within EventCatalog.
10
+ ---
11
+
12
+ import AddedIn from '@site/src/components/MDX/AddedIn';
13
+
14
+ <AddedIn version="3.41.0" />
15
+
16
+ Agents in EventCatalog are a great way to document AI-powered capabilities in your architecture.
17
+
18
+ You can also add [tools](/docs/development/guides/agents/adding-tools) and [model metadata](/docs/development/guides/agents/model-metadata) to your agents.
19
+
20
+ ### What do agents look like in EventCatalog?
21
+
22
+ ![Example](./img/agent-documentation.png)
23
+
24
+ ## Adding a new agent
25
+
26
+ To add a new agent, create a folder inside an `agents` directory with an `index.mdx` file.
27
+
28
+ - `/agents/{Agent Name}/index.mdx`
29
+ - (example `/agents/FraudReviewAgent/index.mdx`)
30
+
31
+ You can also place agents inside a domain or subdomain:
32
+
33
+ - `/domains/{Domain Name}/agents/{Agent Name}/index.mdx`
34
+ - (example `/domains/Payment/agents/FraudReviewAgent/index.mdx`)
35
+ - `/domains/{Domain Name}/subdomains/{Subdomain Name}/agents/{Agent Name}/index.mdx`
36
+ - (example `/domains/E-Commerce/subdomains/Payment/agents/FraudReviewAgent/index.mdx`)
37
+
38
+ _Here is an example of what an agent markdown file may look like._
39
+
40
+ ```md title="/agents/FraudReviewAgent/index.mdx (example)"
41
+ ---
42
+ # id of your agent, used for slugs and references in EventCatalog.
43
+ id: FraudReviewAgent
44
+
45
+ # Display name of the Agent, rendered in EventCatalog
46
+ name: Fraud Review Agent
47
+
48
+ # Version of the Agent
49
+ version: 0.0.1
50
+
51
+ # Short summary of your Agent
52
+ summary: |
53
+ Reviews risky payments, explains fraud signals, and recommends whether payment processing should continue.
54
+
55
+ # Optional owners, references teams or users
56
+ owners:
57
+ - dboyne
58
+
59
+ # Optional model metadata describing the LLM this agent runs on
60
+ model:
61
+ provider: OpenAI
62
+ name: gpt-4.1
63
+ version: "2025-04-14"
64
+
65
+ # Optional external tools the agent can call
66
+ tools:
67
+ - name: Risk profile lookup
68
+ type: mcp
69
+ icon: /icons/tools/datadog.svg
70
+ url: https://mcp.example.com/fraud/risk-profile
71
+ description: Retrieves transaction anomaly, device fingerprint, and fraud model signals.
72
+
73
+ # Optional messages this agent receives and it's version
74
+ receives:
75
+ - id: PaymentInitiated
76
+ version: 0.0.1
77
+
78
+ # Optional messages this agent sends and it's version
79
+ sends:
80
+ - id: FraudReviewCompleted
81
+ version: 0.0.1
82
+
83
+ # Optional data stores this agent reads from
84
+ readsFrom:
85
+ - id: fraud-analytics-db
86
+ version: 0.0.1
87
+
88
+ # Optional badges, rendered to UI by EventCatalog
89
+ badges:
90
+ - content: AI Agent
91
+ backgroundColor: purple
92
+ textColor: purple
93
+ ---
94
+
95
+ ## Overview
96
+
97
+ The Fraud Review Agent reviews risky payment attempts before they continue through the payment gateway.
98
+
99
+ <NodeGraph />
100
+
101
+ ## Tools
102
+
103
+ <AgentTools />
104
+ ```
105
+
106
+ ## Adding content
107
+
108
+ With **agents** you can write any Markdown you want and it will render on your page. Every agent gets its own page.
109
+
110
+ Within your markdown content you can use [components](/docs/development/components/using-components) to add interactive components to your page.
111
+
112
+ ## Adding tools to your agent
113
+
114
+ You can document the external tools (MCP servers, APIs, databases) an agent can call.
115
+
116
+ You can read more about adding tools to your agent [here](/docs/development/guides/agents/adding-tools).
117
+
118
+ ## Attaching an agent to a domain
119
+
120
+ To associate an agent with a domain, add its `id` to the `agents` array in the domain's frontmatter:
121
+
122
+ ```md title="/domains/Payment/index.mdx (example)"
123
+ ---
124
+ id: Payment
125
+ name: Payment Domain
126
+ version: 0.0.1
127
+ agents:
128
+ - id: FraudReviewAgent
129
+ version: 0.0.1
130
+ services:
131
+ - id: PaymentService
132
+ version: 0.0.1
133
+ ---
134
+ ```
135
+
136
+ EventCatalog will show the agent in the domain sidebar and include it in the domain visualiser.
137
+
138
+ ## Custom icon
139
+
140
+ Set `styles.icon` in your frontmatter to display a custom icon on the agent. The icon appears in the visualiser node, sidebar navigation, page header, and search results.
141
+
142
+ ```md title="/agents/FraudReviewAgent/index.mdx (example)"
143
+ ---
144
+ id: FraudReviewAgent
145
+ name: Fraud Review Agent
146
+ version: 0.0.1
147
+ styles:
148
+ icon: /icons/agents/fraud-review.svg
149
+ ---
150
+ ```
151
+
152
+ The value can be a path to a file in your catalog's `public/` folder (e.g. `/icons/logo.svg`) or an absolute URL. [Simple Icons CDN](https://cdn.simpleicons.org) is a useful source for brand logos.
@@ -0,0 +1,92 @@
1
+ ---
2
+ sidebar_position: 3
3
+ keywords:
4
+ - EventCatalog agents
5
+ - agent tools
6
+ - MCP
7
+ - AgentTools component
8
+ sidebar_label: Agent tools
9
+ title: Agent tools
10
+ description: Document and display the tools an agent can call.
11
+ ---
12
+
13
+ import AddedIn from '@site/src/components/MDX/AddedIn';
14
+
15
+ <AddedIn version="3.41.0" />
16
+
17
+ Agents often call external capabilities to do their work — MCP servers, REST APIs, internal search indexes, or databases. The `tools` array in an agent's frontmatter captures these dependencies so anyone reading the catalog can understand what the agent reaches out to at runtime.
18
+
19
+ ![Agent tools table rendered on an agent page](./img/agent-tools-component.png)
20
+
21
+ ## Define tools in frontmatter
22
+
23
+ Add a `tools` array to your agent's frontmatter. Each entry describes one tool:
24
+
25
+ ```md title="/agents/OrderSupportAgent/index.mdx (example)"
26
+ ---
27
+ # id of your agent, used for slugs and references in EventCatalog.
28
+ id: OrderSupportAgent
29
+
30
+ # Display name of the Agent, rendered in EventCatalog
31
+ name: Order Support Agent
32
+
33
+ # Version of the Agent
34
+ version: 0.0.1
35
+
36
+ # Optional external tools the agent can call
37
+ tools:
38
+ # Display name of the tool
39
+ - name: Order lookup
40
+ # Type of tool (e.g. `mcp`, `api`) — free-form string
41
+ type: mcp
42
+ # Optional icon path (from your catalog's `public/` folder) or absolute URL
43
+ icon: /icons/tools/snowflake.svg
44
+ # Optional link to the tool endpoint or documentation
45
+ url: https://mcp.example.com/orders/lookup
46
+ # Optional short description of what the tool does
47
+ description: Retrieves order status, totals, shipment milestones, and recent order events from the operational read model.
48
+ - name: Support case notes
49
+ type: mcp
50
+ icon: /icons/tools/zendesk.svg
51
+ url: https://mcp.example.com/support/case-notes
52
+ description: Appends investigation notes, suggested customer replies, and follow-up actions to the support ticket.
53
+ ---
54
+ ```
55
+
56
+ ### Tool fields
57
+
58
+ | Field | Required | Description |
59
+ |-------|----------|-------------|
60
+ | `name` | Yes | Display name of the tool |
61
+ | `type` | Yes | Free-form string — use `mcp` for MCP servers, `api` for REST/HTTP endpoints, or any label that fits your stack |
62
+ | `icon` | No | Path in your catalog's `public/` folder or an absolute URL to an icon image |
63
+ | `url` | No | Link to the tool endpoint or documentation |
64
+ | `description` | No | One or two sentences describing what the tool does |
65
+
66
+ The `type` field is a plain string. `mcp` gets special rendering in the catalog (the MCP logo appears next to the badge), but you can use any value that is meaningful to your team.
67
+
68
+ ## Render tools on the page
69
+
70
+ Add the [`<AgentTools />`](/docs/development/components/components/agent-tools) component anywhere in your agent's MDX body to render the tools table. The component reads the `tools` array from the current agent's frontmatter — no props needed.
71
+
72
+ ```md title="/agents/OrderSupportAgent/index.mdx (example)"
73
+ ---
74
+ id: OrderSupportAgent
75
+ # ... rest of frontmatter
76
+ ---
77
+
78
+ This agent helps the support team answer order questions.
79
+
80
+ ## Tools
81
+
82
+ <AgentTools />
83
+
84
+ ## Responsibilities
85
+
86
+ - Summarize the current state of an order for support staff.
87
+ ```
88
+
89
+ `<AgentTools />` is only supported inside agent pages. If you add it to a service or message page, the catalog will display a warning and skip the table.
90
+
91
+ ![Agent tools table with MCP badge and icon columns](./img/agent-tools-component.png)
92
+
@@ -0,0 +1,96 @@
1
+ ---
2
+ sidebar_position: 4
3
+ keywords:
4
+ - EventCatalog agents
5
+ - LLM model
6
+ - model governance
7
+ - AI governance
8
+ sidebar_label: Model metadata
9
+ title: Model metadata
10
+ description: Capture the LLM provider, model, and version your agent uses.
11
+ ---
12
+
13
+ import AddedIn from '@site/src/components/MDX/AddedIn';
14
+
15
+ <AddedIn version="3.41.0" />
16
+
17
+ Every agent can declare the LLM it uses through a `model` block in its frontmatter. This gives your team a single place to see which model powers each agent across your entire catalog.
18
+
19
+ ![Agents in the EventCatalog discover view](./img/explore-agents.png)
20
+
21
+ ## Why track the model?
22
+
23
+ LLM providers release new model versions, retire old snapshots, and change behavior between releases — often without a corresponding code deployment. Capturing `provider`, `name`, and `version` makes it easy to:
24
+
25
+ - Audit which agents are running on deprecated or retired snapshots.
26
+ - Surface model drift when a provider rolls out a new default.
27
+ - Give reviewers the context they need when an agent's output changes unexpectedly.
28
+
29
+ ## Add model metadata
30
+
31
+ Add a `model` block to your agent's frontmatter:
32
+
33
+ ```md title="/agents/FraudReviewAgent/index.mdx (OpenAI example)"
34
+ ---
35
+ id: FraudReviewAgent
36
+ name: Fraud Review Agent
37
+ version: 0.0.1
38
+
39
+ # Optional model metadata describing the LLM this agent runs on
40
+ model:
41
+ # The provider or platform powering the model
42
+ provider: OpenAI
43
+ # The model identifier
44
+ name: gpt-4.1
45
+ # The snapshot or API version of the model
46
+ version: "2025-04-14"
47
+ ---
48
+ ```
49
+
50
+ ```md title="/agents/InventoryRebalancingAgent/index.mdx (Gemini example)"
51
+ ---
52
+ id: InventoryRebalancingAgent
53
+ name: Inventory Rebalancing Agent
54
+ version: 0.0.1
55
+
56
+ # Optional model metadata describing the LLM this agent runs on
57
+ model:
58
+ # The provider or platform powering the model
59
+ provider: Gemini
60
+ # The model identifier
61
+ name: gemini-2.5-pro
62
+ # The snapshot or API version of the model
63
+ version: "2025-06-17"
64
+ ---
65
+ ```
66
+
67
+ ```md title="/agents/ProductContentAgent/index.mdx (Anthropic example)"
68
+ ---
69
+ id: ProductContentAgent
70
+ name: Product Content Agent
71
+ version: 0.0.1
72
+
73
+ # Optional model metadata describing the LLM this agent runs on
74
+ model:
75
+ # The provider or platform powering the model
76
+ provider: Anthropic
77
+ # The model identifier
78
+ name: claude-sonnet-4-5
79
+ # The snapshot or API version of the model
80
+ version: "20241022"
81
+ ---
82
+ ```
83
+
84
+ ### Model fields
85
+
86
+ | Field | Required | Description |
87
+ |-------|----------|-------------|
88
+ | `provider` | No | The provider or platform — e.g. `OpenAI`, `Anthropic`, `Gemini`, `Azure OpenAI` |
89
+ | `name` | No | The model identifier — e.g. `gpt-4.1`, `claude-sonnet-4-5`, `gemini-2.5-pro` |
90
+ | `version` | No | The snapshot or API version — e.g. `2025-04-14`, `20241022` |
91
+
92
+ All three fields are optional strings. Use whatever convention your provider uses for model identifiers and snapshot dates.
93
+
94
+ ## Model changes and versioning
95
+
96
+ When you upgrade the model an agent uses, consider whether the behavior change is significant enough to warrant a new agent version. Capturing the new `model.version` in a versioned snapshot (see [Versioning](/docs/development/guides/agents/versioning-and-lifecycle/versioning)) gives your team a clear record of when the model changed and who approved it.