erosolar-cli 1.5.3 → 1.5.4

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 (327) hide show
  1. package/config/security-deployment.json +54 -0
  2. package/dist/bin/adapters/node/index.js +33 -0
  3. package/dist/bin/adapters/types.js +1 -0
  4. package/dist/bin/alpha-zero/agentWrapper.js +165 -0
  5. package/dist/bin/alpha-zero/codeEvaluator.js +272 -0
  6. package/dist/bin/alpha-zero/competitiveRunner.js +219 -0
  7. package/dist/bin/alpha-zero/index.js +98 -0
  8. package/dist/bin/alpha-zero/introspection.js +298 -0
  9. package/dist/bin/alpha-zero/metricsTracker.js +207 -0
  10. package/dist/bin/alpha-zero/security/core.js +269 -0
  11. package/dist/bin/alpha-zero/security/google.js +308 -0
  12. package/dist/bin/alpha-zero/security/googleLoader.js +40 -0
  13. package/dist/bin/alpha-zero/security/index.js +31 -0
  14. package/dist/bin/alpha-zero/security/simulation.js +274 -0
  15. package/dist/bin/alpha-zero/selfModification.js +231 -0
  16. package/dist/bin/alpha-zero/types.js +30 -0
  17. package/dist/bin/bin/erosolar-optimized.js +205 -0
  18. package/dist/bin/capabilities/agentSpawningCapability.js +116 -0
  19. package/dist/bin/capabilities/bashCapability.js +22 -0
  20. package/dist/bin/capabilities/cloudCapability.js +36 -0
  21. package/dist/bin/capabilities/codeAnalysisCapability.js +22 -0
  22. package/dist/bin/capabilities/codeQualityCapability.js +23 -0
  23. package/dist/bin/capabilities/dependencySecurityCapability.js +22 -0
  24. package/dist/bin/capabilities/devCapability.js +22 -0
  25. package/dist/bin/capabilities/editCapability.js +28 -0
  26. package/dist/bin/capabilities/emailCapability.js +20 -0
  27. package/dist/bin/capabilities/enhancedGitCapability.js +221 -0
  28. package/dist/bin/capabilities/filesystemCapability.js +22 -0
  29. package/dist/bin/capabilities/globCapability.js +28 -0
  30. package/dist/bin/capabilities/interactionCapability.js +20 -0
  31. package/dist/bin/capabilities/learnCapability.js +22 -0
  32. package/dist/bin/capabilities/mcpCapability.js +20 -0
  33. package/dist/bin/capabilities/notebookCapability.js +28 -0
  34. package/dist/bin/capabilities/planningCapability.js +27 -0
  35. package/dist/bin/capabilities/refactoringCapability.js +23 -0
  36. package/dist/bin/capabilities/repoChecksCapability.js +22 -0
  37. package/dist/bin/capabilities/searchCapability.js +22 -0
  38. package/dist/bin/capabilities/skillCapability.js +76 -0
  39. package/dist/bin/capabilities/taskManagementCapability.js +20 -0
  40. package/dist/bin/capabilities/testingCapability.js +23 -0
  41. package/dist/bin/capabilities/toolManifest.js +159 -0
  42. package/dist/bin/capabilities/toolRegistry.js +114 -0
  43. package/dist/bin/capabilities/webCapability.js +20 -0
  44. package/dist/bin/config.js +139 -0
  45. package/dist/bin/contracts/v1/agent.js +7 -0
  46. package/dist/bin/contracts/v1/agentProfileManifest.js +8 -0
  47. package/dist/bin/contracts/v1/agentRules.js +9 -0
  48. package/dist/bin/contracts/v1/toolAccess.js +8 -0
  49. package/dist/bin/core/agent.js +362 -0
  50. package/dist/bin/core/agentProfileManifest.js +187 -0
  51. package/dist/bin/core/agentProfiles.js +34 -0
  52. package/dist/bin/core/agentRulebook.js +135 -0
  53. package/dist/bin/core/agentSchemaLoader.js +233 -0
  54. package/dist/bin/core/contextManager.js +412 -0
  55. package/dist/bin/core/contextWindow.js +122 -0
  56. package/dist/bin/core/customCommands.js +80 -0
  57. package/dist/bin/core/errors/apiKeyErrors.js +114 -0
  58. package/dist/bin/core/errors/errorTypes.js +340 -0
  59. package/dist/bin/core/errors/safetyValidator.js +304 -0
  60. package/dist/bin/core/errors.js +32 -0
  61. package/dist/bin/core/modelDiscovery.js +755 -0
  62. package/dist/bin/core/preferences.js +224 -0
  63. package/dist/bin/core/schemaValidator.js +92 -0
  64. package/dist/bin/core/secretStore.js +199 -0
  65. package/dist/bin/core/sessionStore.js +187 -0
  66. package/dist/bin/core/toolRuntime.js +290 -0
  67. package/dist/bin/core/types.js +1 -0
  68. package/dist/bin/erosolar-optimized.d.ts +12 -0
  69. package/dist/bin/erosolar-optimized.d.ts.map +1 -0
  70. package/dist/bin/erosolar-optimized.js +239 -0
  71. package/dist/bin/erosolar-optimized.js.map +1 -0
  72. package/dist/bin/erosolar.js +14 -0
  73. package/dist/bin/erosolar.js.map +1 -1
  74. package/dist/bin/headless/headlessApp.js +172 -0
  75. package/dist/bin/mcp/config.js +202 -0
  76. package/dist/bin/mcp/stdioClient.js +172 -0
  77. package/dist/bin/mcp/toolBridge.js +104 -0
  78. package/dist/bin/mcp/types.js +1 -0
  79. package/dist/bin/plugins/index.js +113 -0
  80. package/dist/bin/plugins/providers/anthropic/index.js +25 -0
  81. package/dist/bin/plugins/providers/deepseek/index.js +24 -0
  82. package/dist/bin/plugins/providers/google/index.js +26 -0
  83. package/dist/bin/plugins/providers/index.js +19 -0
  84. package/dist/bin/plugins/providers/ollama/index.js +59 -0
  85. package/dist/bin/plugins/providers/openai/index.js +26 -0
  86. package/dist/bin/plugins/providers/xai/index.js +24 -0
  87. package/dist/bin/plugins/tools/agentSpawning/agentSpawningPlugin.js +8 -0
  88. package/dist/bin/plugins/tools/bash/localBashPlugin.js +13 -0
  89. package/dist/bin/plugins/tools/checks/localRepoChecksPlugin.js +13 -0
  90. package/dist/bin/plugins/tools/cloud/cloudPlugin.js +13 -0
  91. package/dist/bin/plugins/tools/codeAnalysis/codeAnalysisPlugin.js +13 -0
  92. package/dist/bin/plugins/tools/codeQuality/codeQualityPlugin.js +13 -0
  93. package/dist/bin/plugins/tools/dependency/dependencyPlugin.js +11 -0
  94. package/dist/bin/plugins/tools/development/devPlugin.js +13 -0
  95. package/dist/bin/plugins/tools/edit/editPlugin.js +14 -0
  96. package/dist/bin/plugins/tools/email/emailPlugin.js +11 -0
  97. package/dist/bin/plugins/tools/enhancedGit/enhancedGitPlugin.js +8 -0
  98. package/dist/bin/plugins/tools/filesystem/localFilesystemPlugin.js +13 -0
  99. package/dist/bin/plugins/tools/glob/globPlugin.js +14 -0
  100. package/dist/bin/plugins/tools/index.js +2 -0
  101. package/dist/bin/plugins/tools/interaction/interactionPlugin.js +11 -0
  102. package/dist/bin/plugins/tools/learn/learnPlugin.js +13 -0
  103. package/dist/bin/plugins/tools/mcp/mcpPlugin.js +8 -0
  104. package/dist/bin/plugins/tools/nodeDefaults.js +56 -0
  105. package/dist/bin/plugins/tools/notebook/notebookPlugin.js +14 -0
  106. package/dist/bin/plugins/tools/planning/planningPlugin.js +14 -0
  107. package/dist/bin/plugins/tools/refactoring/refactoringPlugin.js +11 -0
  108. package/dist/bin/plugins/tools/registry.js +57 -0
  109. package/dist/bin/plugins/tools/search/localSearchPlugin.js +13 -0
  110. package/dist/bin/plugins/tools/skills/skillPlugin.js +8 -0
  111. package/dist/bin/plugins/tools/taskManagement/taskManagementPlugin.js +11 -0
  112. package/dist/bin/plugins/tools/testing/testingPlugin.js +11 -0
  113. package/dist/bin/plugins/tools/web/webPlugin.js +11 -0
  114. package/dist/bin/providers/anthropicProvider.js +329 -0
  115. package/dist/bin/providers/googleProvider.js +203 -0
  116. package/dist/bin/providers/openaiChatCompletionsProvider.js +208 -0
  117. package/dist/bin/providers/openaiResponsesProvider.js +249 -0
  118. package/dist/bin/providers/providerFactory.js +24 -0
  119. package/dist/bin/runtime/agentController.js +321 -0
  120. package/dist/bin/runtime/agentHost.js +153 -0
  121. package/dist/bin/runtime/agentSession.js +195 -0
  122. package/dist/bin/runtime/node.js +10 -0
  123. package/dist/bin/runtime/universal.js +28 -0
  124. package/dist/bin/shell/bracketedPasteManager.js +350 -0
  125. package/dist/bin/shell/fileChangeTracker.js +65 -0
  126. package/dist/bin/shell/interactiveShell.js +2908 -0
  127. package/dist/bin/shell/liveStatus.js +78 -0
  128. package/dist/bin/shell/shellApp.js +290 -0
  129. package/dist/bin/shell/systemPrompt.js +60 -0
  130. package/dist/bin/shell/updateManager.js +108 -0
  131. package/dist/bin/skills/skillRepository.js +236 -0
  132. package/dist/bin/skills/types.js +1 -0
  133. package/dist/bin/subagents/taskRunner.js +269 -0
  134. package/dist/bin/tools/backgroundBashTools.js +211 -0
  135. package/dist/bin/tools/bashTools.js +159 -0
  136. package/dist/bin/tools/cloudTools.js +864 -0
  137. package/dist/bin/tools/codeAnalysisTools.js +641 -0
  138. package/dist/bin/tools/codeQualityTools.js +294 -0
  139. package/dist/bin/tools/dependencyTools.js +282 -0
  140. package/dist/bin/tools/devTools.js +238 -0
  141. package/dist/bin/tools/diffUtils.js +137 -0
  142. package/dist/bin/tools/editTools.js +134 -0
  143. package/dist/bin/tools/emailTools.js +448 -0
  144. package/dist/bin/tools/fileTools.js +282 -0
  145. package/dist/bin/tools/globTools.js +173 -0
  146. package/dist/bin/tools/grepTools.js +332 -0
  147. package/dist/bin/tools/interactionTools.js +170 -0
  148. package/dist/bin/tools/learnTools.js +1818 -0
  149. package/dist/bin/tools/notebookEditTools.js +196 -0
  150. package/dist/bin/tools/planningTools.js +46 -0
  151. package/dist/bin/tools/refactoringTools.js +293 -0
  152. package/dist/bin/tools/repoChecksTools.js +160 -0
  153. package/dist/bin/tools/searchTools.js +206 -0
  154. package/dist/bin/tools/skillTools.js +177 -0
  155. package/dist/bin/tools/taskManagementTools.js +156 -0
  156. package/dist/bin/tools/testingTools.js +232 -0
  157. package/dist/bin/tools/webTools.js +480 -0
  158. package/dist/bin/ui/ShellUIAdapter.js +459 -0
  159. package/dist/bin/ui/UnifiedUIController.js +183 -0
  160. package/dist/bin/ui/animation/AnimationScheduler.js +430 -0
  161. package/dist/bin/ui/codeHighlighter.js +854 -0
  162. package/dist/bin/ui/designSystem.js +121 -0
  163. package/dist/bin/ui/display.js +1222 -0
  164. package/dist/bin/ui/interrupts/InterruptManager.js +437 -0
  165. package/dist/bin/ui/layout.js +139 -0
  166. package/dist/bin/ui/orchestration/StatusOrchestrator.js +403 -0
  167. package/dist/bin/ui/outputMode.js +38 -0
  168. package/dist/bin/ui/persistentPrompt.js +183 -0
  169. package/dist/bin/ui/richText.js +338 -0
  170. package/dist/bin/ui/shortcutsHelp.js +87 -0
  171. package/dist/bin/ui/telemetry/UITelemetry.js +443 -0
  172. package/dist/bin/ui/textHighlighter.js +210 -0
  173. package/dist/bin/ui/theme.js +116 -0
  174. package/dist/bin/ui/toolDisplay.js +423 -0
  175. package/dist/bin/ui/toolDisplayAdapter.js +357 -0
  176. package/dist/bin/workspace.js +106 -0
  177. package/dist/bin/workspace.validator.js +213 -0
  178. package/dist/capabilities/offensiveSecurityCapability.d.ts +26 -0
  179. package/dist/capabilities/offensiveSecurityCapability.d.ts.map +1 -0
  180. package/dist/capabilities/offensiveSecurityCapability.js +58 -0
  181. package/dist/capabilities/offensiveSecurityCapability.js.map +1 -0
  182. package/dist/capabilities/realSecurityCapability.d.ts +26 -0
  183. package/dist/capabilities/realSecurityCapability.d.ts.map +1 -0
  184. package/dist/capabilities/realSecurityCapability.js +53 -0
  185. package/dist/capabilities/realSecurityCapability.js.map +1 -0
  186. package/dist/capabilities/securityCapability.d.ts +32 -0
  187. package/dist/capabilities/securityCapability.d.ts.map +1 -0
  188. package/dist/capabilities/securityCapability.js +57 -0
  189. package/dist/capabilities/securityCapability.js.map +1 -0
  190. package/dist/capabilities/ultimateSecurityCapability.d.ts +42 -0
  191. package/dist/capabilities/ultimateSecurityCapability.d.ts.map +1 -0
  192. package/dist/capabilities/ultimateSecurityCapability.js +96 -0
  193. package/dist/capabilities/ultimateSecurityCapability.js.map +1 -0
  194. package/dist/core/LazyLoader.d.ts +129 -0
  195. package/dist/core/LazyLoader.d.ts.map +1 -0
  196. package/dist/core/LazyLoader.js +240 -0
  197. package/dist/core/LazyLoader.js.map +1 -0
  198. package/dist/core/intelligenceTools.d.ts +19 -0
  199. package/dist/core/intelligenceTools.d.ts.map +1 -0
  200. package/dist/core/intelligenceTools.js +453 -0
  201. package/dist/core/intelligenceTools.js.map +1 -0
  202. package/dist/core/operationalTools.d.ts +19 -0
  203. package/dist/core/operationalTools.d.ts.map +1 -0
  204. package/dist/core/operationalTools.js +467 -0
  205. package/dist/core/operationalTools.js.map +1 -0
  206. package/dist/offensive/core/offensive-engine.d.ts +171 -0
  207. package/dist/offensive/core/offensive-engine.d.ts.map +1 -0
  208. package/dist/offensive/core/offensive-engine.js +345 -0
  209. package/dist/offensive/core/offensive-engine.js.map +1 -0
  210. package/dist/offensive/core/offensive-integration.d.ts +129 -0
  211. package/dist/offensive/core/offensive-integration.d.ts.map +1 -0
  212. package/dist/offensive/core/offensive-integration.js +364 -0
  213. package/dist/offensive/core/offensive-integration.js.map +1 -0
  214. package/dist/offensive/core/offensive-tools.d.ts +55 -0
  215. package/dist/offensive/core/offensive-tools.d.ts.map +1 -0
  216. package/dist/offensive/core/offensive-tools.js +438 -0
  217. package/dist/offensive/core/offensive-tools.js.map +1 -0
  218. package/dist/offensive/offensive-cli.d.ts +48 -0
  219. package/dist/offensive/offensive-cli.d.ts.map +1 -0
  220. package/dist/offensive/offensive-cli.js +233 -0
  221. package/dist/offensive/offensive-cli.js.map +1 -0
  222. package/dist/plugins/index.d.ts +1 -1
  223. package/dist/plugins/index.d.ts.map +1 -1
  224. package/dist/plugins/index.js +2 -0
  225. package/dist/plugins/index.js.map +1 -1
  226. package/dist/security/advanced-persistence-research.d.ts +92 -0
  227. package/dist/security/advanced-persistence-research.d.ts.map +1 -0
  228. package/dist/security/advanced-persistence-research.js +195 -0
  229. package/dist/security/advanced-persistence-research.js.map +1 -0
  230. package/dist/security/apt-simulation-cli.d.ts +57 -0
  231. package/dist/security/apt-simulation-cli.d.ts.map +1 -0
  232. package/dist/security/apt-simulation-cli.js +278 -0
  233. package/dist/security/apt-simulation-cli.js.map +1 -0
  234. package/dist/security/apt-simulation-engine-complete.d.ts +97 -0
  235. package/dist/security/apt-simulation-engine-complete.d.ts.map +1 -0
  236. package/dist/security/apt-simulation-engine-complete.js +441 -0
  237. package/dist/security/apt-simulation-engine-complete.js.map +1 -0
  238. package/dist/security/apt-simulation-engine.d.ts +97 -0
  239. package/dist/security/apt-simulation-engine.d.ts.map +1 -0
  240. package/dist/security/apt-simulation-engine.js +441 -0
  241. package/dist/security/apt-simulation-engine.js.map +1 -0
  242. package/dist/security/assessment/vulnerabilityAssessment.d.ts +104 -0
  243. package/dist/security/assessment/vulnerabilityAssessment.d.ts.map +1 -0
  244. package/dist/security/assessment/vulnerabilityAssessment.js +315 -0
  245. package/dist/security/assessment/vulnerabilityAssessment.js.map +1 -0
  246. package/dist/security/authorization/securityAuthorization.d.ts +88 -0
  247. package/dist/security/authorization/securityAuthorization.d.ts.map +1 -0
  248. package/dist/security/authorization/securityAuthorization.js +172 -0
  249. package/dist/security/authorization/securityAuthorization.js.map +1 -0
  250. package/dist/security/authorization.d.ts +45 -0
  251. package/dist/security/authorization.d.ts.map +1 -0
  252. package/dist/security/authorization.js +128 -0
  253. package/dist/security/authorization.js.map +1 -0
  254. package/dist/security/comprehensive-security-research.d.ts +84 -0
  255. package/dist/security/comprehensive-security-research.d.ts.map +1 -0
  256. package/dist/security/comprehensive-security-research.js +211 -0
  257. package/dist/security/comprehensive-security-research.js.map +1 -0
  258. package/dist/security/offensive/exploitationEngine.d.ts +54 -0
  259. package/dist/security/offensive/exploitationEngine.d.ts.map +1 -0
  260. package/dist/security/offensive/exploitationEngine.js +263 -0
  261. package/dist/security/offensive/exploitationEngine.js.map +1 -0
  262. package/dist/security/persistence-cli.d.ts +36 -0
  263. package/dist/security/persistence-cli.d.ts.map +1 -0
  264. package/dist/security/persistence-cli.js +160 -0
  265. package/dist/security/persistence-cli.js.map +1 -0
  266. package/dist/security/persistence-research.d.ts +11 -0
  267. package/dist/security/persistence-research.d.ts.map +1 -1
  268. package/dist/security/persistence-research.js +11 -0
  269. package/dist/security/persistence-research.js.map +1 -1
  270. package/dist/security/real/networkExploitation.d.ts +92 -0
  271. package/dist/security/real/networkExploitation.d.ts.map +1 -0
  272. package/dist/security/real/networkExploitation.js +316 -0
  273. package/dist/security/real/networkExploitation.js.map +1 -0
  274. package/dist/security/real/persistenceImplementation.d.ts +62 -0
  275. package/dist/security/real/persistenceImplementation.d.ts.map +1 -0
  276. package/dist/security/real/persistenceImplementation.js +323 -0
  277. package/dist/security/real/persistenceImplementation.js.map +1 -0
  278. package/dist/security/real/vulnerabilityScanner.d.ts +73 -0
  279. package/dist/security/real/vulnerabilityScanner.d.ts.map +1 -0
  280. package/dist/security/real/vulnerabilityScanner.js +341 -0
  281. package/dist/security/real/vulnerabilityScanner.js.map +1 -0
  282. package/dist/security/research/persistenceResearch.d.ts +97 -0
  283. package/dist/security/research/persistenceResearch.d.ts.map +1 -0
  284. package/dist/security/research/persistenceResearch.js +282 -0
  285. package/dist/security/research/persistenceResearch.js.map +1 -0
  286. package/dist/security/security-testing-framework.d.ts +120 -0
  287. package/dist/security/security-testing-framework.d.ts.map +1 -0
  288. package/dist/security/security-testing-framework.js +372 -0
  289. package/dist/security/security-testing-framework.js.map +1 -0
  290. package/dist/security/simulation/attackSimulation.d.ts +93 -0
  291. package/dist/security/simulation/attackSimulation.d.ts.map +1 -0
  292. package/dist/security/simulation/attackSimulation.js +341 -0
  293. package/dist/security/simulation/attackSimulation.js.map +1 -0
  294. package/dist/shell/bracketedPasteManager.d.ts +33 -0
  295. package/dist/shell/bracketedPasteManager.d.ts.map +1 -1
  296. package/dist/shell/bracketedPasteManager.js +101 -0
  297. package/dist/shell/bracketedPasteManager.js.map +1 -1
  298. package/dist/shell/interactiveShell.d.ts +22 -1
  299. package/dist/shell/interactiveShell.d.ts.map +1 -1
  300. package/dist/shell/interactiveShell.js +257 -24
  301. package/dist/shell/interactiveShell.js.map +1 -1
  302. package/dist/shell/taskCompletionDetector.d.ts +101 -0
  303. package/dist/shell/taskCompletionDetector.d.ts.map +1 -0
  304. package/dist/shell/taskCompletionDetector.js +343 -0
  305. package/dist/shell/taskCompletionDetector.js.map +1 -0
  306. package/dist/tools/cloudTools.d.ts +11 -0
  307. package/dist/tools/cloudTools.d.ts.map +1 -1
  308. package/dist/tools/cloudTools.js +11 -0
  309. package/dist/tools/cloudTools.js.map +1 -1
  310. package/dist/tools/enhancedSecurityTools.d.ts +19 -0
  311. package/dist/tools/enhancedSecurityTools.d.ts.map +1 -0
  312. package/dist/tools/enhancedSecurityTools.js +215 -0
  313. package/dist/tools/enhancedSecurityTools.js.map +1 -0
  314. package/dist/tools/offensiveSecurityTools.d.ts +16 -0
  315. package/dist/tools/offensiveSecurityTools.d.ts.map +1 -0
  316. package/dist/tools/offensiveSecurityTools.js +285 -0
  317. package/dist/tools/offensiveSecurityTools.js.map +1 -0
  318. package/dist/tools/realSecurityTools.d.ts +18 -0
  319. package/dist/tools/realSecurityTools.d.ts.map +1 -0
  320. package/dist/tools/realSecurityTools.js +468 -0
  321. package/dist/tools/realSecurityTools.js.map +1 -0
  322. package/dist/tools/securityTools.d.ts +20 -0
  323. package/dist/tools/securityTools.d.ts.map +1 -0
  324. package/dist/tools/securityTools.js +449 -0
  325. package/dist/tools/securityTools.js.map +1 -0
  326. package/package.json +27 -12
  327. package/scripts/deploy-security-capabilities.js +178 -0
@@ -0,0 +1,341 @@
1
+ /**
2
+ * Attack Simulation Engine
3
+ *
4
+ * Provides attack simulation capabilities for authorized security testing
5
+ * and red team exercises.
6
+ *
7
+ * LEGAL NOTICE:
8
+ * For authorized security research, penetration testing, and red team exercises only.
9
+ */
10
+ /**
11
+ * Attack Simulation Engine
12
+ */
13
+ export class AttackSimulationEngine {
14
+ attackTemplates;
15
+ constructor() {
16
+ this.attackTemplates = new Map();
17
+ this.initializeAttackTemplates();
18
+ }
19
+ /**
20
+ * Simulate attack scenario
21
+ */
22
+ async simulateAttack(request) {
23
+ const template = this.attackTemplates.get(request.attackType);
24
+ if (!template) {
25
+ throw new Error(`Attack type not supported: ${request.attackType}`);
26
+ }
27
+ const steps = this.generateAttackSteps(template, request.stealthLevel);
28
+ const successProbability = this.calculateSuccessProbability(template, request.stealthLevel);
29
+ const detectionProbability = this.calculateDetectionProbability(template, request.stealthLevel);
30
+ const impactAssessment = this.generateImpactAssessment(template);
31
+ const recommendations = this.generateAttackRecommendations(template);
32
+ return {
33
+ attackType: request.attackType,
34
+ target: request.target,
35
+ stealthLevel: request.stealthLevel,
36
+ steps,
37
+ successProbability,
38
+ detectionProbability,
39
+ impactAssessment,
40
+ recommendations
41
+ };
42
+ }
43
+ /**
44
+ * Generate payloads for security testing
45
+ */
46
+ async generatePayloads(request) {
47
+ const payloads = this.generatePayloadsByType(request.payloadType, request.count);
48
+ const usageInstructions = this.generateUsageInstructions(request.payloadType);
49
+ const detectionMethods = this.generateDetectionMethods(request.payloadType);
50
+ return {
51
+ payloadType: request.payloadType,
52
+ target: request.target,
53
+ count: request.count,
54
+ payloads,
55
+ usageInstructions,
56
+ detectionMethods
57
+ };
58
+ }
59
+ /**
60
+ * Get available attack types
61
+ */
62
+ getAvailableAttackTypes() {
63
+ return Array.from(this.attackTemplates.keys());
64
+ }
65
+ /**
66
+ * Generate attack steps based on template and stealth level
67
+ */
68
+ generateAttackSteps(template, stealthLevel) {
69
+ const steps = [...template.baseSteps];
70
+ // Add stealth-specific steps
71
+ if (stealthLevel >= 4) {
72
+ steps.push('Implement traffic obfuscation', 'Use encrypted communication channels');
73
+ }
74
+ if (stealthLevel >= 5) {
75
+ steps.push('Employ anti-forensics techniques', 'Use memory-only execution');
76
+ }
77
+ return steps;
78
+ }
79
+ /**
80
+ * Calculate success probability
81
+ */
82
+ calculateSuccessProbability(template, stealthLevel) {
83
+ let probability = template.baseSuccessProbability;
84
+ // Adjust based on stealth level
85
+ if (stealthLevel >= 4) {
86
+ probability *= 0.8; // Higher stealth often reduces success probability
87
+ }
88
+ else if (stealthLevel <= 2) {
89
+ probability *= 1.2; // Lower stealth may increase success but also detection
90
+ }
91
+ return Math.min(1.0, Math.max(0.1, probability));
92
+ }
93
+ /**
94
+ * Calculate detection probability
95
+ */
96
+ calculateDetectionProbability(template, stealthLevel) {
97
+ let probability = template.baseDetectionProbability;
98
+ // Adjust based on stealth level
99
+ if (stealthLevel >= 4) {
100
+ probability *= 0.3;
101
+ }
102
+ else if (stealthLevel >= 3) {
103
+ probability *= 0.6;
104
+ }
105
+ else if (stealthLevel <= 1) {
106
+ probability *= 1.5;
107
+ }
108
+ return Math.min(1.0, Math.max(0.05, probability));
109
+ }
110
+ /**
111
+ * Generate impact assessment
112
+ */
113
+ generateImpactAssessment(template) {
114
+ return template.impactAssessment;
115
+ }
116
+ /**
117
+ * Generate attack recommendations
118
+ */
119
+ generateAttackRecommendations(template) {
120
+ return [
121
+ ...template.defenseRecommendations,
122
+ 'Implement proper monitoring and alerting',
123
+ 'Conduct regular security assessments',
124
+ 'Keep systems and applications updated'
125
+ ];
126
+ }
127
+ /**
128
+ * Generate payloads by type
129
+ */
130
+ generatePayloadsByType(payloadType, count) {
131
+ const payloadGenerators = {
132
+ 'sql_injection': () => [
133
+ "' OR '1'='1",
134
+ "'; DROP TABLE users; --",
135
+ "' UNION SELECT username, password FROM users --",
136
+ "' AND 1=1 --",
137
+ "'; EXEC xp_cmdshell('dir') --"
138
+ ],
139
+ 'xss': () => [
140
+ "<script>alert('XSS')</script>",
141
+ "<img src=x onerror=alert('XSS')>",
142
+ "javascript:alert('XSS')",
143
+ "<svg onload=alert('XSS')>",
144
+ "<body onload=alert('XSS')>"
145
+ ],
146
+ 'command_injection': () => [
147
+ "; ls -la",
148
+ "| cat /etc/passwd",
149
+ "&& whoami",
150
+ "`id`",
151
+ "$(uname -a)"
152
+ ],
153
+ 'file_upload': () => [
154
+ "shell.php",
155
+ "test.jpg.php",
156
+ ".htaccess",
157
+ "web.config",
158
+ "test.asp;.jpg"
159
+ ],
160
+ 'authentication_bypass': () => [
161
+ "admin' --",
162
+ "' OR '1'='1' --",
163
+ "admin'/*",
164
+ "'='",
165
+ "' OR 1=1 --"
166
+ ]
167
+ };
168
+ const generator = payloadGenerators[payloadType];
169
+ if (!generator) {
170
+ return [`No payload generator for type: ${payloadType}`];
171
+ }
172
+ return generator().slice(0, count);
173
+ }
174
+ /**
175
+ * Generate usage instructions
176
+ */
177
+ generateUsageInstructions(payloadType) {
178
+ const instructions = {
179
+ 'sql_injection': 'Inject payloads into SQL query parameters to test for injection vulnerabilities',
180
+ 'xss': 'Inject payloads into user input fields to test for cross-site scripting vulnerabilities',
181
+ 'command_injection': 'Inject payloads into command execution parameters to test for command injection',
182
+ 'file_upload': 'Attempt to upload files with these names to test for file upload vulnerabilities',
183
+ 'authentication_bypass': 'Use these payloads in login fields to test for authentication bypass'
184
+ };
185
+ return instructions[payloadType] || 'Use payloads in appropriate input fields for testing';
186
+ }
187
+ /**
188
+ * Generate detection methods
189
+ */
190
+ generateDetectionMethods(payloadType) {
191
+ const detectionMethods = {
192
+ 'sql_injection': [
193
+ 'Monitor for unusual SQL query patterns',
194
+ 'Check for SQL keywords in user input',
195
+ 'Implement WAF with SQL injection rules',
196
+ 'Use parameterized queries'
197
+ ],
198
+ 'xss': [
199
+ 'Monitor for script tags in user input',
200
+ 'Check for JavaScript execution in output',
201
+ 'Implement content security policy',
202
+ 'Use proper input sanitization'
203
+ ],
204
+ 'command_injection': [
205
+ 'Monitor for shell command patterns',
206
+ 'Check for command separators in input',
207
+ 'Implement command whitelisting',
208
+ 'Use safe command execution APIs'
209
+ ],
210
+ 'file_upload': [
211
+ 'Validate file types and extensions',
212
+ 'Scan uploaded files for malware',
213
+ 'Restrict upload directories',
214
+ 'Implement file type verification'
215
+ ],
216
+ 'authentication_bypass': [
217
+ 'Monitor for SQL injection in login attempts',
218
+ 'Check for unusual authentication patterns',
219
+ 'Implement rate limiting',
220
+ 'Use strong authentication mechanisms'
221
+ ]
222
+ };
223
+ return detectionMethods[payloadType] || ['Implement general input validation and monitoring'];
224
+ }
225
+ /**
226
+ * Initialize attack templates
227
+ */
228
+ initializeAttackTemplates() {
229
+ const templates = [
230
+ {
231
+ id: 'web_application',
232
+ name: 'Web Application Attack',
233
+ baseSteps: [
234
+ 'Reconnaissance and fingerprinting',
235
+ 'Identify application endpoints',
236
+ 'Test for input validation vulnerabilities',
237
+ 'Attempt injection attacks',
238
+ 'Test authentication mechanisms',
239
+ 'Check for information disclosure'
240
+ ],
241
+ baseSuccessProbability: 0.7,
242
+ baseDetectionProbability: 0.4,
243
+ impactAssessment: 'Potential data exposure, unauthorized access, and application compromise',
244
+ defenseRecommendations: [
245
+ 'Implement proper input validation',
246
+ 'Use secure authentication mechanisms',
247
+ 'Enable security headers',
248
+ 'Conduct regular security testing'
249
+ ]
250
+ },
251
+ {
252
+ id: 'authentication',
253
+ name: 'Authentication Attack',
254
+ baseSteps: [
255
+ 'Identify authentication endpoints',
256
+ 'Test for weak credentials',
257
+ 'Attempt brute force attacks',
258
+ 'Test for session management flaws',
259
+ 'Check for authentication bypass',
260
+ 'Test multi-factor authentication'
261
+ ],
262
+ baseSuccessProbability: 0.6,
263
+ baseDetectionProbability: 0.5,
264
+ impactAssessment: 'Unauthorized system access and potential data breach',
265
+ defenseRecommendations: [
266
+ 'Implement strong password policies',
267
+ 'Enable multi-factor authentication',
268
+ 'Use secure session management',
269
+ 'Implement account lockout mechanisms'
270
+ ]
271
+ },
272
+ {
273
+ id: 'injection',
274
+ name: 'Injection Attack',
275
+ baseSteps: [
276
+ 'Identify injection points',
277
+ 'Test for SQL injection vulnerabilities',
278
+ 'Test for command injection',
279
+ 'Test for LDAP injection',
280
+ 'Test for XML injection',
281
+ 'Validate input sanitization'
282
+ ],
283
+ baseSuccessProbability: 0.8,
284
+ baseDetectionProbability: 0.3,
285
+ impactAssessment: 'Data manipulation, system compromise, and information disclosure',
286
+ defenseRecommendations: [
287
+ 'Use parameterized queries',
288
+ 'Implement input validation',
289
+ 'Use prepared statements',
290
+ 'Enable proper error handling'
291
+ ]
292
+ },
293
+ {
294
+ id: 'persistence',
295
+ name: 'Persistence Attack',
296
+ baseSteps: [
297
+ 'Gain initial access',
298
+ 'Establish persistence mechanisms',
299
+ 'Create backdoor accounts',
300
+ 'Modify system configurations',
301
+ 'Install persistence malware',
302
+ 'Test detection evasion'
303
+ ],
304
+ baseSuccessProbability: 0.5,
305
+ baseDetectionProbability: 0.6,
306
+ impactAssessment: 'Long-term unauthorized access and system control',
307
+ defenseRecommendations: [
308
+ 'Monitor for unauthorized changes',
309
+ 'Implement file integrity monitoring',
310
+ 'Use application whitelisting',
311
+ 'Conduct regular system audits'
312
+ ]
313
+ },
314
+ {
315
+ id: 'privilege_escalation',
316
+ name: 'Privilege Escalation Attack',
317
+ baseSteps: [
318
+ 'Identify privilege levels',
319
+ 'Test for misconfigured permissions',
320
+ 'Exploit vulnerable services',
321
+ 'Use privilege escalation techniques',
322
+ 'Access restricted resources',
323
+ 'Maintain elevated privileges'
324
+ ],
325
+ baseSuccessProbability: 0.4,
326
+ baseDetectionProbability: 0.7,
327
+ impactAssessment: 'Unauthorized privilege access and system control',
328
+ defenseRecommendations: [
329
+ 'Implement least privilege principle',
330
+ 'Regularly review user permissions',
331
+ 'Patch known vulnerabilities',
332
+ 'Monitor for privilege escalation attempts'
333
+ ]
334
+ }
335
+ ];
336
+ for (const template of templates) {
337
+ this.attackTemplates.set(template.id, template);
338
+ }
339
+ }
340
+ }
341
+ //# sourceMappingURL=attackSimulation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attackSimulation.js","sourceRoot":"","sources":["../../../src/security/simulation/attackSimulation.ts"],"names":[],"mappings":"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"}
@@ -36,7 +36,40 @@ export declare class BracketedPasteManager {
36
36
  private lastInputTime;
37
37
  /** Time threshold (ms) to consider rapid input as paste */
38
38
  private readonly PASTE_THRESHOLD_MS;
39
+ /** Raw data buffer for capturing complete bracketed paste content */
40
+ private rawPasteBuffer;
41
+ /** Callback for when raw paste is complete */
42
+ private onRawPasteComplete;
43
+ /** Whether we're currently capturing raw data */
44
+ private capturingRaw;
45
+ private static readonly START_MARKER;
46
+ private static readonly END_MARKER;
39
47
  constructor(enabled: boolean);
48
+ /**
49
+ * Process raw data from stdin before readline handles it.
50
+ * This intercepts bracketed paste content and captures it in full.
51
+ * Returns true if the data was consumed (should not be passed to readline).
52
+ */
53
+ processRawData(data: string): {
54
+ consumed: boolean;
55
+ passThrough?: string;
56
+ };
57
+ /**
58
+ * Set callback for when a complete paste is captured via raw data processing
59
+ */
60
+ setRawPasteCallback(callback: (content: string) => void): void;
61
+ /**
62
+ * Check if currently capturing raw paste data
63
+ */
64
+ isCapturingRaw(): boolean;
65
+ /**
66
+ * Get current raw buffer size (for display)
67
+ */
68
+ getRawBufferLineCount(): number;
69
+ /**
70
+ * Get preview of raw buffer content
71
+ */
72
+ getRawBufferPreview(): string;
40
73
  /**
41
74
  * Process input text, handling bracketed paste sequences
42
75
  */
@@ -1 +1 @@
1
- {"version":3,"file":"bracketedPasteManager.d.ts","sourceRoot":"","sources":["../../src/shell/bracketedPasteManager.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qDAAqD;IACrD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,qDAAqD;IACrD,OAAO,EAAE,MAAM,CAAC;IAChB,mCAAmC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,iDAAiD;IACjD,gBAAgB,EAAE,MAAM,CAAC;IACzB,gDAAgD;IAChD,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,qBAAa,qBAAqB;IAChC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAgB;IAEnC,+EAA+E;IAC/E,OAAO,CAAC,eAAe,CAAgB;IACvC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,aAAa,CAAK;IAC1B,2DAA2D;IAC3D,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAM;gBAE7B,OAAO,EAAE,OAAO;IAI5B;;OAEG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,oBAAoB;IA4G5C;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAqD/B;;OAEG;IACH,OAAO,CAAC,UAAU;IAiBlB;;OAEG;IACH,iBAAiB,IAAI,mBAAmB,GAAG,IAAI;IAmB/C;;OAEG;IACH,MAAM,CAAC,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,gBAAgB,GAAE,MAAW,GAAG,MAAM;IAcnF;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,cAAc,IAAI,MAAM,EAAE;IAI1B;;OAEG;IACH,QAAQ,IAAI,MAAM,GAAG,IAAI;IAUzB;;OAEG;IACH,KAAK,IAAI,IAAI;CAMd"}
1
+ {"version":3,"file":"bracketedPasteManager.d.ts","sourceRoot":"","sources":["../../src/shell/bracketedPasteManager.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qDAAqD;IACrD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,qDAAqD;IACrD,OAAO,EAAE,MAAM,CAAC;IAChB,mCAAmC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,iDAAiD;IACjD,gBAAgB,EAAE,MAAM,CAAC;IACzB,gDAAgD;IAChD,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,qBAAa,qBAAqB;IAChC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAgB;IAEnC,+EAA+E;IAC/E,OAAO,CAAC,eAAe,CAAgB;IACvC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,aAAa,CAAK;IAC1B,2DAA2D;IAC3D,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAM;IAEzC,qEAAqE;IACrE,OAAO,CAAC,cAAc,CAAM;IAC5B,8CAA8C;IAC9C,OAAO,CAAC,kBAAkB,CAA4C;IACtE,iDAAiD;IACjD,OAAO,CAAC,YAAY,CAAS;IAE7B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAiB;IACrD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAiB;gBAEvC,OAAO,EAAE,OAAO;IAI5B;;;;OAIG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE;IAuEzE;;OAEG;IACH,mBAAmB,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAI9D;;OAEG;IACH,cAAc,IAAI,OAAO;IAIzB;;OAEG;IACH,qBAAqB,IAAI,MAAM;IAK/B;;OAEG;IACH,mBAAmB,IAAI,MAAM;IAM7B;;OAEG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,oBAAoB;IA4G5C;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAqD/B;;OAEG;IACH,OAAO,CAAC,UAAU;IAiBlB;;OAEG;IACH,iBAAiB,IAAI,mBAAmB,GAAG,IAAI;IAmB/C;;OAEG;IACH,MAAM,CAAC,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,gBAAgB,GAAE,MAAW,GAAG,MAAM;IAcnF;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,cAAc,IAAI,MAAM,EAAE;IAI1B;;OAEG;IACH,QAAQ,IAAI,MAAM,GAAG,IAAI;IAUzB;;OAEG;IACH,KAAK,IAAI,IAAI;CAQd"}
@@ -16,9 +16,108 @@ export class BracketedPasteManager {
16
16
  lastInputTime = 0;
17
17
  /** Time threshold (ms) to consider rapid input as paste */
18
18
  PASTE_THRESHOLD_MS = 50;
19
+ /** Raw data buffer for capturing complete bracketed paste content */
20
+ rawPasteBuffer = '';
21
+ /** Callback for when raw paste is complete */
22
+ onRawPasteComplete = null;
23
+ /** Whether we're currently capturing raw data */
24
+ capturingRaw = false;
25
+ static START_MARKER = '\u001b[200~';
26
+ static END_MARKER = '\u001b[201~';
19
27
  constructor(enabled) {
20
28
  this.enabled = enabled;
21
29
  }
30
+ /**
31
+ * Process raw data from stdin before readline handles it.
32
+ * This intercepts bracketed paste content and captures it in full.
33
+ * Returns true if the data was consumed (should not be passed to readline).
34
+ */
35
+ processRawData(data) {
36
+ if (!this.enabled) {
37
+ return { consumed: false };
38
+ }
39
+ const startIdx = data.indexOf(BracketedPasteManager.START_MARKER);
40
+ const endIdx = data.indexOf(BracketedPasteManager.END_MARKER);
41
+ // Case 1: Not in paste mode and no start marker - pass through
42
+ if (!this.capturingRaw && startIdx === -1) {
43
+ return { consumed: false };
44
+ }
45
+ // Case 2: Found start marker - begin capturing
46
+ if (!this.capturingRaw && startIdx !== -1) {
47
+ this.capturingRaw = true;
48
+ const beforeStart = data.substring(0, startIdx);
49
+ const afterStart = data.substring(startIdx + BracketedPasteManager.START_MARKER.length);
50
+ // Check if end marker is in same chunk
51
+ const endInAfter = afterStart.indexOf(BracketedPasteManager.END_MARKER);
52
+ if (endInAfter !== -1) {
53
+ // Complete paste in single chunk
54
+ const pasteContent = afterStart.substring(0, endInAfter);
55
+ const afterEnd = afterStart.substring(endInAfter + BracketedPasteManager.END_MARKER.length);
56
+ this.capturingRaw = false;
57
+ this.rawPasteBuffer = '';
58
+ // Emit the complete paste
59
+ if (this.onRawPasteComplete) {
60
+ this.onRawPasteComplete(pasteContent);
61
+ }
62
+ // Return any content before/after markers to be passed through
63
+ const passThrough = beforeStart + afterEnd;
64
+ return { consumed: true, passThrough: passThrough || undefined };
65
+ }
66
+ // Start marker found but no end marker yet
67
+ this.rawPasteBuffer = afterStart;
68
+ // Pass through anything before the start marker
69
+ return { consumed: true, passThrough: beforeStart || undefined };
70
+ }
71
+ // Case 3: Currently capturing and found end marker
72
+ if (this.capturingRaw && endIdx !== -1) {
73
+ const beforeEnd = data.substring(0, endIdx);
74
+ const afterEnd = data.substring(endIdx + BracketedPasteManager.END_MARKER.length);
75
+ const pasteContent = this.rawPasteBuffer + beforeEnd;
76
+ this.capturingRaw = false;
77
+ this.rawPasteBuffer = '';
78
+ // Emit the complete paste
79
+ if (this.onRawPasteComplete) {
80
+ this.onRawPasteComplete(pasteContent);
81
+ }
82
+ // Pass through anything after end marker
83
+ return { consumed: true, passThrough: afterEnd || undefined };
84
+ }
85
+ // Case 4: Currently capturing, no end marker - accumulate
86
+ if (this.capturingRaw) {
87
+ this.rawPasteBuffer += data;
88
+ return { consumed: true };
89
+ }
90
+ return { consumed: false };
91
+ }
92
+ /**
93
+ * Set callback for when a complete paste is captured via raw data processing
94
+ */
95
+ setRawPasteCallback(callback) {
96
+ this.onRawPasteComplete = callback;
97
+ }
98
+ /**
99
+ * Check if currently capturing raw paste data
100
+ */
101
+ isCapturingRaw() {
102
+ return this.capturingRaw;
103
+ }
104
+ /**
105
+ * Get current raw buffer size (for display)
106
+ */
107
+ getRawBufferLineCount() {
108
+ if (!this.rawPasteBuffer)
109
+ return 0;
110
+ return this.rawPasteBuffer.split('\n').length;
111
+ }
112
+ /**
113
+ * Get preview of raw buffer content
114
+ */
115
+ getRawBufferPreview() {
116
+ if (!this.rawPasteBuffer)
117
+ return '';
118
+ const lines = this.rawPasteBuffer.split('\n');
119
+ return this.getPreview(lines);
120
+ }
22
121
  /**
23
122
  * Process input text, handling bracketed paste sequences
24
123
  */
@@ -246,6 +345,8 @@ export class BracketedPasteManager {
246
345
  this.pasteBuffer = [];
247
346
  this.multiLineMode = false;
248
347
  this.multiLineBuffer = [];
348
+ this.rawPasteBuffer = '';
349
+ this.capturingRaw = false;
249
350
  }
250
351
  }
251
352
  //# sourceMappingURL=bracketedPasteManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bracketedPasteManager.js","sourceRoot":"","sources":["../../src/shell/bracketedPasteManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bracketedPasteManager.js","sourceRoot":"","sources":["../../src/shell/bracketedPasteManager.ts"],"names":[],"mappings":"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"}
@@ -48,6 +48,7 @@ export declare class InteractiveShell {
48
48
  private cleanupInProgress;
49
49
  private slashPreviewVisible;
50
50
  private keypressHandler;
51
+ private rawDataHandler;
51
52
  private readonly skillRepository;
52
53
  private readonly skillToolHandlers;
53
54
  private thinkingMode;
@@ -60,6 +61,8 @@ export declare class InteractiveShell {
60
61
  private readonly persistentPrompt;
61
62
  private readonly alphaZeroMetrics;
62
63
  private statusSubscription;
64
+ private readonly followUpQueue;
65
+ private isDrainingQueue;
63
66
  private activeContextWindowTokens;
64
67
  private readonly sessionPreferences;
65
68
  private autosaveEnabled;
@@ -81,11 +84,18 @@ export declare class InteractiveShell {
81
84
  private handleAgentSelectionInput;
82
85
  private persistAgentSelection;
83
86
  private setupHandlers;
87
+ /**
88
+ * Set up raw stdin data interception for bracketed paste mode.
89
+ * This intercepts data before readline processes it, allowing us to
90
+ * capture complete multi-line pastes without readline splitting them.
91
+ */
92
+ private setupRawPasteHandler;
84
93
  private setupSlashCommandPreviewHandler;
85
94
  private setupStatusTracking;
86
95
  private teardownStatusTracking;
87
96
  private setIdleStatus;
88
97
  private setProcessingStatus;
98
+ private describeStatusDetail;
89
99
  private describeModelDetail;
90
100
  private refreshContextGauge;
91
101
  private handleSlashCommandPreviewChange;
@@ -112,6 +122,10 @@ export declare class InteractiveShell {
112
122
  */
113
123
  private displayMultiLineSubmission;
114
124
  private flushBufferedInput;
125
+ private refreshQueueIndicators;
126
+ private enqueueFollowUpAction;
127
+ private scheduleQueueProcessing;
128
+ private processQueuedActions;
115
129
  private processInputBlock;
116
130
  /**
117
131
  * Check if the command is a continuous/infinite loop command
@@ -175,13 +189,20 @@ export declare class InteractiveShell {
175
189
  /**
176
190
  * Process a continuous/infinite loop request.
177
191
  * Runs the agent in a loop until:
178
- * 1. The agent indicates completion (no more actions needed)
192
+ * 1. The agent indicates completion (verified by AI confirmation)
179
193
  * 2. User interrupts (Ctrl+C)
180
194
  * 3. Maximum iterations reached (safety limit)
181
195
  *
196
+ * Uses intelligent task completion detection with AI verification
197
+ * to ensure tasks are truly complete before stopping.
198
+ *
182
199
  * Context is automatically managed - overflow errors trigger auto-recovery.
183
200
  */
184
201
  private processContinuousRequest;
202
+ /**
203
+ * Extract tool names from a response by looking for tool call patterns
204
+ */
205
+ private extractToolsFromResponse;
185
206
  /**
186
207
  * Check if an error is a context overflow error
187
208
  */
@@ -1 +1 @@
1
- {"version":3,"file":"interactiveShell.d.ts","sourceRoot":"","sources":["../../src/shell/interactiveShell.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interactiveShell.d.ts","sourceRoot":"","sources":["../../src/shell/interactiveShell.ts"],"names":[],"mappings":"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"}