yuangs 6.3.0 → 6.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (166) hide show
  1. package/dist/agent/AgentRuntime.d.ts +7 -27
  2. package/dist/agent/AgentRuntime.js +31 -583
  3. package/dist/agent/AgentRuntime.js.map +1 -1
  4. package/dist/agent/DualAgentRuntime.js +16 -16
  5. package/dist/agent/DualAgentRuntime.js.map +1 -1
  6. package/dist/agent/ExecutionCompleter.d.ts +31 -0
  7. package/dist/agent/ExecutionCompleter.js +83 -0
  8. package/dist/agent/ExecutionCompleter.js.map +1 -0
  9. package/dist/agent/ExecutionHandler.d.ts +34 -0
  10. package/dist/agent/ExecutionHandler.js +227 -0
  11. package/dist/agent/ExecutionHandler.js.map +1 -0
  12. package/dist/agent/ExecutionLearning.d.ts +8 -0
  13. package/dist/agent/ExecutionLearning.js +31 -0
  14. package/dist/agent/ExecutionLearning.js.map +1 -0
  15. package/dist/agent/ExecutionRecovery.d.ts +26 -0
  16. package/dist/agent/ExecutionRecovery.js +99 -0
  17. package/dist/agent/ExecutionRecovery.js.map +1 -0
  18. package/dist/agent/ExecutionStabilizer.d.ts +20 -0
  19. package/dist/agent/ExecutionStabilizer.js +101 -0
  20. package/dist/agent/ExecutionStabilizer.js.map +1 -0
  21. package/dist/agent/ExecutionTypes.d.ts +13 -0
  22. package/dist/agent/ExecutionTypes.js +9 -0
  23. package/dist/agent/ExecutionTypes.js.map +1 -0
  24. package/dist/agent/LLMCaller.d.ts +19 -0
  25. package/dist/agent/LLMCaller.js +103 -0
  26. package/dist/agent/LLMCaller.js.map +1 -0
  27. package/dist/agent/PreFlightChecker.d.ts +51 -0
  28. package/dist/agent/PreFlightChecker.js +148 -0
  29. package/dist/agent/PreFlightChecker.js.map +1 -0
  30. package/dist/agent/commandSemantics.js +12 -0
  31. package/dist/agent/commandSemantics.js.map +1 -1
  32. package/dist/agent/errorTracker.d.ts +10 -0
  33. package/dist/agent/errorTracker.js +36 -0
  34. package/dist/agent/errorTracker.js.map +1 -1
  35. package/dist/agent/executor.d.ts +12 -90
  36. package/dist/agent/executor.js +59 -881
  37. package/dist/agent/executor.js.map +1 -1
  38. package/dist/agent/governance/core.js.map +1 -1
  39. package/dist/agent/governance/riskScoring.js +6 -3
  40. package/dist/agent/governance/riskScoring.js.map +1 -1
  41. package/dist/agent/governance.js +4 -36
  42. package/dist/agent/governance.js.map +1 -1
  43. package/dist/agent/llm.js +11 -17
  44. package/dist/agent/llm.js.map +1 -1
  45. package/dist/agent/policy/engine.d.ts +2 -5
  46. package/dist/agent/policy/engine.js.map +1 -1
  47. package/dist/agent/policy/index.d.ts +1 -0
  48. package/dist/agent/policy/index.js +1 -0
  49. package/dist/agent/policy/index.js.map +1 -1
  50. package/dist/agent/policy/policies/WorkdirWrite.d.ts +11 -0
  51. package/dist/agent/policy/policies/WorkdirWrite.js +65 -0
  52. package/dist/agent/policy/policies/WorkdirWrite.js.map +1 -0
  53. package/dist/agent/policy/policies/noDangerousShell.js +1 -1
  54. package/dist/agent/policy/policies/noDangerousShell.js.map +1 -1
  55. package/dist/agent/policy/types.d.ts +6 -4
  56. package/dist/agent/skills.d.ts +12 -17
  57. package/dist/agent/skills.js +45 -52
  58. package/dist/agent/skills.js.map +1 -1
  59. package/dist/agent/state.d.ts +33 -3
  60. package/dist/agent/state.js +14 -0
  61. package/dist/agent/state.js.map +1 -1
  62. package/dist/agent/tools/AnalyzeDependencies.d.ts +9 -0
  63. package/dist/agent/tools/AnalyzeDependencies.js +91 -0
  64. package/dist/agent/tools/AnalyzeDependencies.js.map +1 -0
  65. package/dist/agent/tools/AppendFile.d.ts +8 -0
  66. package/dist/agent/tools/AppendFile.js +36 -0
  67. package/dist/agent/tools/AppendFile.js.map +1 -0
  68. package/dist/agent/tools/CodeDiff.d.ts +8 -0
  69. package/dist/agent/tools/CodeDiff.js +36 -0
  70. package/dist/agent/tools/CodeDiff.js.map +1 -0
  71. package/dist/agent/tools/ContinueReading.d.ts +8 -0
  72. package/dist/agent/tools/ContinueReading.js +59 -0
  73. package/dist/agent/tools/ContinueReading.js.map +1 -0
  74. package/dist/agent/tools/FileInfo.d.ts +8 -0
  75. package/dist/agent/tools/FileInfo.js +43 -0
  76. package/dist/agent/tools/FileInfo.js.map +1 -0
  77. package/dist/agent/tools/GitDiff.d.ts +8 -0
  78. package/dist/agent/tools/GitDiff.js +40 -0
  79. package/dist/agent/tools/GitDiff.js.map +1 -0
  80. package/dist/agent/tools/GitLog.d.ts +8 -0
  81. package/dist/agent/tools/GitLog.js +36 -0
  82. package/dist/agent/tools/GitLog.js.map +1 -0
  83. package/dist/agent/tools/GitStatus.d.ts +8 -0
  84. package/dist/agent/tools/GitStatus.js +38 -0
  85. package/dist/agent/tools/GitStatus.js.map +1 -0
  86. package/dist/agent/tools/ListDirectoryTree.d.ts +9 -0
  87. package/dist/agent/tools/ListDirectoryTree.js +63 -0
  88. package/dist/agent/tools/ListDirectoryTree.js.map +1 -0
  89. package/dist/agent/tools/ListFiles.d.ts +9 -0
  90. package/dist/agent/tools/ListFiles.js +53 -0
  91. package/dist/agent/tools/ListFiles.js.map +1 -0
  92. package/dist/agent/tools/ReadFile.d.ts +8 -0
  93. package/dist/agent/tools/ReadFile.js +33 -0
  94. package/dist/agent/tools/ReadFile.js.map +1 -0
  95. package/dist/agent/tools/ReadFileLines.d.ts +8 -0
  96. package/dist/agent/tools/ReadFileLines.js +45 -0
  97. package/dist/agent/tools/ReadFileLines.js.map +1 -0
  98. package/dist/agent/tools/ReadFileLinesFromEnd.d.ts +8 -0
  99. package/dist/agent/tools/ReadFileLinesFromEnd.js +48 -0
  100. package/dist/agent/tools/ReadFileLinesFromEnd.js.map +1 -0
  101. package/dist/agent/tools/SearchInFiles.d.ts +8 -0
  102. package/dist/agent/tools/SearchInFiles.js +70 -0
  103. package/dist/agent/tools/SearchInFiles.js.map +1 -0
  104. package/dist/agent/tools/SearchSymbol.d.ts +8 -0
  105. package/dist/agent/tools/SearchSymbol.js +62 -0
  106. package/dist/agent/tools/SearchSymbol.js.map +1 -0
  107. package/dist/agent/tools/ShellCmd.d.ts +8 -0
  108. package/dist/agent/tools/ShellCmd.js +40 -0
  109. package/dist/agent/tools/ShellCmd.js.map +1 -0
  110. package/dist/agent/tools/WriteFile.d.ts +8 -0
  111. package/dist/agent/tools/WriteFile.js +35 -0
  112. package/dist/agent/tools/WriteFile.js.map +1 -0
  113. package/dist/agent/tools/index.d.ts +20 -0
  114. package/dist/agent/tools/index.js +50 -0
  115. package/dist/agent/tools/index.js.map +1 -0
  116. package/dist/agent/tools/pathSafety.d.ts +9 -0
  117. package/dist/agent/tools/pathSafety.js +85 -0
  118. package/dist/agent/tools/pathSafety.js.map +1 -0
  119. package/dist/agent/tools/registry.d.ts +40 -0
  120. package/dist/agent/tools/registry.js +77 -0
  121. package/dist/agent/tools/registry.js.map +1 -0
  122. package/dist/agent/tools/types.d.ts +21 -0
  123. package/dist/agent/tools/types.js +3 -0
  124. package/dist/agent/tools/types.js.map +1 -0
  125. package/dist/agent/tools/utils.d.ts +43 -0
  126. package/dist/agent/tools/utils.js +158 -0
  127. package/dist/agent/tools/utils.js.map +1 -0
  128. package/dist/agent/types.d.ts +5 -3
  129. package/dist/ai/client.d.ts +2 -2
  130. package/dist/ai/client.js +16 -23
  131. package/dist/ai/client.js.map +1 -1
  132. package/dist/audit/timeline.js +7 -5
  133. package/dist/audit/timeline.js.map +1 -1
  134. package/dist/cli.js +12 -6
  135. package/dist/cli.js.map +1 -1
  136. package/dist/commands/handleAIChat.js +1 -1
  137. package/dist/commands/handleAIChat.js.map +1 -1
  138. package/dist/commands/handleAICommand.js +3 -3
  139. package/dist/commands/handleAICommand.js.map +1 -1
  140. package/dist/commands/skillsCommands.js +4 -42
  141. package/dist/commands/skillsCommands.js.map +1 -1
  142. package/dist/core/ConfigService.d.ts +87 -0
  143. package/dist/core/ConfigService.js +259 -0
  144. package/dist/core/ConfigService.js.map +1 -0
  145. package/dist/core/executionRecord.d.ts +1 -1
  146. package/dist/core/explain.js +2 -2
  147. package/dist/core/explain.js.map +1 -1
  148. package/dist/core/git/BackupManager.d.ts +30 -0
  149. package/dist/core/git/BackupManager.js +153 -0
  150. package/dist/core/git/BackupManager.js.map +1 -0
  151. package/dist/core/git/ConflictResolver.js.map +1 -1
  152. package/dist/core/replayDiff.js +5 -5
  153. package/dist/core/replayDiff.js.map +1 -1
  154. package/dist/core/skillTypes.d.ts +22 -0
  155. package/dist/core/skillTypes.js +17 -0
  156. package/dist/core/skillTypes.js.map +1 -0
  157. package/dist/utils/Logger.d.ts +24 -5
  158. package/dist/utils/Logger.js +89 -63
  159. package/dist/utils/Logger.js.map +1 -1
  160. package/dist/utils/storage.d.ts +22 -0
  161. package/dist/utils/storage.js +62 -0
  162. package/dist/utils/storage.js.map +1 -0
  163. package/package.json +3 -1
  164. package/dist/core/ConfigManager.d.ts +0 -39
  165. package/dist/core/ConfigManager.js +0 -127
  166. package/dist/core/ConfigManager.js.map +0 -1
@@ -0,0 +1,148 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PreFlightChecker = void 0;
4
+ const errorTracker_1 = require("./errorTracker");
5
+ const core_1 = require("./governance/core");
6
+ const governance_1 = require("./governance");
7
+ const Logger_1 = require("../utils/Logger");
8
+ const policy_1 = require("./policy");
9
+ const log = Logger_1.logger.child('PreFlightChecker');
10
+ /**
11
+ * Pre-flight checks before executing an action.
12
+ * Handles duplicate detection, write-mode caching, governance, and causal ACK verification.
13
+ */
14
+ class PreFlightChecker {
15
+ context;
16
+ constructor(context) {
17
+ this.context = context;
18
+ }
19
+ /**
20
+ * Verify causal ACK matches the last observation.
21
+ * Returns false if ACK mismatches and the loop should skip.
22
+ */
23
+ verifyAckCausality(thought) {
24
+ const lastObs = this.context.getLastAckableObservation();
25
+ const ackText = thought.parsedPlan?.acknowledged_observation;
26
+ if (lastObs && ackText && ackText !== 'NONE') {
27
+ if (lastObs.content.trim() !== ackText.trim()) {
28
+ log.error('ACK mismatch', {
29
+ expected: lastObs.content.trim().substring(0, 100),
30
+ received: ackText.trim().substring(0, 100),
31
+ });
32
+ this.context.addMessage("system", `CAUSAL BREAK: ACK does not match physical Observation. Cannot proceed without acknowledging reality.`);
33
+ return false;
34
+ }
35
+ log.debug('ACK verified');
36
+ }
37
+ return true;
38
+ }
39
+ /**
40
+ * Run governance checks. Returns false if the action is denied.
41
+ */
42
+ async passGovernance(action) {
43
+ const preCheck = (0, core_1.evaluateProposal)(action, governance_1.GovernanceService.getRules(), governance_1.GovernanceService.getLedgerSnapshot());
44
+ if (preCheck.effect === "deny") {
45
+ log.warn('Policy blocked', { reason: preCheck.reason });
46
+ this.context.addMessage("system", `POLICY DENIED: ${preCheck.reason}. Find a different way.`);
47
+ return false;
48
+ }
49
+ const decision = await governance_1.GovernanceService.adjudicate(action);
50
+ if (decision.status === "rejected") {
51
+ log.warn('Governance rejected', { reason: decision.reason });
52
+ this.context.addMessage("system", `Rejected by Governance: ${decision.reason}`);
53
+ return false;
54
+ }
55
+ return true;
56
+ }
57
+ /**
58
+ * Record knowledge graph edge between observation and action.
59
+ */
60
+ async recordKnowledgeGraphEdge(thought, action) {
61
+ // TODO: implement knowledge graph integration when module is available
62
+ }
63
+ /**
64
+ * Check if execution should be blocked.
65
+ * Returns:
66
+ * - 'blocked': skip this turn
67
+ * - 'force_break': break the loop entirely
68
+ * - cached result object: use cached output instead of executing
69
+ * - null: proceed with execution
70
+ */
71
+ check(action, writeModeState, lastToolCall) {
72
+ if (action.type !== 'tool_call')
73
+ return null;
74
+ const toolParams = action.payload;
75
+ const toolName = toolParams.tool_name;
76
+ const params = toolName === 'shell_cmd'
77
+ ? { command: (toolParams.tool_name === 'shell_cmd' ? '' : toolParams.parameters?.command || '') }
78
+ : (toolParams.parameters || {});
79
+ // Duplicate detection
80
+ if (lastToolCall) {
81
+ const isExactDuplicate = lastToolCall.tool === toolName &&
82
+ JSON.stringify(lastToolCall.params) === JSON.stringify(params);
83
+ if (isExactDuplicate) {
84
+ lastToolCall.blockCount = (lastToolCall.blockCount || 0) + 1;
85
+ if (lastToolCall.blockCount >= 2) {
86
+ log.warn('Force break: duplicate tool call', { tool: toolName, blockCount: lastToolCall.blockCount });
87
+ return 'force_break';
88
+ }
89
+ log.debug('Duplicate pre-block', { tool: toolName });
90
+ this.context.addMessage('system', `你已经刚刚调用过 ${toolName},结果没有变化。你已经有足够的数据,请使用 'answer' 类型返回结果给用户,不要再调用 ${toolName}。`);
91
+ return 'blocked';
92
+ }
93
+ }
94
+ // Write-mode cache
95
+ if (writeModeState && toolName === 'read_file') {
96
+ const filePath = toolParams.parameters?.path;
97
+ if (filePath === writeModeState.filePath && writeModeState.content) {
98
+ log.debug('File content cached', { filePath });
99
+ return { success: true, output: writeModeState.content, artifacts: [filePath] };
100
+ }
101
+ }
102
+ // Policy engine check
103
+ const policyCtx = {
104
+ action,
105
+ cwd: process.cwd(),
106
+ mode: 'command+exec',
107
+ history: []
108
+ };
109
+ // Register policies on first use
110
+ if (!policy_1.policyEngine['policies'].size) {
111
+ policy_1.policyEngine.registerPolicy(policy_1.noDangerousShellPolicy);
112
+ policy_1.policyEngine.registerPolicy(policy_1.workdirWritePolicy);
113
+ }
114
+ // Synchronous check: policy evaluation is sync for these policies
115
+ const policyResult = this.evaluatePolicySync(policyCtx);
116
+ if (policyResult && !policyResult.allowed) {
117
+ log.warn('Policy blocked', { policy: policyResult.reason });
118
+ this.context.addMessage('system', `BLOCKED: ${policyResult.reason}. ${policyResult.suggestedActions?.join(' ') || ''}`);
119
+ return 'blocked';
120
+ }
121
+ // Error tracker block
122
+ const blockCheck = errorTracker_1.ErrorTracker.shouldBlockExecution(toolName, toolParams.parameters);
123
+ if (blockCheck.blocked) {
124
+ log.warn('Execution blocked by error tracker', { tool: toolName, reason: blockCheck.reason });
125
+ this.context.addMessage("system", `BLOCKED: ${blockCheck.reason}. 建议尝试不同的方法。`);
126
+ return 'blocked';
127
+ }
128
+ return null;
129
+ }
130
+ /** Synchronous policy evaluation (for sync check method) */
131
+ evaluatePolicySync(ctx) {
132
+ // Direct synchronous evaluation since current policies are sync
133
+ const policies = [policy_1.noDangerousShellPolicy, policy_1.workdirWritePolicy];
134
+ for (const policy of policies) {
135
+ const result = policy.evaluate(ctx);
136
+ if (result instanceof Promise) {
137
+ // Should not happen for current policies
138
+ continue;
139
+ }
140
+ if (!result.allowed) {
141
+ return { allowed: false, reason: result.reason, suggestedActions: result.suggestedActions };
142
+ }
143
+ }
144
+ return { allowed: true };
145
+ }
146
+ }
147
+ exports.PreFlightChecker = PreFlightChecker;
148
+ //# sourceMappingURL=PreFlightChecker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PreFlightChecker.js","sourceRoot":"","sources":["../../src/agent/PreFlightChecker.ts"],"names":[],"mappings":"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"}
@@ -66,6 +66,18 @@ const DANGEROUS_PATTERNS = [
66
66
  { pattern: /\bchown\s+-R\s+.*\s+\/\b/, reason: '递归更改全局所有权' },
67
67
  { pattern: /\bsudo\s+rm\s+-rf\s+\/\b/, reason: 'sudo 删除根目录' },
68
68
  { pattern: />\s*\/etc\/(passwd|shadow|sudoers)/, reason: '写入系统认证文件' },
69
+ // === 绕过变体 ===
70
+ { pattern: /\brm\s+(-r\s+-f|-f\s+-r|--recursive\s+-f|-r\s+--force|--force\s+-r)\s+\/\s*$/, reason: '删除根目录(参数拆分绕过)' },
71
+ { pattern: /\benv\s+rm\s+-rf\s+\/\b/, reason: 'env 前缀绕过删除根目录' },
72
+ { pattern: /\bsudo\s+env\s+rm\s+-rf\s+\/\b/, reason: 'sudo env 前缀绕过删除根目录' },
73
+ { pattern: /\bbase64\s+(-d|--decode)\s*\|.*\b(sh|bash|zsh)\b/i, reason: 'base64 解码后脚本执行' },
74
+ { pattern: /\bxargs\s+(rm\s+-rf|dd|mkfs|chmod|chown)\b/i, reason: 'xargs 管道破坏命令' },
75
+ { pattern: /\bfind\s+\/[^&|;\s]*\s+-exec\s+(rm|dd|mkfs|chmod)\b/i, reason: 'find -exec 系统目录破坏' },
76
+ { pattern: /`\s*(rm\s+-rf|dd|mkfs)/i, reason: '反引号注入破坏命令' },
77
+ { pattern: /\$\(.*\b(rm\s+-rf|dd|mkfs)\b.*\)/i, reason: '子命令注入破坏命令' },
78
+ { pattern: /\bwget\s+-O-.*\|\s*(sh|bash|zsh)\b/i, reason: 'wget 远程脚本执行(变体)' },
79
+ { pattern: /\bcurl\s+-sL.*\|\s*(sh|bash|zsh)\b/i, reason: 'curl 远程脚本执行(变体)' },
80
+ { pattern: /\beval\s+.*\b(rm\s+-rf|dd|mkfs|chmod\s+777)\b/i, reason: 'eval 执行破坏命令' },
69
81
  ];
70
82
  // ============================================================================
71
83
  // 核心分析函数
@@ -1 +1 @@
1
- {"version":3,"file":"commandSemantics.js","sourceRoot":"","sources":["../../src/agent/commandSemantics.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;AAqHH,wCA6EC;AAqED,8DAOC;AAlQD,+EAA+E;AAC/E,QAAQ;AACR,+EAA+E;AAE/E,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC;IAC5B,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM;IAC3D,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW;IAC5E,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IACvC,IAAI,EAAE,IAAI,EAAE,OAAO;IACnB,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ;IAC9D,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU;IAC7C,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa;CAC/D,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC;IAC9B,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK;IACzB,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ;IAC9C,OAAO,EAAE,OAAO;CACjB,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC;IAC5B,IAAI,EAAE,MAAM,EAAE,KAAK;CACpB,CAAC,CAAC;AAEH,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC;IAC7B,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,IAAI,EAAE,IAAI;IAChB,OAAO,EAAE,OAAO;IAChB,OAAO,EAAE,OAAO,EAAE,OAAO;IACzB,KAAK,EAAE,IAAI;IACX,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ;IACvC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ;IACpE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO;IACrC,MAAM,EAAE,SAAS,EAAE,OAAO;IAC1B,WAAW,EAAE,SAAS,EAAE,WAAW;IACnC,MAAM,EAAE,OAAO,EAAE,KAAK;IACtB,QAAQ,EAAE,OAAO;IACjB,KAAK,EAAE,KAAK,EAAE,aAAa;CAC5B,CAAC,CAAC;AAEH,aAAa;AACb,MAAM,kBAAkB,GAA0C;IAChE,EAAE,OAAO,EAAE,8CAA8C,EAAE,MAAM,EAAE,OAAO,EAAE;IAC5E,EAAE,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,WAAW,EAAE;IACtD,EAAE,OAAO,EAAE,uBAAuB,EAAE,MAAM,EAAE,QAAQ,EAAE;IACtD,EAAE,OAAO,EAAE,wBAAwB,EAAE,MAAM,EAAE,MAAM,EAAE;IACrD,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE;IAC1C,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,EAAE;IAChD,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,EAAE;IAChD,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,aAAa,EAAE;IACrD,EAAE,OAAO,EAAE,6BAA6B,EAAE,MAAM,EAAE,WAAW,EAAE;IAC/D,EAAE,OAAO,EAAE,iCAAiC,EAAE,MAAM,EAAE,QAAQ,EAAE;IAChE,EAAE,OAAO,EAAE,iCAAiC,EAAE,MAAM,EAAE,QAAQ,EAAE;IAChE,EAAE,OAAO,EAAE,sBAAsB,EAAE,MAAM,EAAE,QAAQ,EAAE;IACrD,EAAE,OAAO,EAAE,0BAA0B,EAAE,MAAM,EAAE,WAAW,EAAE;IAC5D,EAAE,OAAO,EAAE,0BAA0B,EAAE,MAAM,EAAE,YAAY,EAAE;IAC7D,EAAE,OAAO,EAAE,oCAAoC,EAAE,MAAM,EAAE,UAAU,EAAE;CACtE,CAAC;AAEF,+EAA+E;AAC/E,SAAS;AACT,+EAA+E;AAE/E;;;GAGG;AACH,SAAS,kBAAkB,CAAC,OAAe;IACzC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAC/B,eAAe;IACf,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACrD,QAAQ;IACR,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACjC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChD,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,OAAe;IACrC,KAAK,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,kBAAkB,EAAE,CAAC;QACrD,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1B,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QACrC,CAAC;IACH,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;AAC9B,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,OAAe;IACxC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAC/B,QAAQ;IACR,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3E,SAAS;IACT,IAAI,4BAA4B,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5D,MAAM;IACN,IAAI,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IACzC,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAgB,cAAc,CAAC,OAAe,EAAE,UAAmB;IACjE,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAE/B,cAAc;IACd,MAAM,SAAS,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IAC1C,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;QACxB,OAAO;YACL,QAAQ,EAAE,WAAW;YACrB,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,YAAY,SAAS,CAAC,MAAM,EAAE;YAC3C,UAAU,EAAE,KAAK;SAClB,CAAC;IACJ,CAAC;IAED,0BAA0B;IAC1B,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,SAAS,GAAG,eAAe,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACvD,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;YACtB,OAAO;gBACL,QAAQ,EAAE,WAAW;gBACrB,IAAI,EAAE,UAAU;gBAChB,WAAW,EAAE,SAAS,CAAC,MAAM,IAAI,WAAW;gBAC5C,UAAU,EAAE,KAAK;gBACjB,eAAe,EAAE,SAAS,CAAC,eAAe;aAC3C,CAAC;QACJ,CAAC;IACH,CAAC;IAED,YAAY;IACZ,MAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAE5C,QAAQ;IACR,IAAI,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QACjC,OAAO;YACL,QAAQ,EAAE,QAAQ;YAClB,IAAI,EAAE,KAAK;YACX,WAAW,EAAE,SAAS,OAAO,EAAE;YAC/B,UAAU,EAAE,IAAI;SACjB,CAAC;IACJ,CAAC;IAED,IAAI,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/B,OAAO;YACL,QAAQ,EAAE,MAAM;YAChB,IAAI,EAAE,KAAK;YACX,WAAW,EAAE,SAAS,OAAO,EAAE;YAC/B,UAAU,EAAE,IAAI;SACjB,CAAC;IACJ,CAAC;IAED,qBAAqB;IACrB,IAAI,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC5C,OAAO;YACL,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;YACrC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK;YACjC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,YAAY,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS,OAAO,EAAE;YAClE,UAAU,EAAE,CAAC,QAAQ;SACtB,CAAC;IACJ,CAAC;IAED,IAAI,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QAChC,OAAO;YACL,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC;YACpC,WAAW,EAAE,SAAS,OAAO,EAAE;YAC/B,UAAU,EAAE,KAAK;SAClB,CAAC;IACJ,CAAC;IAED,YAAY;IACZ,OAAO;QACL,QAAQ,EAAE,SAAS;QACnB,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,SAAS,OAAO,EAAE;QAC/B,UAAU,EAAE,KAAK;KAClB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CAAC,GAAW,EAAE,WAAmB;IACpD,cAAc;IACd,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,MAAM,CAAC;IACnE,eAAe;IACf,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC7E,iBAAiB;IACjB,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IACnD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAYD,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;AAC3F,MAAM,qBAAqB,GAAG;IAC5B,eAAe;IACf,eAAe;CAChB,CAAC;AAEF,SAAS,eAAe,CAAC,OAAe,EAAE,UAAkB;IAC1D,cAAc;IACd,KAAK,MAAM,OAAO,IAAI,qBAAqB,EAAE,CAAC;QAC5C,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1B,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,0BAA0B,UAAU,EAAE;gBAC9C,eAAe,EAAE,CAAC,MAAM,CAAC;aAC1B,CAAC;QACJ,CAAC;IACH,CAAC;IAED,iBAAiB;IACjB,MAAM,YAAY,GAAG,yBAAyB,CAAC;IAC/C,IAAI,KAAK,CAAC;IACV,OAAO,CAAC,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACrD,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,YAAY;QACZ,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,YAAY;YAAE,SAAS;QAC5D,aAAa;QACb,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACjC,kBAAkB;YAClB,IAAI,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;gBACpD,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,iBAAiB,IAAI,aAAa,UAAU,EAAE;oBACtD,eAAe,EAAE,CAAC,IAAI,CAAC;iBACxB,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,SAAgB,yBAAyB;IACvC,OAAO;QACL,SAAS,CAAC,GAAG,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;QACxD,WAAW,CAAC,GAAG,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QAC5C,SAAS,CAAC,GAAG,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACxC,UAAU,CAAC,GAAG,cAAc,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;KAC3D,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"commandSemantics.js","sourceRoot":"","sources":["../../src/agent/commandSemantics.ts"],"names":[],"mappings":"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"}
@@ -46,6 +46,16 @@ export declare class ErrorTracker {
46
46
  private static errors;
47
47
  private static errorPatterns;
48
48
  private static maxHistorySize;
49
+ private static storage;
50
+ private static initialized;
51
+ /**
52
+ * 懒加载持久化数据
53
+ */
54
+ private static ensureInitialized;
55
+ /**
56
+ * 保存到磁盘
57
+ */
58
+ private static persist;
49
59
  /**
50
60
  * 记录工具执行错误
51
61
  */
@@ -13,6 +13,7 @@
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
14
  exports.ErrorTracker = void 0;
15
15
  const crypto_1 = require("crypto");
16
+ const storage_1 = require("../utils/storage");
16
17
  /**
17
18
  * 错误追踪器类
18
19
  */
@@ -20,10 +21,40 @@ class ErrorTracker {
20
21
  static errors = new Map();
21
22
  static errorPatterns = new Map();
22
23
  static maxHistorySize = 1000;
24
+ static storage = storage_1.FileStorage.forYuangs('error-tracker.json');
25
+ static initialized = false;
26
+ /**
27
+ * 懒加载持久化数据
28
+ */
29
+ static ensureInitialized() {
30
+ if (this.initialized)
31
+ return;
32
+ this.initialized = true;
33
+ const data = this.storage.read();
34
+ if (!data)
35
+ return;
36
+ for (const record of data.errors || []) {
37
+ this.errors.set(record.id, record);
38
+ }
39
+ for (const pattern of data.patterns || []) {
40
+ this.errorPatterns.set(pattern.pattern, pattern);
41
+ }
42
+ }
43
+ /**
44
+ * 保存到磁盘
45
+ */
46
+ static persist() {
47
+ const data = {
48
+ errors: Array.from(this.errors.values()),
49
+ patterns: Array.from(this.errorPatterns.values()),
50
+ };
51
+ this.storage.write(data);
52
+ }
23
53
  /**
24
54
  * 记录工具执行错误
25
55
  */
26
56
  static recordError(toolName, parameters, errorMessage, context) {
57
+ this.ensureInitialized();
27
58
  // 生成错误指纹(用于检测重复)
28
59
  const fingerprint = this.generateFingerprint(toolName, parameters, errorMessage);
29
60
  // 检查是否已存在相同错误
@@ -58,12 +89,14 @@ class ErrorTracker {
58
89
  }
59
90
  // 更新错误模式
60
91
  this.updateErrorPatterns(record);
92
+ this.persist();
61
93
  return record;
62
94
  }
63
95
  /**
64
96
  * 检查是否应该阻止执行(防止重复错误)
65
97
  */
66
98
  static shouldBlockExecution(toolName, parameters, maxRetries = 3) {
99
+ this.ensureInitialized();
67
100
  const existing = this.findSimilarError(toolName, parameters, '');
68
101
  if (existing) {
69
102
  // 对于 BUFFER_OVERFLOW 错误,立即阻止(重试不会有效)
@@ -196,11 +229,13 @@ class ErrorTracker {
196
229
  this.errors.delete(id);
197
230
  }
198
231
  }
232
+ this.persist();
199
233
  }
200
234
  /**
201
235
  * 获取错误统计
202
236
  */
203
237
  static getErrorStats() {
238
+ this.ensureInitialized();
204
239
  const errorsByTool = {};
205
240
  const errorsByType = {};
206
241
  for (const record of this.errors.values()) {
@@ -229,6 +264,7 @@ class ErrorTracker {
229
264
  static clear() {
230
265
  this.errors.clear();
231
266
  this.errorPatterns.clear();
267
+ this.storage.delete();
232
268
  }
233
269
  /**
234
270
  * 获取特定工具的错误历史
@@ -1 +1 @@
1
- {"version":3,"file":"errorTracker.js","sourceRoot":"","sources":["../../src/agent/errorTracker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errorTracker.js","sourceRoot":"","sources":["../../src/agent/errorTracker.ts"],"names":[],"mappings":"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"}
@@ -1,119 +1,41 @@
1
1
  import { ProposedAction, ToolExecutionResult } from './state';
2
2
  import { CapabilityLevel } from '../core/capability/CapabilityLevel';
3
+ import { ToolRegistry } from './tools';
3
4
  /**
4
- * 增强的工具执行器
5
- * 支持丰富的原子工具操作
6
- * 集成能力感知的工具调用
7
- * 集成命令语义分析和路径安全验证
5
+ * ToolExecutor — thin facade over ToolRegistry.
6
+ * Maintains backward compatibility for existing callers (AgentRuntime, DualAgentRuntime).
8
7
  */
9
8
  export declare class ToolExecutor {
10
9
  private static readonly MAX_OUTPUT_LENGTH;
11
- private static readonly READ_POSITIONS;
12
10
  private static currentCapabilityLevel;
13
11
  private static allowedCwd;
14
12
  /**
15
- * 设置允许的工作目录
13
+ * Expose the registry for external registration of custom tools.
16
14
  */
15
+ static getRegistry(): ToolRegistry;
17
16
  static setAllowedCwd(cwd: string): void;
18
- /**
19
- * 使用命令语义分析检查命令安全性
20
- */
17
+ static getAllowedCwd(): string;
21
18
  private static analyzeCommandSafety;
22
- /**
23
- * 设置当前能力等级
24
- */
25
19
  static setCapabilityLevel(level: CapabilityLevel): void;
26
- /**
27
- * 获取当前能力等级
28
- */
29
20
  static getCapabilityLevel(): CapabilityLevel;
30
- /**
31
- * 检查工具是否可以被当前能力等级执行
32
- */
33
21
  static checkToolCapability(toolName: string): {
34
22
  allowed: boolean;
35
23
  required?: CapabilityLevel;
36
24
  current?: CapabilityLevel;
37
25
  };
38
- /**
39
- * 获取指定能力等级下可用的工具列表
40
- */
41
26
  static getAvailableTools(): string[];
42
- /**
43
- * 获取能力等级的可读名称
44
- */
45
27
  private static getCapabilityName;
46
- /**
47
- * 智能截断输出
48
- * 当输出过长时,返回特殊标记和继续读取的提示
49
- */
50
- private static maybeTruncate;
51
28
  static execute(action: ProposedAction): Promise<ToolExecutionResult>;
52
29
  private static executeAction;
53
30
  private static executeTool;
54
- private static toolReadFile;
55
- private static toolWriteFile;
56
- private static toolListFiles;
57
- private static getFiles;
58
- private static executeShell;
59
- private static executeDiff;
60
- /**
61
- * 读取文件的指定行范围
62
- */
63
- private static toolReadFileLines;
64
- /**
65
- * 从文件末尾读取指定行数(倒数行)
66
- * 例如:count=5 表示读取最后5行,count=5, start_offset=2 表示读取倒数第2到5行
67
- */
68
- private static toolReadFileLinesFromEnd;
69
- /**
70
- * 向文件末尾追加内容
71
- */
72
- private static toolAppendFile;
73
- /**
74
- * 生成目录结构的树形展示
75
- */
76
- private static toolListDirectoryTree;
77
- private static buildDirectoryTree;
78
- /**
79
- * 在文件中搜索指定内容(类似 grep)
80
- */
81
- private static toolSearchInFiles;
82
- /**
83
- * 搜索代码符号(函数、类、变量等)
84
- * 使用 grep 进行简化搜索
85
- */
86
- private static toolSearchSymbol;
87
- /**
88
- * 分析文件的依赖关系(import/require)
89
- */
90
- private static toolAnalyzeDependencies;
91
- /**
92
- * Git 状态
93
- */
94
- private static toolGitStatus;
95
31
  /**
96
- * Git 差异
32
+ * Execute shell command — delegates to ShellCmd tool but retains
33
+ * the command safety analysis that was part of the original executor.
97
34
  */
98
- private static toolGitDiff;
99
- /**
100
- * Git 日志
101
- */
102
- private static toolGitLog;
103
- /**
104
- * 继续读取之前被截断的文件内容
105
- */
106
- private static toolContinueReading;
107
- /**
108
- * 获取文件元信息
109
- */
110
- private static toolFileInfo;
111
- /**
112
- * 格式化字节数
113
- */
114
- private static formatBytes;
35
+ private static executeShell;
115
36
  /**
116
- * 获取用户友好的错误消息和建议
37
+ * Execute diff — delegates to CodeDiff tool.
117
38
  */
118
- private static getFriendlyError;
39
+ private static executeDiff;
40
+ private static maybeTruncate;
119
41
  }