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.
- package/agents/erosolar-security.rules.json +147 -0
- package/dist/capabilities/enhancedAnalysisCapability.d.ts +13 -0
- package/dist/capabilities/enhancedAnalysisCapability.d.ts.map +1 -0
- package/dist/capabilities/enhancedAnalysisCapability.js +20 -0
- package/dist/capabilities/enhancedAnalysisCapability.js.map +1 -0
- package/dist/capabilities/offsecOpsCapability.d.ts +6 -0
- package/dist/capabilities/offsecOpsCapability.d.ts.map +1 -0
- package/dist/capabilities/offsecOpsCapability.js +20 -0
- package/dist/capabilities/offsecOpsCapability.js.map +1 -0
- package/dist/capabilities/offsecSearchCapability.d.ts +12 -0
- package/dist/capabilities/offsecSearchCapability.d.ts.map +1 -0
- package/dist/capabilities/offsecSearchCapability.js +27 -0
- package/dist/capabilities/offsecSearchCapability.js.map +1 -0
- package/dist/capabilities/taoCapability.d.ts +6 -0
- package/dist/capabilities/taoCapability.d.ts.map +1 -0
- package/dist/capabilities/taoCapability.js +20 -0
- package/dist/capabilities/taoCapability.js.map +1 -0
- package/dist/capabilities/toolRegistry.d.ts +2 -1
- package/dist/capabilities/toolRegistry.d.ts.map +1 -1
- package/dist/capabilities/toolRegistry.js +6 -1
- package/dist/capabilities/toolRegistry.js.map +1 -1
- package/dist/contracts/agent-schemas.json +18 -19
- package/dist/contracts/tools.schema.json +38 -8
- package/dist/core/agent.js +4 -4
- package/dist/core/agent.js.map +1 -1
- package/dist/core/alphaZeroEngine.js +1 -1
- package/dist/core/alphaZeroEngine.js.map +1 -1
- package/dist/core/alphaZeroModular.js +2 -2
- package/dist/core/alphaZeroModular.js.map +1 -1
- package/dist/core/contextManager.d.ts +8 -2
- package/dist/core/contextManager.d.ts.map +1 -1
- package/dist/core/contextManager.js +15 -2
- package/dist/core/contextManager.js.map +1 -1
- package/dist/core/costTracker.js +1 -1
- package/dist/core/costTracker.js.map +1 -1
- package/dist/core/deepBugAnalyzer.d.ts +128 -0
- package/dist/core/deepBugAnalyzer.d.ts.map +1 -0
- package/dist/core/deepBugAnalyzer.js +406 -0
- package/dist/core/deepBugAnalyzer.js.map +1 -0
- package/dist/core/hypothesisEngine.d.ts +113 -0
- package/dist/core/hypothesisEngine.d.ts.map +1 -0
- package/dist/core/hypothesisEngine.js +264 -0
- package/dist/core/hypothesisEngine.js.map +1 -0
- package/dist/core/intelligentSummarizer.d.ts +79 -0
- package/dist/core/intelligentSummarizer.d.ts.map +1 -0
- package/dist/core/intelligentSummarizer.js +273 -0
- package/dist/core/intelligentSummarizer.js.map +1 -0
- package/dist/core/memorySystem.js +2 -2
- package/dist/core/memorySystem.js.map +1 -1
- package/dist/core/offsecAlphaZero.d.ts +3 -0
- package/dist/core/offsecAlphaZero.d.ts.map +1 -1
- package/dist/core/offsecAlphaZero.js +166 -5
- package/dist/core/offsecAlphaZero.js.map +1 -1
- package/dist/core/productTestHarness.d.ts +113 -0
- package/dist/core/productTestHarness.d.ts.map +1 -0
- package/dist/core/productTestHarness.js +345 -0
- package/dist/core/productTestHarness.js.map +1 -0
- package/dist/core/securityAssessment.js +1 -1
- package/dist/core/securityAssessment.js.map +1 -1
- package/dist/core/toolPatternAnalyzer.d.ts +87 -0
- package/dist/core/toolPatternAnalyzer.d.ts.map +1 -0
- package/dist/core/toolPatternAnalyzer.js +272 -0
- package/dist/core/toolPatternAnalyzer.js.map +1 -0
- package/dist/core/updateChecker.js +3 -3
- package/dist/core/updateChecker.js.map +1 -1
- package/dist/mcp/sseClient.js +1 -1
- package/dist/mcp/sseClient.js.map +1 -1
- package/dist/plugins/tools/enhancedAnalysis/enhancedAnalysisPlugin.d.ts +3 -0
- package/dist/plugins/tools/enhancedAnalysis/enhancedAnalysisPlugin.d.ts.map +1 -0
- package/dist/plugins/tools/enhancedAnalysis/enhancedAnalysisPlugin.js +14 -0
- package/dist/plugins/tools/enhancedAnalysis/enhancedAnalysisPlugin.js.map +1 -0
- package/dist/plugins/tools/enhancedCodeIntelligence/enhancedCodeIntelligencePlugin.d.ts +3 -0
- package/dist/plugins/tools/enhancedCodeIntelligence/enhancedCodeIntelligencePlugin.d.ts.map +1 -0
- package/dist/plugins/tools/enhancedCodeIntelligence/enhancedCodeIntelligencePlugin.js +12 -0
- package/dist/plugins/tools/enhancedCodeIntelligence/enhancedCodeIntelligencePlugin.js.map +1 -0
- package/dist/plugins/tools/enhancedDevWorkflow/enhancedDevWorkflowPlugin.d.ts +3 -0
- package/dist/plugins/tools/enhancedDevWorkflow/enhancedDevWorkflowPlugin.d.ts.map +1 -0
- package/dist/plugins/tools/enhancedDevWorkflow/enhancedDevWorkflowPlugin.js +12 -0
- package/dist/plugins/tools/enhancedDevWorkflow/enhancedDevWorkflowPlugin.js.map +1 -0
- package/dist/plugins/tools/nodeDefaults.d.ts.map +1 -1
- package/dist/plugins/tools/nodeDefaults.js +12 -0
- package/dist/plugins/tools/nodeDefaults.js.map +1 -1
- package/dist/plugins/tools/offsec/offsecOpsPlugin.d.ts +3 -0
- package/dist/plugins/tools/offsec/offsecOpsPlugin.d.ts.map +1 -0
- package/dist/plugins/tools/offsec/offsecOpsPlugin.js +10 -0
- package/dist/plugins/tools/offsec/offsecOpsPlugin.js.map +1 -0
- package/dist/plugins/tools/offsec/offsecSearchPlugin.d.ts +3 -0
- package/dist/plugins/tools/offsec/offsecSearchPlugin.d.ts.map +1 -0
- package/dist/plugins/tools/offsec/offsecSearchPlugin.js +12 -0
- package/dist/plugins/tools/offsec/offsecSearchPlugin.js.map +1 -0
- package/dist/plugins/tools/tao/taoPlugin.d.ts +3 -0
- package/dist/plugins/tools/tao/taoPlugin.d.ts.map +1 -0
- package/dist/plugins/tools/tao/taoPlugin.js +10 -0
- package/dist/plugins/tools/tao/taoPlugin.js.map +1 -0
- package/dist/shell/composableMessage.js +2 -2
- package/dist/shell/composableMessage.js.map +1 -1
- package/dist/shell/interactiveShell.d.ts +6 -0
- package/dist/shell/interactiveShell.d.ts.map +1 -1
- package/dist/shell/interactiveShell.js +50 -15
- package/dist/shell/interactiveShell.js.map +1 -1
- package/dist/shell/shellApp.js +1 -1
- package/dist/shell/shellApp.js.map +1 -1
- package/dist/shell/systemPrompt.d.ts.map +1 -1
- package/dist/shell/systemPrompt.js +3 -0
- package/dist/shell/systemPrompt.js.map +1 -1
- package/dist/tools/buildTools.js +1 -1
- package/dist/tools/buildTools.js.map +1 -1
- package/dist/tools/diffUtils.js +6 -6
- package/dist/tools/diffUtils.js.map +1 -1
- package/dist/tools/editTools.js +1 -1
- package/dist/tools/editTools.js.map +1 -1
- package/dist/tools/enhancedAnalysisTools.d.ts +9 -0
- package/dist/tools/enhancedAnalysisTools.d.ts.map +1 -0
- package/dist/tools/enhancedAnalysisTools.js +382 -0
- package/dist/tools/enhancedAnalysisTools.js.map +1 -0
- package/dist/tools/enhancedCodeIntelligenceTools.d.ts +1 -21
- package/dist/tools/enhancedCodeIntelligenceTools.d.ts.map +1 -1
- package/dist/tools/enhancedCodeIntelligenceTools.js +378 -256
- package/dist/tools/enhancedCodeIntelligenceTools.js.map +1 -1
- package/dist/tools/enhancedDevWorkflowTools.d.ts +2 -10
- package/dist/tools/enhancedDevWorkflowTools.d.ts.map +1 -1
- package/dist/tools/enhancedDevWorkflowTools.js +293 -165
- package/dist/tools/enhancedDevWorkflowTools.js.map +1 -1
- package/dist/tools/interactionTools.d.ts.map +1 -1
- package/dist/tools/interactionTools.js +55 -0
- package/dist/tools/interactionTools.js.map +1 -1
- package/dist/tools/learnTools.js +1 -1
- package/dist/tools/learnTools.js.map +1 -1
- package/dist/tools/offsec/offsecOperationsTools.d.ts +3 -0
- package/dist/tools/offsec/offsecOperationsTools.d.ts.map +1 -0
- package/dist/tools/offsec/offsecOperationsTools.js +333 -0
- package/dist/tools/offsec/offsecOperationsTools.js.map +1 -0
- package/dist/tools/offsecSearchTools.d.ts +3 -0
- package/dist/tools/offsecSearchTools.d.ts.map +1 -0
- package/dist/tools/offsecSearchTools.js +330 -0
- package/dist/tools/offsecSearchTools.js.map +1 -0
- package/dist/tools/taoOperations.d.ts +7 -0
- package/dist/tools/taoOperations.d.ts.map +1 -0
- package/dist/tools/taoOperations.js +744 -0
- package/dist/tools/taoOperations.js.map +1 -0
- package/dist/ui/ClaudeCodeRenderer.js +1 -1
- package/dist/ui/ClaudeCodeRenderer.js.map +1 -1
- package/dist/ui/ShellUIAdapter.d.ts +10 -6
- package/dist/ui/ShellUIAdapter.d.ts.map +1 -1
- package/dist/ui/ShellUIAdapter.js +69 -67
- package/dist/ui/ShellUIAdapter.js.map +1 -1
- package/dist/ui/UnifiedUIRenderer.d.ts +2 -0
- package/dist/ui/UnifiedUIRenderer.d.ts.map +1 -1
- package/dist/ui/UnifiedUIRenderer.js +64 -13
- package/dist/ui/UnifiedUIRenderer.js.map +1 -1
- package/dist/ui/globalWriteLock.d.ts.map +1 -1
- package/dist/ui/globalWriteLock.js +6 -0
- package/dist/ui/globalWriteLock.js.map +1 -1
- package/dist/ui/inPlaceUpdater.js +1 -1
- package/dist/ui/inPlaceUpdater.js.map +1 -1
- package/dist/ui/outputMode.d.ts.map +1 -1
- package/dist/ui/outputMode.js +1 -2
- package/dist/ui/outputMode.js.map +1 -1
- package/dist/ui/richText.js +4 -4
- package/dist/ui/richText.js.map +1 -1
- package/dist/ui/streamingFormatter.d.ts +11 -0
- package/dist/ui/streamingFormatter.d.ts.map +1 -1
- package/dist/ui/streamingFormatter.js +27 -1
- package/dist/ui/streamingFormatter.js.map +1 -1
- package/dist/ui/toolDisplay.js +1 -1
- package/dist/ui/toolDisplay.js.map +1 -1
- 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,
|
|
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":"
|
|
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": "
|
|
263
|
-
"label": "Erosolar",
|
|
264
|
-
"description": "
|
|
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/
|
|
271
|
+
"file": "agents/erosolar-code.rules.json",
|
|
274
272
|
"version": "2024-11-24",
|
|
275
273
|
"contractVersion": "1.0.0",
|
|
276
|
-
"description": "
|
|
274
|
+
"description": "Deterministic coding workflow guardrails."
|
|
277
275
|
},
|
|
278
276
|
"metadata": {
|
|
279
|
-
"primaryUseCase": "
|
|
280
|
-
"tags": ["
|
|
277
|
+
"primaryUseCase": "coding",
|
|
278
|
+
"tags": ["coding", "deterministic", "rapid-edits"]
|
|
281
279
|
}
|
|
282
280
|
},
|
|
283
281
|
{
|
|
284
|
-
"name": "erosolar-
|
|
285
|
-
"label": "Erosolar
|
|
286
|
-
"description": "
|
|
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
|
|
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-
|
|
292
|
+
"file": "agents/erosolar-security.rules.json",
|
|
294
293
|
"version": "2024-11-24",
|
|
295
294
|
"contractVersion": "1.0.0",
|
|
296
|
-
"description": "
|
|
295
|
+
"description": "Security-focused guardrails and operational constraints."
|
|
297
296
|
},
|
|
298
297
|
"metadata": {
|
|
299
|
-
"primaryUseCase": "
|
|
300
|
-
"tags": ["
|
|
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": "
|
|
11
|
-
"label": "
|
|
12
|
-
"description": "Essential
|
|
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":
|
|
68
|
+
"locked": false,
|
|
39
69
|
"restartRequired": true
|
|
40
70
|
}
|
|
41
71
|
},
|
package/dist/core/agent.js
CHANGED
|
@@ -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)
|
|
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)
|
|
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)
|
|
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)
|
|
849
|
+
msg.content = `${content.slice(0, minLimit)}\n[... severely truncated ...]`;
|
|
850
850
|
}
|
|
851
851
|
}
|
|
852
852
|
}
|