erosolar-cli 2.0.5 → 2.1.2

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 (167) hide show
  1. package/agents/erosolar-security.rules.json +147 -0
  2. package/dist/capabilities/enhancedAnalysisCapability.d.ts +13 -0
  3. package/dist/capabilities/enhancedAnalysisCapability.d.ts.map +1 -0
  4. package/dist/capabilities/enhancedAnalysisCapability.js +20 -0
  5. package/dist/capabilities/enhancedAnalysisCapability.js.map +1 -0
  6. package/dist/capabilities/offsecOpsCapability.d.ts +6 -0
  7. package/dist/capabilities/offsecOpsCapability.d.ts.map +1 -0
  8. package/dist/capabilities/offsecOpsCapability.js +20 -0
  9. package/dist/capabilities/offsecOpsCapability.js.map +1 -0
  10. package/dist/capabilities/offsecSearchCapability.d.ts +12 -0
  11. package/dist/capabilities/offsecSearchCapability.d.ts.map +1 -0
  12. package/dist/capabilities/offsecSearchCapability.js +27 -0
  13. package/dist/capabilities/offsecSearchCapability.js.map +1 -0
  14. package/dist/capabilities/taoCapability.d.ts +6 -0
  15. package/dist/capabilities/taoCapability.d.ts.map +1 -0
  16. package/dist/capabilities/taoCapability.js +20 -0
  17. package/dist/capabilities/taoCapability.js.map +1 -0
  18. package/dist/capabilities/toolRegistry.d.ts +2 -1
  19. package/dist/capabilities/toolRegistry.d.ts.map +1 -1
  20. package/dist/capabilities/toolRegistry.js +6 -1
  21. package/dist/capabilities/toolRegistry.js.map +1 -1
  22. package/dist/contracts/agent-schemas.json +18 -19
  23. package/dist/contracts/tools.schema.json +38 -8
  24. package/dist/core/agent.js +4 -4
  25. package/dist/core/agent.js.map +1 -1
  26. package/dist/core/alphaZeroEngine.js +1 -1
  27. package/dist/core/alphaZeroEngine.js.map +1 -1
  28. package/dist/core/alphaZeroModular.js +2 -2
  29. package/dist/core/alphaZeroModular.js.map +1 -1
  30. package/dist/core/contextManager.d.ts +8 -2
  31. package/dist/core/contextManager.d.ts.map +1 -1
  32. package/dist/core/contextManager.js +15 -2
  33. package/dist/core/contextManager.js.map +1 -1
  34. package/dist/core/costTracker.js +1 -1
  35. package/dist/core/costTracker.js.map +1 -1
  36. package/dist/core/deepBugAnalyzer.d.ts +128 -0
  37. package/dist/core/deepBugAnalyzer.d.ts.map +1 -0
  38. package/dist/core/deepBugAnalyzer.js +406 -0
  39. package/dist/core/deepBugAnalyzer.js.map +1 -0
  40. package/dist/core/hypothesisEngine.d.ts +113 -0
  41. package/dist/core/hypothesisEngine.d.ts.map +1 -0
  42. package/dist/core/hypothesisEngine.js +264 -0
  43. package/dist/core/hypothesisEngine.js.map +1 -0
  44. package/dist/core/intelligentSummarizer.d.ts +79 -0
  45. package/dist/core/intelligentSummarizer.d.ts.map +1 -0
  46. package/dist/core/intelligentSummarizer.js +273 -0
  47. package/dist/core/intelligentSummarizer.js.map +1 -0
  48. package/dist/core/memorySystem.js +2 -2
  49. package/dist/core/memorySystem.js.map +1 -1
  50. package/dist/core/offsecAlphaZero.d.ts +3 -0
  51. package/dist/core/offsecAlphaZero.d.ts.map +1 -1
  52. package/dist/core/offsecAlphaZero.js +166 -5
  53. package/dist/core/offsecAlphaZero.js.map +1 -1
  54. package/dist/core/productTestHarness.d.ts +113 -0
  55. package/dist/core/productTestHarness.d.ts.map +1 -0
  56. package/dist/core/productTestHarness.js +345 -0
  57. package/dist/core/productTestHarness.js.map +1 -0
  58. package/dist/core/securityAssessment.js +1 -1
  59. package/dist/core/securityAssessment.js.map +1 -1
  60. package/dist/core/toolPatternAnalyzer.d.ts +87 -0
  61. package/dist/core/toolPatternAnalyzer.d.ts.map +1 -0
  62. package/dist/core/toolPatternAnalyzer.js +272 -0
  63. package/dist/core/toolPatternAnalyzer.js.map +1 -0
  64. package/dist/core/updateChecker.js +3 -3
  65. package/dist/core/updateChecker.js.map +1 -1
  66. package/dist/mcp/sseClient.js +1 -1
  67. package/dist/mcp/sseClient.js.map +1 -1
  68. package/dist/plugins/tools/enhancedAnalysis/enhancedAnalysisPlugin.d.ts +3 -0
  69. package/dist/plugins/tools/enhancedAnalysis/enhancedAnalysisPlugin.d.ts.map +1 -0
  70. package/dist/plugins/tools/enhancedAnalysis/enhancedAnalysisPlugin.js +14 -0
  71. package/dist/plugins/tools/enhancedAnalysis/enhancedAnalysisPlugin.js.map +1 -0
  72. package/dist/plugins/tools/enhancedCodeIntelligence/enhancedCodeIntelligencePlugin.d.ts +3 -0
  73. package/dist/plugins/tools/enhancedCodeIntelligence/enhancedCodeIntelligencePlugin.d.ts.map +1 -0
  74. package/dist/plugins/tools/enhancedCodeIntelligence/enhancedCodeIntelligencePlugin.js +12 -0
  75. package/dist/plugins/tools/enhancedCodeIntelligence/enhancedCodeIntelligencePlugin.js.map +1 -0
  76. package/dist/plugins/tools/enhancedDevWorkflow/enhancedDevWorkflowPlugin.d.ts +3 -0
  77. package/dist/plugins/tools/enhancedDevWorkflow/enhancedDevWorkflowPlugin.d.ts.map +1 -0
  78. package/dist/plugins/tools/enhancedDevWorkflow/enhancedDevWorkflowPlugin.js +12 -0
  79. package/dist/plugins/tools/enhancedDevWorkflow/enhancedDevWorkflowPlugin.js.map +1 -0
  80. package/dist/plugins/tools/nodeDefaults.d.ts.map +1 -1
  81. package/dist/plugins/tools/nodeDefaults.js +12 -0
  82. package/dist/plugins/tools/nodeDefaults.js.map +1 -1
  83. package/dist/plugins/tools/offsec/offsecOpsPlugin.d.ts +3 -0
  84. package/dist/plugins/tools/offsec/offsecOpsPlugin.d.ts.map +1 -0
  85. package/dist/plugins/tools/offsec/offsecOpsPlugin.js +10 -0
  86. package/dist/plugins/tools/offsec/offsecOpsPlugin.js.map +1 -0
  87. package/dist/plugins/tools/offsec/offsecSearchPlugin.d.ts +3 -0
  88. package/dist/plugins/tools/offsec/offsecSearchPlugin.d.ts.map +1 -0
  89. package/dist/plugins/tools/offsec/offsecSearchPlugin.js +12 -0
  90. package/dist/plugins/tools/offsec/offsecSearchPlugin.js.map +1 -0
  91. package/dist/plugins/tools/tao/taoPlugin.d.ts +3 -0
  92. package/dist/plugins/tools/tao/taoPlugin.d.ts.map +1 -0
  93. package/dist/plugins/tools/tao/taoPlugin.js +10 -0
  94. package/dist/plugins/tools/tao/taoPlugin.js.map +1 -0
  95. package/dist/shell/composableMessage.js +2 -2
  96. package/dist/shell/composableMessage.js.map +1 -1
  97. package/dist/shell/interactiveShell.d.ts +6 -0
  98. package/dist/shell/interactiveShell.d.ts.map +1 -1
  99. package/dist/shell/interactiveShell.js +50 -15
  100. package/dist/shell/interactiveShell.js.map +1 -1
  101. package/dist/shell/shellApp.js +1 -1
  102. package/dist/shell/shellApp.js.map +1 -1
  103. package/dist/shell/systemPrompt.d.ts.map +1 -1
  104. package/dist/shell/systemPrompt.js +3 -0
  105. package/dist/shell/systemPrompt.js.map +1 -1
  106. package/dist/tools/buildTools.js +1 -1
  107. package/dist/tools/buildTools.js.map +1 -1
  108. package/dist/tools/diffUtils.js +6 -6
  109. package/dist/tools/diffUtils.js.map +1 -1
  110. package/dist/tools/editTools.js +1 -1
  111. package/dist/tools/editTools.js.map +1 -1
  112. package/dist/tools/enhancedAnalysisTools.d.ts +9 -0
  113. package/dist/tools/enhancedAnalysisTools.d.ts.map +1 -0
  114. package/dist/tools/enhancedAnalysisTools.js +382 -0
  115. package/dist/tools/enhancedAnalysisTools.js.map +1 -0
  116. package/dist/tools/enhancedCodeIntelligenceTools.d.ts +1 -21
  117. package/dist/tools/enhancedCodeIntelligenceTools.d.ts.map +1 -1
  118. package/dist/tools/enhancedCodeIntelligenceTools.js +378 -256
  119. package/dist/tools/enhancedCodeIntelligenceTools.js.map +1 -1
  120. package/dist/tools/enhancedDevWorkflowTools.d.ts +2 -10
  121. package/dist/tools/enhancedDevWorkflowTools.d.ts.map +1 -1
  122. package/dist/tools/enhancedDevWorkflowTools.js +293 -165
  123. package/dist/tools/enhancedDevWorkflowTools.js.map +1 -1
  124. package/dist/tools/interactionTools.d.ts.map +1 -1
  125. package/dist/tools/interactionTools.js +55 -0
  126. package/dist/tools/interactionTools.js.map +1 -1
  127. package/dist/tools/learnTools.js +1 -1
  128. package/dist/tools/learnTools.js.map +1 -1
  129. package/dist/tools/offsec/offsecOperationsTools.d.ts +3 -0
  130. package/dist/tools/offsec/offsecOperationsTools.d.ts.map +1 -0
  131. package/dist/tools/offsec/offsecOperationsTools.js +333 -0
  132. package/dist/tools/offsec/offsecOperationsTools.js.map +1 -0
  133. package/dist/tools/offsecSearchTools.d.ts +3 -0
  134. package/dist/tools/offsecSearchTools.d.ts.map +1 -0
  135. package/dist/tools/offsecSearchTools.js +330 -0
  136. package/dist/tools/offsecSearchTools.js.map +1 -0
  137. package/dist/tools/taoOperations.d.ts +7 -0
  138. package/dist/tools/taoOperations.d.ts.map +1 -0
  139. package/dist/tools/taoOperations.js +744 -0
  140. package/dist/tools/taoOperations.js.map +1 -0
  141. package/dist/ui/ClaudeCodeRenderer.js +1 -1
  142. package/dist/ui/ClaudeCodeRenderer.js.map +1 -1
  143. package/dist/ui/ShellUIAdapter.d.ts +10 -6
  144. package/dist/ui/ShellUIAdapter.d.ts.map +1 -1
  145. package/dist/ui/ShellUIAdapter.js +69 -67
  146. package/dist/ui/ShellUIAdapter.js.map +1 -1
  147. package/dist/ui/UnifiedUIRenderer.d.ts +2 -0
  148. package/dist/ui/UnifiedUIRenderer.d.ts.map +1 -1
  149. package/dist/ui/UnifiedUIRenderer.js +64 -13
  150. package/dist/ui/UnifiedUIRenderer.js.map +1 -1
  151. package/dist/ui/globalWriteLock.d.ts.map +1 -1
  152. package/dist/ui/globalWriteLock.js +6 -0
  153. package/dist/ui/globalWriteLock.js.map +1 -1
  154. package/dist/ui/inPlaceUpdater.js +1 -1
  155. package/dist/ui/inPlaceUpdater.js.map +1 -1
  156. package/dist/ui/outputMode.d.ts.map +1 -1
  157. package/dist/ui/outputMode.js +1 -2
  158. package/dist/ui/outputMode.js.map +1 -1
  159. package/dist/ui/richText.js +4 -4
  160. package/dist/ui/richText.js.map +1 -1
  161. package/dist/ui/streamingFormatter.d.ts +11 -0
  162. package/dist/ui/streamingFormatter.d.ts.map +1 -1
  163. package/dist/ui/streamingFormatter.js +27 -1
  164. package/dist/ui/streamingFormatter.js.map +1 -1
  165. package/dist/ui/toolDisplay.js +1 -1
  166. package/dist/ui/toolDisplay.js.map +1 -1
  167. package/package.json +4 -13
@@ -0,0 +1,147 @@
1
+ {
2
+ "$schema": "../src/contracts/schemas/agent-rules.schema.json",
3
+ "contractVersion": "1.0.0",
4
+ "profile": "erosolar-security",
5
+ "version": "2024-11-24",
6
+ "label": "Erosolar Security Agent Rulebook",
7
+ "description": "Guardrails for security-focused workflows in controlled environments. Emphasizes auditable planning, explicit scoping, and non-destructive defaults.",
8
+ "globalPrinciples": [
9
+ {
10
+ "id": "sec.scope_and_intent",
11
+ "summary": "Always confirm scope, targets, and authorization before proposing offensive actions. Default to lab/simulation unless explicitly stated otherwise.",
12
+ "severity": "critical"
13
+ },
14
+ {
15
+ "id": "sec.audit_trail",
16
+ "summary": "Narrate intent before each tool use and summarize results after. Keep steps reproducible and bounded.",
17
+ "severity": "required"
18
+ },
19
+ {
20
+ "id": "sec.non_destructive_default",
21
+ "summary": "Avoid destructive changes. Prefer read-only enumeration, simulation, and offline planning unless explicitly permitted.",
22
+ "severity": "critical"
23
+ },
24
+ {
25
+ "id": "sec.data_minimization",
26
+ "summary": "Collect only what is needed to advance the engagement plan. Do not exfiltrate bulk data.",
27
+ "severity": "required"
28
+ },
29
+ {
30
+ "id": "sec.evidence_based",
31
+ "summary": "Ground all findings in evidence (scan output, logs, file paths). Avoid speculation; ask for missing evidence.",
32
+ "severity": "critical"
33
+ },
34
+ {
35
+ "id": "sec.validation_path",
36
+ "summary": "For exploit plans, state preconditions, payload choice rationale, and expected outcomes. Provide rollback/abort steps.",
37
+ "severity": "required"
38
+ }
39
+ ],
40
+ "phases": [
41
+ {
42
+ "id": "recon",
43
+ "label": "Reconnaissance",
44
+ "description": "Triage assets, services, and trust boundaries. Identify likely choke points and authentication flows.",
45
+ "steps": [
46
+ {
47
+ "id": "step.enumerate",
48
+ "title": "Enumerate assets",
49
+ "intent": "Enumerate assets and entry points; cluster by network segment and auth surface.",
50
+ "rules": [
51
+ {
52
+ "id": "rule.recon.scope",
53
+ "summary": "Confirm target scope before scanning. Use read-only tools by default.",
54
+ "severity": "critical"
55
+ }
56
+ ]
57
+ },
58
+ {
59
+ "id": "step.prioritize",
60
+ "title": "Prioritize targets",
61
+ "intent": "Prioritize paths with high privilege gain vs. detection risk.",
62
+ "rules": [
63
+ {
64
+ "id": "rule.recon.evidence",
65
+ "summary": "Document findings with evidence (scan output, service versions).",
66
+ "severity": "required"
67
+ }
68
+ ]
69
+ }
70
+ ]
71
+ },
72
+ {
73
+ "id": "attack_graph",
74
+ "label": "Attack Graph",
75
+ "description": "Construct and refine attack paths before execution.",
76
+ "steps": [
77
+ {
78
+ "id": "step.model",
79
+ "title": "Model attack paths",
80
+ "intent": "Model nodes (assets/identities) and edges (exploits/misconfigs).",
81
+ "rules": [
82
+ {
83
+ "id": "rule.graph.validation",
84
+ "summary": "Use attack_path_search to rank viable paths with cost/reward/detection trade-offs.",
85
+ "severity": "required"
86
+ }
87
+ ]
88
+ },
89
+ {
90
+ "id": "step.select",
91
+ "title": "Select paths",
92
+ "intent": "Select top candidates and define validation checkpoints.",
93
+ "rules": [
94
+ {
95
+ "id": "rule.graph.checkpoint",
96
+ "summary": "Define validation checkpoints and abort criteria for each path.",
97
+ "severity": "required"
98
+ }
99
+ ]
100
+ }
101
+ ]
102
+ },
103
+ {
104
+ "id": "payload_selection",
105
+ "label": "Payload Selection",
106
+ "description": "Schedule payloads to maximize signal with minimal risk.",
107
+ "steps": [
108
+ {
109
+ "id": "step.schedule",
110
+ "title": "Schedule payloads",
111
+ "intent": "Use payload_scheduler with recent outcomes to rank payloads.",
112
+ "rules": [
113
+ {
114
+ "id": "rule.payload.noise",
115
+ "summary": "Prefer low-noise probes first; escalate only if needed.",
116
+ "severity": "required"
117
+ }
118
+ ]
119
+ }
120
+ ]
121
+ },
122
+ {
123
+ "id": "reporting",
124
+ "label": "Reporting",
125
+ "description": "Document findings, evidence, and mitigations.",
126
+ "steps": [
127
+ {
128
+ "id": "step.document",
129
+ "title": "Document findings",
130
+ "intent": "Capture reproduction steps and affected assets.",
131
+ "rules": [
132
+ {
133
+ "id": "rule.report.evidence",
134
+ "summary": "Include reproduction steps, evidence, and affected assets.",
135
+ "severity": "required"
136
+ },
137
+ {
138
+ "id": "rule.report.mitigations",
139
+ "summary": "List mitigations, compensating controls, and detection guidance.",
140
+ "severity": "required"
141
+ }
142
+ ]
143
+ }
144
+ ]
145
+ }
146
+ ]
147
+ }
@@ -0,0 +1,13 @@
1
+ import type { CapabilityContribution, CapabilityContext, CapabilityModule } from '../runtime/agentHost.js';
2
+ export interface EnhancedAnalysisCapabilityOptions {
3
+ workingDir?: string;
4
+ id?: string;
5
+ description?: string;
6
+ }
7
+ export declare class EnhancedAnalysisCapabilityModule implements CapabilityModule {
8
+ readonly id = "capability.enhanced-analysis";
9
+ private readonly options;
10
+ constructor(options?: EnhancedAnalysisCapabilityOptions);
11
+ create(context: CapabilityContext): Promise<CapabilityContribution>;
12
+ }
13
+ //# sourceMappingURL=enhancedAnalysisCapability.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enhancedAnalysisCapability.d.ts","sourceRoot":"","sources":["../../src/capabilities/enhancedAnalysisCapability.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAG3G,MAAM,WAAW,iCAAiC;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,gCAAiC,YAAW,gBAAgB;IACvE,QAAQ,CAAC,EAAE,kCAAkC;IAC7C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoC;gBAEhD,OAAO,GAAE,iCAAsC;IAIrD,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAW1E"}
@@ -0,0 +1,20 @@
1
+ import { enhancedAnalysisTools } from '../tools/enhancedAnalysisTools.js';
2
+ export class EnhancedAnalysisCapabilityModule {
3
+ id = 'capability.enhanced-analysis';
4
+ options;
5
+ constructor(options = {}) {
6
+ this.options = options;
7
+ }
8
+ async create(context) {
9
+ const workingDir = this.options.workingDir ?? context.workingDir;
10
+ return {
11
+ id: this.options.id ?? 'enhanced-analysis.tools',
12
+ description: this.options.description ?? 'Advanced reasoning, hypothesis testing, and deep multi-causal bug analysis for comprehensive problem-solving.',
13
+ toolSuite: enhancedAnalysisTools,
14
+ metadata: {
15
+ workingDir,
16
+ },
17
+ };
18
+ }
19
+ }
20
+ //# sourceMappingURL=enhancedAnalysisCapability.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enhancedAnalysisCapability.js","sourceRoot":"","sources":["../../src/capabilities/enhancedAnalysisCapability.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAQ1E,MAAM,OAAO,gCAAgC;IAClC,EAAE,GAAG,8BAA8B,CAAC;IAC5B,OAAO,CAAoC;IAE5D,YAAY,UAA6C,EAAE;QACzD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAA0B;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC;QACjE,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,yBAAyB;YAChD,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,+GAA+G;YACxJ,SAAS,EAAE,qBAAqB;YAChC,QAAQ,EAAE;gBACR,UAAU;aACX;SACF,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,6 @@
1
+ import type { CapabilityContribution, CapabilityContext, CapabilityModule } from '../runtime/agentHost.js';
2
+ export declare class OffsecOperationsCapabilityModule implements CapabilityModule {
3
+ readonly id = "capability.offsec.operations";
4
+ create(context: CapabilityContext): Promise<CapabilityContribution>;
5
+ }
6
+ //# sourceMappingURL=offsecOpsCapability.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"offsecOpsCapability.d.ts","sourceRoot":"","sources":["../../src/capabilities/offsecOpsCapability.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAG3G,qBAAa,gCAAiC,YAAW,gBAAgB;IACvE,QAAQ,CAAC,EAAE,kCAAkC;IAEvC,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAe1E"}
@@ -0,0 +1,20 @@
1
+ import { createOffsecOperationsTools } from '../tools/offsec/offsecOperationsTools.js';
2
+ export class OffsecOperationsCapabilityModule {
3
+ id = 'capability.offsec.operations';
4
+ async create(context) {
5
+ return {
6
+ id: 'offsec.operations',
7
+ description: 'Offensive operations tool suite (nmap, dirbust, sqlmap, cracking, payload generation, exploit search).',
8
+ toolSuite: {
9
+ id: 'offsec-operations',
10
+ description: 'Offensive security operations',
11
+ tools: createOffsecOperationsTools(),
12
+ },
13
+ metadata: {
14
+ workingDir: context.workingDir,
15
+ scope: 'offensive-security',
16
+ },
17
+ };
18
+ }
19
+ }
20
+ //# sourceMappingURL=offsecOpsCapability.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"offsecOpsCapability.js","sourceRoot":"","sources":["../../src/capabilities/offsecOpsCapability.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAE,MAAM,0CAA0C,CAAC;AAEvF,MAAM,OAAO,gCAAgC;IAClC,EAAE,GAAG,8BAA8B,CAAC;IAE7C,KAAK,CAAC,MAAM,CAAC,OAA0B;QACrC,OAAO;YACL,EAAE,EAAE,mBAAmB;YACvB,WAAW,EAAE,wGAAwG;YACrH,SAAS,EAAE;gBACT,EAAE,EAAE,mBAAmB;gBACvB,WAAW,EAAE,+BAA+B;gBAC5C,KAAK,EAAE,2BAA2B,EAAE;aACrC;YACD,QAAQ,EAAE;gBACR,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,KAAK,EAAE,oBAAoB;aAC5B;SACF,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,12 @@
1
+ import type { CapabilityContribution, CapabilityContext, CapabilityModule } from '../runtime/agentHost.js';
2
+ /**
3
+ * Offensive search capability
4
+ *
5
+ * Provides offline attack-path search and payload scheduling utilities.
6
+ * Designed for lab/offline planning—no network operations.
7
+ */
8
+ export declare class OffsecSearchCapabilityModule implements CapabilityModule {
9
+ readonly id = "capability.offsec.search";
10
+ create(context: CapabilityContext): Promise<CapabilityContribution>;
11
+ }
12
+ //# sourceMappingURL=offsecSearchCapability.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"offsecSearchCapability.d.ts","sourceRoot":"","sources":["../../src/capabilities/offsecSearchCapability.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAG3G;;;;;GAKG;AACH,qBAAa,4BAA6B,YAAW,gBAAgB;IACnE,QAAQ,CAAC,EAAE,8BAA8B;IAEnC,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAgB1E"}
@@ -0,0 +1,27 @@
1
+ import { createOffsecSearchTools } from '../tools/offsecSearchTools.js';
2
+ /**
3
+ * Offensive search capability
4
+ *
5
+ * Provides offline attack-path search and payload scheduling utilities.
6
+ * Designed for lab/offline planning—no network operations.
7
+ */
8
+ export class OffsecSearchCapabilityModule {
9
+ id = 'capability.offsec.search';
10
+ async create(context) {
11
+ const tools = createOffsecSearchTools();
12
+ return {
13
+ id: 'offsec.search',
14
+ description: 'Attack-graph search and payload scheduling for offensive planning (offline).',
15
+ toolSuite: {
16
+ id: 'offsec-search',
17
+ description: 'Offensive search helpers',
18
+ tools,
19
+ },
20
+ metadata: {
21
+ workingDir: context.workingDir,
22
+ scope: 'offline-planning',
23
+ },
24
+ };
25
+ }
26
+ }
27
+ //# sourceMappingURL=offsecSearchCapability.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"offsecSearchCapability.js","sourceRoot":"","sources":["../../src/capabilities/offsecSearchCapability.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAExE;;;;;GAKG;AACH,MAAM,OAAO,4BAA4B;IAC9B,EAAE,GAAG,0BAA0B,CAAC;IAEzC,KAAK,CAAC,MAAM,CAAC,OAA0B;QACrC,MAAM,KAAK,GAAG,uBAAuB,EAAE,CAAC;QACxC,OAAO;YACL,EAAE,EAAE,eAAe;YACnB,WAAW,EAAE,8EAA8E;YAC3F,SAAS,EAAE;gBACT,EAAE,EAAE,eAAe;gBACnB,WAAW,EAAE,0BAA0B;gBACvC,KAAK;aACN;YACD,QAAQ,EAAE;gBACR,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,KAAK,EAAE,kBAAkB;aAC1B;SACF,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,6 @@
1
+ import type { CapabilityContribution, CapabilityContext, CapabilityModule } from '../runtime/agentHost.js';
2
+ export declare class TAOCapabilityModule implements CapabilityModule {
3
+ readonly id = "capability.tao";
4
+ create(context: CapabilityContext): Promise<CapabilityContribution>;
5
+ }
6
+ //# sourceMappingURL=taoCapability.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taoCapability.d.ts","sourceRoot":"","sources":["../../src/capabilities/taoCapability.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAG3G,qBAAa,mBAAoB,YAAW,gBAAgB;IAC1D,QAAQ,CAAC,EAAE,oBAAoB;IAEzB,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAe1E"}
@@ -0,0 +1,20 @@
1
+ import { createTAOOperationsTools } from '../tools/taoOperations.js';
2
+ export class TAOCapabilityModule {
3
+ id = 'capability.tao';
4
+ async create(context) {
5
+ return {
6
+ id: 'tao',
7
+ description: 'Tailored Access Operations - Advanced offensive capabilities for authorized red team operations',
8
+ toolSuite: {
9
+ id: 'tao',
10
+ description: 'TAO operations',
11
+ tools: createTAOOperationsTools(),
12
+ },
13
+ metadata: {
14
+ workingDir: context.workingDir,
15
+ scope: 'tao',
16
+ },
17
+ };
18
+ }
19
+ }
20
+ //# sourceMappingURL=taoCapability.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taoCapability.js","sourceRoot":"","sources":["../../src/capabilities/taoCapability.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAErE,MAAM,OAAO,mBAAmB;IACrB,EAAE,GAAG,gBAAgB,CAAC;IAE/B,KAAK,CAAC,MAAM,CAAC,OAA0B;QACrC,OAAO;YACL,EAAE,EAAE,KAAK;YACT,WAAW,EAAE,iGAAiG;YAC9G,SAAS,EAAE;gBACT,EAAE,EAAE,KAAK;gBACT,WAAW,EAAE,gBAAgB;gBAC7B,KAAK,EAAE,wBAAwB,EAAE;aAClC;YACD,QAAQ,EAAE;gBACR,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,KAAK,EAAE,KAAK;aACb;SACF,CAAC;IACJ,CAAC;CACF"}
@@ -1,4 +1,5 @@
1
1
  import type { ToolAvailabilityOption } from '../contracts/v1/toolAccess.js';
2
+ import type { ProfileName } from '../config.js';
2
3
  import type { ToolSettings } from '../core/preferences.js';
3
4
  import { type SecretName } from '../core/secretStore.js';
4
5
  export type ToolToggleId = string;
@@ -18,7 +19,7 @@ export interface ToolLoadWarning {
18
19
  secretId?: SecretName;
19
20
  }
20
21
  export declare function getToolToggleOptions(): ToolToggleOption[];
21
- export declare function buildEnabledToolSet(saved: ToolSettings | null): Set<ToolToggleId>;
22
+ export declare function buildEnabledToolSet(saved: ToolSettings | null, profile?: ProfileName): Set<ToolToggleId>;
22
23
  export declare function evaluateToolPermissions(selection: Set<ToolToggleId>): ToolPermissionSummary;
23
24
  export declare function isPluginEnabled(pluginId: string, allowedPluginIds: Set<string>): boolean;
24
25
  //# sourceMappingURL=toolRegistry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"toolRegistry.d.ts","sourceRoot":"","sources":["../../src/capabilities/toolRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAyC,KAAK,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGhG,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC;AAElC,MAAM,MAAM,gBAAgB,GAAG,sBAAsB,GAAG;IACtD,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF,MAAM,WAAW,qBAAqB;IACpC,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9B,QAAQ,EAAE,eAAe,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,YAAY,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,gBAAgB,CAAC;IACzB,QAAQ,CAAC,EAAE,UAAU,CAAC;CACvB;AAUD,wBAAgB,oBAAoB,IAAI,gBAAgB,EAAE,CAEzD;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,CA8BjF;AAED,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,qBAAqB,CA+B3F;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAMxF"}
1
+ {"version":3,"file":"toolRegistry.d.ts","sourceRoot":"","sources":["../../src/capabilities/toolRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAyC,KAAK,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGhG,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC;AAElC,MAAM,MAAM,gBAAgB,GAAG,sBAAsB,GAAG;IACtD,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF,MAAM,WAAW,qBAAqB;IACpC,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9B,QAAQ,EAAE,eAAe,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,YAAY,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,gBAAgB,CAAC;IACzB,QAAQ,CAAC,EAAE,UAAU,CAAC;CACvB;AAUD,wBAAgB,oBAAoB,IAAI,gBAAgB,EAAE,CAEzD;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,GAAG,CAAC,YAAY,CAAC,CAoCxG;AAED,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,qBAAqB,CA+B3F;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAMxF"}
@@ -8,7 +8,7 @@ const DEFAULT_OPTION_IDS = buildDefaultOptionIds();
8
8
  export function getToolToggleOptions() {
9
9
  return [...TOOL_OPTIONS];
10
10
  }
11
- export function buildEnabledToolSet(saved) {
11
+ export function buildEnabledToolSet(saved, profile) {
12
12
  const enabled = new Set();
13
13
  // Always include locked/default core packages to keep the AI flow intact
14
14
  for (const id of LOCKED_OPTION_IDS) {
@@ -33,6 +33,11 @@ export function buildEnabledToolSet(saved) {
33
33
  for (const id of DEFAULT_OPTION_IDS) {
34
34
  enabled.add(id);
35
35
  }
36
+ // Profile-specific defaults
37
+ if (profile === 'erosolar-security') {
38
+ enabled.add('development-tools');
39
+ enabled.add('offensive-security');
40
+ }
36
41
  return enabled;
37
42
  }
38
43
  export function evaluateToolPermissions(selection) {
@@ -1 +1 @@
1
- {"version":3,"file":"toolRegistry.js","sourceRoot":"","sources":["../../src/capabilities/toolRegistry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"toolRegistry.js","sourceRoot":"","sources":["../../src/capabilities/toolRegistry.ts"],"names":[],"mappings":"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"}
@@ -259,45 +259,44 @@
259
259
 
260
260
  "profiles": [
261
261
  {
262
- "name": "general",
263
- "label": "Erosolar",
264
- "description": "General-purpose operator with balanced reasoning across research, planning, writing, and coding tasks.",
262
+ "name": "erosolar-code",
263
+ "label": "Erosolar Code",
264
+ "description": "OpenAI-tuned coding specialist optimized for rapid edits with deterministic grounding.",
265
265
  "defaultProvider": "openai",
266
- "defaultModel": "gpt-5.1",
267
- "temperature": 0.2,
266
+ "defaultModel": "gpt-5.1-codex",
268
267
  "systemPrompt": {
269
- "type": "rulebook",
270
- "template": "{{rulebook}}"
268
+ "type": "rulebook"
271
269
  },
272
270
  "rulebook": {
273
- "file": "agents/general.rules.json",
271
+ "file": "agents/erosolar-code.rules.json",
274
272
  "version": "2024-11-24",
275
273
  "contractVersion": "1.0.0",
276
- "description": "Structured rules governing the balanced Erosolar profile."
274
+ "description": "Deterministic coding workflow guardrails."
277
275
  },
278
276
  "metadata": {
279
- "primaryUseCase": "general-purpose",
280
- "tags": ["balanced", "research", "planning", "coding"]
277
+ "primaryUseCase": "coding",
278
+ "tags": ["coding", "deterministic", "rapid-edits"]
281
279
  }
282
280
  },
283
281
  {
284
- "name": "erosolar-code",
285
- "label": "Erosolar Code",
286
- "description": "OpenAI-tuned coding specialist optimized for rapid edits with deterministic grounding.",
282
+ "name": "erosolar-security",
283
+ "label": "Erosolar Security",
284
+ "description": "Security-focused operator for adversarial planning and assessments in controlled environments.",
287
285
  "defaultProvider": "openai",
288
- "defaultModel": "gpt-5.1-codex",
286
+ "defaultModel": "gpt-5.1",
287
+ "temperature": 0.1,
289
288
  "systemPrompt": {
290
289
  "type": "rulebook"
291
290
  },
292
291
  "rulebook": {
293
- "file": "agents/erosolar-code.rules.json",
292
+ "file": "agents/erosolar-security.rules.json",
294
293
  "version": "2024-11-24",
295
294
  "contractVersion": "1.0.0",
296
- "description": "Deterministic coding workflow guardrails."
295
+ "description": "Security-focused guardrails and operational constraints."
297
296
  },
298
297
  "metadata": {
299
- "primaryUseCase": "coding",
300
- "tags": ["coding", "deterministic", "rapid-edits"]
298
+ "primaryUseCase": "security",
299
+ "tags": ["security", "offsec", "assessment"]
301
300
  }
302
301
  }
303
302
  ],
@@ -7,9 +7,9 @@
7
7
  "description": "Canonical list of capability suites, plugin bindings, and scope declarations for the default runtime.",
8
8
  "options": [
9
9
  {
10
- "id": "default-tools",
11
- "label": "Default software engineering tools",
12
- "description": "Essential local software engineering + web search tools (always enabled).",
10
+ "id": "core-tools",
11
+ "label": "Core Tools (Essential)",
12
+ "description": "Essential tools for basic CLI operations, file management, and AI functionality (always enabled).",
13
13
  "defaultEnabled": true,
14
14
  "category": "core",
15
15
  "pluginIds": [
@@ -19,6 +19,40 @@
19
19
  "tool.glob",
20
20
  "tool.learn.exploration",
21
21
  "tool.bash.local",
22
+ "tool.task-management.local",
23
+ "tool.planning",
24
+ "tool.interaction.local",
25
+ "tool.agent-spawning"
26
+ ],
27
+ "metadata": {
28
+ "locked": true,
29
+ "restartRequired": true
30
+ }
31
+ },
32
+ {
33
+ "id": "offensive-security",
34
+ "label": "Offensive Security Tools",
35
+ "description": "Comprehensive penetration testing and security assessment tools (network recon, web testing, exploitation, password cracking, payload generation). No preconditions required.",
36
+ "defaultEnabled": true,
37
+ "category": "security",
38
+ "pluginIds": [
39
+ "tool.offsec.exploit-search",
40
+ "tool.offsec.operations",
41
+ "tool.tao"
42
+ ],
43
+ "metadata": {
44
+ "locked": false,
45
+ "restartRequired": false
46
+ }
47
+ },
48
+ {
49
+ "id": "development-tools",
50
+ "label": "Software Development Tools",
51
+ "description": "Essential development tools for coding, testing, and code analysis (always enabled).",
52
+ "defaultEnabled": true,
53
+ "category": "development",
54
+ "pluginIds": [
55
+ "tool.learn.exploration",
22
56
  "tool.repo-checks.local",
23
57
  "tool.code-analysis.structural",
24
58
  "tool.development.workflow",
@@ -26,16 +60,12 @@
26
60
  "tool.refactoring.assistant",
27
61
  "tool.dependency.security",
28
62
  "tool.testing.coverage",
29
- "tool.task-management.local",
30
- "tool.planning",
31
- "tool.interaction.local",
32
63
  "tool.web.local",
33
- "tool.agent-spawning",
34
64
  "tool.enhanced-git",
35
65
  "tool.skills.loader"
36
66
  ],
37
67
  "metadata": {
38
- "locked": true,
68
+ "locked": false,
39
69
  "restartRequired": true
40
70
  }
41
71
  },
@@ -787,7 +787,7 @@ export class AgentRuntime {
787
787
  const truncated = content.slice(0, toolOutputLimit);
788
788
  const lastNewline = truncated.lastIndexOf('\n');
789
789
  const cutPoint = lastNewline > toolOutputLimit * 0.7 ? lastNewline : toolOutputLimit;
790
- msg.content = truncated.slice(0, cutPoint) + `\n\n[... truncated ${content.length - cutPoint} chars for context recovery ...]`;
790
+ msg.content = `${truncated.slice(0, cutPoint)}\n\n[... truncated ${content.length - cutPoint} chars for context recovery ...]`;
791
791
  truncatedCount++;
792
792
  }
793
793
  }
@@ -798,7 +798,7 @@ export class AgentRuntime {
798
798
  const truncated = content.slice(0, limit);
799
799
  const lastNewline = truncated.lastIndexOf('\n');
800
800
  const cutPoint = lastNewline > limit * 0.8 ? lastNewline : limit;
801
- msg.content = truncated.slice(0, cutPoint) + `\n\n[... truncated for context recovery ...]`;
801
+ msg.content = `${truncated.slice(0, cutPoint)}\n\n[... truncated for context recovery ...]`;
802
802
  truncatedCount++;
803
803
  }
804
804
  }
@@ -806,7 +806,7 @@ export class AgentRuntime {
806
806
  for (let i = 1; i < systemMessages.length; i++) {
807
807
  const sys = systemMessages[i];
808
808
  if (sys && sys.content && sys.content.length > toolOutputLimit) {
809
- sys.content = sys.content.slice(0, toolOutputLimit) + '\n[... truncated ...]';
809
+ sys.content = `${sys.content.slice(0, toolOutputLimit)}\n[... truncated ...]`;
810
810
  truncatedCount++;
811
811
  }
812
812
  }
@@ -846,7 +846,7 @@ export class AgentRuntime {
846
846
  if (msg.role === 'tool' && msg.content) {
847
847
  const content = typeof msg.content === 'string' ? msg.content : JSON.stringify(msg.content);
848
848
  if (content.length > minLimit) {
849
- msg.content = content.slice(0, minLimit) + '\n[... severely truncated ...]';
849
+ msg.content = `${content.slice(0, minLimit)}\n[... severely truncated ...]`;
850
850
  }
851
851
  }
852
852
  }