jazz-ai 0.2.2 → 0.4.3

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 (151) hide show
  1. package/README.md +8 -6
  2. package/dist/cli/commands/chat-agent.d.ts +3 -1
  3. package/dist/cli/commands/chat-agent.d.ts.map +1 -1
  4. package/dist/cli/commands/chat-agent.js +180 -102
  5. package/dist/cli/commands/chat-agent.js.map +1 -1
  6. package/dist/cli/commands/edit-agent.d.ts +2 -2
  7. package/dist/cli/commands/edit-agent.d.ts.map +1 -1
  8. package/dist/cli/commands/edit-agent.js +20 -10
  9. package/dist/cli/commands/edit-agent.js.map +1 -1
  10. package/dist/cli/commands/task-agent.d.ts +1 -1
  11. package/dist/cli/commands/task-agent.d.ts.map +1 -1
  12. package/dist/cli/commands/task-agent.js +6 -6
  13. package/dist/cli/commands/task-agent.js.map +1 -1
  14. package/dist/constants/agent.d.ts +2 -0
  15. package/dist/constants/agent.d.ts.map +1 -0
  16. package/dist/constants/agent.js +5 -0
  17. package/dist/constants/agent.js.map +1 -0
  18. package/dist/core/agent/agent-prompt.d.ts +0 -1
  19. package/dist/core/agent/agent-prompt.d.ts.map +1 -1
  20. package/dist/core/agent/agent-prompt.js +7 -15
  21. package/dist/core/agent/agent-prompt.js.map +1 -1
  22. package/dist/core/agent/agent-runner.d.ts +15 -0
  23. package/dist/core/agent/agent-runner.d.ts.map +1 -1
  24. package/dist/core/agent/agent-runner.js +570 -270
  25. package/dist/core/agent/agent-runner.js.map +1 -1
  26. package/dist/core/agent/agent-service.d.ts +20 -5
  27. package/dist/core/agent/agent-service.d.ts.map +1 -1
  28. package/dist/core/agent/agent-service.js +54 -6
  29. package/dist/core/agent/agent-service.js.map +1 -1
  30. package/dist/core/agent/gmail-agent.js +7 -7
  31. package/dist/core/agent/gmail-agent.js.map +1 -1
  32. package/dist/core/agent/prompts/coder/v1.d.ts +2 -0
  33. package/dist/core/agent/prompts/coder/v1.d.ts.map +1 -0
  34. package/dist/core/agent/prompts/coder/v1.js +370 -0
  35. package/dist/core/agent/prompts/coder/v1.js.map +1 -0
  36. package/dist/core/agent/prompts/default/v2.d.ts +1 -1
  37. package/dist/core/agent/prompts/default/v2.d.ts.map +1 -1
  38. package/dist/core/agent/prompts/default/v2.js +1 -2
  39. package/dist/core/agent/prompts/default/v2.js.map +1 -1
  40. package/dist/core/agent/prompts/gmail/v1.d.ts +1 -1
  41. package/dist/core/agent/prompts/gmail/v1.d.ts.map +1 -1
  42. package/dist/core/agent/prompts/gmail/v1.js +5 -5
  43. package/dist/core/agent/prompts/gmail/v2.d.ts +1 -1
  44. package/dist/core/agent/prompts/gmail/v2.d.ts.map +1 -1
  45. package/dist/core/agent/prompts/gmail/v2.js +7 -7
  46. package/dist/core/agent/tools/base-tool.d.ts +3 -4
  47. package/dist/core/agent/tools/base-tool.d.ts.map +1 -1
  48. package/dist/core/agent/tools/base-tool.js +11 -51
  49. package/dist/core/agent/tools/base-tool.js.map +1 -1
  50. package/dist/core/agent/tools/context-utils.d.ts +6 -0
  51. package/dist/core/agent/tools/context-utils.d.ts.map +1 -0
  52. package/dist/core/agent/tools/context-utils.js +9 -0
  53. package/dist/core/agent/tools/context-utils.js.map +1 -0
  54. package/dist/core/agent/tools/env-utils.d.ts +7 -0
  55. package/dist/core/agent/tools/env-utils.d.ts.map +1 -0
  56. package/dist/core/agent/tools/env-utils.js +39 -0
  57. package/dist/core/agent/tools/env-utils.js.map +1 -0
  58. package/dist/core/agent/tools/fs-tools.d.ts.map +1 -1
  59. package/dist/core/agent/tools/fs-tools.js +48 -53
  60. package/dist/core/agent/tools/fs-tools.js.map +1 -1
  61. package/dist/core/agent/tools/git-tools.d.ts +5 -0
  62. package/dist/core/agent/tools/git-tools.d.ts.map +1 -1
  63. package/dist/core/agent/tools/git-tools.js +716 -154
  64. package/dist/core/agent/tools/git-tools.js.map +1 -1
  65. package/dist/core/agent/tools/gmail-tools.js +35 -35
  66. package/dist/core/agent/tools/gmail-tools.js.map +1 -1
  67. package/dist/core/agent/tools/http-tools.js +2 -2
  68. package/dist/core/agent/tools/http-tools.js.map +1 -1
  69. package/dist/core/agent/tools/register-tools.d.ts +18 -1
  70. package/dist/core/agent/tools/register-tools.d.ts.map +1 -1
  71. package/dist/core/agent/tools/register-tools.js +52 -6
  72. package/dist/core/agent/tools/register-tools.js.map +1 -1
  73. package/dist/core/agent/tools/shell-tools.d.ts.map +1 -1
  74. package/dist/core/agent/tools/shell-tools.js +10 -20
  75. package/dist/core/agent/tools/shell-tools.js.map +1 -1
  76. package/dist/core/agent/tools/tool-registry.d.ts +11 -7
  77. package/dist/core/agent/tools/tool-registry.d.ts.map +1 -1
  78. package/dist/core/agent/tools/tool-registry.js +45 -19
  79. package/dist/core/agent/tools/tool-registry.js.map +1 -1
  80. package/dist/core/agent/tools/web-search-tools.js +1 -1
  81. package/dist/core/agent/tools/web-search-tools.js.map +1 -1
  82. package/dist/core/agent/tracking/agent-run-tracker.d.ts +2 -0
  83. package/dist/core/agent/tracking/agent-run-tracker.d.ts.map +1 -1
  84. package/dist/core/agent/tracking/agent-run-tracker.js +40 -2
  85. package/dist/core/agent/tracking/agent-run-tracker.js.map +1 -1
  86. package/dist/core/types/index.d.ts +82 -15
  87. package/dist/core/types/index.d.ts.map +1 -1
  88. package/dist/core/types/index.js.map +1 -1
  89. package/dist/core/utils/markdown-renderer.d.ts +25 -0
  90. package/dist/core/utils/markdown-renderer.d.ts.map +1 -1
  91. package/dist/core/utils/markdown-renderer.js +100 -1
  92. package/dist/core/utils/markdown-renderer.js.map +1 -1
  93. package/dist/core/utils/output-renderer.d.ts +81 -0
  94. package/dist/core/utils/output-renderer.d.ts.map +1 -0
  95. package/dist/core/utils/output-renderer.js +291 -0
  96. package/dist/core/utils/output-renderer.js.map +1 -0
  97. package/dist/core/utils/output-theme.d.ts +64 -0
  98. package/dist/core/utils/output-theme.d.ts.map +1 -0
  99. package/dist/core/utils/output-theme.js +154 -0
  100. package/dist/core/utils/output-theme.js.map +1 -0
  101. package/dist/core/utils/output-writer.d.ts +79 -0
  102. package/dist/core/utils/output-writer.d.ts.map +1 -0
  103. package/dist/core/utils/output-writer.js +133 -0
  104. package/dist/core/utils/output-writer.js.map +1 -0
  105. package/dist/core/utils/runtime-detection.d.ts +28 -0
  106. package/dist/core/utils/runtime-detection.d.ts.map +1 -0
  107. package/dist/core/utils/runtime-detection.js +62 -0
  108. package/dist/core/utils/runtime-detection.js.map +1 -0
  109. package/dist/core/utils/string.d.ts +8 -0
  110. package/dist/core/utils/string.d.ts.map +1 -0
  111. package/dist/core/utils/string.js +19 -0
  112. package/dist/core/utils/string.js.map +1 -0
  113. package/dist/core/utils/thinking-renderer.d.ts +56 -0
  114. package/dist/core/utils/thinking-renderer.d.ts.map +1 -0
  115. package/dist/core/utils/thinking-renderer.js +174 -0
  116. package/dist/core/utils/thinking-renderer.js.map +1 -0
  117. package/dist/core/utils/tool-formatter.d.ts +21 -0
  118. package/dist/core/utils/tool-formatter.d.ts.map +1 -0
  119. package/dist/core/utils/tool-formatter.js +343 -0
  120. package/dist/core/utils/tool-formatter.js.map +1 -0
  121. package/dist/main.js +11 -4
  122. package/dist/main.js.map +1 -1
  123. package/dist/services/config.d.ts.map +1 -1
  124. package/dist/services/config.js +20 -20
  125. package/dist/services/config.js.map +1 -1
  126. package/dist/services/llm/ai-sdk-service.d.ts.map +1 -1
  127. package/dist/services/llm/ai-sdk-service.js +128 -37
  128. package/dist/services/llm/ai-sdk-service.js.map +1 -1
  129. package/dist/services/llm/stream-detector.d.ts +44 -0
  130. package/dist/services/llm/stream-detector.d.ts.map +1 -0
  131. package/dist/services/llm/stream-detector.js +81 -0
  132. package/dist/services/llm/stream-detector.js.map +1 -0
  133. package/dist/services/llm/stream-processor.d.ts +93 -0
  134. package/dist/services/llm/stream-processor.d.ts.map +1 -0
  135. package/dist/services/llm/stream-processor.js +330 -0
  136. package/dist/services/llm/stream-processor.js.map +1 -0
  137. package/dist/services/llm/streaming-types.d.ts +131 -0
  138. package/dist/services/llm/streaming-types.d.ts.map +1 -0
  139. package/dist/services/llm/streaming-types.js +12 -0
  140. package/dist/services/llm/streaming-types.js.map +1 -0
  141. package/dist/services/llm/types.d.ts +8 -0
  142. package/dist/services/llm/types.d.ts.map +1 -1
  143. package/dist/services/llm/types.js.map +1 -1
  144. package/dist/services/logger.d.ts +4 -4
  145. package/dist/services/logger.d.ts.map +1 -1
  146. package/dist/services/logger.js +23 -45
  147. package/dist/services/logger.js.map +1 -1
  148. package/dist/services/shell.d.ts.map +1 -1
  149. package/dist/services/shell.js +52 -18
  150. package/dist/services/shell.js.map +1 -1
  151. package/package.json +1 -1
package/README.md CHANGED
@@ -3,11 +3,13 @@
3
3
  [![TypeScript](https://img.shields.io/badge/TypeScript-100%25-blue.svg)](https://www.typescriptlang.org/)
4
4
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
5
5
  [![Discord](https://img.shields.io/badge/chat-discord-5865F2.svg)](https://discord.gg/yBDbS2NZju)
6
- [![npm version](https://badge.fury.io/js/jazz-ai.svg)](https://www.npmjs.com/package/jazz-ai)
6
+ [![npm version](https://img.shields.io/npm/v/jazz-ai.svg)](https://www.npmjs.com/package/jazz-ai)
7
7
 
8
8
  > **Your AI agent that actually _does_ things**
9
9
 
10
- Jazz is a powerful CLI that lets you create autonomous AI agents with real-world capabilities. Instead of just chatting, your agents can read emails, manage git repositories, execute commands, search the web, and orchestrate complex workflows—all through natural conversation.
10
+ Jazz is a powerful CLI that lets you create autonomous AI agents with real-world capabilities.
11
+ Instead of just chatting, your agents can read emails, manage git repositories, execute commands,
12
+ search the web, and orchestrate complex workflows—all through natural conversation.
11
13
 
12
14
  ## What Makes Jazz Different?
13
15
 
@@ -168,7 +170,8 @@ Agent: [Searches web, analyzes results]
168
170
  - [detailed summary with sources]
169
171
  ```
170
172
 
171
- **Want more examples?** Check out our comprehensive [Examples & Use Cases](docs/examples.md) guide featuring:
173
+ **Want more examples?** Check out our comprehensive [Examples & Use Cases](docs/examples.md) guide
174
+ featuring:
172
175
 
173
176
  - 📧 Email management workflows
174
177
  - 🔧 Git history cleanup and branch management
@@ -223,13 +226,14 @@ Jazz agents can combine multiple tools to accomplish complex tasks:
223
226
 
224
227
  ## Documentation
225
228
 
229
+ - **[Docs](docs/README.md)** - Complete documentation overview
226
230
  - **[Getting Started](docs/getting-started.md)** - Installation, setup, and first agent
227
231
  - **[Examples & Use Cases](docs/examples.md)** - Real-world workflows and inspiring examples
228
232
  - **[Tools Reference](docs/tools-reference.md)** - Complete guide to all 44 tools
229
233
  - **[CLI Reference](docs/cli-reference.md)** - Command-line interface documentation
230
234
  - **[Integrations](docs/integrations.md)** - Set up Gmail, Linkup, and LLM providers
231
235
  - **[Security Guide](docs/security.md)** - Security model and best practices
232
- - **[Docs Index](docs/README.md)** - Complete documentation overview
236
+ - **[Explorations](docs/exploration/README.md)** - Advanced patterns and future features
233
237
 
234
238
  ## Contributing
235
239
 
@@ -250,8 +254,6 @@ We welcome contributions! Jazz is actively developed and there are many opportun
250
254
  3. Read [CONTRIBUTING.md](CONTRIBUTING.md) for development guidelines
251
255
  4. Submit a PR!
252
256
 
253
- **Active Development**: Jazz is in active development with frequent updates. The TODO list has many exciting features waiting to be built.
254
-
255
257
  ## License
256
258
 
257
259
  MIT License - see [LICENSE](LICENSE) file for details.
@@ -14,5 +14,7 @@ export declare function createAIAgentCommand(): Effect.Effect<void, StorageError
14
14
  /**
15
15
  * Chat with an AI agent
16
16
  */
17
- export declare function chatWithAIAgentCommand(agentIdentifier: string): Effect.Effect<void, StorageError | StorageNotFoundError | AgentNotFoundError, AgentService | ConfigService | LLMService | ToolRegistry | LoggerService | FileSystemContextService | FileSystem.FileSystem>;
17
+ export declare function chatWithAIAgentCommand(agentIdentifier: string, options?: {
18
+ stream?: boolean;
19
+ }): Effect.Effect<void, StorageError | StorageNotFoundError | AgentNotFoundError, AgentService | ConfigService | LLMService | ToolRegistry | LoggerService | FileSystemContextService | FileSystem.FileSystem>;
18
20
  //# sourceMappingURL=chat-agent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"chat-agent.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/chat-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAIhC,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,gCAAgC,CAAC;AACpF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAEzE,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,kBAAkB,EAClB,YAAY,EACZ,oBAAoB,EACpB,eAAe,EAChB,MAAM,yBAAyB,CAAC;AAIjC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EACL,qBAAqB,EAIrB,KAAK,UAAU,EAChB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAA+B,KAAK,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAoBlG;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAAC,MAAM,CACnD,IAAI,EACF,YAAY,GACZ,uBAAuB,GACvB,uBAAuB,GACvB,eAAe,GACf,qBAAqB,EACvB,YAAY,GAAG,UAAU,GAAG,YAAY,CACzC,CA4EA;AAyID;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,eAAe,EAAE,MAAM,GACtB,MAAM,CAAC,MAAM,CACd,IAAI,EACJ,YAAY,GAAG,oBAAoB,GAAG,kBAAkB,EACtD,YAAY,GACZ,aAAa,GACb,UAAU,GACV,YAAY,GACZ,aAAa,GACb,wBAAwB,GACxB,UAAU,CAAC,UAAU,CACxB,CA4BA"}
1
+ {"version":3,"file":"chat-agent.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/chat-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAIhC,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,gCAAgC,CAAC;AAUxC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAEzE,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,kBAAkB,EAClB,YAAY,EACZ,oBAAoB,EACpB,eAAe,EAChB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EACL,qBAAqB,EAIrB,KAAK,UAAU,EAChB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAA+B,KAAK,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AA6DlG;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAAC,MAAM,CACnD,IAAI,EACF,YAAY,GACZ,uBAAuB,GACvB,uBAAuB,GACvB,eAAe,GACf,qBAAqB,EACvB,YAAY,GAAG,UAAU,GAAG,YAAY,CACzC,CAiGA;AA8MD;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,eAAe,EAAE,MAAM,EACvB,OAAO,CAAC,EAAE;IACR,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,GACA,MAAM,CAAC,MAAM,CACd,IAAI,EACJ,YAAY,GAAG,oBAAoB,GAAG,kBAAkB,EACtD,YAAY,GACZ,aAAa,GACb,UAAU,GACV,YAAY,GACZ,aAAa,GACb,wBAAwB,GACxB,UAAU,CAAC,UAAU,CACxB,CA2CA"}
@@ -8,13 +8,43 @@ const inquirer_1 = tslib_1.__importDefault(require("inquirer"));
8
8
  const agent_prompt_1 = require("../../core/agent/agent-prompt");
9
9
  const agent_runner_1 = require("../../core/agent/agent-runner");
10
10
  const agent_service_1 = require("../../core/agent/agent-service");
11
+ const register_tools_1 = require("../../core/agent/tools/register-tools");
11
12
  const tool_registry_1 = require("../../core/agent/tools/tool-registry");
12
13
  const errors_1 = require("../../core/types/errors");
13
14
  const error_handler_1 = require("../../core/utils/error-handler");
14
- const markdown_renderer_1 = require("../../core/utils/markdown-renderer");
15
15
  const types_1 = require("../../services/llm/types");
16
16
  const logger_1 = require("../../services/logger");
17
17
  const shell_1 = require("../../services/shell");
18
+ /**
19
+ * Registry of predefined agents with their configurations
20
+ * Add new predefined agents here as needed
21
+ */
22
+ const PREDEFINED_AGENTS = {
23
+ coder: {
24
+ id: "coder",
25
+ displayName: "Coder",
26
+ emoji: "💻",
27
+ toolCategoryIds: [
28
+ register_tools_1.FILE_MANAGEMENT_CATEGORY.id,
29
+ register_tools_1.SHELL_COMMANDS_CATEGORY.id,
30
+ register_tools_1.GIT_CATEGORY.id,
31
+ register_tools_1.HTTP_CATEGORY.id,
32
+ register_tools_1.SEARCH_CATEGORY.id,
33
+ ],
34
+ },
35
+ gmail: {
36
+ id: "gmail",
37
+ displayName: "Gmail",
38
+ emoji: "📧",
39
+ toolCategoryIds: [
40
+ register_tools_1.GMAIL_CATEGORY.id,
41
+ register_tools_1.HTTP_CATEGORY.id,
42
+ register_tools_1.SEARCH_CATEGORY.id,
43
+ register_tools_1.FILE_MANAGEMENT_CATEGORY.id,
44
+ register_tools_1.SHELL_COMMANDS_CATEGORY.id,
45
+ ],
46
+ },
47
+ };
18
48
  /**
19
49
  * Interactive AI agent creation command
20
50
  */
@@ -33,17 +63,25 @@ function createAIAgentCommand() {
33
63
  // Get available tools by category
34
64
  const toolRegistry = yield* tool_registry_1.ToolRegistryTag;
35
65
  const toolsByCategory = yield* toolRegistry.listToolsByCategory();
66
+ // Create mappings between category display names and IDs
67
+ const categoryMappings = (0, register_tools_1.createCategoryMappings)();
68
+ const categoryDisplayNameToId = categoryMappings.displayNameToId;
69
+ const categoryIdToDisplayName = categoryMappings.idToDisplayName;
36
70
  // Get agent basic information
37
- const agentAnswers = yield* effect_1.Effect.promise(() => promptForAgentInfo(providers, agentTypes, toolsByCategory, llmService));
71
+ const agentAnswers = yield* effect_1.Effect.promise(() => promptForAgentInfo(providers, agentTypes, toolsByCategory, llmService, categoryIdToDisplayName));
38
72
  // Validate the chosen model against the chosen provider
39
73
  const chosenProvider = yield* llmService.getProvider(agentAnswers.llmProvider);
40
74
  const modelIds = chosenProvider.supportedModels.map((model) => model.id);
41
75
  const selectedModel = modelIds.includes(agentAnswers.llmModel)
42
76
  ? agentAnswers.llmModel
43
77
  : chosenProvider.defaultModel;
44
- // Convert selected categories to a flat list of tool names
45
- const selectedToolNames = agentAnswers.tools.flatMap((category) => toolsByCategory[category] || []);
46
- const uniqueToolNames = Array.from(new Set(selectedToolNames));
78
+ // Convert selected categories (display names) to category IDs, then get tools
79
+ const selectedCategoryIds = agentAnswers.tools
80
+ .map((displayName) => categoryDisplayNameToId.get(displayName))
81
+ .filter((id) => id !== undefined);
82
+ // Get tools for each selected category ID
83
+ const selectedToolNames = yield* effect_1.Effect.all(selectedCategoryIds.map((categoryId) => toolRegistry.getToolsInCategory(categoryId)), { concurrency: "unbounded" });
84
+ const uniqueToolNames = Array.from(new Set(selectedToolNames.flat()));
47
85
  // Build agent configuration
48
86
  const config = {
49
87
  tasks: [],
@@ -60,7 +98,9 @@ function createAIAgentCommand() {
60
98
  console.log("\n✅ AI Agent created successfully!");
61
99
  console.log(` ID: ${agent.id}`);
62
100
  console.log(` Name: ${agent.name}`);
63
- console.log(` Description: ${agent.description}`);
101
+ if (agent.description) {
102
+ console.log(` Description: ${agent.description}`);
103
+ }
64
104
  console.log(` Type: ${config.agentType}`);
65
105
  console.log(` LLM Provider: ${config.llmProvider}`);
66
106
  console.log(` LLM Model: ${config.llmModel}`);
@@ -76,9 +116,21 @@ function createAIAgentCommand() {
76
116
  /**
77
117
  * Prompt for basic agent information
78
118
  */
79
- async function promptForAgentInfo(providers, agentTypes, toolsByCategory, llmService) {
80
- // First, get basic information and provider
81
- const basicQuestions = [
119
+ async function promptForAgentInfo(providers, agentTypes, toolsByCategory, //{ displayName: string[] }
120
+ llmService, categoryIdToDisplayName) {
121
+ const agentTypeQuestion = [
122
+ {
123
+ type: "list",
124
+ name: "agentType",
125
+ message: "What type of agent would you like to create?",
126
+ choices: agentTypes,
127
+ default: "default",
128
+ },
129
+ ];
130
+ // @ts-expect-error - inquirer types are not matching correctly
131
+ const agentTypeAnswer = (await inquirer_1.default.prompt(agentTypeQuestion));
132
+ // Then ask for name
133
+ const nameQuestion = [
82
134
  {
83
135
  type: "input",
84
136
  name: "name",
@@ -96,27 +148,33 @@ async function promptForAgentInfo(providers, agentTypes, toolsByCategory, llmSer
96
148
  return true;
97
149
  },
98
150
  },
99
- {
100
- type: "input",
101
- name: "description",
102
- message: "Describe what this AI agent will do:",
103
- validate: (input) => {
104
- if (!input || input.trim().length === 0) {
105
- return "Agent description cannot be empty";
106
- }
107
- if (input.length > 500) {
108
- return "Agent description cannot exceed 500 characters";
109
- }
110
- return true;
151
+ ];
152
+ // @ts-expect-error - inquirer types are not matching correctly
153
+ const nameAnswer = (await inquirer_1.default.prompt(nameQuestion));
154
+ // ask for description only if agent type is "default"
155
+ let descriptionAnswer = {};
156
+ if (agentTypeAnswer.agentType === "default") {
157
+ const descriptionQuestion = [
158
+ {
159
+ type: "input",
160
+ name: "description",
161
+ message: "Describe what this AI agent will do:",
162
+ validate: (input) => {
163
+ if (!input || input.trim().length === 0) {
164
+ return "Agent description cannot be empty";
165
+ }
166
+ if (input.length > 500) {
167
+ return "Agent description cannot exceed 500 characters";
168
+ }
169
+ return true;
170
+ },
111
171
  },
112
- },
113
- {
114
- type: "list",
115
- name: "agentType",
116
- message: "What type of agent would you like to create?",
117
- choices: agentTypes,
118
- default: "default",
119
- },
172
+ ];
173
+ // @ts-expect-error - inquirer types are not matching correctly
174
+ descriptionAnswer = (await inquirer_1.default.prompt(descriptionQuestion));
175
+ }
176
+ // Ask for provider
177
+ const providerQuestion = [
120
178
  {
121
179
  type: "list",
122
180
  name: "llmProvider",
@@ -126,7 +184,14 @@ async function promptForAgentInfo(providers, agentTypes, toolsByCategory, llmSer
126
184
  },
127
185
  ];
128
186
  // @ts-expect-error - inquirer types are not matching correctly
129
- const basicAnswers = (await inquirer_1.default.prompt(basicQuestions));
187
+ const providerAnswer = (await inquirer_1.default.prompt(providerQuestion));
188
+ // Combine answers so far
189
+ const basicAnswers = {
190
+ ...agentTypeAnswer,
191
+ ...nameAnswer,
192
+ ...descriptionAnswer,
193
+ ...providerAnswer,
194
+ };
130
195
  // Now get the models for the chosen provider
131
196
  const chosenProviderInfo = await effect_1.Effect.runPromise(llmService.getProvider(basicAnswers.llmProvider)).catch((error) => {
132
197
  const message = error instanceof Error ? error.message : String(error);
@@ -136,6 +201,19 @@ async function promptForAgentInfo(providers, agentTypes, toolsByCategory, llmSer
136
201
  // Check if the selected model is a reasoning model
137
202
  const selectedModelInfo = chosenProviderInfo.supportedModels.find((model) => model.id === modelDefault);
138
203
  const isReasoningModel = selectedModelInfo?.isReasoningModel ?? false;
204
+ // Check if this is a predefined agent with auto-assigned tools
205
+ const currentPredefinedAgent = PREDEFINED_AGENTS[basicAnswers.agentType];
206
+ if (currentPredefinedAgent) {
207
+ // Filter to only categories that exist in toolsByCategory (by checking if display name exists)
208
+ const availableCategoryIds = currentPredefinedAgent.toolCategoryIds.filter((categoryId) => {
209
+ const displayName = categoryIdToDisplayName.get(categoryId);
210
+ return displayName && displayName in toolsByCategory;
211
+ });
212
+ const displayNames = availableCategoryIds
213
+ .map((id) => categoryIdToDisplayName.get(id))
214
+ .filter((name) => name !== undefined);
215
+ console.log(`\n${currentPredefinedAgent.emoji} ${currentPredefinedAgent.displayName} agent will automatically include: ${displayNames.join(", ")}\n`);
216
+ }
139
217
  const finalQuestions = [
140
218
  {
141
219
  type: "list",
@@ -156,45 +234,63 @@ async function promptForAgentInfo(providers, agentTypes, toolsByCategory, llmSer
156
234
  name: "reasoningEffort",
157
235
  message: "What reasoning effort level would you like?",
158
236
  choices: [
159
- { name: "Disable - No reasoning effort (fastest)", value: "disable" },
160
237
  { name: "Low - Faster responses, basic reasoning", value: "low" },
161
- { name: "Medium - Balanced speed and reasoning depth", value: "medium" },
238
+ { name: "Medium - Balanced speed and reasoning depth (recommended)", value: "medium" },
162
239
  { name: "High - Deep reasoning, slower responses", value: "high" },
240
+ { name: "Disable - No reasoning effort (fastest)", value: "disable" },
163
241
  ],
164
- default: "disable",
165
242
  },
166
243
  ]
167
244
  : []),
168
- {
169
- type: "checkbox",
170
- name: "tools",
171
- message: "Which tools should this agent have access to?",
172
- choices: Object.entries(toolsByCategory).map(([category, tools]) => ({
173
- name: `${category} (${tools.length} ${tools.length === 1 ? "tool" : "tools"})`,
174
- value: category,
175
- short: category,
176
- })),
177
- default: [],
178
- },
245
+ // Skip tool selection for predefined agents (already auto-selected)
246
+ ...(!PREDEFINED_AGENTS[basicAnswers.agentType]
247
+ ? [
248
+ {
249
+ type: "checkbox",
250
+ name: "tools",
251
+ message: "Which tools should this agent have access to?",
252
+ choices: Object.entries(toolsByCategory).map(([category, tools]) => ({
253
+ name: `${category} (${tools.length} ${tools.length === 1 ? "tool" : "tools"})`,
254
+ value: category,
255
+ short: category,
256
+ })),
257
+ default: [],
258
+ },
259
+ ]
260
+ : []),
179
261
  ];
180
262
  // @ts-expect-error - inquirer types are not matching correctly
181
263
  const finalAnswers = (await inquirer_1.default.prompt(finalQuestions));
182
264
  // Combine all answers
265
+ // For predefined agents, convert category IDs back to display names for the answer
266
+ const predefinedAgent = PREDEFINED_AGENTS[basicAnswers.agentType];
267
+ const finalTools = predefinedAgent
268
+ ? predefinedAgent.toolCategoryIds
269
+ .map((id) => categoryIdToDisplayName.get(id))
270
+ .filter((name) => name !== undefined && name in toolsByCategory)
271
+ : finalAnswers.tools || [];
183
272
  return {
184
273
  ...basicAnswers,
185
274
  ...finalAnswers,
275
+ tools: finalTools,
186
276
  };
187
277
  }
188
278
  /**
189
279
  * Chat with an AI agent
190
280
  */
191
- function chatWithAIAgentCommand(agentIdentifier) {
281
+ function chatWithAIAgentCommand(agentIdentifier, options) {
192
282
  return effect_1.Effect.gen(function* () {
193
- // Get the agent service
194
- const agentService = yield* agent_service_1.AgentServiceTag;
195
- // Get the agent
196
283
  const normalizedIdentifier = agentIdentifier.trim();
197
- const agent = yield* resolveAgentByIdentifier(agentService, normalizedIdentifier);
284
+ if (normalizedIdentifier.length === 0) {
285
+ return yield* effect_1.Effect.fail(new errors_1.AgentNotFoundError({
286
+ agentId: normalizedIdentifier,
287
+ suggestion: error_handler_1.CommonSuggestions.checkAgentExists("<empty>"),
288
+ }));
289
+ }
290
+ const agent = yield* (0, agent_service_1.getAgentByIdentifier)(normalizedIdentifier).pipe(effect_1.Effect.catchTag("StorageNotFoundError", () => effect_1.Effect.fail(new errors_1.AgentNotFoundError({
291
+ agentId: normalizedIdentifier,
292
+ suggestion: error_handler_1.CommonSuggestions.checkAgentExists(normalizedIdentifier),
293
+ }))));
198
294
  console.log(`🤖 Starting chat with AI agent: ${agent.name} (${agent.id})`);
199
295
  console.log(` Description: ${agent.description}`);
200
296
  console.log();
@@ -202,7 +298,7 @@ function chatWithAIAgentCommand(agentIdentifier) {
202
298
  console.log("Type '/help' to see available special commands.");
203
299
  console.log();
204
300
  // Start the chat loop with error logging
205
- yield* startChatLoop(agent).pipe(effect_1.Effect.catchAll((error) => effect_1.Effect.gen(function* () {
301
+ yield* startChatLoop(agent, options).pipe(effect_1.Effect.catchAll((error) => effect_1.Effect.gen(function* () {
206
302
  const logger = yield* logger_1.LoggerServiceTag;
207
303
  yield* logger.error("Chat loop error", { error });
208
304
  console.error("❌ Chat loop error:", error);
@@ -210,30 +306,6 @@ function chatWithAIAgentCommand(agentIdentifier) {
210
306
  })));
211
307
  });
212
308
  }
213
- function resolveAgentByIdentifier(agentService, identifier) {
214
- if (identifier.length === 0) {
215
- return effect_1.Effect.fail(new errors_1.AgentNotFoundError({
216
- agentId: identifier,
217
- suggestion: error_handler_1.CommonSuggestions.checkAgentExists(identifier),
218
- }));
219
- }
220
- return agentService.getAgent(identifier).pipe(effect_1.Effect.catchAll((error) => {
221
- if (error._tag !== "StorageNotFoundError") {
222
- return effect_1.Effect.fail(error);
223
- }
224
- return effect_1.Effect.gen(function* () {
225
- const agents = yield* agentService.listAgents();
226
- const matchingAgent = agents.find((candidate) => candidate.name === identifier);
227
- if (matchingAgent) {
228
- return matchingAgent;
229
- }
230
- return yield* effect_1.Effect.fail(new errors_1.AgentNotFoundError({
231
- agentId: identifier,
232
- suggestion: error_handler_1.CommonSuggestions.checkAgentExists(identifier),
233
- }));
234
- });
235
- }));
236
- }
237
309
  function initializeSession(agent, conversationId) {
238
310
  return effect_1.Effect.gen(function* () {
239
311
  const agentKey = { agentId: agent.id, conversationId };
@@ -303,6 +375,7 @@ function handleSpecialCommand(command, agent, conversationId, conversationHistor
303
375
  console.log(` Messages in history: ${conversationHistory.length}`);
304
376
  console.log(` Agent type: ${agent.config.agentType}`);
305
377
  console.log(` LLM: ${agent.config.llmProvider}/${agent.config.llmModel}`);
378
+ console.log(` Reasoning effort: ${agent.config.reasoningEffort}`);
306
379
  const totalTools = agent.config.tools?.length ?? 0;
307
380
  console.log(` Tools: ${totalTools} available`);
308
381
  console.log();
@@ -356,7 +429,7 @@ function handleSpecialCommand(command, agent, conversationId, conversationHistor
356
429
  /**
357
430
  * Chat loop for interacting with the AI agent
358
431
  */
359
- function startChatLoop(agent) {
432
+ function startChatLoop(agent, loopOptions) {
360
433
  return effect_1.Effect.gen(function* () {
361
434
  let chatActive = true;
362
435
  let conversationId;
@@ -395,7 +468,8 @@ function startChatLoop(agent) {
395
468
  }
396
469
  continue;
397
470
  }
398
- try {
471
+ // Use Effect.catchAll instead of try-catch for proper Effect error handling
472
+ yield* effect_1.Effect.gen(function* () {
399
473
  if (!sessionInitialized) {
400
474
  yield* initializeSession(agent, conversationId || "").pipe(effect_1.Effect.catchAll((error) => effect_1.Effect.gen(function* () {
401
475
  const logger = yield* logger_1.LoggerServiceTag;
@@ -409,39 +483,43 @@ function startChatLoop(agent) {
409
483
  userInput: userMessage,
410
484
  conversationId: conversationId || "",
411
485
  conversationHistory,
486
+ ...(loopOptions?.stream !== undefined ? { stream: loopOptions.stream } : {}),
412
487
  };
413
- // Run the agent
414
- const response = yield* agent_runner_1.AgentRunner.run(options);
488
+ // Run the agent with proper error handling
489
+ const response = yield* agent_runner_1.AgentRunner.run(options).pipe(effect_1.Effect.catchAll((error) => effect_1.Effect.gen(function* () {
490
+ const logger = yield* logger_1.LoggerServiceTag;
491
+ yield* logger.error("Agent execution error", { error });
492
+ console.log();
493
+ // Handle different error types with appropriate user feedback
494
+ if (error instanceof types_1.LLMRateLimitError) {
495
+ console.log(`⏳ Rate limit exceeded. The request was too large or you've hit your API limits.`);
496
+ console.log(` Please try again in a moment or consider using a smaller context.`);
497
+ console.log(` Error details: ${error.message}`);
498
+ }
499
+ else if (error instanceof types_1.LLMRequestError) {
500
+ console.log(`❌ LLM request failed: ${error.message}`);
501
+ console.log(` This might be a temporary issue. Please try again.`);
502
+ }
503
+ else {
504
+ console.log(`❌ Error: ${error instanceof Error ? error.message : String(error)}`);
505
+ }
506
+ console.log();
507
+ // Return a minimal response to allow the loop to continue
508
+ return {
509
+ conversationId: conversationId || "",
510
+ messages: conversationHistory,
511
+ content: "",
512
+ };
513
+ })));
415
514
  // Store the conversation ID for continuity
416
515
  conversationId = response.conversationId;
417
516
  // Persist conversation history for next turn
418
517
  if (response.messages) {
419
518
  conversationHistory = response.messages;
420
519
  }
421
- // Display the response
422
- console.log();
423
- console.log(markdown_renderer_1.MarkdownRenderer.formatAgentResponse(agent.name, response.content));
424
- console.log();
425
- }
426
- catch (error) {
427
- console.log();
428
- // Handle different error types with appropriate user feedback
429
- if (error instanceof types_1.LLMRateLimitError) {
430
- console.log(`⏳ Rate limit exceeded. The request was too large or you've hit your API limits.`);
431
- console.log(` Please try again in a moment or consider using a smaller context.`);
432
- console.log(` Error details: ${error.message}`);
433
- }
434
- else if (error instanceof types_1.LLMRequestError) {
435
- console.log(`❌ LLM request failed: ${error.message}`);
436
- console.log(` This might be a temporary issue. Please try again.`);
437
- }
438
- else {
439
- console.log(`❌ Error: ${error instanceof Error ? error.message : String(error)}`);
440
- }
441
- console.log();
442
- const logger = yield* logger_1.LoggerServiceTag;
443
- yield* logger.error("Agent chat processing error", { error });
444
- }
520
+ // Display is handled entirely by AgentRunner (both streaming and non-streaming)
521
+ // No need to display here - AgentRunner takes care of it
522
+ });
445
523
  }
446
524
  });
447
525
  }
@@ -1 +1 @@
1
- {"version":3,"file":"chat-agent.js","sourceRoot":"","sources":["../../../src/cli/commands/chat-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-agent.js","sourceRoot":"","sources":["../../../src/cli/commands/chat-agent.ts"],"names":[],"mappings":";;AAyGA,oDAyGC;AAiND,wDA0DC;;AA5dD,mCAAgC;AAChC,gEAAgC;AAChC,gEAAmE;AACnE,gEAAqF;AACrF,kEAIwC;AACxC,0EAQ+C;AAE/C,wEAAuE;AACvE,oDAOiC;AAEjC,kEAAmE;AAGnE,oDAMkC;AAClC,kDAA6E;AAC7E,gDAAkG;AAoBlG;;;GAGG;AACH,MAAM,iBAAiB,GAAoC;IACzD,KAAK,EAAE;QACL,EAAE,EAAE,OAAO;QACX,WAAW,EAAE,OAAO;QACpB,KAAK,EAAE,IAAI;QACX,eAAe,EAAE;YACf,yCAAwB,CAAC,EAAE;YAC3B,wCAAuB,CAAC,EAAE;YAC1B,6BAAY,CAAC,EAAE;YACf,8BAAa,CAAC,EAAE;YAChB,gCAAe,CAAC,EAAE;SACnB;KACF;IACD,KAAK,EAAE;QACL,EAAE,EAAE,OAAO;QACX,WAAW,EAAE,OAAO;QACpB,KAAK,EAAE,IAAI;QACX,eAAe,EAAE;YACf,+BAAc,CAAC,EAAE;YACjB,8BAAa,CAAC,EAAE;YAChB,gCAAe,CAAC,EAAE;YAClB,yCAAwB,CAAC,EAAE;YAC3B,wCAAuB,CAAC,EAAE;SAC3B;KACF;CACO,CAAC;AAYX;;GAEG;AACH,SAAgB,oBAAoB;IASlC,OAAO,eAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;QAChE,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;QAE3D,yCAAyC;QACzC,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,qBAAa,CAAC;QACxC,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC;QAEpD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO,KAAK,CAAC,CAAC,eAAM,CAAC,IAAI,CACvB,IAAI,6BAAqB,CACvB,cAAc,EACd,sFAAsF,CACvF,CACF,CAAC;QACJ,CAAC;QAED,4BAA4B;QAC5B,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,iCAAkB,CAAC,aAAa,EAAE,CAAC;QAE7D,kCAAkC;QAClC,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,+BAAe,CAAC;QAC5C,MAAM,eAAe,GAAG,KAAK,CAAC,CAAC,YAAY,CAAC,mBAAmB,EAAE,CAAC;QAElE,yDAAyD;QACzD,MAAM,gBAAgB,GAAG,IAAA,uCAAsB,GAAE,CAAC;QAClD,MAAM,uBAAuB,GAAwB,gBAAgB,CAAC,eAAe,CAAC;QACtF,MAAM,uBAAuB,GAAwB,gBAAgB,CAAC,eAAe,CAAC;QAEtF,8BAA8B;QAC9B,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,eAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAC9C,kBAAkB,CAChB,SAAS,EACT,UAAU,EACV,eAAe,EACf,UAAU,EACV,uBAAuB,CACxB,CACF,CAAC;QAEF,wDAAwD;QACxD,MAAM,cAAc,GAAG,KAAK,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QAC/E,MAAM,QAAQ,GAAa,cAAc,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACnF,MAAM,aAAa,GAAG,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC;YAC5D,CAAC,CAAC,YAAY,CAAC,QAAQ;YACvB,CAAC,CAAC,cAAc,CAAC,YAAY,CAAC;QAEhC,8EAA8E;QAC9E,MAAM,mBAAmB,GAAG,YAAY,CAAC,KAAK;aAC3C,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,uBAAuB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;aAC9D,MAAM,CAAC,CAAC,EAAE,EAAgB,EAAE,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;QAElD,0CAA0C;QAC1C,MAAM,iBAAiB,GAAG,KAAK,CAAC,CAAC,eAAM,CAAC,GAAG,CACzC,mBAAmB,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,YAAY,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,EACpF,EAAE,WAAW,EAAE,WAAW,EAAE,CAC7B,CAAC;QACF,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAEtE,4BAA4B;QAC5B,MAAM,MAAM,GAAgB;YAC1B,KAAK,EAAE,EAAE;YACT,SAAS,EAAE,YAAY,CAAC,SAAS;YACjC,WAAW,EAAE,YAAY,CAAC,WAAW;YACrC,QAAQ,EAAE,aAAa;YACvB,GAAG,CAAC,YAAY,CAAC,eAAe,IAAI,EAAE,eAAe,EAAE,YAAY,CAAC,eAAe,EAAE,CAAC;YACtF,GAAG,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC;YAC7D,WAAW,EAAE,EAAE;SAChB,CAAC;QAEF,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,+BAAe,CAAC;QAC5C,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,YAAY,CAAC,WAAW,CAC3C,YAAY,CAAC,IAAI,EACjB,YAAY,CAAC,WAAW,EACxB,MAAM,CACP,CAAC;QAEF,0BAA0B;QAC1B,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;QAClD,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QACtC,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,mBAAmB,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,YAAY,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,oBAAoB,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,iBAAiB,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,uBAAuB,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC;QAC9E,OAAO,CAAC,GAAG,CAAC,mBAAmB,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,cAAc,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,eAAe,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QAE5D,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,iCAAiC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,iCAAiC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,kBAAkB,CAC/B,SAA4B,EAC5B,UAA6B,EAC7B,eAAkD,EAAE,2BAA2B;AAC/E,UAAsB,EACtB,uBAA4C;IAE5C,MAAM,iBAAiB,GAAG;QACxB;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,8CAA8C;YACvD,OAAO,EAAE,UAAU;YACnB,OAAO,EAAE,SAAS;SACnB;KACF,CAAC;IAEF,+DAA+D;IAC/D,MAAM,eAAe,GAAG,CAAC,MAAM,kBAAQ,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAGhE,CAAC;IAEF,oBAAoB;IACpB,MAAM,YAAY,GAAG;QACnB;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,4CAA4C;YACrD,QAAQ,EAAE,CAAC,KAAa,EAAoB,EAAE;gBAC5C,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACxC,OAAO,4BAA4B,CAAC;gBACtC,CAAC;gBACD,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;oBACvB,OAAO,yCAAyC,CAAC;gBACnD,CAAC;gBACD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;oBACpC,OAAO,wEAAwE,CAAC;gBAClF,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;SACF;KACF,CAAC;IAEF,+DAA+D;IAC/D,MAAM,UAAU,GAAG,CAAC,MAAM,kBAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAyC,CAAC;IAEjG,sDAAsD;IACtD,IAAI,iBAAiB,GAAgD,EAAE,CAAC;IACxE,IAAI,eAAe,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5C,MAAM,mBAAmB,GAAG;YAC1B;gBACE,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,aAAa;gBACnB,OAAO,EAAE,sCAAsC;gBAC/C,QAAQ,EAAE,CAAC,KAAa,EAAoB,EAAE;oBAC5C,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACxC,OAAO,mCAAmC,CAAC;oBAC7C,CAAC;oBACD,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;wBACvB,OAAO,gDAAgD,CAAC;oBAC1D,CAAC;oBACD,OAAO,IAAI,CAAC;gBACd,CAAC;aACF;SACF,CAAC;QAEF,+DAA+D;QAC/D,iBAAiB,GAAG,CAAC,MAAM,kBAAQ,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAG9D,CAAC;IACJ,CAAC;IAED,mBAAmB;IACnB,MAAM,gBAAgB,GAAG;QACvB;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,2CAA2C;YACpD,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;SACtB;KACF,CAAC;IAEF,+DAA+D;IAC/D,MAAM,cAAc,GAAG,CAAC,MAAM,kBAAQ,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAG9D,CAAC;IAEF,yBAAyB;IACzB,MAAM,YAAY,GAAG;QACnB,GAAG,eAAe;QAClB,GAAG,UAAU;QACb,GAAG,iBAAiB;QACpB,GAAG,cAAc;KAClB,CAAC;IAEF,6CAA6C;IAC7C,MAAM,kBAAkB,GAAG,MAAM,eAAM,CAAC,UAAU,CAChD,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,WAAW,CAAC,CACjD,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;QACzB,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,gCAAgC,OAAO,EAAE,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,kBAAkB,CAAC,YAAY,CAAC;IAErD,mDAAmD;IACnD,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,eAAe,CAAC,IAAI,CAC/D,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,YAAY,CACrC,CAAC;IACF,MAAM,gBAAgB,GAAG,iBAAiB,EAAE,gBAAgB,IAAI,KAAK,CAAC;IAEtE,+DAA+D;IAC/D,MAAM,sBAAsB,GAAG,iBAAiB,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IACzE,IAAI,sBAAsB,EAAE,CAAC;QAC3B,+FAA+F;QAC/F,MAAM,oBAAoB,GAAG,sBAAsB,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE;YACxF,MAAM,WAAW,GAAG,uBAAuB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC5D,OAAO,WAAW,IAAI,WAAW,IAAI,eAAe,CAAC;QACvD,CAAC,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,oBAAoB;aACtC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;aAC5C,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;QAExD,OAAO,CAAC,GAAG,CACT,KAAK,sBAAsB,CAAC,KAAK,IAAI,sBAAsB,CAAC,WAAW,sCAAsC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CACzI,CAAC;IACJ,CAAC;IAED,MAAM,cAAc,GAAG;QACrB;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,oCAAoC;YAC7C,OAAO,EAAE,kBAAkB,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBAC1D,IAAI,EAAE,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,EAAE;gBACnC,KAAK,EAAE,KAAK,CAAC,EAAE;gBACf,KAAK,EAAE,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,EAAE;aACrC,CAAC,CAA0D;YAC5D,OAAO,EAAE,YAAY;SACtB;QACD,2DAA2D;QAC3D,GAAG,CAAC,gBAAgB;YAClB,CAAC,CAAC;gBACE;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,iBAAiB;oBACvB,OAAO,EAAE,6CAA6C;oBACtD,OAAO,EAAE;wBACP,EAAE,IAAI,EAAE,yCAAyC,EAAE,KAAK,EAAE,KAAK,EAAE;wBACjE,EAAE,IAAI,EAAE,2DAA2D,EAAE,KAAK,EAAE,QAAQ,EAAE;wBACtF,EAAE,IAAI,EAAE,yCAAyC,EAAE,KAAK,EAAE,MAAM,EAAE;wBAClE,EAAE,IAAI,EAAE,yCAAyC,EAAE,KAAK,EAAE,SAAS,EAAE;qBACtE;iBACF;aACF;YACH,CAAC,CAAC,EAAE,CAAC;QACP,oEAAoE;QACpE,GAAG,CAAC,CAAC,iBAAiB,CAAC,YAAY,CAAC,SAAS,CAAC;YAC5C,CAAC,CAAC;gBACE;oBACE,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,+CAA+C;oBACxD,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;wBACnE,IAAI,EAAE,GAAG,QAAQ,KAAK,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,GAAG;wBAC9E,KAAK,EAAE,QAAQ;wBACf,KAAK,EAAE,QAAQ;qBAChB,CAAC,CAAC;oBACH,OAAO,EAAE,EAAE;iBACZ;aACF;YACH,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;IAEF,+DAA+D;IAC/D,MAAM,YAAY,GAAG,CAAC,MAAM,kBAAQ,CAAC,MAAM,CAAC,cAAc,CAAC,CAG1D,CAAC;IAEF,sBAAsB;IACtB,mFAAmF;IACnF,MAAM,eAAe,GAAG,iBAAiB,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAClE,MAAM,UAAU,GAAG,eAAe;QAChC,CAAC,CAAC,eAAe,CAAC,eAAe;aAC1B,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;aAC5C,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,IAAI,eAAe,CAAC;QACtF,CAAC,CAAC,YAAY,CAAC,KAAK,IAAI,EAAE,CAAC;IAE7B,OAAO;QACL,GAAG,YAAY;QACf,GAAG,YAAY;QACf,KAAK,EAAE,UAAU;KAClB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,sBAAsB,CACpC,eAAuB,EACvB,OAEC;IAYD,OAAO,eAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACzB,MAAM,oBAAoB,GAAG,eAAe,CAAC,IAAI,EAAE,CAAC;QAEpD,IAAI,oBAAoB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtC,OAAO,KAAK,CAAC,CAAC,eAAM,CAAC,IAAI,CACvB,IAAI,2BAAkB,CAAC;gBACrB,OAAO,EAAE,oBAAoB;gBAC7B,UAAU,EAAE,iCAAiB,CAAC,gBAAgB,CAAC,SAAS,CAAC;aAC1D,CAAC,CACH,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,IAAA,oCAAoB,EAAC,oBAAoB,CAAC,CAAC,IAAI,CAClE,eAAM,CAAC,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE,CAC3C,eAAM,CAAC,IAAI,CACT,IAAI,2BAAkB,CAAC;YACrB,OAAO,EAAE,oBAAoB;YAC7B,UAAU,EAAE,iCAAiB,CAAC,gBAAgB,CAAC,oBAAoB,CAAC;SACrE,CAAC,CACH,CACF,CACF,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,mCAAmC,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC;QAC3E,OAAO,CAAC,GAAG,CAAC,mBAAmB,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;QACpD,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;QAC/D,OAAO,CAAC,GAAG,EAAE,CAAC;QAEd,yCAAyC;QACzC,KAAK,CAAC,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,IAAI,CACvC,eAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE,CACxB,eAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,yBAAgB,CAAC;YACvC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YAClD,OAAO,CAAC,KAAK,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;YAC3C,OAAO,KAAK,CAAC,CAAC,eAAM,CAAC,IAAI,CAAC;QAC5B,CAAC,CAAC,CACH,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CACxB,KAAY,EACZ,cAAsB;IAMtB,OAAO,eAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACzB,MAAM,QAAQ,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,cAAc,EAAE,CAAC;QACvD,MAAM,iBAAiB,GAAG,KAAK,CAAC,CAAC,mCAA2B,CAAC;QAC7D,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,yBAAgB,CAAC;QACvC,KAAK,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACzD,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,2CAA2C,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACjF,CAAC,CAAC,CAAC;AACL,CAAC;AASD;;GAEG;AACH,SAAS,mBAAmB,CAAC,KAAa;IACxC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAE7B,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IACvC,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IAC9C,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAE5B,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,KAAK;YACR,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAC/B,KAAK,MAAM;YACT,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;QAChC,KAAK,QAAQ;YACX,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAClC,KAAK,OAAO;YACV,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACjC,KAAK,OAAO;YACV,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACjC;YACE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;IACzD,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB,CAC3B,OAAuB,EACvB,KAAY,EACZ,cAAkC,EAClC,mBAAkC;IAMlC,OAAO,eAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACzB,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;YACrB,KAAK,KAAK;gBACR,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;gBAC/C,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;gBACjD,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;gBAC/C,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,OAAO;oBACL,cAAc,EAAE,IAAI;oBACpB,iBAAiB,EAAE,SAAS;oBAC5B,UAAU,EAAE,EAAE;iBACf,CAAC;YAEJ,KAAK,MAAM;gBACT,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;gBAC9C,OAAO,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC;gBACtE,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;gBAC9D,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;gBAClE,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;gBAC7D,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;gBAC9C,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;gBACpD,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;gBAC3C,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;YAElC,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;gBACvC,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC;gBACrD,OAAO,CAAC,GAAG,CAAC,uBAAuB,cAAc,IAAI,aAAa,EAAE,CAAC,CAAC;gBACtE,OAAO,CAAC,GAAG,CAAC,2BAA2B,mBAAmB,CAAC,MAAM,EAAE,CAAC,CAAC;gBACrE,OAAO,CAAC,GAAG,CAAC,kBAAkB,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;gBACxD,OAAO,CAAC,GAAG,CAAC,WAAW,KAAK,CAAC,MAAM,CAAC,WAAW,IAAI,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC5E,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC;gBACpE,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,CAAC;gBACnD,OAAO,CAAC,GAAG,CAAC,aAAa,UAAU,YAAY,CAAC,CAAC;gBACjD,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;YAClC,CAAC;YAED,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,+BAAe,CAAC;gBAC5C,MAAM,eAAe,GAAG,KAAK,CAAC,CAAC,YAAY,CAAC,mBAAmB,EAAE,CAAC;gBAElE,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;gBAC/C,OAAO,CAAC,GAAG,EAAE,CAAC;gBAEd,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC9C,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;gBACxC,CAAC;qBAAM,CAAC;oBACN,iCAAiC;oBACjC,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,CAAC;oBAE7D,KAAK,MAAM,QAAQ,IAAI,gBAAgB,EAAE,CAAC;wBACxC,MAAM,KAAK,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;wBACxC,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BAC9B,OAAO,CAAC,GAAG,CACT,SAAS,QAAQ,KAAK,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,IAAI,CAChF,CAAC;4BACF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gCACzB,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;4BACjC,CAAC;4BACD,OAAO,CAAC,GAAG,EAAE,CAAC;wBAChB,CAAC;oBACH,CAAC;oBAED,mBAAmB;oBACnB,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,MAAM,CACtD,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,CAAC,EAC1C,CAAC,CACF,CAAC;oBACF,OAAO,CAAC,GAAG,CAAC,aAAa,UAAU,iBAAiB,gBAAgB,CAAC,MAAM,aAAa,CAAC,CAAC;gBAC5F,CAAC;gBACD,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;YAClC,CAAC;YAED,KAAK,OAAO;gBACV,OAAO,CAAC,KAAK,EAAE,CAAC;gBAChB,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,CAAC,IAAI,mBAAmB,CAAC,CAAC;gBAC3D,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;gBAC9D,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;gBACvD,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;YAElC,KAAK,SAAS;gBACZ,OAAO,CAAC,GAAG,CAAC,uBAAuB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC7D,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;gBACvD,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;YAElC;gBACE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;QACpC,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAS,aAAa,CACpB,KAAY,EACZ,WAEC;IAWD,OAAO,eAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACzB,IAAI,UAAU,GAAG,IAAI,CAAC;QACtB,IAAI,cAAkC,CAAC;QACvC,IAAI,mBAAmB,GAAkB,EAAE,CAAC;QAC5C,IAAI,kBAAkB,GAAG,KAAK,CAAC;QAE/B,OAAO,UAAU,EAAE,CAAC;YAClB,wBAAwB;YACxB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,eAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CACxC,kBAAQ,CAAC,MAAM,CAAC;gBACd;oBACE,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,MAAM;iBAChB;aACF,CAAC,CACH,CAAC;YAEF,MAAM,WAAW,GAAG,MAAM,CAAC,OAAiB,CAAC;YAE7C,8BAA8B;YAC9B,IAAI,WAAW,CAAC,WAAW,EAAE,KAAK,MAAM,IAAI,WAAW,CAAC,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;gBACjF,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;gBAC3B,UAAU,GAAG,KAAK,CAAC;gBACnB,SAAS;YACX,CAAC;YAED,2CAA2C;YAC3C,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACpD,OAAO,CAAC,GAAG,CACT,gFAAgF,CACjF,CAAC;gBACF,SAAS;YACX,CAAC;YAED,6BAA6B;YAC7B,MAAM,cAAc,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC;YACxD,IAAI,cAAc,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBACtC,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,oBAAoB,CAC/C,cAAc,EACd,KAAK,EACL,cAAc,EACd,mBAAmB,CACpB,CAAC;gBAEF,IAAI,aAAa,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;oBAClD,cAAc,GAAG,aAAa,CAAC,iBAAiB,CAAC;gBACnD,CAAC;gBACD,IAAI,aAAa,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC3C,mBAAmB,GAAG,aAAa,CAAC,UAAU,CAAC;gBACjD,CAAC;gBAED,SAAS;YACX,CAAC;YAED,4EAA4E;YAC5E,KAAK,CAAC,CAAC,eAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;gBACzB,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACxB,KAAK,CAAC,CAAC,iBAAiB,CAAC,KAAK,EAAE,cAAc,IAAI,EAAE,CAAC,CAAC,IAAI,CACxD,eAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE,CACxB,eAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;wBAClB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,yBAAgB,CAAC;wBACvC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;oBACjE,CAAC,CAAC,CACH,CACF,CAAC;oBAEF,kBAAkB,GAAG,IAAI,CAAC;gBAC5B,CAAC;gBAED,wBAAwB;gBACxB,MAAM,OAAO,GAAuB;oBAClC,KAAK;oBACL,SAAS,EAAE,WAAW;oBACtB,cAAc,EAAE,cAAc,IAAI,EAAE;oBACpC,mBAAmB;oBACnB,GAAG,CAAC,WAAW,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC7E,CAAC;gBAEF,2CAA2C;gBAC3C,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,0BAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CACnD,eAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE,CACxB,eAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;oBAClB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,yBAAgB,CAAC;oBACvC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;oBAExD,OAAO,CAAC,GAAG,EAAE,CAAC;oBAEd,8DAA8D;oBAC9D,IAAI,KAAK,YAAY,yBAAiB,EAAE,CAAC;wBACvC,OAAO,CAAC,GAAG,CACT,iFAAiF,CAClF,CAAC;wBACF,OAAO,CAAC,GAAG,CAAC,sEAAsE,CAAC,CAAC;wBACpF,OAAO,CAAC,GAAG,CAAC,qBAAqB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;oBACpD,CAAC;yBAAM,IAAI,KAAK,YAAY,uBAAe,EAAE,CAAC;wBAC5C,OAAO,CAAC,GAAG,CAAC,yBAAyB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;wBACtD,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;oBACvE,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACpF,CAAC;oBACD,OAAO,CAAC,GAAG,EAAE,CAAC;oBAEd,0DAA0D;oBAC1D,OAAO;wBACL,cAAc,EAAE,cAAc,IAAI,EAAE;wBACpC,QAAQ,EAAE,mBAAmB;wBAC7B,OAAO,EAAE,EAAE;qBACZ,CAAC;gBACJ,CAAC,CAAC,CACH,CACF,CAAC;gBAEF,2CAA2C;gBAC3C,cAAc,GAAG,QAAQ,CAAC,cAAc,CAAC;gBAEzC,6CAA6C;gBAC7C,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;oBACtB,mBAAmB,GAAG,QAAQ,CAAC,QAAQ,CAAC;gBAC1C,CAAC;gBAED,gFAAgF;gBAChF,yDAAyD;YAC3D,CAAC,CAAC,CAAA;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1,10 +1,10 @@
1
1
  import { Effect } from "effect";
2
2
  import { type AgentService } from "../../core/agent/agent-service";
3
3
  import { type ToolRegistry } from "../../core/agent/tools/tool-registry";
4
- import { AgentConfigurationError, StorageError, StorageNotFoundError, ValidationError } from "../../core/types/errors";
4
+ import { AgentAlreadyExistsError, AgentConfigurationError, StorageError, StorageNotFoundError, ValidationError } from "../../core/types/errors";
5
5
  import { LLMConfigurationError, type LLMService } from "../../services/llm/types";
6
6
  /**
7
7
  * Interactive agent edit command
8
8
  */
9
- export declare function editAgentCommand(agentId: string): Effect.Effect<void, StorageError | StorageNotFoundError | AgentConfigurationError | ValidationError | LLMConfigurationError, AgentService | LLMService | ToolRegistry>;
9
+ export declare function editAgentCommand(agentId: string): Effect.Effect<void, StorageError | StorageNotFoundError | AgentConfigurationError | AgentAlreadyExistsError | ValidationError | LLMConfigurationError, AgentService | LLMService | ToolRegistry>;
10
10
  //# sourceMappingURL=edit-agent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"edit-agent.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/edit-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,gCAAgC,CAAC;AACpF,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAC1F,OAAO,EACL,uBAAuB,EACvB,YAAY,EACZ,oBAAoB,EACpB,eAAe,EAChB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,qBAAqB,EAAiB,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAqBjG;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,GACd,MAAM,CAAC,MAAM,CACd,IAAI,EACF,YAAY,GACZ,oBAAoB,GACpB,uBAAuB,GACvB,eAAe,GACf,qBAAqB,EACvB,YAAY,GAAG,UAAU,GAAG,YAAY,CACzC,CAoFA"}
1
+ {"version":3,"file":"edit-agent.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/edit-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAEpF,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAC1F,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,YAAY,EACZ,oBAAoB,EACpB,eAAe,EAChB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,qBAAqB,EAAiB,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAqBjG;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,GACd,MAAM,CAAC,MAAM,CACd,IAAI,EACF,YAAY,GACZ,oBAAoB,GACpB,uBAAuB,GACvB,uBAAuB,GACvB,eAAe,GACf,qBAAqB,EACvB,YAAY,GAAG,UAAU,GAAG,YAAY,CACzC,CAyGA"}