@contractspec/example.agent-console 0.0.0-canary-20260113170453
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/.turbo/turbo-build$colon$bundle.log +280 -0
- package/.turbo/turbo-build.log +281 -0
- package/CHANGELOG.md +368 -0
- package/LICENSE +21 -0
- package/README.md +86 -0
- package/dist/agent/agent.entity.d.ts +55 -0
- package/dist/agent/agent.entity.d.ts.map +1 -0
- package/dist/agent/agent.entity.js +136 -0
- package/dist/agent/agent.entity.js.map +1 -0
- package/dist/agent/agent.enum.d.ts +18 -0
- package/dist/agent/agent.enum.d.ts.map +1 -0
- package/dist/agent/agent.enum.js +34 -0
- package/dist/agent/agent.enum.js.map +1 -0
- package/dist/agent/agent.event.d.ts +128 -0
- package/dist/agent/agent.event.d.ts.map +1 -0
- package/dist/agent/agent.event.js +210 -0
- package/dist/agent/agent.event.js.map +1 -0
- package/dist/agent/agent.handler.d.ts +100 -0
- package/dist/agent/agent.handler.d.ts.map +1 -0
- package/dist/agent/agent.handler.js +84 -0
- package/dist/agent/agent.handler.js.map +1 -0
- package/dist/agent/agent.operation.d.ts +471 -0
- package/dist/agent/agent.operation.d.ts.map +1 -0
- package/dist/agent/agent.operation.js +486 -0
- package/dist/agent/agent.operation.js.map +1 -0
- package/dist/agent/agent.presentation.d.ts +18 -0
- package/dist/agent/agent.presentation.d.ts.map +1 -0
- package/dist/agent/agent.presentation.js +89 -0
- package/dist/agent/agent.presentation.js.map +1 -0
- package/dist/agent/agent.schema.d.ts +401 -0
- package/dist/agent/agent.schema.d.ts.map +1 -0
- package/dist/agent/agent.schema.js +406 -0
- package/dist/agent/agent.schema.js.map +1 -0
- package/dist/agent/agent.test-spec.d.ts +8 -0
- package/dist/agent/agent.test-spec.d.ts.map +1 -0
- package/dist/agent/agent.test-spec.js +65 -0
- package/dist/agent/agent.test-spec.js.map +1 -0
- package/dist/agent/index.d.ts +8 -0
- package/dist/agent/index.js +9 -0
- package/dist/agent.capability.d.ts +7 -0
- package/dist/agent.capability.d.ts.map +1 -0
- package/dist/agent.capability.js +20 -0
- package/dist/agent.capability.js.map +1 -0
- package/dist/agent.feature.d.ts +12 -0
- package/dist/agent.feature.d.ts.map +1 -0
- package/dist/agent.feature.js +305 -0
- package/dist/agent.feature.js.map +1 -0
- package/dist/docs/agent-console.docblock.d.ts +1 -0
- package/dist/docs/agent-console.docblock.js +113 -0
- package/dist/docs/agent-console.docblock.js.map +1 -0
- package/dist/docs/index.d.ts +1 -0
- package/dist/docs/index.js +1 -0
- package/dist/example.d.ts +7 -0
- package/dist/example.d.ts.map +1 -0
- package/dist/example.js +58 -0
- package/dist/example.js.map +1 -0
- package/dist/handlers/agent.handlers.d.ts +135 -0
- package/dist/handlers/agent.handlers.d.ts.map +1 -0
- package/dist/handlers/agent.handlers.js +263 -0
- package/dist/handlers/agent.handlers.js.map +1 -0
- package/dist/handlers/index.d.ts +5 -0
- package/dist/handlers/index.js +6 -0
- package/dist/index.d.ts +48 -0
- package/dist/index.js +50 -0
- package/dist/presentations/index.d.ts +4 -0
- package/dist/presentations/index.js +5 -0
- package/dist/run/index.d.ts +8 -0
- package/dist/run/index.js +9 -0
- package/dist/run/run.entity.d.ts +82 -0
- package/dist/run/run.entity.d.ts.map +1 -0
- package/dist/run/run.entity.js +205 -0
- package/dist/run/run.entity.js.map +1 -0
- package/dist/run/run.enum.d.ts +22 -0
- package/dist/run/run.enum.d.ts.map +1 -0
- package/dist/run/run.enum.js +45 -0
- package/dist/run/run.enum.js.map +1 -0
- package/dist/run/run.event.d.ts +290 -0
- package/dist/run/run.event.d.ts.map +1 -0
- package/dist/run/run.event.js +434 -0
- package/dist/run/run.event.js.map +1 -0
- package/dist/run/run.handler.d.ts +203 -0
- package/dist/run/run.handler.d.ts.map +1 -0
- package/dist/run/run.handler.js +83 -0
- package/dist/run/run.handler.js.map +1 -0
- package/dist/run/run.operation.d.ts +720 -0
- package/dist/run/run.operation.d.ts.map +1 -0
- package/dist/run/run.operation.js +626 -0
- package/dist/run/run.operation.js.map +1 -0
- package/dist/run/run.presentation.d.ts +14 -0
- package/dist/run/run.presentation.d.ts.map +1 -0
- package/dist/run/run.presentation.js +65 -0
- package/dist/run/run.presentation.js.map +1 -0
- package/dist/run/run.schema.d.ts +416 -0
- package/dist/run/run.schema.d.ts.map +1 -0
- package/dist/run/run.schema.js +338 -0
- package/dist/run/run.schema.js.map +1 -0
- package/dist/run/run.test-spec.d.ts +8 -0
- package/dist/run/run.test-spec.d.ts.map +1 -0
- package/dist/run/run.test-spec.js +65 -0
- package/dist/run/run.test-spec.js.map +1 -0
- package/dist/seeders/index.d.ts +10 -0
- package/dist/seeders/index.d.ts.map +1 -0
- package/dist/seeders/index.js +20 -0
- package/dist/seeders/index.js.map +1 -0
- package/dist/shared/index.d.ts +4 -0
- package/dist/shared/index.js +5 -0
- package/dist/shared/mock-agents.d.ts +88 -0
- package/dist/shared/mock-agents.d.ts.map +1 -0
- package/dist/shared/mock-agents.js +94 -0
- package/dist/shared/mock-agents.js.map +1 -0
- package/dist/shared/mock-runs.d.ts +120 -0
- package/dist/shared/mock-runs.d.ts.map +1 -0
- package/dist/shared/mock-runs.js +118 -0
- package/dist/shared/mock-runs.js.map +1 -0
- package/dist/shared/mock-tools.d.ts +244 -0
- package/dist/shared/mock-tools.d.ts.map +1 -0
- package/dist/shared/mock-tools.js +181 -0
- package/dist/shared/mock-tools.js.map +1 -0
- package/dist/shared/overlay-types.d.ts +34 -0
- package/dist/shared/overlay-types.d.ts.map +1 -0
- package/dist/shared/overlay-types.js +0 -0
- package/dist/tool/index.d.ts +8 -0
- package/dist/tool/index.js +9 -0
- package/dist/tool/tool.entity.d.ts +42 -0
- package/dist/tool/tool.entity.d.ts.map +1 -0
- package/dist/tool/tool.entity.js +105 -0
- package/dist/tool/tool.entity.js.map +1 -0
- package/dist/tool/tool.enum.d.ts +18 -0
- package/dist/tool/tool.enum.d.ts.map +1 -0
- package/dist/tool/tool.enum.js +35 -0
- package/dist/tool/tool.enum.js.map +1 -0
- package/dist/tool/tool.event.d.ts +103 -0
- package/dist/tool/tool.event.d.ts.map +1 -0
- package/dist/tool/tool.event.js +159 -0
- package/dist/tool/tool.event.js.map +1 -0
- package/dist/tool/tool.handler.d.ts +315 -0
- package/dist/tool/tool.handler.d.ts.map +1 -0
- package/dist/tool/tool.handler.js +87 -0
- package/dist/tool/tool.handler.js.map +1 -0
- package/dist/tool/tool.operation.d.ts +411 -0
- package/dist/tool/tool.operation.d.ts.map +1 -0
- package/dist/tool/tool.operation.js +406 -0
- package/dist/tool/tool.operation.js.map +1 -0
- package/dist/tool/tool.presentation.d.ts +14 -0
- package/dist/tool/tool.presentation.d.ts.map +1 -0
- package/dist/tool/tool.presentation.js +65 -0
- package/dist/tool/tool.presentation.js.map +1 -0
- package/dist/tool/tool.schema.d.ts +218 -0
- package/dist/tool/tool.schema.d.ts.map +1 -0
- package/dist/tool/tool.schema.js +236 -0
- package/dist/tool/tool.schema.js.map +1 -0
- package/dist/tool/tool.test-spec.d.ts +8 -0
- package/dist/tool/tool.test-spec.d.ts.map +1 -0
- package/dist/tool/tool.test-spec.js +65 -0
- package/dist/tool/tool.test-spec.js.map +1 -0
- package/dist/ui/AgentDashboard.d.ts +7 -0
- package/dist/ui/AgentDashboard.d.ts.map +1 -0
- package/dist/ui/AgentDashboard.js +420 -0
- package/dist/ui/AgentDashboard.js.map +1 -0
- package/dist/ui/AgentRunList.d.ts +2 -0
- package/dist/ui/AgentRunList.js +5 -0
- package/dist/ui/AgentToolRegistry.d.ts +2 -0
- package/dist/ui/AgentToolRegistry.js +5 -0
- package/dist/ui/hooks/index.d.ts +6 -0
- package/dist/ui/hooks/index.js +8 -0
- package/dist/ui/hooks/useAgentList.d.ts +28 -0
- package/dist/ui/hooks/useAgentList.d.ts.map +1 -0
- package/dist/ui/hooks/useAgentList.js +66 -0
- package/dist/ui/hooks/useAgentList.js.map +1 -0
- package/dist/ui/hooks/useAgentMutations.d.ts +29 -0
- package/dist/ui/hooks/useAgentMutations.d.ts.map +1 -0
- package/dist/ui/hooks/useAgentMutations.js +124 -0
- package/dist/ui/hooks/useAgentMutations.js.map +1 -0
- package/dist/ui/hooks/useRunList.d.ts +24 -0
- package/dist/ui/hooks/useRunList.d.ts.map +1 -0
- package/dist/ui/hooks/useRunList.js +66 -0
- package/dist/ui/hooks/useRunList.js.map +1 -0
- package/dist/ui/hooks/useToolList.d.ts +40 -0
- package/dist/ui/hooks/useToolList.d.ts.map +1 -0
- package/dist/ui/hooks/useToolList.js +96 -0
- package/dist/ui/hooks/useToolList.js.map +1 -0
- package/dist/ui/index.d.ts +24 -0
- package/dist/ui/index.js +24 -0
- package/dist/ui/modals/AgentActionsModal.d.ts +27 -0
- package/dist/ui/modals/AgentActionsModal.d.ts.map +1 -0
- package/dist/ui/modals/AgentActionsModal.js +262 -0
- package/dist/ui/modals/AgentActionsModal.js.map +1 -0
- package/dist/ui/modals/CreateAgentModal.d.ts +25 -0
- package/dist/ui/modals/CreateAgentModal.d.ts.map +1 -0
- package/dist/ui/modals/CreateAgentModal.js +214 -0
- package/dist/ui/modals/CreateAgentModal.js.map +1 -0
- package/dist/ui/modals/index.d.ts +3 -0
- package/dist/ui/modals/index.js +4 -0
- package/dist/ui/overlays/demo-overlays.d.ts +19 -0
- package/dist/ui/overlays/demo-overlays.d.ts.map +1 -0
- package/dist/ui/overlays/demo-overlays.js +73 -0
- package/dist/ui/overlays/demo-overlays.js.map +1 -0
- package/dist/ui/overlays/index.d.ts +2 -0
- package/dist/ui/overlays/index.js +3 -0
- package/dist/ui/renderers/agent-list.markdown.d.ts +15 -0
- package/dist/ui/renderers/agent-list.markdown.d.ts.map +1 -0
- package/dist/ui/renderers/agent-list.markdown.js +51 -0
- package/dist/ui/renderers/agent-list.markdown.js.map +1 -0
- package/dist/ui/renderers/agent-list.renderer.d.ts +11 -0
- package/dist/ui/renderers/agent-list.renderer.d.ts.map +1 -0
- package/dist/ui/renderers/agent-list.renderer.js +19 -0
- package/dist/ui/renderers/agent-list.renderer.js.map +1 -0
- package/dist/ui/renderers/dashboard.markdown.d.ts +15 -0
- package/dist/ui/renderers/dashboard.markdown.d.ts.map +1 -0
- package/dist/ui/renderers/dashboard.markdown.js +100 -0
- package/dist/ui/renderers/dashboard.markdown.js.map +1 -0
- package/dist/ui/renderers/index.d.ts +6 -0
- package/dist/ui/renderers/index.js +7 -0
- package/dist/ui/renderers/run-list.markdown.d.ts +15 -0
- package/dist/ui/renderers/run-list.markdown.d.ts.map +1 -0
- package/dist/ui/renderers/run-list.markdown.js +44 -0
- package/dist/ui/renderers/run-list.markdown.js.map +1 -0
- package/dist/ui/renderers/tool-registry.markdown.d.ts +15 -0
- package/dist/ui/renderers/tool-registry.markdown.d.ts.map +1 -0
- package/dist/ui/renderers/tool-registry.markdown.js +55 -0
- package/dist/ui/renderers/tool-registry.markdown.js.map +1 -0
- package/dist/ui/views/AgentListView.d.ts +7 -0
- package/dist/ui/views/AgentListView.d.ts.map +1 -0
- package/dist/ui/views/AgentListView.js +93 -0
- package/dist/ui/views/AgentListView.js.map +1 -0
- package/dist/ui/views/RunListView.d.ts +14 -0
- package/dist/ui/views/RunListView.d.ts.map +1 -0
- package/dist/ui/views/RunListView.js +165 -0
- package/dist/ui/views/RunListView.js.map +1 -0
- package/dist/ui/views/ToolRegistryView.d.ts +14 -0
- package/dist/ui/views/ToolRegistryView.d.ts.map +1 -0
- package/dist/ui/views/ToolRegistryView.js +97 -0
- package/dist/ui/views/ToolRegistryView.js.map +1 -0
- package/dist/ui/views/index.d.ts +4 -0
- package/dist/ui/views/index.js +5 -0
- package/example.ts +1 -0
- package/package.json +155 -0
- package/src/agent/agent.entity.ts +137 -0
- package/src/agent/agent.enum.ts +31 -0
- package/src/agent/agent.event.ts +142 -0
- package/src/agent/agent.handler.ts +178 -0
- package/src/agent/agent.operation.ts +444 -0
- package/src/agent/agent.presentation.ts +80 -0
- package/src/agent/agent.schema.ts +214 -0
- package/src/agent/agent.test-spec.ts +55 -0
- package/src/agent/index.ts +67 -0
- package/src/agent.capability.ts +13 -0
- package/src/agent.feature.ts +147 -0
- package/src/docs/agent-console.docblock.ts +97 -0
- package/src/docs/index.ts +1 -0
- package/src/example.ts +41 -0
- package/src/handlers/agent.handlers.ts +572 -0
- package/src/handlers/index.ts +30 -0
- package/src/index.ts +32 -0
- package/src/presentations/index.ts +26 -0
- package/src/run/index.ts +68 -0
- package/src/run/run.entity.ts +175 -0
- package/src/run/run.enum.ts +43 -0
- package/src/run/run.event.ts +264 -0
- package/src/run/run.handler.ts +138 -0
- package/src/run/run.operation.ts +524 -0
- package/src/run/run.presentation.ts +54 -0
- package/src/run/run.schema.ts +169 -0
- package/src/run/run.test-spec.ts +55 -0
- package/src/seeders/index.ts +29 -0
- package/src/shared/index.ts +6 -0
- package/src/shared/mock-agents.ts +81 -0
- package/src/shared/mock-runs.ts +107 -0
- package/src/shared/mock-tools.ts +145 -0
- package/src/shared/overlay-types.ts +39 -0
- package/src/tool/index.ts +60 -0
- package/src/tool/tool.entity.ts +99 -0
- package/src/tool/tool.enum.ts +32 -0
- package/src/tool/tool.event.ts +119 -0
- package/src/tool/tool.handler.ts +154 -0
- package/src/tool/tool.operation.ts +366 -0
- package/src/tool/tool.presentation.ts +55 -0
- package/src/tool/tool.schema.ts +133 -0
- package/src/tool/tool.test-spec.ts +55 -0
- package/src/ui/AgentDashboard.tsx +416 -0
- package/src/ui/AgentRunList.tsx +8 -0
- package/src/ui/AgentToolRegistry.tsx +8 -0
- package/src/ui/hooks/index.ts +14 -0
- package/src/ui/hooks/useAgentList.ts +80 -0
- package/src/ui/hooks/useAgentMutations.ts +156 -0
- package/src/ui/hooks/useRunList.ts +81 -0
- package/src/ui/hooks/useToolList.ts +122 -0
- package/src/ui/index.ts +21 -0
- package/src/ui/modals/AgentActionsModal.tsx +306 -0
- package/src/ui/modals/CreateAgentModal.tsx +257 -0
- package/src/ui/modals/index.ts +2 -0
- package/src/ui/overlays/demo-overlays.ts +77 -0
- package/src/ui/overlays/index.ts +1 -0
- package/src/ui/renderers/agent-list.markdown.ts +84 -0
- package/src/ui/renderers/agent-list.renderer.tsx +27 -0
- package/src/ui/renderers/dashboard.markdown.ts +169 -0
- package/src/ui/renderers/index.ts +12 -0
- package/src/ui/renderers/run-list.markdown.ts +75 -0
- package/src/ui/renderers/tool-registry.markdown.ts +91 -0
- package/src/ui/views/AgentListView.tsx +113 -0
- package/src/ui/views/RunListView.tsx +173 -0
- package/src/ui/views/ToolRegistryView.tsx +140 -0
- package/src/ui/views/index.ts +6 -0
- package/tsconfig.json +10 -0
- package/tsconfig.tsbuildinfo +1 -0
- package/tsdown.config.js +7 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,368 @@
|
|
|
1
|
+
# @contractspec/example.agent-console
|
|
2
|
+
|
|
3
|
+
## 0.0.0-canary-20260113170453
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- caf8701: feat: add cli vibe command to run workflow
|
|
8
|
+
- c69b849: feat: add api web services (mcp & website)
|
|
9
|
+
- 42b8d78: feat: add cli `contractspec vibe` workflow to simplify usage
|
|
10
|
+
- fd38e85: feat: auto-fix contractspec issues
|
|
11
|
+
|
|
12
|
+
### Patch Changes
|
|
13
|
+
|
|
14
|
+
- e7ded36: feat: improve stability (adding ts-morph)
|
|
15
|
+
- c231a8b: test: improve workspace stability
|
|
16
|
+
- Updated dependencies [e7ded36]
|
|
17
|
+
- Updated dependencies [caf8701]
|
|
18
|
+
- Updated dependencies [c69b849]
|
|
19
|
+
- Updated dependencies [c231a8b]
|
|
20
|
+
- Updated dependencies [42b8d78]
|
|
21
|
+
- Updated dependencies [fd38e85]
|
|
22
|
+
- @contractspec/lib.example-shared-ui@0.0.0-canary-20260113170453
|
|
23
|
+
- @contractspec/lib.runtime-sandbox@0.0.0-canary-20260113170453
|
|
24
|
+
- @contractspec/lib.design-system@0.0.0-canary-20260113170453
|
|
25
|
+
- @contractspec/lib.contracts@0.0.0-canary-20260113170453
|
|
26
|
+
- @contractspec/lib.schema@0.0.0-canary-20260113170453
|
|
27
|
+
|
|
28
|
+
## 1.46.2
|
|
29
|
+
|
|
30
|
+
### Patch Changes
|
|
31
|
+
|
|
32
|
+
- 7e21625: feat: library services (landing page & api)
|
|
33
|
+
- Updated dependencies [7e21625]
|
|
34
|
+
- @contractspec/lib.example-shared-ui@1.0.1
|
|
35
|
+
- @contractspec/lib.runtime-sandbox@0.1.1
|
|
36
|
+
- @contractspec/lib.design-system@1.46.2
|
|
37
|
+
- @contractspec/lib.contracts@1.46.2
|
|
38
|
+
- @contractspec/lib.schema@1.46.2
|
|
39
|
+
|
|
40
|
+
## 1.46.1
|
|
41
|
+
|
|
42
|
+
### Patch Changes
|
|
43
|
+
|
|
44
|
+
- 2d8a72b: fix: mcp for presentation
|
|
45
|
+
- Updated dependencies [2d8a72b]
|
|
46
|
+
- @contractspec/lib.contracts@1.46.1
|
|
47
|
+
- @contractspec/lib.schema@1.46.1
|
|
48
|
+
|
|
49
|
+
## 1.46.0
|
|
50
|
+
|
|
51
|
+
### Minor Changes
|
|
52
|
+
|
|
53
|
+
- 07cb19b: feat: feat: cleaude code & opencode integrations
|
|
54
|
+
|
|
55
|
+
### Patch Changes
|
|
56
|
+
|
|
57
|
+
- Updated dependencies [07cb19b]
|
|
58
|
+
- @contractspec/lib.contracts@1.46.0
|
|
59
|
+
- @contractspec/lib.schema@1.46.0
|
|
60
|
+
|
|
61
|
+
## 1.45.6
|
|
62
|
+
|
|
63
|
+
### Patch Changes
|
|
64
|
+
|
|
65
|
+
- a913074: feat: improve ai agents rules management"
|
|
66
|
+
- Updated dependencies [a913074]
|
|
67
|
+
- @contractspec/lib.contracts@1.45.6
|
|
68
|
+
- @contractspec/lib.schema@1.45.6
|
|
69
|
+
|
|
70
|
+
## 1.45.5
|
|
71
|
+
|
|
72
|
+
### Patch Changes
|
|
73
|
+
|
|
74
|
+
- 9ddd7fa: feat: improve versioning
|
|
75
|
+
- Updated dependencies [9ddd7fa]
|
|
76
|
+
- @contractspec/lib.contracts@1.45.5
|
|
77
|
+
- @contractspec/lib.schema@1.45.5
|
|
78
|
+
|
|
79
|
+
## 1.45.4
|
|
80
|
+
|
|
81
|
+
### Patch Changes
|
|
82
|
+
|
|
83
|
+
- fix: github action
|
|
84
|
+
- Updated dependencies
|
|
85
|
+
- @contractspec/lib.contracts@1.45.4
|
|
86
|
+
- @contractspec/lib.schema@1.45.4
|
|
87
|
+
|
|
88
|
+
## 1.45.3
|
|
89
|
+
|
|
90
|
+
### Patch Changes
|
|
91
|
+
|
|
92
|
+
- e74ea9e: feat: version management
|
|
93
|
+
- Updated dependencies [e74ea9e]
|
|
94
|
+
- @contractspec/lib.contracts@1.45.3
|
|
95
|
+
- @contractspec/lib.schema@1.45.3
|
|
96
|
+
|
|
97
|
+
## 1.45.2
|
|
98
|
+
|
|
99
|
+
### Patch Changes
|
|
100
|
+
|
|
101
|
+
- 39ca241: code cleaning
|
|
102
|
+
- Updated dependencies [39ca241]
|
|
103
|
+
- @contractspec/lib.contracts@1.45.2
|
|
104
|
+
- @contractspec/lib.schema@1.45.2
|
|
105
|
+
|
|
106
|
+
## 1.45.1
|
|
107
|
+
|
|
108
|
+
### Patch Changes
|
|
109
|
+
|
|
110
|
+
- feat: improve app config and examples contracts
|
|
111
|
+
- Updated dependencies
|
|
112
|
+
- @contractspec/module.audit-trail@1.45.1
|
|
113
|
+
- @contractspec/lib.identity-rbac@1.45.1
|
|
114
|
+
- @contractspec/lib.contracts@1.45.1
|
|
115
|
+
- @contractspec/lib.schema@1.45.1
|
|
116
|
+
- @contractspec/lib.jobs@1.45.1
|
|
117
|
+
|
|
118
|
+
## 1.45.0
|
|
119
|
+
|
|
120
|
+
### Minor Changes
|
|
121
|
+
|
|
122
|
+
- e73ca1d: feat: improve app config and examples contracts
|
|
123
|
+
feat: Contract layers support (features, examples, app-configs)
|
|
124
|
+
|
|
125
|
+
### New CLI Commands
|
|
126
|
+
- `contractspec list layers` - List all contract layers with filtering
|
|
127
|
+
|
|
128
|
+
### Enhanced Commands
|
|
129
|
+
- `contractspec ci` - New `layers` check category validates features/examples/config
|
|
130
|
+
- `contractspec doctor` - New `layers` health checks
|
|
131
|
+
- `contractspec integrity` - Now shows layer statistics
|
|
132
|
+
|
|
133
|
+
### New APIs
|
|
134
|
+
- `discoverLayers()` - Scan workspace for all layer files
|
|
135
|
+
- `scanExampleSource()` - Parse ExampleSpec from source code
|
|
136
|
+
- `isExampleFile()` - Check if file is an example spec
|
|
137
|
+
|
|
138
|
+
### Patch Changes
|
|
139
|
+
|
|
140
|
+
- Updated dependencies [e73ca1d]
|
|
141
|
+
- @contractspec/module.audit-trail@1.45.0
|
|
142
|
+
- @contractspec/lib.identity-rbac@1.45.0
|
|
143
|
+
- @contractspec/lib.contracts@1.45.0
|
|
144
|
+
- @contractspec/lib.schema@1.45.0
|
|
145
|
+
- @contractspec/lib.jobs@1.45.0
|
|
146
|
+
|
|
147
|
+
## 1.44.1
|
|
148
|
+
|
|
149
|
+
### Patch Changes
|
|
150
|
+
|
|
151
|
+
- 3c594fb: fix
|
|
152
|
+
- Updated dependencies [3c594fb]
|
|
153
|
+
- @contractspec/module.audit-trail@1.44.1
|
|
154
|
+
- @contractspec/lib.identity-rbac@1.44.1
|
|
155
|
+
- @contractspec/lib.contracts@1.44.1
|
|
156
|
+
- @contractspec/lib.schema@1.44.1
|
|
157
|
+
- @contractspec/lib.jobs@1.44.1
|
|
158
|
+
|
|
159
|
+
## 1.44.0
|
|
160
|
+
|
|
161
|
+
### Minor Changes
|
|
162
|
+
|
|
163
|
+
- 5f3a868: chore: isolate branding to contractspec.io
|
|
164
|
+
|
|
165
|
+
### Patch Changes
|
|
166
|
+
|
|
167
|
+
- Updated dependencies [5f3a868]
|
|
168
|
+
- @contractspec/module.audit-trail@1.44.0
|
|
169
|
+
- @contractspec/lib.identity-rbac@1.44.0
|
|
170
|
+
- @contractspec/lib.contracts@1.44.0
|
|
171
|
+
- @contractspec/lib.schema@1.44.0
|
|
172
|
+
- @contractspec/lib.jobs@1.44.0
|
|
173
|
+
|
|
174
|
+
## 1.43.4
|
|
175
|
+
|
|
176
|
+
### Patch Changes
|
|
177
|
+
|
|
178
|
+
- 9216062: fix: cross-platform compatibility
|
|
179
|
+
- Updated dependencies [9216062]
|
|
180
|
+
- @contractspec/module.audit-trail@1.43.4
|
|
181
|
+
- @contractspec/lib.identity-rbac@1.43.4
|
|
182
|
+
- @contractspec/lib.contracts@1.43.4
|
|
183
|
+
- @contractspec/lib.schema@1.43.3
|
|
184
|
+
- @contractspec/lib.jobs@1.43.4
|
|
185
|
+
|
|
186
|
+
## 1.43.3
|
|
187
|
+
|
|
188
|
+
### Patch Changes
|
|
189
|
+
|
|
190
|
+
- 24d9759: improve documentation
|
|
191
|
+
- Updated dependencies [24d9759]
|
|
192
|
+
- @contractspec/module.audit-trail@1.43.3
|
|
193
|
+
- @contractspec/lib.identity-rbac@1.43.3
|
|
194
|
+
- @contractspec/lib.contracts@1.43.3
|
|
195
|
+
- @contractspec/lib.schema@1.43.2
|
|
196
|
+
- @contractspec/lib.jobs@1.43.3
|
|
197
|
+
|
|
198
|
+
## 1.43.2
|
|
199
|
+
|
|
200
|
+
### Patch Changes
|
|
201
|
+
|
|
202
|
+
- e147271: fix: improve stability
|
|
203
|
+
- Updated dependencies [e147271]
|
|
204
|
+
- @contractspec/module.audit-trail@1.43.2
|
|
205
|
+
- @contractspec/lib.identity-rbac@1.43.2
|
|
206
|
+
- @contractspec/lib.contracts@1.43.2
|
|
207
|
+
- @contractspec/lib.jobs@1.43.2
|
|
208
|
+
- @contractspec/lib.schema@1.43.1
|
|
209
|
+
|
|
210
|
+
## 1.43.1
|
|
211
|
+
|
|
212
|
+
### Patch Changes
|
|
213
|
+
|
|
214
|
+
- Updated dependencies [f28fdad]
|
|
215
|
+
- @contractspec/lib.contracts@1.43.1
|
|
216
|
+
- @contractspec/lib.identity-rbac@1.43.1
|
|
217
|
+
- @contractspec/lib.jobs@1.43.1
|
|
218
|
+
- @contractspec/module.audit-trail@1.43.1
|
|
219
|
+
|
|
220
|
+
## 1.43.0
|
|
221
|
+
|
|
222
|
+
### Minor Changes
|
|
223
|
+
|
|
224
|
+
- 042d072: feat: schema declaration using json schema, including zod
|
|
225
|
+
|
|
226
|
+
### Patch Changes
|
|
227
|
+
|
|
228
|
+
- Updated dependencies [042d072]
|
|
229
|
+
- @contractspec/module.audit-trail@1.43.0
|
|
230
|
+
- @contractspec/lib.identity-rbac@1.43.0
|
|
231
|
+
- @contractspec/lib.contracts@1.43.0
|
|
232
|
+
- @contractspec/lib.schema@1.43.0
|
|
233
|
+
- @contractspec/lib.jobs@1.43.0
|
|
234
|
+
|
|
235
|
+
## 1.42.10
|
|
236
|
+
|
|
237
|
+
### Patch Changes
|
|
238
|
+
|
|
239
|
+
- 1e6a0f1: fix: mcp server
|
|
240
|
+
- Updated dependencies [1e6a0f1]
|
|
241
|
+
- @contractspec/module.audit-trail@1.42.10
|
|
242
|
+
- @contractspec/lib.identity-rbac@1.42.10
|
|
243
|
+
- @contractspec/lib.contracts@1.42.10
|
|
244
|
+
- @contractspec/lib.schema@1.42.10
|
|
245
|
+
- @contractspec/lib.jobs@1.42.10
|
|
246
|
+
|
|
247
|
+
## 1.42.9
|
|
248
|
+
|
|
249
|
+
### Patch Changes
|
|
250
|
+
|
|
251
|
+
- 9281db7: fix ModelRegistry
|
|
252
|
+
- Updated dependencies [9281db7]
|
|
253
|
+
- @contractspec/module.audit-trail@1.42.9
|
|
254
|
+
- @contractspec/lib.identity-rbac@1.42.9
|
|
255
|
+
- @contractspec/lib.contracts@1.42.9
|
|
256
|
+
- @contractspec/lib.schema@1.42.9
|
|
257
|
+
- @contractspec/lib.jobs@1.42.9
|
|
258
|
+
|
|
259
|
+
## 1.42.8
|
|
260
|
+
|
|
261
|
+
### Patch Changes
|
|
262
|
+
|
|
263
|
+
- e07b5ac: fix
|
|
264
|
+
- Updated dependencies [e07b5ac]
|
|
265
|
+
- @contractspec/module.audit-trail@1.42.8
|
|
266
|
+
- @contractspec/lib.identity-rbac@1.42.8
|
|
267
|
+
- @contractspec/lib.contracts@1.42.8
|
|
268
|
+
- @contractspec/lib.schema@1.42.8
|
|
269
|
+
- @contractspec/lib.jobs@1.42.8
|
|
270
|
+
|
|
271
|
+
## 1.42.7
|
|
272
|
+
|
|
273
|
+
### Patch Changes
|
|
274
|
+
|
|
275
|
+
- e9b575d: fix release
|
|
276
|
+
- Updated dependencies [e9b575d]
|
|
277
|
+
- @contractspec/module.audit-trail@1.42.7
|
|
278
|
+
- @contractspec/lib.identity-rbac@1.42.7
|
|
279
|
+
- @contractspec/lib.contracts@1.42.7
|
|
280
|
+
- @contractspec/lib.schema@1.42.7
|
|
281
|
+
- @contractspec/lib.jobs@1.42.7
|
|
282
|
+
|
|
283
|
+
## 1.42.6
|
|
284
|
+
|
|
285
|
+
### Patch Changes
|
|
286
|
+
|
|
287
|
+
- 1500242: fix tooling
|
|
288
|
+
- Updated dependencies [1500242]
|
|
289
|
+
- @contractspec/module.audit-trail@1.42.6
|
|
290
|
+
- @contractspec/lib.identity-rbac@1.42.6
|
|
291
|
+
- @contractspec/lib.contracts@1.42.6
|
|
292
|
+
- @contractspec/lib.schema@1.42.6
|
|
293
|
+
- @contractspec/lib.jobs@1.42.6
|
|
294
|
+
|
|
295
|
+
## 1.42.5
|
|
296
|
+
|
|
297
|
+
### Patch Changes
|
|
298
|
+
|
|
299
|
+
- 1299719: fix vscode
|
|
300
|
+
- Updated dependencies [1299719]
|
|
301
|
+
- @contractspec/module.audit-trail@1.42.5
|
|
302
|
+
- @contractspec/lib.identity-rbac@1.42.5
|
|
303
|
+
- @contractspec/lib.contracts@1.42.5
|
|
304
|
+
- @contractspec/lib.schema@1.42.5
|
|
305
|
+
- @contractspec/lib.jobs@1.42.5
|
|
306
|
+
|
|
307
|
+
## 1.42.4
|
|
308
|
+
|
|
309
|
+
### Patch Changes
|
|
310
|
+
|
|
311
|
+
- ac28b99: fix: generate from openapi
|
|
312
|
+
- Updated dependencies [ac28b99]
|
|
313
|
+
- @contractspec/module.audit-trail@1.42.4
|
|
314
|
+
- @contractspec/lib.identity-rbac@1.42.4
|
|
315
|
+
- @contractspec/lib.contracts@1.42.4
|
|
316
|
+
- @contractspec/lib.schema@1.42.4
|
|
317
|
+
- @contractspec/lib.jobs@1.42.4
|
|
318
|
+
|
|
319
|
+
## 1.42.3
|
|
320
|
+
|
|
321
|
+
### Patch Changes
|
|
322
|
+
|
|
323
|
+
- 3f5d015: fix(tooling): cicd
|
|
324
|
+
- Updated dependencies [3f5d015]
|
|
325
|
+
- @contractspec/lib.contracts@1.42.3
|
|
326
|
+
- @contractspec/lib.identity-rbac@1.42.3
|
|
327
|
+
- @contractspec/lib.jobs@1.42.3
|
|
328
|
+
- @contractspec/lib.schema@1.42.3
|
|
329
|
+
- @contractspec/module.audit-trail@1.42.3
|
|
330
|
+
|
|
331
|
+
## 1.42.2
|
|
332
|
+
|
|
333
|
+
### Patch Changes
|
|
334
|
+
|
|
335
|
+
- 1f9ac4c: fix
|
|
336
|
+
- Updated dependencies [1f9ac4c]
|
|
337
|
+
- @contractspec/lib.contracts@1.42.2
|
|
338
|
+
- @contractspec/lib.identity-rbac@1.42.2
|
|
339
|
+
- @contractspec/lib.jobs@1.42.2
|
|
340
|
+
- @contractspec/lib.schema@1.42.2
|
|
341
|
+
- @contractspec/module.audit-trail@1.42.2
|
|
342
|
+
|
|
343
|
+
## 1.42.1
|
|
344
|
+
|
|
345
|
+
### Patch Changes
|
|
346
|
+
|
|
347
|
+
- f043995: Fix release
|
|
348
|
+
- Updated dependencies [f043995]
|
|
349
|
+
- @contractspec/module.audit-trail@1.42.1
|
|
350
|
+
- @contractspec/lib.identity-rbac@1.42.1
|
|
351
|
+
- @contractspec/lib.contracts@1.42.1
|
|
352
|
+
- @contractspec/lib.schema@1.42.1
|
|
353
|
+
- @contractspec/lib.jobs@1.42.1
|
|
354
|
+
|
|
355
|
+
## 1.42.0
|
|
356
|
+
|
|
357
|
+
### Minor Changes
|
|
358
|
+
|
|
359
|
+
- 8eefd9c: initial release
|
|
360
|
+
|
|
361
|
+
### Patch Changes
|
|
362
|
+
|
|
363
|
+
- Updated dependencies [8eefd9c]
|
|
364
|
+
- @contractspec/lib.contracts@1.42.0
|
|
365
|
+
- @contractspec/lib.identity-rbac@1.42.0
|
|
366
|
+
- @contractspec/lib.jobs@1.42.0
|
|
367
|
+
- @contractspec/lib.schema@1.42.0
|
|
368
|
+
- @contractspec/module.audit-trail@1.42.0
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Chaman Ventures, SASU
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# Agent Console Example
|
|
2
|
+
|
|
3
|
+
Website: https://contractspec.io/
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
A ContractSpec example demonstrating AI agent orchestration with tools, runs, and execution logs.
|
|
7
|
+
|
|
8
|
+
## Overview
|
|
9
|
+
|
|
10
|
+
This example showcases how to build an AI agent management system using ContractSpec's spec-first approach. It includes:
|
|
11
|
+
|
|
12
|
+
- **Tools**: Reusable AI functions/capabilities that agents can invoke
|
|
13
|
+
- **Agents**: AI agent configurations with assigned tools and parameters
|
|
14
|
+
- **Runs**: Execution instances of agents processing user requests
|
|
15
|
+
- **Logs**: Detailed execution logs for debugging and auditing
|
|
16
|
+
|
|
17
|
+
## Features
|
|
18
|
+
|
|
19
|
+
- Multi-tenant agent management
|
|
20
|
+
- Tool registry with typed parameters
|
|
21
|
+
- Agent composition with multiple tools
|
|
22
|
+
- Run execution with step-by-step logging
|
|
23
|
+
- Token usage tracking for billing
|
|
24
|
+
- Event-driven architecture for real-time updates
|
|
25
|
+
|
|
26
|
+
## Usage
|
|
27
|
+
|
|
28
|
+
```typescript
|
|
29
|
+
import {
|
|
30
|
+
ToolEntity,
|
|
31
|
+
AgentEntity,
|
|
32
|
+
RunEntity,
|
|
33
|
+
CreateToolCommand,
|
|
34
|
+
ExecuteAgentCommand
|
|
35
|
+
} from '@contractspec/example.agent-console';
|
|
36
|
+
|
|
37
|
+
// Define a tool
|
|
38
|
+
const searchTool = {
|
|
39
|
+
name: 'web-search',
|
|
40
|
+
description: 'Search the web for information',
|
|
41
|
+
parameters: {
|
|
42
|
+
type: 'object',
|
|
43
|
+
properties: {
|
|
44
|
+
query: { type: 'string' }
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
// Create an agent with tools
|
|
50
|
+
const agent = {
|
|
51
|
+
name: 'Research Assistant',
|
|
52
|
+
model: 'gpt-4',
|
|
53
|
+
systemPrompt: 'You are a helpful research assistant.',
|
|
54
|
+
toolIds: ['tool-web-search', 'tool-summarize']
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
// Execute the agent
|
|
58
|
+
const run = await executeAgent({
|
|
59
|
+
agentId: agent.id,
|
|
60
|
+
input: { message: 'What are the latest AI developments?' }
|
|
61
|
+
});
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## Entities
|
|
65
|
+
|
|
66
|
+
- `Tool` - AI tool/function definitions
|
|
67
|
+
- `Agent` - Agent configurations
|
|
68
|
+
- `Run` - Agent execution instances
|
|
69
|
+
- `RunStep` - Individual steps within a run
|
|
70
|
+
- `RunLog` - Detailed execution logs
|
|
71
|
+
|
|
72
|
+
## Events
|
|
73
|
+
|
|
74
|
+
- `AgentCreated` - When a new agent is configured
|
|
75
|
+
- `RunStarted` - When an agent run begins
|
|
76
|
+
- `RunCompleted` - When an agent run finishes
|
|
77
|
+
- `RunFailed` - When an agent run encounters an error
|
|
78
|
+
- `ToolInvoked` - When a tool is called during execution
|
|
79
|
+
|
|
80
|
+
## Dependencies
|
|
81
|
+
|
|
82
|
+
This example builds on the following cross-cutting modules:
|
|
83
|
+
|
|
84
|
+
- `@contractspec/lib.identity-rbac` - User and organization management
|
|
85
|
+
- `@contractspec/lib.jobs` - Async job processing for long-running agents
|
|
86
|
+
- `@contractspec/module.audit-trail` - Audit logging for compliance
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import * as _contractspec_lib_schema54 from "@contractspec/lib.schema";
|
|
2
|
+
|
|
3
|
+
//#region src/agent/agent.entity.d.ts
|
|
4
|
+
/**
|
|
5
|
+
* Agent status for lifecycle management.
|
|
6
|
+
*/
|
|
7
|
+
declare const AgentStatusEntityEnum: _contractspec_lib_schema54.EntityEnumDef;
|
|
8
|
+
/**
|
|
9
|
+
* Agent model provider.
|
|
10
|
+
*/
|
|
11
|
+
declare const ModelProviderEntityEnum: _contractspec_lib_schema54.EntityEnumDef;
|
|
12
|
+
/**
|
|
13
|
+
* Agent entity - Represents an AI agent configuration.
|
|
14
|
+
*/
|
|
15
|
+
declare const AgentEntity: _contractspec_lib_schema54.EntitySpec<{
|
|
16
|
+
id: _contractspec_lib_schema54.EntityScalarField;
|
|
17
|
+
organizationId: _contractspec_lib_schema54.EntityScalarField;
|
|
18
|
+
name: _contractspec_lib_schema54.EntityScalarField;
|
|
19
|
+
slug: _contractspec_lib_schema54.EntityScalarField;
|
|
20
|
+
description: _contractspec_lib_schema54.EntityScalarField;
|
|
21
|
+
status: _contractspec_lib_schema54.EntityEnumField;
|
|
22
|
+
modelProvider: _contractspec_lib_schema54.EntityEnumField;
|
|
23
|
+
modelName: _contractspec_lib_schema54.EntityScalarField;
|
|
24
|
+
modelConfig: _contractspec_lib_schema54.EntityScalarField;
|
|
25
|
+
systemPrompt: _contractspec_lib_schema54.EntityScalarField;
|
|
26
|
+
userPromptTemplate: _contractspec_lib_schema54.EntityScalarField;
|
|
27
|
+
toolIds: _contractspec_lib_schema54.EntityScalarField;
|
|
28
|
+
toolChoice: _contractspec_lib_schema54.EntityScalarField;
|
|
29
|
+
maxIterations: _contractspec_lib_schema54.EntityScalarField;
|
|
30
|
+
maxTokensPerRun: _contractspec_lib_schema54.EntityScalarField;
|
|
31
|
+
timeoutMs: _contractspec_lib_schema54.EntityScalarField;
|
|
32
|
+
version: _contractspec_lib_schema54.EntityScalarField;
|
|
33
|
+
tags: _contractspec_lib_schema54.EntityScalarField;
|
|
34
|
+
createdAt: _contractspec_lib_schema54.EntityScalarField;
|
|
35
|
+
updatedAt: _contractspec_lib_schema54.EntityScalarField;
|
|
36
|
+
createdById: _contractspec_lib_schema54.EntityScalarField;
|
|
37
|
+
tools: _contractspec_lib_schema54.EntityRelationField;
|
|
38
|
+
}>;
|
|
39
|
+
/**
|
|
40
|
+
* AgentTool join entity - Links agents to their assigned tools.
|
|
41
|
+
*/
|
|
42
|
+
declare const AgentToolEntity: _contractspec_lib_schema54.EntitySpec<{
|
|
43
|
+
id: _contractspec_lib_schema54.EntityScalarField;
|
|
44
|
+
agentId: _contractspec_lib_schema54.EntityScalarField;
|
|
45
|
+
toolId: _contractspec_lib_schema54.EntityScalarField;
|
|
46
|
+
config: _contractspec_lib_schema54.EntityScalarField;
|
|
47
|
+
order: _contractspec_lib_schema54.EntityScalarField;
|
|
48
|
+
isEnabled: _contractspec_lib_schema54.EntityScalarField;
|
|
49
|
+
createdAt: _contractspec_lib_schema54.EntityScalarField;
|
|
50
|
+
agent: _contractspec_lib_schema54.EntityRelationField;
|
|
51
|
+
tool: _contractspec_lib_schema54.EntityRelationField;
|
|
52
|
+
}>;
|
|
53
|
+
//#endregion
|
|
54
|
+
export { AgentEntity, AgentStatusEntityEnum, AgentToolEntity, ModelProviderEntityEnum };
|
|
55
|
+
//# sourceMappingURL=agent.entity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent.entity.d.ts","names":[],"sources":["../../src/agent/agent.entity.ts"],"sourcesContent":[],"mappings":";;;;;;AAUa,cAAA,qBAIX,EAAA,0BAAA,CAJgC,aAIhC;AAKF;AASA;;cATa,yBAIX,0BAAA,CAJkC;;;;cASvB,wCAAW;MA2EtB,0BAAA,CAAA;;;;;;;;;;;;;;;;uDA3EsB;EAAA,IAAA,8CAAA;EAgFX,SAAA,8CA4BX;EAAA,SAAA,8CAAA;;;;;;;cA5BW,4CAAe;MA4B1B,0BAAA,CAAA;uDA5B0B;EAAA,MAAA,8CAAA"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { defineEntity, defineEntityEnum, field, index } from "@contractspec/lib.schema";
|
|
2
|
+
|
|
3
|
+
//#region src/agent/agent.entity.ts
|
|
4
|
+
/**
|
|
5
|
+
* Agent status for lifecycle management.
|
|
6
|
+
*/
|
|
7
|
+
const AgentStatusEntityEnum = defineEntityEnum({
|
|
8
|
+
name: "AgentStatus",
|
|
9
|
+
values: [
|
|
10
|
+
"DRAFT",
|
|
11
|
+
"ACTIVE",
|
|
12
|
+
"PAUSED",
|
|
13
|
+
"ARCHIVED"
|
|
14
|
+
],
|
|
15
|
+
description: "Lifecycle status of the agent"
|
|
16
|
+
});
|
|
17
|
+
/**
|
|
18
|
+
* Agent model provider.
|
|
19
|
+
*/
|
|
20
|
+
const ModelProviderEntityEnum = defineEntityEnum({
|
|
21
|
+
name: "ModelProvider",
|
|
22
|
+
values: [
|
|
23
|
+
"OPENAI",
|
|
24
|
+
"ANTHROPIC",
|
|
25
|
+
"GOOGLE",
|
|
26
|
+
"MISTRAL",
|
|
27
|
+
"CUSTOM"
|
|
28
|
+
],
|
|
29
|
+
description: "AI model provider"
|
|
30
|
+
});
|
|
31
|
+
/**
|
|
32
|
+
* Agent entity - Represents an AI agent configuration.
|
|
33
|
+
*/
|
|
34
|
+
const AgentEntity = defineEntity({
|
|
35
|
+
name: "Agent",
|
|
36
|
+
schema: "agent_console",
|
|
37
|
+
description: "Represents an AI agent configuration with assigned tools and parameters.",
|
|
38
|
+
fields: {
|
|
39
|
+
id: field.id(),
|
|
40
|
+
organizationId: field.string({ description: "Organization that owns this agent" }),
|
|
41
|
+
name: field.string({ description: "Agent name (1-100 chars)" }),
|
|
42
|
+
slug: field.string({ description: "URL-safe identifier (lowercase, numbers, hyphens)" }),
|
|
43
|
+
description: field.string({
|
|
44
|
+
isOptional: true,
|
|
45
|
+
description: "Agent description (max 1000 chars)"
|
|
46
|
+
}),
|
|
47
|
+
status: field.enum("AgentStatus", { default: "DRAFT" }),
|
|
48
|
+
modelProvider: field.enum("ModelProvider", { default: "OPENAI" }),
|
|
49
|
+
modelName: field.string({ description: "Model identifier: 'gpt-4', 'claude-3-opus', etc." }),
|
|
50
|
+
modelConfig: field.json({
|
|
51
|
+
isOptional: true,
|
|
52
|
+
description: "Model parameters: temperature, max_tokens, etc."
|
|
53
|
+
}),
|
|
54
|
+
systemPrompt: field.string({ description: "System prompt for the agent" }),
|
|
55
|
+
userPromptTemplate: field.string({
|
|
56
|
+
isOptional: true,
|
|
57
|
+
description: "Template for user prompts"
|
|
58
|
+
}),
|
|
59
|
+
toolIds: field.string({
|
|
60
|
+
isArray: true,
|
|
61
|
+
isOptional: true,
|
|
62
|
+
description: "IDs of assigned tools"
|
|
63
|
+
}),
|
|
64
|
+
toolChoice: field.string({
|
|
65
|
+
default: "auto",
|
|
66
|
+
description: "Tool selection mode: 'auto', 'required', 'none'"
|
|
67
|
+
}),
|
|
68
|
+
maxIterations: field.int({
|
|
69
|
+
default: 10,
|
|
70
|
+
description: "Maximum iterations per run"
|
|
71
|
+
}),
|
|
72
|
+
maxTokensPerRun: field.int({
|
|
73
|
+
isOptional: true,
|
|
74
|
+
description: "Maximum tokens per run"
|
|
75
|
+
}),
|
|
76
|
+
timeoutMs: field.int({
|
|
77
|
+
default: 12e4,
|
|
78
|
+
description: "Execution timeout in milliseconds"
|
|
79
|
+
}),
|
|
80
|
+
version: field.string({
|
|
81
|
+
default: "1.0.0",
|
|
82
|
+
description: "Agent version"
|
|
83
|
+
}),
|
|
84
|
+
tags: field.string({
|
|
85
|
+
isArray: true,
|
|
86
|
+
isOptional: true,
|
|
87
|
+
description: "Tags for categorization"
|
|
88
|
+
}),
|
|
89
|
+
createdAt: field.createdAt(),
|
|
90
|
+
updatedAt: field.updatedAt(),
|
|
91
|
+
createdById: field.string({
|
|
92
|
+
isOptional: true,
|
|
93
|
+
description: "User who created this agent"
|
|
94
|
+
}),
|
|
95
|
+
tools: field.hasMany("Tool", { description: "Tools assigned to this agent" })
|
|
96
|
+
},
|
|
97
|
+
indexes: [
|
|
98
|
+
index.unique(["organizationId", "slug"]),
|
|
99
|
+
index.on(["organizationId", "status"]),
|
|
100
|
+
index.on(["modelProvider", "modelName"])
|
|
101
|
+
],
|
|
102
|
+
enums: [AgentStatusEntityEnum, ModelProviderEntityEnum]
|
|
103
|
+
});
|
|
104
|
+
/**
|
|
105
|
+
* AgentTool join entity - Links agents to their assigned tools.
|
|
106
|
+
*/
|
|
107
|
+
const AgentToolEntity = defineEntity({
|
|
108
|
+
name: "AgentTool",
|
|
109
|
+
schema: "agent_console",
|
|
110
|
+
description: "Links an agent to its assigned tools with configuration.",
|
|
111
|
+
fields: {
|
|
112
|
+
id: field.id(),
|
|
113
|
+
agentId: field.foreignKey({ description: "Agent ID" }),
|
|
114
|
+
toolId: field.foreignKey({ description: "Tool ID" }),
|
|
115
|
+
config: field.json({
|
|
116
|
+
isOptional: true,
|
|
117
|
+
description: "Tool-specific configuration for this agent"
|
|
118
|
+
}),
|
|
119
|
+
order: field.int({
|
|
120
|
+
default: 0,
|
|
121
|
+
description: "Order of tool in agent tool list"
|
|
122
|
+
}),
|
|
123
|
+
isEnabled: field.boolean({
|
|
124
|
+
default: true,
|
|
125
|
+
description: "Whether tool is enabled for this agent"
|
|
126
|
+
}),
|
|
127
|
+
createdAt: field.createdAt(),
|
|
128
|
+
agent: field.belongsTo("Agent", ["agentId"], ["id"]),
|
|
129
|
+
tool: field.belongsTo("Tool", ["toolId"], ["id"])
|
|
130
|
+
},
|
|
131
|
+
indexes: [index.unique(["agentId", "toolId"]), index.on(["agentId", "order"])]
|
|
132
|
+
});
|
|
133
|
+
|
|
134
|
+
//#endregion
|
|
135
|
+
export { AgentEntity, AgentStatusEntityEnum, AgentToolEntity, ModelProviderEntityEnum };
|
|
136
|
+
//# sourceMappingURL=agent.entity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent.entity.js","names":[],"sources":["../../src/agent/agent.entity.ts"],"sourcesContent":["import {\n defineEntity,\n defineEntityEnum,\n field,\n index,\n} from '@contractspec/lib.schema';\n\n/**\n * Agent status for lifecycle management.\n */\nexport const AgentStatusEntityEnum = defineEntityEnum({\n name: 'AgentStatus',\n values: ['DRAFT', 'ACTIVE', 'PAUSED', 'ARCHIVED'],\n description: 'Lifecycle status of the agent',\n});\n\n/**\n * Agent model provider.\n */\nexport const ModelProviderEntityEnum = defineEntityEnum({\n name: 'ModelProvider',\n values: ['OPENAI', 'ANTHROPIC', 'GOOGLE', 'MISTRAL', 'CUSTOM'],\n description: 'AI model provider',\n});\n\n/**\n * Agent entity - Represents an AI agent configuration.\n */\nexport const AgentEntity = defineEntity({\n name: 'Agent',\n schema: 'agent_console',\n description:\n 'Represents an AI agent configuration with assigned tools and parameters.',\n fields: {\n id: field.id(),\n organizationId: field.string({\n description: 'Organization that owns this agent',\n }),\n name: field.string({ description: 'Agent name (1-100 chars)' }),\n slug: field.string({\n description: 'URL-safe identifier (lowercase, numbers, hyphens)',\n }),\n description: field.string({\n isOptional: true,\n description: 'Agent description (max 1000 chars)',\n }),\n status: field.enum('AgentStatus', { default: 'DRAFT' }),\n modelProvider: field.enum('ModelProvider', { default: 'OPENAI' }),\n modelName: field.string({\n description: \"Model identifier: 'gpt-4', 'claude-3-opus', etc.\",\n }),\n modelConfig: field.json({\n isOptional: true,\n description: 'Model parameters: temperature, max_tokens, etc.',\n }),\n systemPrompt: field.string({ description: 'System prompt for the agent' }),\n userPromptTemplate: field.string({\n isOptional: true,\n description: 'Template for user prompts',\n }),\n toolIds: field.string({\n isArray: true,\n isOptional: true,\n description: 'IDs of assigned tools',\n }),\n toolChoice: field.string({\n default: 'auto',\n description: \"Tool selection mode: 'auto', 'required', 'none'\",\n }),\n maxIterations: field.int({\n default: 10,\n description: 'Maximum iterations per run',\n }),\n maxTokensPerRun: field.int({\n isOptional: true,\n description: 'Maximum tokens per run',\n }),\n timeoutMs: field.int({\n default: 120000,\n description: 'Execution timeout in milliseconds',\n }),\n version: field.string({ default: '1.0.0', description: 'Agent version' }),\n tags: field.string({\n isArray: true,\n isOptional: true,\n description: 'Tags for categorization',\n }),\n createdAt: field.createdAt(),\n updatedAt: field.updatedAt(),\n createdById: field.string({\n isOptional: true,\n description: 'User who created this agent',\n }),\n tools: field.hasMany('Tool', {\n description: 'Tools assigned to this agent',\n }),\n },\n indexes: [\n index.unique(['organizationId', 'slug']),\n index.on(['organizationId', 'status']),\n index.on(['modelProvider', 'modelName']),\n ],\n enums: [AgentStatusEntityEnum, ModelProviderEntityEnum],\n});\n\n/**\n * AgentTool join entity - Links agents to their assigned tools.\n */\nexport const AgentToolEntity = defineEntity({\n name: 'AgentTool',\n schema: 'agent_console',\n description: 'Links an agent to its assigned tools with configuration.',\n fields: {\n id: field.id(),\n agentId: field.foreignKey({ description: 'Agent ID' }),\n toolId: field.foreignKey({ description: 'Tool ID' }),\n config: field.json({\n isOptional: true,\n description: 'Tool-specific configuration for this agent',\n }),\n order: field.int({\n default: 0,\n description: 'Order of tool in agent tool list',\n }),\n isEnabled: field.boolean({\n default: true,\n description: 'Whether tool is enabled for this agent',\n }),\n createdAt: field.createdAt(),\n agent: field.belongsTo('Agent', ['agentId'], ['id']),\n tool: field.belongsTo('Tool', ['toolId'], ['id']),\n },\n indexes: [\n index.unique(['agentId', 'toolId']),\n index.on(['agentId', 'order']),\n ],\n});\n"],"mappings":";;;;;;AAUA,MAAa,wBAAwB,iBAAiB;CACpD,MAAM;CACN,QAAQ;EAAC;EAAS;EAAU;EAAU;EAAW;CACjD,aAAa;CACd,CAAC;;;;AAKF,MAAa,0BAA0B,iBAAiB;CACtD,MAAM;CACN,QAAQ;EAAC;EAAU;EAAa;EAAU;EAAW;EAAS;CAC9D,aAAa;CACd,CAAC;;;;AAKF,MAAa,cAAc,aAAa;CACtC,MAAM;CACN,QAAQ;CACR,aACE;CACF,QAAQ;EACN,IAAI,MAAM,IAAI;EACd,gBAAgB,MAAM,OAAO,EAC3B,aAAa,qCACd,CAAC;EACF,MAAM,MAAM,OAAO,EAAE,aAAa,4BAA4B,CAAC;EAC/D,MAAM,MAAM,OAAO,EACjB,aAAa,qDACd,CAAC;EACF,aAAa,MAAM,OAAO;GACxB,YAAY;GACZ,aAAa;GACd,CAAC;EACF,QAAQ,MAAM,KAAK,eAAe,EAAE,SAAS,SAAS,CAAC;EACvD,eAAe,MAAM,KAAK,iBAAiB,EAAE,SAAS,UAAU,CAAC;EACjE,WAAW,MAAM,OAAO,EACtB,aAAa,oDACd,CAAC;EACF,aAAa,MAAM,KAAK;GACtB,YAAY;GACZ,aAAa;GACd,CAAC;EACF,cAAc,MAAM,OAAO,EAAE,aAAa,+BAA+B,CAAC;EAC1E,oBAAoB,MAAM,OAAO;GAC/B,YAAY;GACZ,aAAa;GACd,CAAC;EACF,SAAS,MAAM,OAAO;GACpB,SAAS;GACT,YAAY;GACZ,aAAa;GACd,CAAC;EACF,YAAY,MAAM,OAAO;GACvB,SAAS;GACT,aAAa;GACd,CAAC;EACF,eAAe,MAAM,IAAI;GACvB,SAAS;GACT,aAAa;GACd,CAAC;EACF,iBAAiB,MAAM,IAAI;GACzB,YAAY;GACZ,aAAa;GACd,CAAC;EACF,WAAW,MAAM,IAAI;GACnB,SAAS;GACT,aAAa;GACd,CAAC;EACF,SAAS,MAAM,OAAO;GAAE,SAAS;GAAS,aAAa;GAAiB,CAAC;EACzE,MAAM,MAAM,OAAO;GACjB,SAAS;GACT,YAAY;GACZ,aAAa;GACd,CAAC;EACF,WAAW,MAAM,WAAW;EAC5B,WAAW,MAAM,WAAW;EAC5B,aAAa,MAAM,OAAO;GACxB,YAAY;GACZ,aAAa;GACd,CAAC;EACF,OAAO,MAAM,QAAQ,QAAQ,EAC3B,aAAa,gCACd,CAAC;EACH;CACD,SAAS;EACP,MAAM,OAAO,CAAC,kBAAkB,OAAO,CAAC;EACxC,MAAM,GAAG,CAAC,kBAAkB,SAAS,CAAC;EACtC,MAAM,GAAG,CAAC,iBAAiB,YAAY,CAAC;EACzC;CACD,OAAO,CAAC,uBAAuB,wBAAwB;CACxD,CAAC;;;;AAKF,MAAa,kBAAkB,aAAa;CAC1C,MAAM;CACN,QAAQ;CACR,aAAa;CACb,QAAQ;EACN,IAAI,MAAM,IAAI;EACd,SAAS,MAAM,WAAW,EAAE,aAAa,YAAY,CAAC;EACtD,QAAQ,MAAM,WAAW,EAAE,aAAa,WAAW,CAAC;EACpD,QAAQ,MAAM,KAAK;GACjB,YAAY;GACZ,aAAa;GACd,CAAC;EACF,OAAO,MAAM,IAAI;GACf,SAAS;GACT,aAAa;GACd,CAAC;EACF,WAAW,MAAM,QAAQ;GACvB,SAAS;GACT,aAAa;GACd,CAAC;EACF,WAAW,MAAM,WAAW;EAC5B,OAAO,MAAM,UAAU,SAAS,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC;EACpD,MAAM,MAAM,UAAU,QAAQ,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC;EAClD;CACD,SAAS,CACP,MAAM,OAAO,CAAC,WAAW,SAAS,CAAC,EACnC,MAAM,GAAG,CAAC,WAAW,QAAQ,CAAC,CAC/B;CACF,CAAC"}
|