@loxia-labs/loxia-autopilot-one 1.0.1 → 1.0.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 (120) hide show
  1. package/README.md +44 -54
  2. package/bin/cli.js +1 -115
  3. package/bin/loxia-terminal-v2.js +3 -0
  4. package/bin/loxia-terminal.js +3 -0
  5. package/bin/start-with-terminal.js +3 -0
  6. package/package.json +14 -15
  7. package/scripts/install-scanners.js +1 -235
  8. package/src/analyzers/CSSAnalyzer.js +1 -297
  9. package/src/analyzers/ConfigValidator.js +1 -690
  10. package/src/analyzers/ESLintAnalyzer.js +1 -320
  11. package/src/analyzers/JavaScriptAnalyzer.js +1 -261
  12. package/src/analyzers/PrettierFormatter.js +1 -247
  13. package/src/analyzers/PythonAnalyzer.js +1 -266
  14. package/src/analyzers/SecurityAnalyzer.js +1 -729
  15. package/src/analyzers/TypeScriptAnalyzer.js +1 -247
  16. package/src/analyzers/codeCloneDetector/analyzer.js +1 -344
  17. package/src/analyzers/codeCloneDetector/detector.js +1 -203
  18. package/src/analyzers/codeCloneDetector/index.js +1 -160
  19. package/src/analyzers/codeCloneDetector/parser.js +1 -199
  20. package/src/analyzers/codeCloneDetector/reporter.js +1 -148
  21. package/src/analyzers/codeCloneDetector/scanner.js +1 -59
  22. package/src/core/agentPool.js +1 -1474
  23. package/src/core/agentScheduler.js +1 -2147
  24. package/src/core/contextManager.js +1 -709
  25. package/src/core/messageProcessor.js +1 -732
  26. package/src/core/orchestrator.js +1 -548
  27. package/src/core/stateManager.js +1 -877
  28. package/src/index.js +1 -631
  29. package/src/interfaces/cli.js +1 -549
  30. package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -0
  31. package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -0
  32. package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -0
  33. package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -0
  34. package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -0
  35. package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -0
  36. package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -0
  37. package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -0
  38. package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -0
  39. package/src/interfaces/terminal/api/apiClient.js +1 -0
  40. package/src/interfaces/terminal/api/messageRouter.js +1 -0
  41. package/src/interfaces/terminal/api/session.js +1 -0
  42. package/src/interfaces/terminal/api/websocket.js +1 -0
  43. package/src/interfaces/terminal/components/AgentCreator.js +1 -0
  44. package/src/interfaces/terminal/components/AgentEditor.js +1 -0
  45. package/src/interfaces/terminal/components/AgentSwitcher.js +1 -0
  46. package/src/interfaces/terminal/components/ErrorBoundary.js +1 -0
  47. package/src/interfaces/terminal/components/ErrorPanel.js +1 -0
  48. package/src/interfaces/terminal/components/Header.js +1 -0
  49. package/src/interfaces/terminal/components/HelpPanel.js +1 -0
  50. package/src/interfaces/terminal/components/InputBox.js +1 -0
  51. package/src/interfaces/terminal/components/Layout.js +1 -0
  52. package/src/interfaces/terminal/components/LoadingSpinner.js +1 -0
  53. package/src/interfaces/terminal/components/MessageList.js +1 -0
  54. package/src/interfaces/terminal/components/MultilineTextInput.js +1 -0
  55. package/src/interfaces/terminal/components/SearchPanel.js +1 -0
  56. package/src/interfaces/terminal/components/SettingsPanel.js +1 -0
  57. package/src/interfaces/terminal/components/StatusBar.js +1 -0
  58. package/src/interfaces/terminal/components/TextInput.js +1 -0
  59. package/src/interfaces/terminal/config/agentEditorConstants.js +1 -0
  60. package/src/interfaces/terminal/config/constants.js +1 -0
  61. package/src/interfaces/terminal/index.js +1 -0
  62. package/src/interfaces/terminal/state/useAgentControl.js +1 -0
  63. package/src/interfaces/terminal/state/useAgents.js +1 -0
  64. package/src/interfaces/terminal/state/useConnection.js +1 -0
  65. package/src/interfaces/terminal/state/useMessages.js +1 -0
  66. package/src/interfaces/terminal/state/useTools.js +1 -0
  67. package/src/interfaces/terminal/utils/debugLogger.js +1 -0
  68. package/src/interfaces/terminal/utils/settingsStorage.js +1 -0
  69. package/src/interfaces/terminal/utils/theme.js +1 -0
  70. package/src/interfaces/webServer.js +1 -2162
  71. package/src/modules/fileExplorer/controller.js +1 -280
  72. package/src/modules/fileExplorer/index.js +1 -37
  73. package/src/modules/fileExplorer/middleware.js +1 -92
  74. package/src/modules/fileExplorer/routes.js +1 -125
  75. package/src/modules/fileExplorer/types.js +1 -44
  76. package/src/services/aiService.js +1 -1232
  77. package/src/services/apiKeyManager.js +1 -164
  78. package/src/services/benchmarkService.js +1 -366
  79. package/src/services/budgetService.js +1 -539
  80. package/src/services/contextInjectionService.js +1 -247
  81. package/src/services/conversationCompactionService.js +1 -637
  82. package/src/services/errorHandler.js +1 -810
  83. package/src/services/fileAttachmentService.js +1 -544
  84. package/src/services/modelRouterService.js +1 -366
  85. package/src/services/modelsService.js +1 -322
  86. package/src/services/qualityInspector.js +1 -796
  87. package/src/services/tokenCountingService.js +1 -536
  88. package/src/tools/agentCommunicationTool.js +1 -1344
  89. package/src/tools/agentDelayTool.js +1 -485
  90. package/src/tools/asyncToolManager.js +1 -604
  91. package/src/tools/baseTool.js +1 -800
  92. package/src/tools/browserTool.js +1 -920
  93. package/src/tools/cloneDetectionTool.js +1 -621
  94. package/src/tools/dependencyResolverTool.js +1 -1215
  95. package/src/tools/fileContentReplaceTool.js +1 -875
  96. package/src/tools/fileSystemTool.js +1 -1107
  97. package/src/tools/fileTreeTool.js +1 -853
  98. package/src/tools/imageTool.js +1 -901
  99. package/src/tools/importAnalyzerTool.js +1 -1060
  100. package/src/tools/jobDoneTool.js +1 -248
  101. package/src/tools/seekTool.js +1 -956
  102. package/src/tools/staticAnalysisTool.js +1 -1778
  103. package/src/tools/taskManagerTool.js +1 -2873
  104. package/src/tools/terminalTool.js +1 -2304
  105. package/src/tools/webTool.js +1 -1430
  106. package/src/types/agent.js +1 -519
  107. package/src/types/contextReference.js +1 -972
  108. package/src/types/conversation.js +1 -730
  109. package/src/types/toolCommand.js +1 -747
  110. package/src/utilities/attachmentValidator.js +1 -292
  111. package/src/utilities/configManager.js +1 -582
  112. package/src/utilities/constants.js +1 -722
  113. package/src/utilities/directoryAccessManager.js +1 -535
  114. package/src/utilities/fileProcessor.js +1 -307
  115. package/src/utilities/logger.js +1 -436
  116. package/src/utilities/tagParser.js +1 -1246
  117. package/src/utilities/toolConstants.js +1 -317
  118. package/web-ui/build/index.html +2 -2
  119. package/web-ui/build/static/{index-Dy2bYbOa.css → index-CClD1090.css} +1 -1
  120. package/web-ui/build/static/{index-CjkkcnFA.js → index-lCBai6dX.js} +66 -67
@@ -1,722 +1 @@
1
- /**
2
- * Constants - Centralized constants and enums for the Loxia AI Agents System
3
- *
4
- * Purpose:
5
- * - Eliminate magic values throughout the codebase
6
- * - Provide centralized configuration constants
7
- * - Define enums for system states and types
8
- * - Ensure consistency across modules
9
- */
10
-
11
- // System Configuration Constants
12
- const SYSTEM_DEFAULTS = {
13
- MAX_AGENTS_PER_PROJECT: 10,
14
- QUALITY_INSPECTOR_INTERVAL: 10,
15
- DEFAULT_MODEL: 'anthropic-sonnet',
16
- STATE_DIRECTORY: '.loxia-state',
17
- MAX_PAUSE_DURATION: 300, // seconds
18
- MAX_CONTEXT_SIZE: 50000, // characters
19
- MAX_CONTEXT_REFERENCES: 10,
20
- CACHE_EXPIRY: 3600, // seconds
21
- MAX_MESSAGE_SIZE: 100000, // characters
22
- MAX_FILE_SIZE: 10485760, // 10MB
23
- MAX_ASYNC_OPERATIONS: 5,
24
- MAX_TOOL_EXECUTION_TIME: 300000, // 5 minutes
25
- MAX_CONVERSATION_LENGTH: 50000 // tokens
26
- };
27
-
28
- // Model Router Configuration
29
- const MODEL_ROUTER_CONFIG = {
30
- ROUTER_MODEL: 'autopilot-model-router', // Autopilot model router deployment
31
- CONTEXT_MESSAGES_COUNT: 5, // Number of recent messages to include
32
- BENCHMARK_REFRESH_INTERVAL: 3600000, // 1 hour in milliseconds
33
- FALLBACK_ON_ERROR: true, // Continue with previous model on router error
34
- REQUEST_TIMEOUT: 10000 // 10 seconds timeout for router requests
35
- };
36
-
37
- // Interface Types
38
- const INTERFACE_TYPES = {
39
- CLI: 'cli',
40
- WEB: 'web',
41
- VSCODE: 'vscode'
42
- };
43
-
44
- // Agent Types
45
- const AGENT_TYPES = {
46
- USER_CREATED: 'user-created',
47
- SYSTEM_AGENT: 'system-agent',
48
- AGENT_ENGINEER: 'agent-engineer'
49
- };
50
-
51
- // Agent Status
52
- const AGENT_STATUS = {
53
- ACTIVE: 'active',
54
- IDLE: 'idle',
55
- BUSY: 'busy',
56
- SUSPENDED: 'suspended',
57
- PAUSED: 'paused'
58
- };
59
-
60
- // Agent Modes
61
- const AGENT_MODES = {
62
- CHAT: 'chat', // Default: single message → single response
63
- AGENT: 'agent' // Autonomous: task → loop until complete (persistent mode)
64
- };
65
-
66
- // Agent Mode States
67
- const AGENT_MODE_STATES = {
68
- IDLE: 'idle', // Not executing anything
69
- EXECUTING: 'executing', // Currently processing autonomous task
70
- WAITING_APPROVAL: 'waiting_approval', // Paused for user approval
71
- STOPPED: 'stopped' // User stopped execution
72
- };
73
-
74
- // Message Modes
75
- const MESSAGE_MODES = {
76
- CHAT: 'chat',
77
- AGENT: 'agent'
78
- };
79
-
80
- // Message Roles
81
- const MESSAGE_ROLES = {
82
- USER: 'user',
83
- ASSISTANT: 'assistant',
84
- SYSTEM: 'system'
85
- };
86
-
87
- // Context Reference Types
88
- const CONTEXT_REFERENCE_TYPES = {
89
- FILE: 'file',
90
- COMPONENT: 'component',
91
- SELECTION: 'selection',
92
- DIRECTORY: 'directory'
93
- };
94
-
95
- // Tool Status
96
- const TOOL_STATUS = {
97
- PENDING: 'pending',
98
- EXECUTING: 'executing',
99
- COMPLETED: 'completed',
100
- FAILED: 'failed'
101
- };
102
-
103
- // Operation Status
104
- const OPERATION_STATUS = {
105
- EXECUTING: 'executing',
106
- COMPLETED: 'completed',
107
- FAILED: 'failed',
108
- NOT_FOUND: 'not_found'
109
- };
110
-
111
- // Conversation Status
112
- const CONVERSATION_STATUS = {
113
- ACTIVE: 'active',
114
- ARCHIVED: 'archived',
115
- SUSPENDED: 'suspended'
116
- };
117
-
118
- // Error Types
119
- const ERROR_TYPES = {
120
- FILE_NOT_FOUND: 'FILE_NOT_FOUND',
121
- PERMISSION_DENIED: 'PERMISSION_DENIED',
122
- OPERATION_TIMEOUT: 'OPERATION_TIMEOUT',
123
- RATE_LIMIT_EXCEEDED: 'RATE_LIMIT_EXCEEDED',
124
- AUTHENTICATION_FAILED: 'AUTHENTICATION_FAILED',
125
- UNKNOWN_ERROR: 'UNKNOWN_ERROR',
126
- VALIDATION_ERROR: 'VALIDATION_ERROR',
127
- CONFIGURATION_ERROR: 'CONFIGURATION_ERROR'
128
- };
129
-
130
- // HTTP Status Codes
131
- const HTTP_STATUS = {
132
- OK: 200,
133
- BAD_REQUEST: 400,
134
- UNAUTHORIZED: 401,
135
- FORBIDDEN: 403,
136
- NOT_FOUND: 404,
137
- TOO_MANY_REQUESTS: 429,
138
- INTERNAL_SERVER_ERROR: 500,
139
- BAD_GATEWAY: 502,
140
- SERVICE_UNAVAILABLE: 503,
141
- GATEWAY_TIMEOUT: 504
142
- };
143
-
144
- // Model Providers
145
- const MODEL_PROVIDERS = {
146
- ANTHROPIC: 'anthropic',
147
- OPENAI: 'openai',
148
- AZURE: 'azure',
149
- DEEPSEEK: 'deepseek',
150
- PHI: 'phi'
151
- };
152
-
153
- // Model Names
154
- const MODELS = { //TODO:update with moedels from server
155
- ANTHROPIC_SONNET: 'anthropic-sonnet',
156
- ANTHROPIC_OPUS: 'anthropic-opus',
157
- ANTHROPIC_HAIKU: 'anthropic-haiku',
158
- GPT_4: 'gpt-4',
159
- GPT_4_MINI: 'gpt-4-mini',
160
- DEEPSEEK_R1: 'deepseek-r1',
161
- PHI_4: 'phi-4'
162
- };
163
-
164
- // Platform Model IDs (with prefixes)
165
- const PLATFORM_MODELS = {
166
- LOXIA_ANTHROPIC_SONNET: 'loxia-anthropic-sonnet',
167
- LOXIA_ANTHROPIC_OPUS: 'loxia-anthropic-opus',
168
- LOXIA_ANTHROPIC_HAIKU: 'loxia-anthropic-haiku',
169
- LOXIA_GPT_4: 'loxia-gpt-4',
170
- LOXIA_GPT_4_MINI: 'loxia-gpt-4-mini',
171
- LOXIA_DEEPSEEK_R1: 'loxia-deepseek-r1',
172
- LOXIA_PHI_4: 'loxia-phi-4'
173
- };
174
-
175
- // Direct Access Model IDs (with prefixes)
176
- const DIRECT_MODELS = {
177
- DIRECT_ANTHROPIC_SONNET: 'direct-anthropic-sonnet',
178
- DIRECT_ANTHROPIC_OPUS: 'direct-anthropic-opus',
179
- DIRECT_ANTHROPIC_HAIKU: 'direct-anthropic-haiku',
180
- DIRECT_GPT_4: 'direct-gpt-4',
181
- DIRECT_GPT_4_MINI: 'direct-gpt-4-mini',
182
- DIRECT_DEEPSEEK_R1: 'direct-deepseek-r1',
183
- DIRECT_PHI_4: 'direct-phi-4'
184
- };
185
-
186
- // Model Format Versions
187
- const MODEL_FORMAT_VERSIONS = {
188
- [MODELS.ANTHROPIC_SONNET]: 'anthropic-v1',
189
- [MODELS.ANTHROPIC_OPUS]: 'anthropic-v1',
190
- [MODELS.ANTHROPIC_HAIKU]: 'anthropic-v1',
191
- [MODELS.GPT_4]: 'openai-v1',
192
- [MODELS.GPT_4_MINI]: 'openai-v1',
193
- [MODELS.DEEPSEEK_R1]: 'deepseek-v1',
194
- [MODELS.PHI_4]: 'phi-v1',
195
- DEFAULT: 'generic-v1'
196
- };
197
-
198
- // Model Routing Table
199
- const MODEL_ROUTING = {
200
- CODING: [MODELS.ANTHROPIC_SONNET, MODELS.GPT_4, MODELS.DEEPSEEK_R1],
201
- ANALYSIS: [MODELS.ANTHROPIC_OPUS, MODELS.GPT_4, MODELS.PHI_4],
202
- QUICK_TASKS: [MODELS.ANTHROPIC_HAIKU, MODELS.GPT_4_MINI, MODELS.PHI_4],
203
- CREATIVE: [MODELS.ANTHROPIC_OPUS, MODELS.GPT_4],
204
- FALLBACK: [MODELS.ANTHROPIC_SONNET]
205
- };
206
-
207
- // Tool Names
208
- const TOOL_NAMES = {
209
- TERMINAL: 'terminal',
210
- FILESYSTEM: 'filesystem',
211
- BROWSER: 'browser',
212
- AGENT_DELAY: 'agentdelay',
213
- EDITOR: 'editor',
214
- GIT: 'git',
215
- DATABASE: 'database'
216
- };
217
-
218
- // File Extensions and Languages
219
- const FILE_EXTENSIONS = {
220
- JAVASCRIPT: '.js',
221
- JSX: '.jsx',
222
- TYPESCRIPT: '.ts',
223
- TSX: '.tsx',
224
- PYTHON: '.py',
225
- JAVA: '.java',
226
- CPP: '.cpp',
227
- C: '.c',
228
- CSHARP: '.cs',
229
- PHP: '.php',
230
- RUBY: '.rb',
231
- GO: '.go',
232
- RUST: '.rs',
233
- HTML: '.html',
234
- CSS: '.css',
235
- SCSS: '.scss',
236
- JSON: '.json',
237
- YAML: '.yml',
238
- YAML_ALT: '.yaml',
239
- MARKDOWN: '.md',
240
- XML: '.xml',
241
- SQL: '.sql'
242
- };
243
-
244
- const LANGUAGE_MAPPING = {
245
- [FILE_EXTENSIONS.JAVASCRIPT]: 'javascript',
246
- [FILE_EXTENSIONS.JSX]: 'jsx',
247
- [FILE_EXTENSIONS.TYPESCRIPT]: 'typescript',
248
- [FILE_EXTENSIONS.TSX]: 'tsx',
249
- [FILE_EXTENSIONS.PYTHON]: 'python',
250
- [FILE_EXTENSIONS.JAVA]: 'java',
251
- [FILE_EXTENSIONS.CPP]: 'cpp',
252
- [FILE_EXTENSIONS.C]: 'c',
253
- [FILE_EXTENSIONS.CSHARP]: 'csharp',
254
- [FILE_EXTENSIONS.PHP]: 'php',
255
- [FILE_EXTENSIONS.RUBY]: 'ruby',
256
- [FILE_EXTENSIONS.GO]: 'go',
257
- [FILE_EXTENSIONS.RUST]: 'rust',
258
- [FILE_EXTENSIONS.HTML]: 'html',
259
- [FILE_EXTENSIONS.CSS]: 'css',
260
- [FILE_EXTENSIONS.SCSS]: 'scss',
261
- [FILE_EXTENSIONS.JSON]: 'json',
262
- [FILE_EXTENSIONS.YAML]: 'yaml',
263
- [FILE_EXTENSIONS.YAML_ALT]: 'yaml',
264
- [FILE_EXTENSIONS.MARKDOWN]: 'markdown',
265
- [FILE_EXTENSIONS.XML]: 'xml',
266
- [FILE_EXTENSIONS.SQL]: 'sql'
267
- };
268
-
269
- // File Icons
270
- const FILE_ICONS = {
271
- [FILE_EXTENSIONS.JAVASCRIPT]: '📜',
272
- [FILE_EXTENSIONS.JSX]: '⚛️',
273
- [FILE_EXTENSIONS.TYPESCRIPT]: '📘',
274
- [FILE_EXTENSIONS.TSX]: '⚛️',
275
- [FILE_EXTENSIONS.PYTHON]: '🐍',
276
- [FILE_EXTENSIONS.JAVA]: '☕',
277
- [FILE_EXTENSIONS.HTML]: '🌐',
278
- [FILE_EXTENSIONS.CSS]: '🎨',
279
- [FILE_EXTENSIONS.JSON]: '📋',
280
- [FILE_EXTENSIONS.MARKDOWN]: '📝',
281
- [FILE_EXTENSIONS.YAML]: '⚙️',
282
- [FILE_EXTENSIONS.YAML_ALT]: '⚙️',
283
- DEFAULT: '📄'
284
- };
285
-
286
- // Context Icons
287
- const CONTEXT_ICONS = {
288
- [CONTEXT_REFERENCE_TYPES.FILE]: '📄',
289
- [CONTEXT_REFERENCE_TYPES.COMPONENT]: '🔧',
290
- [CONTEXT_REFERENCE_TYPES.SELECTION]: '✂️',
291
- [CONTEXT_REFERENCE_TYPES.DIRECTORY]: '📁',
292
- DEFAULT: '📎'
293
- };
294
-
295
- // State File Names
296
- const STATE_FILES = {
297
- PROJECT_STATE: 'project-state.json',
298
- AGENT_INDEX: 'agent-index.json',
299
- CONVERSATION_INDEX: 'conversation-index.json',
300
- LAST_SESSION: 'last-session.json',
301
- CONTEXT_REFERENCES: 'context-references.json',
302
- ASYNC_OPERATIONS: 'operations/async-operations.json',
303
- PAUSED_AGENTS: 'operations/paused-agents.json',
304
- TOOL_HISTORY: 'operations/tool-history.json',
305
- MODEL_ROUTER_CACHE: 'models/model-router-cache.json',
306
- ERROR_RECOVERY_LOG: 'models/error-recovery-log.json'
307
- };
308
-
309
- // State Directory Structure
310
- const STATE_DIRECTORIES = {
311
- ROOT: '.loxia-state',
312
- AGENTS: 'agents',
313
- OPERATIONS: 'operations',
314
- MODELS: 'models'
315
- };
316
-
317
- // Quality Inspector Configuration
318
- const QUALITY_INSPECTOR_CONFIG = {
319
- CHECK_INTERVAL_MESSAGES: 10,
320
- STUCK_PATTERNS: [
321
- 'repetitive_commands',
322
- 'infinite_waiting',
323
- 'error_loops',
324
- 'resource_exhaustion'
325
- ],
326
- INTERVENTION_THRESHOLD: 3,
327
- COOLDOWN_PERIOD: 300000 // 5 minutes
328
- };
329
-
330
- // Orchestrator Actions
331
- const ORCHESTRATOR_ACTIONS = {
332
- CREATE_AGENT: 'create_agent',
333
- UPDATE_AGENT: 'update_agent',
334
- DELETE_AGENT: 'delete_agent',
335
- SEND_MESSAGE: 'send_message',
336
- LIST_AGENTS: 'list_agents',
337
- RESUME_SESSION: 'resume_session',
338
- GET_SESSION_STATE: 'get_session_state',
339
- PAUSE_AGENT: 'pause_agent',
340
- RESUME_AGENT: 'resume_agent',
341
- SWITCH_MODEL: 'switch_model',
342
- GET_AGENT_STATUS: 'get_agent_status',
343
- GET_AGENT_CONVERSATIONS: 'get_agent_conversations'
344
- };
345
-
346
- // Message Types
347
- const MESSAGE_TYPES = {
348
- AGENT_NOTIFICATION: 'agent_notification',
349
- AGENT_REDIRECT: 'agent_redirect',
350
- TOOL_COMPLETION: 'tool_completion',
351
- SYSTEM_MESSAGE: 'system_message',
352
- AGENT_COMMUNICATION: 'agent_communication' // Inter-agent messages
353
- };
354
-
355
- // Inter-Agent Message Processing Configuration
356
- const INTER_AGENT_MESSAGE = {
357
- // Processing priorities
358
- PRIORITY: {
359
- LOW: 'low',
360
- NORMAL: 'normal',
361
- HIGH: 'high',
362
- URGENT: 'urgent'
363
- },
364
-
365
- // Processing delays (in milliseconds) - avoid magic numbers
366
- PROCESSING_DELAY: {
367
- IMMEDIATE: 0, // Process immediately
368
- SHORT: 500, // Half second delay
369
- NORMAL: 2000, // 2 seconds delay
370
- LONG: 5000 // 5 seconds delay
371
- },
372
-
373
- // Queue and processing limits
374
- MAX_QUEUE_SIZE: 100, // Maximum messages in queue per agent
375
- MAX_PROCESSING_RETRIES: 3, // Maximum retry attempts
376
- PROCESSING_TIMEOUT: 30000, // 30 seconds timeout for processing
377
-
378
- // Auto-response configuration
379
- AUTO_RESPONSE_ENABLED: true, // Enable automatic responses
380
- REQUIRE_AGENT_MODE: false, // If true, only respond in AGENT mode
381
- PRESERVE_CONTEXT: true // Maintain conversation context during response
382
- };
383
-
384
- // Agent Redirect Attributes
385
- const AGENT_REDIRECT_ATTRIBUTES = {
386
- URGENT: 'urgent',
387
- REQUIRES_RESPONSE: 'requiresResponse',
388
- CONTEXT: 'context'
389
- };
390
-
391
- // Budget and usage tracking constants
392
- const BUDGET_LIMITS = {
393
- DAILY: 10.00, // $10 per day default
394
- WEEKLY: 50.00, // $50 per week default
395
- MONTHLY: 200.00 // $200 per month default
396
- };
397
-
398
- const COST_PER_TOKEN = {
399
- [MODELS.ANTHROPIC_SONNET]: {
400
- input: 0.000003, // $3 per 1M input tokens
401
- output: 0.000015 // $15 per 1M output tokens
402
- },
403
- [MODELS.ANTHROPIC_OPUS]: {
404
- input: 0.000015, // $15 per 1M input tokens
405
- output: 0.000075 // $75 per 1M output tokens
406
- },
407
- [MODELS.ANTHROPIC_HAIKU]: {
408
- input: 0.00000025, // $0.25 per 1M input tokens
409
- output: 0.00000125 // $1.25 per 1M output tokens
410
- },
411
- [MODELS.GPT_4]: {
412
- input: 0.000030, // $30 per 1M input tokens
413
- output: 0.000060 // $60 per 1M output tokens
414
- },
415
- [MODELS.GPT_4_MINI]: {
416
- input: 0.000000150, // $0.15 per 1M input tokens
417
- output: 0.000000600 // $0.60 per 1M output tokens
418
- },
419
- [MODELS.DEEPSEEK_R1]: {
420
- input: 0.000014, // $14 per 1M input tokens
421
- output: 0.000028 // $28 per 1M output tokens
422
- },
423
- [MODELS.PHI_4]: {
424
- input: 0.000010, // $10 per 1M input tokens
425
- output: 0.000020 // $20 per 1M output tokens
426
- }
427
- };
428
-
429
- const USAGE_ALERTS = {
430
- THRESHOLDS: [50, 75, 90, 100], // Percentage thresholds for alerts
431
- COOLDOWN_PERIOD: 3600000 // 1 hour cooldown between alerts
432
- };
433
-
434
- // WebSocket Events
435
- const WS_EVENTS = {
436
- HANDSHAKE: 'handshake',
437
- HANDSHAKE_ACK: 'handshake_ack',
438
- MESSAGE_RECEIVED: 'message_received',
439
- AGENT_UPDATED: 'agent_updated',
440
- TYPING_START: 'typing_start',
441
- TYPING_STOP: 'typing_stop',
442
- NOTIFICATION: 'notification',
443
- ERROR: 'error'
444
- };
445
-
446
- // Connection Status
447
- const CONNECTION_STATUS = {
448
- CONNECTED: 'connected',
449
- CONNECTING: 'connecting',
450
- DISCONNECTED: 'disconnected',
451
- ERROR: 'error'
452
- };
453
-
454
- // Themes
455
- const THEMES = {
456
- LIGHT: 'light',
457
- DARK: 'dark',
458
- SYSTEM: 'system'
459
- };
460
-
461
- // Notification Types
462
- const NOTIFICATION_TYPES = {
463
- INFO: 'info',
464
- SUCCESS: 'success',
465
- WARNING: 'warning',
466
- ERROR: 'error'
467
- };
468
-
469
- // Orchestrator Status
470
- const ORCHESTRATOR_STATUS = {
471
- INITIALIZING: 'initializing',
472
- RUNNING: 'running',
473
- PAUSED: 'paused',
474
- ERROR: 'error',
475
- STOPPED: 'stopped'
476
- };
477
-
478
- // Static Code Analysis Constants
479
- const STATIC_ANALYSIS = {
480
- // Error severities
481
- SEVERITY: {
482
- CRITICAL: 'critical',
483
- ERROR: 'error',
484
- WARNING: 'warning',
485
- INFO: 'info',
486
- SUGGESTION: 'suggestion'
487
- },
488
-
489
- // Error categories
490
- CATEGORY: {
491
- SYNTAX: 'syntax',
492
- TYPE: 'type',
493
- IMPORT: 'import',
494
- STYLE: 'style',
495
- SECURITY: 'security',
496
- PERFORMANCE: 'performance',
497
- BEST_PRACTICE: 'best_practice'
498
- },
499
-
500
- // Supported languages
501
- LANGUAGE: {
502
- JAVASCRIPT: 'javascript',
503
- TYPESCRIPT: 'typescript',
504
- PYTHON: 'python',
505
- CSS: 'css',
506
- SCSS: 'scss',
507
- LESS: 'less',
508
- GO: 'go',
509
- JAVA: 'java',
510
- CSHARP: 'csharp',
511
- RUBY: 'ruby',
512
- PHP: 'php',
513
- RUST: 'rust',
514
- CPP: 'cpp',
515
- C: 'c'
516
- },
517
-
518
- // File extension to language mapping
519
- EXTENSION_TO_LANGUAGE: {
520
- '.js': 'javascript',
521
- '.jsx': 'javascript',
522
- '.mjs': 'javascript',
523
- '.cjs': 'javascript',
524
- '.ts': 'typescript',
525
- '.tsx': 'typescript',
526
- '.py': 'python',
527
- '.css': 'css',
528
- '.scss': 'scss',
529
- '.sass': 'scss',
530
- '.less': 'less',
531
- '.go': 'go',
532
- '.java': 'java',
533
- '.cs': 'csharp',
534
- '.rb': 'ruby',
535
- '.php': 'php',
536
- '.rs': 'rust',
537
- '.cpp': 'cpp',
538
- '.cc': 'cpp',
539
- '.cxx': 'cpp',
540
- '.c': 'c',
541
- '.h': 'c',
542
- '.hpp': 'cpp'
543
- },
544
-
545
- // Framework manifest files
546
- FRAMEWORK_MANIFESTS: {
547
- JAVASCRIPT: 'package.json',
548
- PYTHON: 'requirements.txt',
549
- PYTHON_POETRY: 'pyproject.toml',
550
- PYTHON_PIPENV: 'Pipfile',
551
- GO: 'go.mod',
552
- JAVA_MAVEN: 'pom.xml',
553
- JAVA_GRADLE: 'build.gradle',
554
- RUBY: 'Gemfile',
555
- PHP: 'composer.json',
556
- RUST: 'Cargo.toml',
557
- CSHARP: '*.csproj'
558
- },
559
-
560
- // JavaScript/TypeScript frameworks
561
- JS_FRAMEWORKS: {
562
- REACT: 'react',
563
- VUE: 'vue',
564
- ANGULAR: '@angular/core',
565
- SVELTE: 'svelte',
566
- NEXT: 'next',
567
- NUXT: 'nuxt',
568
- EXPRESS: 'express',
569
- NEST: '@nestjs/core',
570
- FASTIFY: 'fastify',
571
- KOA: 'koa'
572
- },
573
-
574
- // Python frameworks
575
- PYTHON_FRAMEWORKS: {
576
- DJANGO: 'django',
577
- FLASK: 'flask',
578
- FASTAPI: 'fastapi',
579
- TORNADO: 'tornado',
580
- PYRAMID: 'pyramid',
581
- BOTTLE: 'bottle'
582
- },
583
-
584
- // Analysis settings
585
- MAX_FILE_SIZE_FOR_ANALYSIS: 5242880, // 5MB
586
- MAX_FILES_PER_BATCH: 100,
587
- ANALYSIS_TIMEOUT: 60000, // 60 seconds per file
588
- ENABLE_CACHE: true,
589
- CACHE_DURATION: 300000 // 5 minutes
590
- };
591
-
592
- // Conversation Compactization Configuration
593
- const COMPACTION_CONFIG = {
594
- // Thresholds and triggers
595
- DEFAULT_THRESHOLD: 0.8, // 80% of context window
596
- MIN_THRESHOLD: 0.5, // Minimum allowed threshold (50%)
597
- MAX_THRESHOLD: 0.95, // Maximum allowed threshold (95%)
598
-
599
- // Segment percentages for sandwich strategy
600
- BEGINNING_SEGMENT_PERCENTAGE: 0.15, // 15% from start
601
- END_SEGMENT_PERCENTAGE: 0.35, // 35% from end
602
- // Middle segment is the remainder (50%)
603
-
604
- // Segment percentages for truncation strategy (model switching)
605
- TRUNCATION_BEGINNING_PERCENTAGE: 0.30, // 30% from start
606
- TRUNCATION_END_PERCENTAGE: 0.50, // 50% from end
607
- // 20% gap is intentional for safety margin
608
-
609
- // Model selection for compactization
610
- COMPACTION_MODEL: 'azure-openai-o4-mini', // Primary: High token capacity (100k)
611
- COMPACTION_MODEL_FALLBACKS: [
612
- 'azure-openai-gpt-5-mini', // Fallback 1: GPT-5 mini variant
613
- 'azure-openai-gpt4-1-mini', // Fallback 2: GPT-4.1 mini variant
614
- 'azure-openai-gpt-5' // Fallback 3: Full GPT-5 model
615
- ],
616
-
617
- // Token limits for compaction operations
618
- MAX_SUMMARY_TOKENS: 4000, // Max tokens for summary generation
619
- MIN_MESSAGES_FOR_COMPACTION: 10, // Don't compact tiny conversations
620
-
621
- // Retry configuration
622
- MAX_RETRY_ATTEMPTS: 2, // Original attempt + 1 retry
623
- RETRY_DELAY_MS: 2000, // 2 seconds between retries
624
-
625
- // Aggressive compaction (for retry)
626
- AGGRESSIVE_BEGINNING_PERCENTAGE: 0.10, // 10% from start on retry
627
- AGGRESSIVE_END_PERCENTAGE: 0.30, // 30% from end on retry
628
-
629
- // Token estimation
630
- CHARS_PER_TOKEN_ESTIMATE: 4, // Rough estimate: 1 token ≈ 4 characters
631
- TOKEN_COUNT_CACHE_TTL_MS: 60000, // Cache token counts for 1 minute
632
-
633
- // Separator message
634
- COMPACTION_SEPARATOR_MESSAGE: '⋯⋯⋯ [Conversation history truncated here - middle section removed to fit context window] ⋯⋯⋯',
635
- COMPACTION_SUMMARY_PREFIX: '[CONVERSATION SUMMARY',
636
- COMPACTION_SUMMARY_SUFFIX: '[END SUMMARY]',
637
-
638
- // Timeouts
639
- COMPACTION_TIMEOUT_MS: 30000, // 30 seconds max for compaction
640
-
641
- // Quality validation
642
- MIN_REDUCTION_PERCENTAGE: 10, // Compaction must reduce by at least 10%
643
- MAX_ACCEPTABLE_TOKEN_COUNT_AFTER: 0.85, // After compaction, should be below 85% of context
644
- };
645
-
646
- // Compaction strategies
647
- const COMPACTION_STRATEGIES = {
648
- SUMMARIZATION: 'summarization', // Intelligent AI-based summarization (same model)
649
- TRUNCATION: 'truncation', // Fast extraction-based (model switching)
650
- AGGRESSIVE: 'aggressive', // More aggressive summarization (retry scenario)
651
- };
652
-
653
- // Compaction status for UI feedback
654
- const COMPACTION_STATUS = {
655
- IDLE: 'idle',
656
- STARTING: 'starting',
657
- IN_PROGRESS: 'in-progress',
658
- COMPLETED: 'completed',
659
- FAILED: 'failed',
660
- RETRYING: 'retrying',
661
- };
662
-
663
- // Token counting modes
664
- const TOKEN_COUNTING_MODES = {
665
- ACCURATE: 'accurate', // Use tiktoken (slower, accurate)
666
- ESTIMATED: 'estimated', // Character-based estimation (fast, approximate)
667
- CACHED: 'cached', // Use cached value if available
668
- };
669
-
670
- // Version
671
- const SYSTEM_VERSION = '1.0.0';
672
-
673
- // Export all constants using ES module syntax
674
- export {
675
- SYSTEM_DEFAULTS,
676
- MODEL_ROUTER_CONFIG,
677
- INTERFACE_TYPES,
678
- AGENT_TYPES,
679
- AGENT_STATUS,
680
- AGENT_MODES,
681
- AGENT_MODE_STATES,
682
- MESSAGE_MODES,
683
- MESSAGE_ROLES,
684
- CONTEXT_REFERENCE_TYPES,
685
- TOOL_STATUS,
686
- OPERATION_STATUS,
687
- CONVERSATION_STATUS,
688
- ERROR_TYPES,
689
- HTTP_STATUS,
690
- MODEL_PROVIDERS,
691
- MODELS,
692
- PLATFORM_MODELS,
693
- DIRECT_MODELS,
694
- MODEL_FORMAT_VERSIONS,
695
- MODEL_ROUTING,
696
- TOOL_NAMES,
697
- FILE_EXTENSIONS,
698
- LANGUAGE_MAPPING,
699
- FILE_ICONS,
700
- CONTEXT_ICONS,
701
- STATE_FILES,
702
- STATE_DIRECTORIES,
703
- QUALITY_INSPECTOR_CONFIG,
704
- ORCHESTRATOR_ACTIONS,
705
- MESSAGE_TYPES,
706
- INTER_AGENT_MESSAGE,
707
- AGENT_REDIRECT_ATTRIBUTES,
708
- BUDGET_LIMITS,
709
- COST_PER_TOKEN,
710
- USAGE_ALERTS,
711
- WS_EVENTS,
712
- CONNECTION_STATUS,
713
- THEMES,
714
- NOTIFICATION_TYPES,
715
- ORCHESTRATOR_STATUS,
716
- STATIC_ANALYSIS,
717
- COMPACTION_CONFIG,
718
- COMPACTION_STRATEGIES,
719
- COMPACTION_STATUS,
720
- TOKEN_COUNTING_MODES,
721
- SYSTEM_VERSION
722
- };
1
+ function a0_0x5a9d(){const _0x2855fc=['C2nZCW','BgLNAhq','Bw9KzwXZl21VzgvSlxjVDxrLCI1JywnOzs5QC29U','DxbKyxrLx2fNzw50','z2v0x2fNzw50x2nVBNzLCNnHDgLVBNm','CgHP','yxP1CMu','C3fS','ywDLBNrZ','lMH0BwW','qu5usfjpueLdx0HbsuTv','ufLuse9o','AgLNAa','ChL0Ag9U','lNbOCa','Bg94AweTCgHPltq','oty4mdG1mfv1ALfUyq','B3bLBMfPlxyX','zgLYzwn0lwrLzxbZzwvRlxiX','zgLYzwn0lwfUDgHYB3bPyY1OywLRDq','C3rHCNrPBMC','lMXVEgLHlxn0yxrL','lNrZ','Cgf1C2vFywDLBNq','sfrnta','Bg93','sLny','q09orKLhvvjbveLptL9fuLjpuG','zxHLy3v0Aw5N','Bw9KzwXZl2vYCM9YlxjLy292zxj5lwXVzY5QC29U','Bg94AweTz3b0ltq','mJbdyMvmDeO','CNvZDa','u0ntuW','C2vUzf9TzxnZywDL','qu5usfjpueLdx09qvvm','r1buxZq','Dg9YBMfKBW','yM90DgXL','CMvXDwLYzxnszxnWB25Zzq','zgLZy29UBMvJDgvK','vfLqrvnduKLqva','ywDLBNrFBM90AwzPy2f0Aw9U','nJq3mZaZwunQzMLW','C3vZCgvUzgvK','DNnJB2rL','y2XP','EwfTBa','ndq4ugnSDMXX','AwrSzq','ywDLBNqTAw5KzxGUANnVBG','wufntf9btfq','sKfwqvnduKLqva','ntK1AM5gruXs','reLsrunut1jz','yw50AhjVCgLJlxyX','y3jPDgLJywW','ChLWCM9Qzwn0lNrVBwW','BgvZCW','lNrZEa','4OUV4OUV4OUVifTdB252zxjZyxrPB24GAgLZDg9YEsb0CNvUy2f0zwqGAgvYzsaTig1PzgrSzsbZzwn0Aw9UihjLBw92zwqGDg8GzML0ignVBNrLEhqGD2LUzg93xsdII6/II6/II68','qgfUz3vSyxiVy29Yzq','BNv4Da','y3jLyxrLx2fNzw50','y3nOyxjW','ywDLBNrKzwXHEq','zMLSzq','DhLWAw5Nx3n0B3a','zxjYB3i','C3LZDgvTlwfNzw50','CgvUzgLUzW','ndiZnxbTA0zgrq','y29UBMvJDgLUzW','D2fYBMLUzW','sKfwqq','yw50AhjVCgLJlxnVBM5LDa','ANnVBG','zgvSzxrLx2fNzw50','yw50AhjVCgLJlwHHAwT1','DNvL','BgfZDc1ZzxnZAw9UlMPZB24','sLnptG','q2fYz28UDg9TBa','Aw5MBW','yw50AhjVCgLJ','z3b0ltqTBwLUAq','qu5usfjpueLdx1nptK5fva','zwrPDg9Y','D2fPDgLUz19HChbYB3zHBa','CMv0CNLPBMC','lMDV','Dhj1BMnHDgLVBG','C2vSzwn0Aw9U','Aw5PDgLHBgL6Aw5N','zgLYzwn0lwDWDc00lw1PBMK','yxjJAgL2zwq','qg5LC3rQCY9JB3jL','mty2ngPysvLtAW','w0nptLzfuLnbveLptIbtvu1nqvjz','rKLmrq','DgvYBwLUywW','nZmYEeTTs3nO','y29UDgv4Dc1YzwzLCMvUy2vZlMPZB24','y29TCg9Uzw50','Cgf1C2vK','AMf2yq','AgfUzhnOywTLx2fJAW','zxjYB3jFBg9VChm','y2HHDa','u1fm','B3bLCMf0Aw9UCY9WyxvZzwqTywDLBNrZlMPZB24','we1m','yxP1CMuTB3bLBMfPlw80lw1PBMK','C3vJy2vZCW','yxP1CMuTB3bLBMfPlwDWDc01lw1PBMK','zMLSzxn5C3rLBq','ndeYodqXv2PyCKzu','ywDLBNq','vfny','r2vTzMLSzq','w0vorcbtvu1nqvjzxq','nJu3nMTgvhnoDq','ugLWzMLSzq','lNb5','lMnWCa','y29TCg9ZzxiUANnVBG','nda2mZG0mLDuzKvSsW','C3rVChbLza','y29TCgXLDgvK','C3LZDgvT','DhLWzxnJCMLWDa','DxjNzw50','uKfurv9msu1jvf9fwenfrurfra','Aw4TChjVz3jLC3m','BMv4Da','Bg94AweTyw50AhjVCgLJlw9WDxm','revfufnfruTFuJe','B3bLBMfP','tufss0rpv04','lNjZ','y3bW','ueHjxZq','zgLYzwn0B3j5','D2vI','AMf2yxnJCMLWDa','ywn0AxzL','Eg1S','q1nt','y3nZ','r1buxZrFtuLosq','CMvWzxrPDgL2zv9JB21Tyw5KCW','wufnta','ms4WlJa'];a0_0x5a9d=function(){return _0x2855fc;};return a0_0x5a9d();}const a0_0xbda9a0=a0_0x3206;function a0_0x3206(_0x3efd3c,_0xa3dfa5){_0x3efd3c=_0x3efd3c-0x1c1;const _0x5a9d13=a0_0x5a9d();let _0x32064a=_0x5a9d13[_0x3efd3c];if(a0_0x3206['sElvcz']===undefined){var _0x5b6ba5=function(_0x41817a){const _0x5b9422='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2fb110='',_0x4bbe74='';for(let _0x320eb0=0x0,_0x382af1,_0x4d0b5d,_0x352486=0x0;_0x4d0b5d=_0x41817a['charAt'](_0x352486++);~_0x4d0b5d&&(_0x382af1=_0x320eb0%0x4?_0x382af1*0x40+_0x4d0b5d:_0x4d0b5d,_0x320eb0++%0x4)?_0x2fb110+=String['fromCharCode'](0xff&_0x382af1>>(-0x2*_0x320eb0&0x6)):0x0){_0x4d0b5d=_0x5b9422['indexOf'](_0x4d0b5d);}for(let _0x1114ac=0x0,_0xb10b9=_0x2fb110['length'];_0x1114ac<_0xb10b9;_0x1114ac++){_0x4bbe74+='%'+('00'+_0x2fb110['charCodeAt'](_0x1114ac)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4bbe74);};a0_0x3206['ZoGmFg']=_0x5b6ba5,a0_0x3206['QGVwsX']={},a0_0x3206['sElvcz']=!![];}const _0x16bf9a=_0x5a9d13[0x0],_0x40f0b6=_0x3efd3c+_0x16bf9a,_0x3063f4=a0_0x3206['QGVwsX'][_0x40f0b6];return!_0x3063f4?(_0x32064a=a0_0x3206['ZoGmFg'](_0x32064a),a0_0x3206['QGVwsX'][_0x40f0b6]=_0x32064a):_0x32064a=_0x3063f4,_0x32064a;}(function(_0x408d9d,_0x14a2b8){const _0x531749=a0_0x3206,_0xa9de89=_0x408d9d();while(!![]){try{const _0x493e5a=parseInt(_0x531749(0x201))/0x1+-parseInt(_0x531749(0x206))/0x2*(-parseInt(_0x531749(0x23b))/0x3)+-parseInt(_0x531749(0x24f))/0x4*(-parseInt(_0x531749(0x20b))/0x5)+parseInt(_0x531749(0x254))/0x6+parseInt(_0x531749(0x21d))/0x7*(parseInt(_0x531749(0x237))/0x8)+-parseInt(_0x531749(0x1e6))/0x9+-parseInt(_0x531749(0x1f5))/0xa*(parseInt(_0x531749(0x24a))/0xb);if(_0x493e5a===_0x14a2b8)break;else _0xa9de89['push'](_0xa9de89['shift']());}catch(_0x1b31b8){_0xa9de89['push'](_0xa9de89['shift']());}}}(a0_0x5a9d,0x8648e));const SYSTEM_DEFAULTS={'MAX_AGENTS_PER_PROJECT':0xa,'QUALITY_INSPECTOR_INTERVAL':0xa,'DEFAULT_MODEL':a0_0xbda9a0(0x221),'STATE_DIRECTORY':a0_0xbda9a0(0x1eb),'MAX_PAUSE_DURATION':0x12c,'MAX_CONTEXT_SIZE':0xc350,'MAX_CONTEXT_REFERENCES':0xa,'CACHE_EXPIRY':0xe10,'MAX_MESSAGE_SIZE':0x186a0,'MAX_FILE_SIZE':0xa00000,'MAX_ASYNC_OPERATIONS':0x5,'MAX_TOOL_EXECUTION_TIME':0x493e0,'MAX_CONVERSATION_LENGTH':0xc350},MODEL_ROUTER_CONFIG={'ROUTER_MODEL':'autopilot-model-router','CONTEXT_MESSAGES_COUNT':0x5,'BENCHMARK_REFRESH_INTERVAL':0x36ee80,'FALLBACK_ON_ERROR':!![],'REQUEST_TIMEOUT':0x2710},INTERFACE_TYPES={'CLI':a0_0xbda9a0(0x204),'WEB':a0_0xbda9a0(0x1cc),'VSCODE':a0_0xbda9a0(0x203)},AGENT_TYPES={'USER_CREATED':'user-created','SYSTEM_AGENT':a0_0xbda9a0(0x21b),'AGENT_ENGINEER':'agent-engineer'},AGENT_STATUS={'ACTIVE':a0_0xbda9a0(0x1ce),'IDLE':a0_0xbda9a0(0x207),'BUSY':'busy','SUSPENDED':a0_0xbda9a0(0x202),'PAUSED':a0_0xbda9a0(0x23e)},AGENT_MODES={'CHAT':a0_0xbda9a0(0x242),'AGENT':a0_0xbda9a0(0x24b)},AGENT_MODE_STATES={'IDLE':'idle','EXECUTING':a0_0xbda9a0(0x1f2),'WAITING_APPROVAL':a0_0xbda9a0(0x22e),'STOPPED':a0_0xbda9a0(0x255)},MESSAGE_MODES={'CHAT':a0_0xbda9a0(0x242),'AGENT':a0_0xbda9a0(0x24b)},MESSAGE_ROLES={'USER':'user','ASSISTANT':'assistant','SYSTEM':a0_0xbda9a0(0x257)},CONTEXT_REFERENCE_TYPES={'FILE':a0_0xbda9a0(0x218),'COMPONENT':a0_0xbda9a0(0x23d),'SELECTION':a0_0xbda9a0(0x232),'DIRECTORY':a0_0xbda9a0(0x1cb)},TOOL_STATUS={'PENDING':a0_0xbda9a0(0x21c),'EXECUTING':'executing','COMPLETED':'completed','FAILED':'failed'},OPERATION_STATUS={'EXECUTING':'executing','COMPLETED':a0_0xbda9a0(0x256),'FAILED':'failed','NOT_FOUND':'not_found'},CONVERSATION_STATUS={'ACTIVE':a0_0xbda9a0(0x1ce),'ARCHIVED':a0_0xbda9a0(0x235),'SUSPENDED':'suspended'},ERROR_TYPES={'FILE_NOT_FOUND':'FILE_NOT_FOUND','PERMISSION_DENIED':'PERMISSION_DENIED','OPERATION_TIMEOUT':'OPERATION_TIMEOUT','RATE_LIMIT_EXCEEDED':a0_0xbda9a0(0x1c1),'AUTHENTICATION_FAILED':'AUTHENTICATION_FAILED','UNKNOWN_ERROR':'UNKNOWN_ERROR','VALIDATION_ERROR':'VALIDATION_ERROR','CONFIGURATION_ERROR':a0_0xbda9a0(0x1f1)},HTTP_STATUS={'OK':0xc8,'BAD_REQUEST':0x190,'UNAUTHORIZED':0x191,'FORBIDDEN':0x193,'NOT_FOUND':0x194,'TOO_MANY_REQUESTS':0x1ad,'INTERNAL_SERVER_ERROR':0x1f4,'BAD_GATEWAY':0x1f6,'SERVICE_UNAVAILABLE':0x1f7,'GATEWAY_TIMEOUT':0x1f8},MODEL_PROVIDERS={'ANTHROPIC':a0_0xbda9a0(0x22a),'OPENAI':a0_0xbda9a0(0x1c6),'AZURE':a0_0xbda9a0(0x1dc),'DEEPSEEK':'deepseek','PHI':a0_0xbda9a0(0x1db)},MODELS={'ANTHROPIC_SONNET':a0_0xbda9a0(0x221),'ANTHROPIC_OPUS':'anthropic-opus','ANTHROPIC_HAIKU':a0_0xbda9a0(0x224),'GPT_4':'gpt-4','GPT_4_MINI':a0_0xbda9a0(0x22b),'DEEPSEEK_R1':'deepseek-r1','PHI_4':'phi-4'},PLATFORM_MODELS={'LOXIA_ANTHROPIC_SONNET':'loxia-anthropic-sonnet','LOXIA_ANTHROPIC_OPUS':a0_0xbda9a0(0x1c4),'LOXIA_ANTHROPIC_HAIKU':'loxia-anthropic-haiku','LOXIA_GPT_4':a0_0xbda9a0(0x1f4),'LOXIA_GPT_4_MINI':'loxia-gpt-4-mini','LOXIA_DEEPSEEK_R1':'loxia-deepseek-r1','LOXIA_PHI_4':a0_0xbda9a0(0x1e5)},DIRECT_MODELS={'DIRECT_ANTHROPIC_SONNET':'direct-anthropic-sonnet','DIRECT_ANTHROPIC_OPUS':'direct-anthropic-opus','DIRECT_ANTHROPIC_HAIKU':a0_0xbda9a0(0x1e9),'DIRECT_GPT_4':'direct-gpt-4','DIRECT_GPT_4_MINI':a0_0xbda9a0(0x234),'DIRECT_DEEPSEEK_R1':a0_0xbda9a0(0x1e8),'DIRECT_PHI_4':'direct-phi-4'},MODEL_FORMAT_VERSIONS={[MODELS['ANTHROPIC_SONNET']]:a0_0xbda9a0(0x20d),[MODELS[a0_0xbda9a0(0x1f9)]]:a0_0xbda9a0(0x20d),[MODELS[a0_0xbda9a0(0x1e0)]]:a0_0xbda9a0(0x20d),[MODELS['GPT_4']]:a0_0xbda9a0(0x1e7),[MODELS['GPT_4_MINI']]:a0_0xbda9a0(0x1e7),[MODELS[a0_0xbda9a0(0x1c5)]]:'deepseek-v1',[MODELS['PHI_4']]:'phi-v1','DEFAULT':'generic-v1'},MODEL_ROUTING={'CODING':[MODELS[a0_0xbda9a0(0x22c)],MODELS['GPT_4'],MODELS['DEEPSEEK_R1']],'ANALYSIS':[MODELS['ANTHROPIC_OPUS'],MODELS['GPT_4'],MODELS[a0_0xbda9a0(0x1ca)]],'QUICK_TASKS':[MODELS['ANTHROPIC_HAIKU'],MODELS['GPT_4_MINI'],MODELS['PHI_4']],'CREATIVE':[MODELS[a0_0xbda9a0(0x1f9)],MODELS['GPT_4']],'FALLBACK':[MODELS['ANTHROPIC_SONNET']]},TOOL_NAMES={'TERMINAL':a0_0xbda9a0(0x23a),'FILESYSTEM':a0_0xbda9a0(0x249),'BROWSER':'browser','AGENT_DELAY':a0_0xbda9a0(0x217),'EDITOR':a0_0xbda9a0(0x22d),'GIT':'git','DATABASE':'database'},FILE_EXTENSIONS={'JAVASCRIPT':'.js','JSX':'.jsx','TYPESCRIPT':a0_0xbda9a0(0x1ec),'TSX':a0_0xbda9a0(0x211),'PYTHON':a0_0xbda9a0(0x251),'JAVA':'.java','CPP':a0_0xbda9a0(0x252),'C':'.c','CSHARP':'.cs','PHP':a0_0xbda9a0(0x1e4),'RUBY':'.rb','GO':a0_0xbda9a0(0x230),'RUST':a0_0xbda9a0(0x1c8),'HTML':a0_0xbda9a0(0x1df),'CSS':'.css','SCSS':'.scss','JSON':'.json','YAML':'.yml','YAML_ALT':'.yaml','MARKDOWN':'.md','XML':'.xml','SQL':'.sql'},LANGUAGE_MAPPING={[FILE_EXTENSIONS[a0_0xbda9a0(0x20a)]]:'javascript',[FILE_EXTENSIONS['JSX']]:'jsx',[FILE_EXTENSIONS[a0_0xbda9a0(0x1ff)]]:a0_0xbda9a0(0x258),[FILE_EXTENSIONS[a0_0xbda9a0(0x24c)]]:'tsx',[FILE_EXTENSIONS[a0_0xbda9a0(0x1e1)]]:a0_0xbda9a0(0x1e3),[FILE_EXTENSIONS[a0_0xbda9a0(0x220)]]:a0_0xbda9a0(0x23f),[FILE_EXTENSIONS['CPP']]:'cpp',[FILE_EXTENSIONS['C']]:'c',[FILE_EXTENSIONS['CSHARP']]:a0_0xbda9a0(0x216),[FILE_EXTENSIONS['PHP']]:'php',[FILE_EXTENSIONS['RUBY']]:'ruby',[FILE_EXTENSIONS['GO']]:'go',[FILE_EXTENSIONS['RUST']]:'rust',[FILE_EXTENSIONS[a0_0xbda9a0(0x1ee)]]:'html',[FILE_EXTENSIONS['CSS']]:a0_0xbda9a0(0x1d1),[FILE_EXTENSIONS[a0_0xbda9a0(0x1f7)]]:a0_0xbda9a0(0x1d6),[FILE_EXTENSIONS[a0_0xbda9a0(0x227)]]:a0_0xbda9a0(0x222),[FILE_EXTENSIONS[a0_0xbda9a0(0x1d4)]]:a0_0xbda9a0(0x205),[FILE_EXTENSIONS['YAML_ALT']]:'yaml',[FILE_EXTENSIONS[a0_0xbda9a0(0x1c7)]]:'markdown',[FILE_EXTENSIONS[a0_0xbda9a0(0x245)]]:a0_0xbda9a0(0x1cf),[FILE_EXTENSIONS[a0_0xbda9a0(0x243)]]:a0_0xbda9a0(0x1dd)},FILE_ICONS={[FILE_EXTENSIONS['JAVASCRIPT']]:'📜',[FILE_EXTENSIONS[a0_0xbda9a0(0x1f0)]]:'⚛️',[FILE_EXTENSIONS[a0_0xbda9a0(0x1ff)]]:'📘',[FILE_EXTENSIONS['TSX']]:'⚛️',[FILE_EXTENSIONS['PYTHON']]:'🐍',[FILE_EXTENSIONS[a0_0xbda9a0(0x220)]]:'☕',[FILE_EXTENSIONS['HTML']]:'🌐',[FILE_EXTENSIONS[a0_0xbda9a0(0x1d0)]]:'🎨',[FILE_EXTENSIONS[a0_0xbda9a0(0x227)]]:'📋',[FILE_EXTENSIONS['MARKDOWN']]:'📝',[FILE_EXTENSIONS[a0_0xbda9a0(0x1d4)]]:'⚙️',[FILE_EXTENSIONS[a0_0xbda9a0(0x209)]]:'⚙️','DEFAULT':'📄'},CONTEXT_ICONS={[CONTEXT_REFERENCE_TYPES[a0_0xbda9a0(0x239)]]:'📄',[CONTEXT_REFERENCE_TYPES['COMPONENT']]:'🔧',[CONTEXT_REFERENCE_TYPES['SELECTION']]:'✂️',[CONTEXT_REFERENCE_TYPES[a0_0xbda9a0(0x20c)]]:'📁','DEFAULT':'📎'},STATE_FILES={'PROJECT_STATE':'project-state.json','AGENT_INDEX':a0_0xbda9a0(0x208),'CONVERSATION_INDEX':'conversation-index.json','LAST_SESSION':a0_0xbda9a0(0x226),'CONTEXT_REFERENCES':a0_0xbda9a0(0x23c),'ASYNC_OPERATIONS':'operations/async-operations.json','PAUSED_AGENTS':a0_0xbda9a0(0x244),'TOOL_HISTORY':'operations/tool-history.json','MODEL_ROUTER_CACHE':a0_0xbda9a0(0x1d8),'ERROR_RECOVERY_LOG':a0_0xbda9a0(0x1f3)},STATE_DIRECTORIES={'ROOT':a0_0xbda9a0(0x1eb),'AGENTS':a0_0xbda9a0(0x1de),'OPERATIONS':'operations','MODELS':'models'},QUALITY_INSPECTOR_CONFIG={'CHECK_INTERVAL_MESSAGES':0xa,'STUCK_PATTERNS':[a0_0xbda9a0(0x1d3),'infinite_waiting',a0_0xbda9a0(0x241),'resource_exhaustion'],'INTERVENTION_THRESHOLD':0x3,'COOLDOWN_PERIOD':0x493e0},ORCHESTRATOR_ACTIONS={'CREATE_AGENT':a0_0xbda9a0(0x215),'UPDATE_AGENT':a0_0xbda9a0(0x1d9),'DELETE_AGENT':a0_0xbda9a0(0x223),'SEND_MESSAGE':a0_0xbda9a0(0x1f8),'LIST_AGENTS':'list_agents','RESUME_SESSION':'resume_session','GET_SESSION_STATE':'get_session_state','PAUSE_AGENT':a0_0xbda9a0(0x1ed),'RESUME_AGENT':'resume_agent','SWITCH_MODEL':'switch_model','GET_AGENT_STATUS':'get_agent_status','GET_AGENT_CONVERSATIONS':a0_0xbda9a0(0x1da)},MESSAGE_TYPES={'AGENT_NOTIFICATION':a0_0xbda9a0(0x200),'AGENT_REDIRECT':'agent_redirect','TOOL_COMPLETION':'tool_completion','SYSTEM_MESSAGE':'system_message','AGENT_COMMUNICATION':'agent_communication'},INTER_AGENT_MESSAGE={'PRIORITY':{'LOW':a0_0xbda9a0(0x1ef),'NORMAL':'normal','HIGH':a0_0xbda9a0(0x1e2),'URGENT':a0_0xbda9a0(0x259)},'PROCESSING_DELAY':{'IMMEDIATE':0x0,'SHORT':0x1f4,'NORMAL':0x7d0,'LONG':0x1388},'MAX_QUEUE_SIZE':0x64,'MAX_PROCESSING_RETRIES':0x3,'PROCESSING_TIMEOUT':0x7530,'AUTO_RESPONSE_ENABLED':!![],'REQUIRE_AGENT_MODE':![],'PRESERVE_CONTEXT':!![]},AGENT_REDIRECT_ATTRIBUTES={'URGENT':'urgent','REQUIRES_RESPONSE':a0_0xbda9a0(0x1fd),'CONTEXT':'context'},BUDGET_LIMITS={'DAILY':0xa,'WEEKLY':0x32,'MONTHLY':0xc8},COST_PER_TOKEN={[MODELS[a0_0xbda9a0(0x22c)]]:{'input':0.000003,'output':0.000015},[MODELS['ANTHROPIC_OPUS']]:{'input':0.000015,'output':0.000075},[MODELS[a0_0xbda9a0(0x1e0)]]:{'input':2.5e-7,'output':0.00000125},[MODELS[a0_0xbda9a0(0x1fa)]]:{'input':0.00003,'output':0.00006},[MODELS[a0_0xbda9a0(0x1d2)]]:{'input':1.5e-7,'output':6e-7},[MODELS['DEEPSEEK_R1']]:{'input':0.000014,'output':0.000028},[MODELS[a0_0xbda9a0(0x1ca)]]:{'input':0.00001,'output':0.00002}},USAGE_ALERTS={'THRESHOLDS':[0x32,0x4b,0x5a,0x64],'COOLDOWN_PERIOD':0x36ee80},WS_EVENTS={'HANDSHAKE':'handshake','HANDSHAKE_ACK':a0_0xbda9a0(0x240),'MESSAGE_RECEIVED':'message_received','AGENT_UPDATED':'agent_updated','TYPING_START':'typing_start','TYPING_STOP':a0_0xbda9a0(0x219),'NOTIFICATION':'notification','ERROR':'error'},CONNECTION_STATUS={'CONNECTED':'connected','CONNECTING':a0_0xbda9a0(0x21e),'DISCONNECTED':a0_0xbda9a0(0x1fe),'ERROR':a0_0xbda9a0(0x21a)},THEMES={'LIGHT':a0_0xbda9a0(0x1d7),'DARK':'dark','SYSTEM':'system'},NOTIFICATION_TYPES={'INFO':a0_0xbda9a0(0x229),'SUCCESS':a0_0xbda9a0(0x247),'WARNING':a0_0xbda9a0(0x21f),'ERROR':a0_0xbda9a0(0x21a)},ORCHESTRATOR_STATUS={'INITIALIZING':a0_0xbda9a0(0x233),'RUNNING':'running','PAUSED':a0_0xbda9a0(0x23e),'ERROR':'error','STOPPED':'stopped'},STATIC_ANALYSIS={'SEVERITY':{'CRITICAL':a0_0xbda9a0(0x20e),'ERROR':a0_0xbda9a0(0x21a),'WARNING':'warning','INFO':'info','SUGGESTION':'suggestion'},'CATEGORY':{'SYNTAX':'syntax','TYPE':'type','IMPORT':'import','STYLE':'style','SECURITY':'security','PERFORMANCE':'performance','BEST_PRACTICE':'best_practice'},'LANGUAGE':{'JAVASCRIPT':a0_0xbda9a0(0x1cd),'TYPESCRIPT':'typescript','PYTHON':a0_0xbda9a0(0x1e3),'CSS':'css','SCSS':'scss','LESS':a0_0xbda9a0(0x210),'GO':'go','JAVA':a0_0xbda9a0(0x23f),'CSHARP':'csharp','RUBY':'ruby','PHP':'php','RUST':'rust','CPP':'cpp','C':'c'},'EXTENSION_TO_LANGUAGE':{'.js':'javascript','.jsx':a0_0xbda9a0(0x1cd),'.mjs':a0_0xbda9a0(0x1cd),'.cjs':'javascript','.ts':'typescript','.tsx':'typescript','.py':'python','.css':'css','.scss':a0_0xbda9a0(0x1d6),'.sass':a0_0xbda9a0(0x1d6),'.less':'less','.go':'go','.java':'java','.cs':a0_0xbda9a0(0x216),'.rb':'ruby','.php':'php','.rs':a0_0xbda9a0(0x1f6),'.cpp':a0_0xbda9a0(0x1c9),'.cc':a0_0xbda9a0(0x1c9),'.cxx':a0_0xbda9a0(0x1c9),'.c':'c','.h':'c','.hpp':'cpp'},'FRAMEWORK_MANIFESTS':{'JAVASCRIPT':'package.json','PYTHON':'requirements.txt','PYTHON_POETRY':a0_0xbda9a0(0x20f),'PYTHON_PIPENV':a0_0xbda9a0(0x250),'GO':'go.mod','JAVA_MAVEN':'pom.xml','JAVA_GRADLE':'build.gradle','RUBY':a0_0xbda9a0(0x24d),'PHP':a0_0xbda9a0(0x253),'RUST':a0_0xbda9a0(0x228),'CSHARP':'*.csproj'},'JS_FRAMEWORKS':{'REACT':'react','VUE':a0_0xbda9a0(0x225),'ANGULAR':a0_0xbda9a0(0x213),'SVELTE':'svelte','NEXT':a0_0xbda9a0(0x1c3),'NUXT':a0_0xbda9a0(0x214),'EXPRESS':'express','NEST':a0_0xbda9a0(0x236),'FASTIFY':'fastify','KOA':'koa'},'PYTHON_FRAMEWORKS':{'DJANGO':'django','FLASK':'flask','FASTAPI':'fastapi','TORNADO':a0_0xbda9a0(0x1fb),'PYRAMID':'pyramid','BOTTLE':a0_0xbda9a0(0x1fc)},'MAX_FILE_SIZE_FOR_ANALYSIS':0x500000,'MAX_FILES_PER_BATCH':0x64,'ANALYSIS_TIMEOUT':0xea60,'ENABLE_CACHE':!![],'CACHE_DURATION':0x493e0},COMPACTION_CONFIG={'DEFAULT_THRESHOLD':0.8,'MIN_THRESHOLD':0.5,'MAX_THRESHOLD':0.95,'BEGINNING_SEGMENT_PERCENTAGE':0.15,'END_SEGMENT_PERCENTAGE':0.35,'TRUNCATION_BEGINNING_PERCENTAGE':0.3,'TRUNCATION_END_PERCENTAGE':0.5,'COMPACTION_MODEL':a0_0xbda9a0(0x246),'COMPACTION_MODEL_FALLBACKS':[a0_0xbda9a0(0x248),'azure-openai-gpt4-1-mini','azure-openai-gpt-5'],'MAX_SUMMARY_TOKENS':0xfa0,'MIN_MESSAGES_FOR_COMPACTION':0xa,'MAX_RETRY_ATTEMPTS':0x2,'RETRY_DELAY_MS':0x7d0,'AGGRESSIVE_BEGINNING_PERCENTAGE':0.1,'AGGRESSIVE_END_PERCENTAGE':0.3,'CHARS_PER_TOKEN_ESTIMATE':0x4,'TOKEN_COUNT_CACHE_TTL_MS':0xea60,'COMPACTION_SEPARATOR_MESSAGE':a0_0xbda9a0(0x212),'COMPACTION_SUMMARY_PREFIX':a0_0xbda9a0(0x238),'COMPACTION_SUMMARY_SUFFIX':a0_0xbda9a0(0x24e),'COMPACTION_TIMEOUT_MS':0x7530,'MIN_REDUCTION_PERCENTAGE':0xa,'MAX_ACCEPTABLE_TOKEN_COUNT_AFTER':0.85},COMPACTION_STRATEGIES={'SUMMARIZATION':'summarization','TRUNCATION':a0_0xbda9a0(0x231),'AGGRESSIVE':'aggressive'},COMPACTION_STATUS={'IDLE':'idle','STARTING':a0_0xbda9a0(0x1ea),'IN_PROGRESS':a0_0xbda9a0(0x1c2),'COMPLETED':'completed','FAILED':'failed','RETRYING':a0_0xbda9a0(0x22f)},TOKEN_COUNTING_MODES={'ACCURATE':'accurate','ESTIMATED':'estimated','CACHED':'cached'},SYSTEM_VERSION=a0_0xbda9a0(0x1d5);export{SYSTEM_DEFAULTS,MODEL_ROUTER_CONFIG,INTERFACE_TYPES,AGENT_TYPES,AGENT_STATUS,AGENT_MODES,AGENT_MODE_STATES,MESSAGE_MODES,MESSAGE_ROLES,CONTEXT_REFERENCE_TYPES,TOOL_STATUS,OPERATION_STATUS,CONVERSATION_STATUS,ERROR_TYPES,HTTP_STATUS,MODEL_PROVIDERS,MODELS,PLATFORM_MODELS,DIRECT_MODELS,MODEL_FORMAT_VERSIONS,MODEL_ROUTING,TOOL_NAMES,FILE_EXTENSIONS,LANGUAGE_MAPPING,FILE_ICONS,CONTEXT_ICONS,STATE_FILES,STATE_DIRECTORIES,QUALITY_INSPECTOR_CONFIG,ORCHESTRATOR_ACTIONS,MESSAGE_TYPES,INTER_AGENT_MESSAGE,AGENT_REDIRECT_ATTRIBUTES,BUDGET_LIMITS,COST_PER_TOKEN,USAGE_ALERTS,WS_EVENTS,CONNECTION_STATUS,THEMES,NOTIFICATION_TYPES,ORCHESTRATOR_STATUS,STATIC_ANALYSIS,COMPACTION_CONFIG,COMPACTION_STRATEGIES,COMPACTION_STATUS,TOKEN_COUNTING_MODES,SYSTEM_VERSION};