crewx 0.3.0 → 0.4.0-dev.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (233) hide show
  1. package/bin/crewx.js +6 -0
  2. package/package.json +9 -107
  3. package/LICENSE +0 -201
  4. package/README.md +0 -234
  5. package/crewx.yaml +0 -2069
  6. package/dist/agent.types.d.ts +0 -117
  7. package/dist/agent.types.js +0 -16
  8. package/dist/agent.types.js.map +0 -1
  9. package/dist/ai-provider.service.d.ts +0 -36
  10. package/dist/ai-provider.service.js +0 -191
  11. package/dist/ai-provider.service.js.map +0 -1
  12. package/dist/ai.service.d.ts +0 -57
  13. package/dist/ai.service.js +0 -629
  14. package/dist/ai.service.js.map +0 -1
  15. package/dist/app.module.d.ts +0 -5
  16. package/dist/app.module.js +0 -103
  17. package/dist/app.module.js.map +0 -1
  18. package/dist/cli/agent.handler.d.ts +0 -2
  19. package/dist/cli/agent.handler.js +0 -140
  20. package/dist/cli/agent.handler.js.map +0 -1
  21. package/dist/cli/chat.handler.d.ts +0 -19
  22. package/dist/cli/chat.handler.js +0 -431
  23. package/dist/cli/chat.handler.js.map +0 -1
  24. package/dist/cli/cli.handler.d.ts +0 -4
  25. package/dist/cli/cli.handler.js +0 -97
  26. package/dist/cli/cli.handler.js.map +0 -1
  27. package/dist/cli/doctor.handler.d.ts +0 -36
  28. package/dist/cli/doctor.handler.js +0 -382
  29. package/dist/cli/doctor.handler.js.map +0 -1
  30. package/dist/cli/execute.handler.d.ts +0 -2
  31. package/dist/cli/execute.handler.js +0 -319
  32. package/dist/cli/execute.handler.js.map +0 -1
  33. package/dist/cli/help.handler.d.ts +0 -2
  34. package/dist/cli/help.handler.js +0 -10
  35. package/dist/cli/help.handler.js.map +0 -1
  36. package/dist/cli/init.handler.d.ts +0 -26
  37. package/dist/cli/init.handler.js +0 -450
  38. package/dist/cli/init.handler.js.map +0 -1
  39. package/dist/cli/mcp.handler.d.ts +0 -3
  40. package/dist/cli/mcp.handler.js +0 -121
  41. package/dist/cli/mcp.handler.js.map +0 -1
  42. package/dist/cli/query.handler.d.ts +0 -2
  43. package/dist/cli/query.handler.js +0 -380
  44. package/dist/cli/query.handler.js.map +0 -1
  45. package/dist/cli/templates.handler.d.ts +0 -2
  46. package/dist/cli/templates.handler.js +0 -100
  47. package/dist/cli/templates.handler.js.map +0 -1
  48. package/dist/cli-options.d.ts +0 -29
  49. package/dist/cli-options.js +0 -234
  50. package/dist/cli-options.js.map +0 -1
  51. package/dist/config/timeout.config.d.ts +0 -14
  52. package/dist/config/timeout.config.js +0 -34
  53. package/dist/config/timeout.config.js.map +0 -1
  54. package/dist/constants.d.ts +0 -4
  55. package/dist/constants.js +0 -8
  56. package/dist/constants.js.map +0 -1
  57. package/dist/conversation/base-conversation-history.provider.d.ts +0 -12
  58. package/dist/conversation/base-conversation-history.provider.js +0 -45
  59. package/dist/conversation/base-conversation-history.provider.js.map +0 -1
  60. package/dist/conversation/cli-conversation-history.provider.d.ts +0 -16
  61. package/dist/conversation/cli-conversation-history.provider.js +0 -111
  62. package/dist/conversation/cli-conversation-history.provider.js.map +0 -1
  63. package/dist/conversation/conversation-config.d.ts +0 -9
  64. package/dist/conversation/conversation-config.js +0 -25
  65. package/dist/conversation/conversation-config.js.map +0 -1
  66. package/dist/conversation/conversation-history.interface.d.ts +0 -25
  67. package/dist/conversation/conversation-history.interface.js +0 -3
  68. package/dist/conversation/conversation-history.interface.js.map +0 -1
  69. package/dist/conversation/conversation-provider.factory.d.ts +0 -10
  70. package/dist/conversation/conversation-provider.factory.js +0 -50
  71. package/dist/conversation/conversation-provider.factory.js.map +0 -1
  72. package/dist/conversation/conversation-storage.service.d.ts +0 -16
  73. package/dist/conversation/conversation-storage.service.js +0 -220
  74. package/dist/conversation/conversation-storage.service.js.map +0 -1
  75. package/dist/conversation/index.d.ts +0 -7
  76. package/dist/conversation/index.js +0 -24
  77. package/dist/conversation/index.js.map +0 -1
  78. package/dist/conversation/slack-conversation-history.provider.d.ts +0 -28
  79. package/dist/conversation/slack-conversation-history.provider.js +0 -278
  80. package/dist/conversation/slack-conversation-history.provider.js.map +0 -1
  81. package/dist/crewx.tool.d.ts +0 -332
  82. package/dist/crewx.tool.js +0 -1463
  83. package/dist/crewx.tool.js.map +0 -1
  84. package/dist/guards/bearer-auth.guard.d.ts +0 -7
  85. package/dist/guards/bearer-auth.guard.js +0 -44
  86. package/dist/guards/bearer-auth.guard.js.map +0 -1
  87. package/dist/health.controller.d.ts +0 -6
  88. package/dist/health.controller.js +0 -32
  89. package/dist/health.controller.js.map +0 -1
  90. package/dist/knowledge/DocumentManager.d.ts +0 -4
  91. package/dist/knowledge/DocumentManager.js +0 -119
  92. package/dist/knowledge/DocumentManager.js.map +0 -1
  93. package/dist/main.d.ts +0 -1
  94. package/dist/main.js +0 -268
  95. package/dist/main.js.map +0 -1
  96. package/dist/mcp.controller.d.ts +0 -8
  97. package/dist/mcp.controller.js +0 -62
  98. package/dist/mcp.controller.js.map +0 -1
  99. package/dist/project.service.d.ts +0 -44
  100. package/dist/project.service.js +0 -299
  101. package/dist/project.service.js.map +0 -1
  102. package/dist/providers/ai-provider.interface.d.ts +0 -50
  103. package/dist/providers/ai-provider.interface.js +0 -23
  104. package/dist/providers/ai-provider.interface.js.map +0 -1
  105. package/dist/providers/base-ai.provider.d.ts +0 -50
  106. package/dist/providers/base-ai.provider.js +0 -624
  107. package/dist/providers/base-ai.provider.js.map +0 -1
  108. package/dist/providers/claude.provider.d.ts +0 -25
  109. package/dist/providers/claude.provider.js +0 -362
  110. package/dist/providers/claude.provider.js.map +0 -1
  111. package/dist/providers/codex.provider.d.ts +0 -17
  112. package/dist/providers/codex.provider.js +0 -99
  113. package/dist/providers/codex.provider.js.map +0 -1
  114. package/dist/providers/copilot.provider.d.ts +0 -25
  115. package/dist/providers/copilot.provider.js +0 -266
  116. package/dist/providers/copilot.provider.js.map +0 -1
  117. package/dist/providers/dynamic-provider.factory.d.ts +0 -55
  118. package/dist/providers/dynamic-provider.factory.js +0 -587
  119. package/dist/providers/dynamic-provider.factory.js.map +0 -1
  120. package/dist/providers/gemini.provider.d.ts +0 -22
  121. package/dist/providers/gemini.provider.js +0 -147
  122. package/dist/providers/gemini.provider.js.map +0 -1
  123. package/dist/services/agent-loader.service.d.ts +0 -29
  124. package/dist/services/agent-loader.service.js +0 -370
  125. package/dist/services/agent-loader.service.js.map +0 -1
  126. package/dist/services/auth.service.d.ts +0 -9
  127. package/dist/services/auth.service.js +0 -47
  128. package/dist/services/auth.service.js.map +0 -1
  129. package/dist/services/config-validator.service.d.ts +0 -28
  130. package/dist/services/config-validator.service.js +0 -467
  131. package/dist/services/config-validator.service.js.map +0 -1
  132. package/dist/services/config.service.d.ts +0 -45
  133. package/dist/services/config.service.js +0 -180
  134. package/dist/services/config.service.js.map +0 -1
  135. package/dist/services/context-enhancement.service.d.ts +0 -13
  136. package/dist/services/context-enhancement.service.js +0 -169
  137. package/dist/services/context-enhancement.service.js.map +0 -1
  138. package/dist/services/document-loader.service.d.ts +0 -16
  139. package/dist/services/document-loader.service.js +0 -137
  140. package/dist/services/document-loader.service.js.map +0 -1
  141. package/dist/services/help.service.d.ts +0 -5
  142. package/dist/services/help.service.js +0 -117
  143. package/dist/services/help.service.js.map +0 -1
  144. package/dist/services/intelligent-compression.service.d.ts +0 -20
  145. package/dist/services/intelligent-compression.service.js +0 -179
  146. package/dist/services/intelligent-compression.service.js.map +0 -1
  147. package/dist/services/mcp-client.service.d.ts +0 -26
  148. package/dist/services/mcp-client.service.js +0 -81
  149. package/dist/services/mcp-client.service.js.map +0 -1
  150. package/dist/services/parallel-processing.service.d.ts +0 -108
  151. package/dist/services/parallel-processing.service.js +0 -268
  152. package/dist/services/parallel-processing.service.js.map +0 -1
  153. package/dist/services/remote-agent.service.d.ts +0 -49
  154. package/dist/services/remote-agent.service.js +0 -215
  155. package/dist/services/remote-agent.service.js.map +0 -1
  156. package/dist/services/result-formatter.service.d.ts +0 -27
  157. package/dist/services/result-formatter.service.js +0 -126
  158. package/dist/services/result-formatter.service.js.map +0 -1
  159. package/dist/services/task-management.service.d.ts +0 -63
  160. package/dist/services/task-management.service.js +0 -272
  161. package/dist/services/task-management.service.js.map +0 -1
  162. package/dist/services/template.service.d.ts +0 -36
  163. package/dist/services/template.service.js +0 -195
  164. package/dist/services/template.service.js.map +0 -1
  165. package/dist/services/tool-call.service.d.ts +0 -53
  166. package/dist/services/tool-call.service.js +0 -1061
  167. package/dist/services/tool-call.service.js.map +0 -1
  168. package/dist/slack/formatters/message.formatter.d.ts +0 -25
  169. package/dist/slack/formatters/message.formatter.js +0 -246
  170. package/dist/slack/formatters/message.formatter.js.map +0 -1
  171. package/dist/slack/slack-bot.d.ts +0 -24
  172. package/dist/slack/slack-bot.js +0 -467
  173. package/dist/slack/slack-bot.js.map +0 -1
  174. package/dist/stderr.logger.d.ts +0 -8
  175. package/dist/stderr.logger.js +0 -26
  176. package/dist/stderr.logger.js.map +0 -1
  177. package/dist/tsconfig.tsbuildinfo +0 -1
  178. package/dist/utils/config-utils.d.ts +0 -15
  179. package/dist/utils/config-utils.js +0 -69
  180. package/dist/utils/config-utils.js.map +0 -1
  181. package/dist/utils/error-utils.d.ts +0 -3
  182. package/dist/utils/error-utils.js +0 -27
  183. package/dist/utils/error-utils.js.map +0 -1
  184. package/dist/utils/math-utils.d.ts +0 -3
  185. package/dist/utils/math-utils.js +0 -10
  186. package/dist/utils/math-utils.js.map +0 -1
  187. package/dist/utils/mcp-installer.d.ts +0 -20
  188. package/dist/utils/mcp-installer.js +0 -199
  189. package/dist/utils/mcp-installer.js.map +0 -1
  190. package/dist/utils/mention-parser.d.ts +0 -18
  191. package/dist/utils/mention-parser.js +0 -136
  192. package/dist/utils/mention-parser.js.map +0 -1
  193. package/dist/utils/simple-security.d.ts +0 -3
  194. package/dist/utils/simple-security.js +0 -20
  195. package/dist/utils/simple-security.js.map +0 -1
  196. package/dist/utils/stdin-utils.d.ts +0 -27
  197. package/dist/utils/stdin-utils.js +0 -130
  198. package/dist/utils/stdin-utils.js.map +0 -1
  199. package/dist/utils/string-utils.d.ts +0 -1
  200. package/dist/utils/string-utils.js +0 -10
  201. package/dist/utils/string-utils.js.map +0 -1
  202. package/dist/utils/template-processor.d.ts +0 -32
  203. package/dist/utils/template-processor.js +0 -202
  204. package/dist/utils/template-processor.js.map +0 -1
  205. package/dist/version.d.ts +0 -1
  206. package/dist/version.js +0 -17
  207. package/dist/version.js.map +0 -1
  208. package/docs/CLA.md +0 -88
  209. package/docs/agent-configuration.md +0 -364
  210. package/docs/agent-registry-strategy.md +0 -348
  211. package/docs/branding-decision-crewx.md +0 -395
  212. package/docs/claude-code-docker-guide.md +0 -264
  213. package/docs/cli-guide.md +0 -439
  214. package/docs/development.md +0 -595
  215. package/docs/diagram1.svg +0 -1
  216. package/docs/guides/agent-best-practices.md +0 -97
  217. package/docs/guides/bug-management.md +0 -600
  218. package/docs/guides/git-bug-reference.md +0 -366
  219. package/docs/mcp-integration.md +0 -187
  220. package/docs/process/development-workflow.md +0 -84
  221. package/docs/remote-agents.md +0 -555
  222. package/docs/roadmap.md +0 -528
  223. package/docs/rules/branch-protection.md +0 -40
  224. package/docs/standards/rc-versioning.md +0 -60
  225. package/docs/standards/report-structure.md +0 -67
  226. package/docs/template-variables.md +0 -382
  227. package/docs/templates.md +0 -517
  228. package/docs/tools.md +0 -583
  229. package/docs/troubleshooting.md +0 -611
  230. package/templates/agents/default.yaml +0 -938
  231. package/templates/agents/minimal.yaml +0 -25
  232. package/templates/documents/crewcode-manual.md +0 -292
  233. package/templates/versions.json +0 -19
@@ -1,234 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- var __importDefault = (this && this.__importDefault) || function (mod) {
36
- return (mod && mod.__esModule) ? mod : { "default": mod };
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.parseCliOptions = parseCliOptions;
40
- const yargs_1 = __importDefault(require("yargs"));
41
- const helpers_1 = require("yargs/helpers");
42
- const fs = __importStar(require("fs"));
43
- const path = __importStar(require("path"));
44
- function parseCliOptions() {
45
- const packageJson = JSON.parse(fs.readFileSync(path.join(__dirname, '../package.json'), 'utf-8'));
46
- const parsed = (0, yargs_1.default)((0, helpers_1.hideBin)(process.argv))
47
- .version(packageJson.version)
48
- .command('query [message...]', 'Query agents with a message', (yargs) => {
49
- yargs.positional('message', {
50
- description: 'Message to send to agents (supports @agent mentions). Multiple arguments will be joined.',
51
- type: 'string',
52
- array: true
53
- });
54
- })
55
- .command('q [message...]', 'Shorthand for query', (yargs) => {
56
- yargs.positional('message', {
57
- description: 'Message to send to agents (supports @agent mentions). Multiple arguments will be joined.',
58
- type: 'string',
59
- array: true
60
- });
61
- })
62
- .command('execute [task...]', 'Execute a task with agents', (yargs) => {
63
- yargs.positional('task', {
64
- description: 'Task to execute with agents (supports @agent mentions). Multiple arguments will be joined.',
65
- type: 'string',
66
- array: true
67
- });
68
- })
69
- .command('x [task...]', 'Shorthand for execute', (yargs) => {
70
- yargs.positional('task', {
71
- description: 'Task to execute with agents (supports @agent mentions). Multiple arguments will be joined.',
72
- type: 'string',
73
- array: true
74
- });
75
- })
76
- .command('doctor', 'Check AI provider status', () => { })
77
- .command('init', 'Initialize CrewX project', (yargs) => {
78
- yargs.option('template', {
79
- alias: 't',
80
- type: 'string',
81
- default: 'default',
82
- description: 'Template to use (default, minimal, development, production)'
83
- });
84
- yargs.option('template-version', {
85
- type: 'string',
86
- default: 'main',
87
- description: 'Template version to download (main, v0.1.8, etc.)'
88
- });
89
- yargs.option('force', {
90
- alias: 'f',
91
- type: 'boolean',
92
- default: false,
93
- description: 'Overwrite existing configuration file'
94
- });
95
- })
96
- .command('templates', 'Manage agent templates', (yargs) => {
97
- yargs.command('list', 'List available templates');
98
- yargs.command('update', 'Clear cache and re-download templates');
99
- })
100
- .command('agent [action]', 'Manage configured agents', (yargs) => {
101
- yargs.command(['ls', 'list'], 'List available agents');
102
- })
103
- .command('mcp', 'Start MCP server for IDE integration', () => { })
104
- .command('slack', 'Start Slack Bot server', (yargs) => {
105
- yargs.option('agent', {
106
- alias: 'a',
107
- type: 'string',
108
- default: 'claude',
109
- description: 'Default agent to use for Slack conversations (claude, copilot, gemini, or custom agent ID)'
110
- });
111
- yargs.option('mode', {
112
- choices: ['query', 'execute'],
113
- default: 'query',
114
- description: 'Slack bot mode: query (read-only) or execute (allow file changes)',
115
- });
116
- })
117
- .command('help', 'Show help', () => { })
118
- .option('install', {
119
- type: 'boolean',
120
- default: false,
121
- description: 'Run installation and setup process'
122
- })
123
- .option('log', {
124
- type: 'boolean',
125
- default: false,
126
- description: 'Enable detailed logging'
127
- })
128
- .option('protocol', {
129
- choices: ['STDIO', 'HTTP'],
130
- default: 'STDIO',
131
- description: 'MCP protocol to use'
132
- })
133
- .option('http', {
134
- type: 'boolean',
135
- default: false,
136
- description: 'Shortcut to run MCP server over HTTP (equivalent to --protocol=HTTP)'
137
- })
138
- .option('host', {
139
- type: 'string',
140
- default: '127.0.0.1',
141
- description: 'Host/IP address to bind the MCP HTTP server'
142
- })
143
- .option('port', {
144
- type: 'number',
145
- default: 3000,
146
- description: 'Port for HTTP protocol (if used)'
147
- })
148
- .option('key', {
149
- type: 'string',
150
- description: 'Security key for MCP HTTP server authentication (defaults to CREWX_MCP_KEY env if available)'
151
- })
152
- .option('params', {
153
- type: 'string',
154
- description: 'JSON string with parameters for MCP tool invocation'
155
- })
156
- .option('config', {
157
- alias: 'c',
158
- type: 'string',
159
- description: 'Path to agents configuration file (default: crewx.yaml or agents.yaml)'
160
- })
161
- .option('allow-tool', {
162
- type: 'array',
163
- default: [],
164
- description: 'Allowed tools for Copilot agent (e.g., terminal,files,web)',
165
- coerce: (value) => {
166
- if (typeof value === 'string') {
167
- return value.split(',').map(tool => tool.trim());
168
- }
169
- return value || [];
170
- }
171
- })
172
- .option('raw', {
173
- type: 'boolean',
174
- default: false,
175
- description: 'Output only AI response without formatting (useful for piping)'
176
- })
177
- .option('load-project-context', {
178
- type: 'boolean',
179
- default: true,
180
- description: 'Load project context from CLAUDE.md files'
181
- })
182
- .option('project-context-max-length', {
183
- type: 'number',
184
- default: 2000,
185
- description: 'Maximum length for project context'
186
- })
187
- .option('enable-intelligent-compression', {
188
- type: 'boolean',
189
- default: true,
190
- description: 'Use intelligent conversation compression'
191
- })
192
- .option('thread', {
193
- alias: 't',
194
- type: 'string',
195
- description: 'Thread ID for conversation continuity'
196
- })
197
- .help(false)
198
- .parseSync();
199
- const positionalArgs = (parsed._ || []);
200
- const primaryCommand = positionalArgs.length > 0 ? String(positionalArgs[0]) : undefined;
201
- const secondaryCommand = positionalArgs.length > 1 ? String(positionalArgs[1]) : undefined;
202
- const tertiaryValue = positionalArgs.length > 2 ? String(positionalArgs[2]) : undefined;
203
- const resolvedProtocol = parsed.http === true ? 'HTTP' : parsed.protocol;
204
- const resolvedKey = parsed.key ?? process.env.CREWX_MCP_KEY ?? undefined;
205
- return {
206
- install: parsed.install,
207
- log: parsed.log,
208
- protocol: resolvedProtocol,
209
- host: parsed.host,
210
- port: parsed.port,
211
- allowTool: parsed['allow-tool'] || [],
212
- raw: parsed.raw,
213
- loadProjectContext: parsed['load-project-context'],
214
- projectContextMaxLength: parsed['project-context-max-length'],
215
- enableIntelligentCompression: parsed['enable-intelligent-compression'],
216
- thread: parsed.thread,
217
- command: primaryCommand,
218
- subcommand: secondaryCommand,
219
- query: Array.isArray(parsed.message) ? parsed.message : (parsed.message ? [parsed.message] : undefined),
220
- execute: Array.isArray(parsed.task) ? parsed.task : (parsed.task ? [parsed.task] : undefined),
221
- doctor: primaryCommand === 'doctor',
222
- config: parsed.config,
223
- template: parsed.template,
224
- templateVersion: parsed['template-version'],
225
- force: parsed.force,
226
- slackAgent: parsed.agent,
227
- slackMode: parsed.mode || 'query',
228
- http: parsed.http,
229
- key: resolvedKey,
230
- mcpToolName: secondaryCommand === 'call_tool' ? tertiaryValue : undefined,
231
- mcpParams: typeof parsed.params === 'string' ? parsed.params : undefined,
232
- };
233
- }
234
- //# sourceMappingURL=cli-options.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli-options.js","sourceRoot":"","sources":["../src/cli-options.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- export interface TimeoutConfig {
2
- claudeQuery: number;
3
- claudeExecute: number;
4
- geminiQuery: number;
5
- geminiExecute: number;
6
- copilotQuery: number;
7
- copilotExecute: number;
8
- parallel: number;
9
- stdinInitial: number;
10
- stdinChunk: number;
11
- stdinComplete: number;
12
- }
13
- export declare function getTimeoutConfig(): TimeoutConfig;
14
- export declare function getDefaultTimeoutConfig(): TimeoutConfig;
@@ -1,34 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getTimeoutConfig = getTimeoutConfig;
4
- exports.getDefaultTimeoutConfig = getDefaultTimeoutConfig;
5
- const DEFAULT_TIMEOUTS = {
6
- claudeQuery: 1800000,
7
- claudeExecute: 1800000,
8
- geminiQuery: 1800000,
9
- geminiExecute: 1800000,
10
- copilotQuery: 1800000,
11
- copilotExecute: 1800000,
12
- parallel: 1800000,
13
- stdinInitial: 30000,
14
- stdinChunk: 1800000,
15
- stdinComplete: 100,
16
- };
17
- function getTimeoutConfig() {
18
- return {
19
- claudeQuery: parseInt(process.env.CREWCODE_TIMEOUT_CLAUDE_QUERY || '') || DEFAULT_TIMEOUTS.claudeQuery,
20
- claudeExecute: parseInt(process.env.CREWCODE_TIMEOUT_CLAUDE_EXECUTE || '') || DEFAULT_TIMEOUTS.claudeExecute,
21
- geminiQuery: parseInt(process.env.CREWCODE_TIMEOUT_GEMINI_QUERY || '') || DEFAULT_TIMEOUTS.geminiQuery,
22
- geminiExecute: parseInt(process.env.CREWCODE_TIMEOUT_GEMINI_EXECUTE || '') || DEFAULT_TIMEOUTS.geminiExecute,
23
- copilotQuery: parseInt(process.env.CREWCODE_TIMEOUT_COPILOT_QUERY || '') || DEFAULT_TIMEOUTS.copilotQuery,
24
- copilotExecute: parseInt(process.env.CREWCODE_TIMEOUT_COPILOT_EXECUTE || '') || DEFAULT_TIMEOUTS.copilotExecute,
25
- parallel: parseInt(process.env.CREWCODE_TIMEOUT_PARALLEL || '') || DEFAULT_TIMEOUTS.parallel,
26
- stdinInitial: parseInt(process.env.CREWCODE_TIMEOUT_STDIN_INITIAL || '') || DEFAULT_TIMEOUTS.stdinInitial,
27
- stdinChunk: parseInt(process.env.CREWCODE_TIMEOUT_STDIN_CHUNK || '') || DEFAULT_TIMEOUTS.stdinChunk,
28
- stdinComplete: parseInt(process.env.CREWCODE_TIMEOUT_STDIN_COMPLETE || '') || DEFAULT_TIMEOUTS.stdinComplete,
29
- };
30
- }
31
- function getDefaultTimeoutConfig() {
32
- return { ...DEFAULT_TIMEOUTS };
33
- }
34
- //# sourceMappingURL=timeout.config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"timeout.config.js","sourceRoot":"","sources":["../../src/config/timeout.config.ts"],"names":[],"mappings":";;AAyDA,4CAaC;AAKD,0DAEC;AArCD,MAAM,gBAAgB,GAAkB;IACtC,WAAW,EAAE,OAAO;IACpB,aAAa,EAAE,OAAO;IACtB,WAAW,EAAE,OAAO;IACpB,aAAa,EAAE,OAAO;IACtB,YAAY,EAAE,OAAO;IACrB,cAAc,EAAE,OAAO;IACvB,QAAQ,EAAE,OAAO;IACjB,YAAY,EAAE,KAAK;IACnB,UAAU,EAAE,OAAO;IACnB,aAAa,EAAE,GAAG;CACnB,CAAC;AAMF,SAAgB,gBAAgB;IAC9B,OAAO;QACL,WAAW,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,IAAI,EAAE,CAAC,IAAI,gBAAgB,CAAC,WAAW;QACtG,aAAa,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,+BAA+B,IAAI,EAAE,CAAC,IAAI,gBAAgB,CAAC,aAAa;QAC5G,WAAW,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,IAAI,EAAE,CAAC,IAAI,gBAAgB,CAAC,WAAW;QACtG,aAAa,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,+BAA+B,IAAI,EAAE,CAAC,IAAI,gBAAgB,CAAC,aAAa;QAC5G,YAAY,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,IAAI,EAAE,CAAC,IAAI,gBAAgB,CAAC,YAAY;QACzG,cAAc,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,IAAI,EAAE,CAAC,IAAI,gBAAgB,CAAC,cAAc;QAC/G,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,EAAE,CAAC,IAAI,gBAAgB,CAAC,QAAQ;QAC5F,YAAY,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,IAAI,EAAE,CAAC,IAAI,gBAAgB,CAAC,YAAY;QACzG,UAAU,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,4BAA4B,IAAI,EAAE,CAAC,IAAI,gBAAgB,CAAC,UAAU;QACnG,aAAa,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,+BAA+B,IAAI,EAAE,CAAC,IAAI,gBAAgB,CAAC,aAAa;KAC7G,CAAC;AACJ,CAAC;AAKD,SAAgB,uBAAuB;IACrC,OAAO,EAAE,GAAG,gBAAgB,EAAE,CAAC;AACjC,CAAC"}
@@ -1,4 +0,0 @@
1
- export declare const SERVER_NAME = "crewx";
2
- export declare const PREFIX_TOOL_NAME = "crewx_";
3
- export declare const DEFAULT_MAX_FILE_SIZE: number;
4
- export declare const DEFAULT_MAX_FILES = 100;
package/dist/constants.js DELETED
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DEFAULT_MAX_FILES = exports.DEFAULT_MAX_FILE_SIZE = exports.PREFIX_TOOL_NAME = exports.SERVER_NAME = void 0;
4
- exports.SERVER_NAME = 'crewx';
5
- exports.PREFIX_TOOL_NAME = 'crewx_';
6
- exports.DEFAULT_MAX_FILE_SIZE = 1024 * 1024;
7
- exports.DEFAULT_MAX_FILES = 100;
8
- //# sourceMappingURL=constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,WAAW,GAAG,OAAO,CAAC;AACtB,QAAA,gBAAgB,GAAG,QAAQ,CAAC;AAC5B,QAAA,qBAAqB,GAAG,IAAI,GAAG,IAAI,CAAC;AACpC,QAAA,iBAAiB,GAAG,GAAG,CAAC"}
@@ -1,12 +0,0 @@
1
- import { Logger } from '@nestjs/common';
2
- import { ConversationThread, FetchHistoryOptions, IConversationHistoryProvider } from './conversation-history.interface';
3
- import { IntelligentCompressionService } from '../services/intelligent-compression.service';
4
- export declare abstract class BaseConversationHistoryProvider implements IConversationHistoryProvider {
5
- protected readonly logger: Logger;
6
- protected compressionService?: IntelligentCompressionService;
7
- constructor(loggerContext: string, compressionService?: IntelligentCompressionService);
8
- abstract fetchHistory(threadId: string, options?: FetchHistoryOptions): Promise<ConversationThread>;
9
- abstract hasHistory(threadId: string): Promise<boolean>;
10
- formatForAI(thread: ConversationThread, options?: FetchHistoryOptions): Promise<string>;
11
- protected sanitizeMessage(text: string): string;
12
- }
@@ -1,45 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BaseConversationHistoryProvider = void 0;
4
- const common_1 = require("@nestjs/common");
5
- class BaseConversationHistoryProvider {
6
- constructor(loggerContext, compressionService) {
7
- this.logger = new common_1.Logger(loggerContext);
8
- this.compressionService = compressionService;
9
- }
10
- async formatForAI(thread, options) {
11
- const maxLength = options?.maxContextLength || 4000;
12
- const limit = options?.limit || 20;
13
- const excludeCurrent = options?.excludeCurrent ?? true;
14
- let messages = [...thread.messages];
15
- if (excludeCurrent && messages.length > 0) {
16
- messages = messages.slice(0, -1);
17
- }
18
- if (messages.length === 0) {
19
- return '';
20
- }
21
- if (this.compressionService && messages.length > limit) {
22
- this.logger.debug(`Using intelligent compression for ${messages.length} messages`);
23
- const threadForCompression = {
24
- ...thread,
25
- messages: messages
26
- };
27
- return await this.compressionService.compressConversationHistory(threadForCompression, {
28
- maxTokens: Math.floor(maxLength / 4),
29
- maxMessages: limit,
30
- preserveRecentCount: Math.min(5, Math.floor(limit / 4)),
31
- preserveImportant: true
32
- });
33
- }
34
- return '';
35
- }
36
- sanitizeMessage(text) {
37
- return text
38
- .replace(/password[:\s]*\S+/gi, 'password: ***')
39
- .replace(/token[:\s]*\S+/gi, 'token: ***')
40
- .replace(/api[_-]?key[:\s]*\S+/gi, 'api_key: ***')
41
- .replace(/secret[:\s]*\S+/gi, 'secret: ***');
42
- }
43
- }
44
- exports.BaseConversationHistoryProvider = BaseConversationHistoryProvider;
45
- //# sourceMappingURL=base-conversation-history.provider.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"base-conversation-history.provider.js","sourceRoot":"","sources":["../../src/conversation/base-conversation-history.provider.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AAYxC,MAAsB,+BAA+B;IAMnD,YACE,aAAqB,EACrB,kBAAkD;QAElD,IAAI,CAAC,MAAM,GAAG,IAAI,eAAM,CAAC,aAAa,CAAC,CAAC;QACxC,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;IAC/C,CAAC;IAcD,KAAK,CAAC,WAAW,CACf,MAA0B,EAC1B,OAA6B;QAE7B,MAAM,SAAS,GAAG,OAAO,EAAE,gBAAgB,IAAI,IAAI,CAAC;QACpD,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC;QACnC,MAAM,cAAc,GAAG,OAAO,EAAE,cAAc,IAAI,IAAI,CAAC;QAEvD,IAAI,QAAQ,GAAG,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;QAGpC,IAAI,cAAc,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1C,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACnC,CAAC;QAGD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,EAAE,CAAC;QACZ,CAAC;QAGD,IAAI,IAAI,CAAC,kBAAkB,IAAI,QAAQ,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC;YACvD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qCAAqC,QAAQ,CAAC,MAAM,WAAW,CAAC,CAAC;YAEnF,MAAM,oBAAoB,GAAuB;gBAC/C,GAAG,MAAM;gBACT,QAAQ,EAAE,QAAQ;aACnB,CAAC;YAEF,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,2BAA2B,CAC9D,oBAAoB,EACpB;gBACE,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;gBACpC,WAAW,EAAE,KAAK;gBAClB,mBAAmB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;gBACvD,iBAAiB,EAAE,IAAI;aACxB,CACF,CAAC;QACJ,CAAC;QAMD,OAAO,EAAE,CAAC;IACZ,CAAC;IAKS,eAAe,CAAC,IAAY;QACpC,OAAO,IAAI;aACR,OAAO,CAAC,qBAAqB,EAAE,eAAe,CAAC;aAC/C,OAAO,CAAC,kBAAkB,EAAE,YAAY,CAAC;aACzC,OAAO,CAAC,wBAAwB,EAAE,cAAc,CAAC;aACjD,OAAO,CAAC,mBAAmB,EAAE,aAAa,CAAC,CAAC;IACjD,CAAC;CACF;AAnFD,0EAmFC"}
@@ -1,16 +0,0 @@
1
- import { BaseConversationHistoryProvider } from './base-conversation-history.provider';
2
- import { ConversationMessage, ConversationThread, FetchHistoryOptions } from './conversation-history.interface';
3
- export declare class CliConversationHistoryProvider extends BaseConversationHistoryProvider {
4
- private storage;
5
- constructor();
6
- initialize(): Promise<void>;
7
- fetchHistory(threadId: string, options?: FetchHistoryOptions): Promise<ConversationThread>;
8
- addMessage(threadId: string, userId: string, text: string, isAssistant?: boolean, agentId?: string): Promise<ConversationMessage>;
9
- hasHistory(threadId: string): Promise<boolean>;
10
- formatForAI(thread: ConversationThread, options?: FetchHistoryOptions): Promise<string>;
11
- listThreads(): Promise<string[]>;
12
- deleteThread(threadId: string): Promise<void>;
13
- createThread(threadId?: string): Promise<string>;
14
- private createEmptyThread;
15
- cleanupOldThreads(daysToKeep?: number): Promise<number>;
16
- }
@@ -1,111 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- var CliConversationHistoryProvider_1;
12
- Object.defineProperty(exports, "__esModule", { value: true });
13
- exports.CliConversationHistoryProvider = void 0;
14
- const common_1 = require("@nestjs/common");
15
- const base_conversation_history_provider_1 = require("./base-conversation-history.provider");
16
- const conversation_storage_service_1 = require("./conversation-storage.service");
17
- let CliConversationHistoryProvider = CliConversationHistoryProvider_1 = class CliConversationHistoryProvider extends base_conversation_history_provider_1.BaseConversationHistoryProvider {
18
- constructor() {
19
- super(CliConversationHistoryProvider_1.name);
20
- this.storage = new conversation_storage_service_1.ConversationStorageService();
21
- }
22
- async initialize() {
23
- await this.storage.initialize();
24
- }
25
- async fetchHistory(threadId, options) {
26
- try {
27
- this.logger.log(`Fetching CLI thread history: ${threadId}`);
28
- const thread = await this.storage.loadThread(threadId);
29
- if (!thread) {
30
- return this.createEmptyThread(threadId);
31
- }
32
- if (options?.limit && thread.messages.length > options.limit) {
33
- thread.messages = thread.messages.slice(-options.limit);
34
- }
35
- this.logger.log(`Retrieved ${thread.messages.length} messages from CLI thread`);
36
- return thread;
37
- }
38
- catch (error) {
39
- this.logger.error(`Error fetching CLI thread history: ${error.message}`);
40
- return this.createEmptyThread(threadId);
41
- }
42
- }
43
- async addMessage(threadId, userId, text, isAssistant = false, agentId) {
44
- const message = {
45
- id: `${Date.now()}-${Math.random().toString(36).substring(7)}`,
46
- userId,
47
- text: this.sanitizeMessage(text),
48
- timestamp: new Date(),
49
- isAssistant,
50
- };
51
- const normalizedAgentId = agentId?.trim();
52
- if (normalizedAgentId) {
53
- message.metadata = {
54
- ...(message.metadata ?? {}),
55
- agent_id: normalizedAgentId,
56
- };
57
- }
58
- try {
59
- await this.storage.addMessage(threadId, message, 'cli');
60
- this.logger.debug(`Message added to thread ${threadId}${agentId ? ` (agent: ${agentId})` : ''}`);
61
- return message;
62
- }
63
- catch (error) {
64
- this.logger.error(`Failed to add message: ${error.message}`);
65
- throw error;
66
- }
67
- }
68
- async hasHistory(threadId) {
69
- return await this.storage.hasThread(threadId);
70
- }
71
- formatForAI(thread, options) {
72
- return super.formatForAI(thread, options);
73
- }
74
- async listThreads() {
75
- return await this.storage.listThreads();
76
- }
77
- async deleteThread(threadId) {
78
- await this.storage.deleteThread(threadId);
79
- this.logger.log(`Thread deleted: ${threadId}`);
80
- }
81
- async createThread(threadId) {
82
- const id = threadId || `cli-${Date.now()}`;
83
- const thread = {
84
- threadId: id,
85
- platform: 'cli',
86
- messages: [],
87
- metadata: {
88
- createdAt: new Date().toISOString(),
89
- },
90
- };
91
- await this.storage.saveThread(thread);
92
- this.logger.log(`New thread created: ${id}`);
93
- return id;
94
- }
95
- createEmptyThread(threadId) {
96
- return {
97
- threadId,
98
- platform: 'cli',
99
- messages: [],
100
- };
101
- }
102
- async cleanupOldThreads(daysToKeep = 30) {
103
- return await this.storage.cleanupOldThreads(daysToKeep);
104
- }
105
- };
106
- exports.CliConversationHistoryProvider = CliConversationHistoryProvider;
107
- exports.CliConversationHistoryProvider = CliConversationHistoryProvider = CliConversationHistoryProvider_1 = __decorate([
108
- (0, common_1.Injectable)(),
109
- __metadata("design:paramtypes", [])
110
- ], CliConversationHistoryProvider);
111
- //# sourceMappingURL=cli-conversation-history.provider.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli-conversation-history.provider.js","sourceRoot":"","sources":["../../src/conversation/cli-conversation-history.provider.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,6FAAuF;AAMvF,iFAA4E;AAOrE,IAAM,8BAA8B,sCAApC,MAAM,8BAA+B,SAAQ,oEAA+B;IAGjF;QACE,KAAK,CAAC,gCAA8B,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,GAAG,IAAI,yDAA0B,EAAE,CAAC;IAClD,CAAC;IAKD,KAAK,CAAC,UAAU;QACd,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;IAClC,CAAC;IAKD,KAAK,CAAC,YAAY,CAChB,QAAgB,EAChB,OAA6B;QAE7B,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,gCAAgC,QAAQ,EAAE,CAAC,CAAC;YAE5D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YAEvD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YAC1C,CAAC;YAGD,IAAI,OAAO,EAAE,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;gBAC7D,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC1D,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,QAAQ,CAAC,MAAM,2BAA2B,CAAC,CAAC;YAChF,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACzE,OAAO,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAKD,KAAK,CAAC,UAAU,CACd,QAAgB,EAChB,MAAc,EACd,IAAY,EACZ,cAAuB,KAAK,EAC5B,OAAgB;QAEhB,MAAM,OAAO,GAAwB;YACnC,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;YAC9D,MAAM;YACN,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;YAChC,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,WAAW;SACZ,CAAC;QAEF,MAAM,iBAAiB,GAAG,OAAO,EAAE,IAAI,EAAE,CAAC;QAC1C,IAAI,iBAAiB,EAAE,CAAC;YACtB,OAAO,CAAC,QAAQ,GAAG;gBACjB,GAAG,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;gBAC3B,QAAQ,EAAE,iBAAiB;aAC5B,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YACxD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,YAAY,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACjG,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0BAA0B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAC7D,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAKD,KAAK,CAAC,UAAU,CAAC,QAAgB;QAC/B,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAChD,CAAC;IAKD,WAAW,CACT,MAA0B,EAC1B,OAA6B;QAE7B,OAAO,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;IAKD,KAAK,CAAC,WAAW;QACf,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IAC1C,CAAC;IAKD,KAAK,CAAC,YAAY,CAAC,QAAgB;QACjC,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;IACjD,CAAC;IAKD,KAAK,CAAC,YAAY,CAAC,QAAiB;QAClC,MAAM,EAAE,GAAG,QAAQ,IAAI,OAAO,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QAE3C,MAAM,MAAM,GAAuB;YACjC,QAAQ,EAAE,EAAE;YACZ,QAAQ,EAAE,KAAK;YACf,QAAQ,EAAE,EAAE;YACZ,QAAQ,EAAE;gBACR,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACpC;SACF,CAAC;QAEF,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;QAE7C,OAAO,EAAE,CAAC;IACZ,CAAC;IAKO,iBAAiB,CAAC,QAAgB;QACxC,OAAO;YACL,QAAQ;YACR,QAAQ,EAAE,KAAK;YACf,QAAQ,EAAE,EAAE;SACb,CAAC;IACJ,CAAC;IAKD,KAAK,CAAC,iBAAiB,CAAC,aAAqB,EAAE;QAC7C,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAC1D,CAAC;CACF,CAAA;AAtJY,wEAA8B;yCAA9B,8BAA8B;IAD1C,IAAA,mBAAU,GAAE;;GACA,8BAA8B,CAsJ1C"}
@@ -1,9 +0,0 @@
1
- export interface ConversationConfig {
2
- maxMessages: number;
3
- maxContextLength: number;
4
- cacheTTL: number;
5
- maxCacheSize: number;
6
- enabled: boolean;
7
- }
8
- export declare const DEFAULT_CONVERSATION_CONFIG: ConversationConfig;
9
- export declare function getConversationConfig(): ConversationConfig;
@@ -1,25 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DEFAULT_CONVERSATION_CONFIG = void 0;
4
- exports.getConversationConfig = getConversationConfig;
5
- exports.DEFAULT_CONVERSATION_CONFIG = {
6
- maxMessages: 20,
7
- maxContextLength: 4000,
8
- cacheTTL: 30000,
9
- maxCacheSize: 100,
10
- enabled: true,
11
- };
12
- function getConversationConfig() {
13
- return {
14
- maxMessages: parseInt(process.env.CONVERSATION_MAX_MESSAGES ||
15
- String(exports.DEFAULT_CONVERSATION_CONFIG.maxMessages)),
16
- maxContextLength: parseInt(process.env.CONVERSATION_MAX_CONTEXT_LENGTH ||
17
- String(exports.DEFAULT_CONVERSATION_CONFIG.maxContextLength)),
18
- cacheTTL: parseInt(process.env.CONVERSATION_CACHE_TTL ||
19
- String(exports.DEFAULT_CONVERSATION_CONFIG.cacheTTL)),
20
- maxCacheSize: parseInt(process.env.CONVERSATION_MAX_CACHE_SIZE ||
21
- String(exports.DEFAULT_CONVERSATION_CONFIG.maxCacheSize)),
22
- enabled: process.env.CONVERSATION_HISTORY_ENABLED !== 'false',
23
- };
24
- }
25
- //# sourceMappingURL=conversation-config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"conversation-config.js","sourceRoot":"","sources":["../../src/conversation/conversation-config.ts"],"names":[],"mappings":";;;AAkCA,sDAoBC;AA/BY,QAAA,2BAA2B,GAAuB;IAC7D,WAAW,EAAE,EAAE;IACf,gBAAgB,EAAE,IAAI;IACtB,QAAQ,EAAE,KAAK;IACf,YAAY,EAAE,GAAG;IACjB,OAAO,EAAE,IAAI;CACd,CAAC;AAKF,SAAgB,qBAAqB;IACnC,OAAO;QACL,WAAW,EAAE,QAAQ,CACnB,OAAO,CAAC,GAAG,CAAC,yBAAyB;YACnC,MAAM,CAAC,mCAA2B,CAAC,WAAW,CAAC,CAClD;QACD,gBAAgB,EAAE,QAAQ,CACxB,OAAO,CAAC,GAAG,CAAC,+BAA+B;YACzC,MAAM,CAAC,mCAA2B,CAAC,gBAAgB,CAAC,CACvD;QACD,QAAQ,EAAE,QAAQ,CAChB,OAAO,CAAC,GAAG,CAAC,sBAAsB;YAChC,MAAM,CAAC,mCAA2B,CAAC,QAAQ,CAAC,CAC/C;QACD,YAAY,EAAE,QAAQ,CACpB,OAAO,CAAC,GAAG,CAAC,2BAA2B;YACrC,MAAM,CAAC,mCAA2B,CAAC,YAAY,CAAC,CACnD;QACD,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,4BAA4B,KAAK,OAAO;KAC9D,CAAC;AACJ,CAAC"}
@@ -1,25 +0,0 @@
1
- export interface ConversationMessage {
2
- id: string;
3
- userId: string;
4
- text: string;
5
- timestamp: Date;
6
- isAssistant: boolean;
7
- metadata?: Record<string, any>;
8
- }
9
- export interface ConversationThread {
10
- threadId: string;
11
- platform: 'slack' | 'cli';
12
- messages: ConversationMessage[];
13
- metadata?: Record<string, any>;
14
- hasMore?: boolean;
15
- }
16
- export interface FetchHistoryOptions {
17
- limit?: number;
18
- maxContextLength?: number;
19
- excludeCurrent?: boolean;
20
- }
21
- export interface IConversationHistoryProvider {
22
- fetchHistory(threadId: string, options?: FetchHistoryOptions): Promise<ConversationThread>;
23
- formatForAI(thread: ConversationThread, options?: FetchHistoryOptions): Promise<string>;
24
- hasHistory(threadId: string): Promise<boolean>;
25
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=conversation-history.interface.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"conversation-history.interface.js","sourceRoot":"","sources":["../../src/conversation/conversation-history.interface.ts"],"names":[],"mappings":""}
@@ -1,10 +0,0 @@
1
- import { IConversationHistoryProvider } from './conversation-history.interface';
2
- export type Platform = 'slack' | 'cli';
3
- export declare class ConversationProviderFactory {
4
- private readonly logger;
5
- private providers;
6
- getProvider(platform: Platform): IConversationHistoryProvider;
7
- private createProvider;
8
- hasProvider(platform: Platform): boolean;
9
- clearProviders(): void;
10
- }