openfox 2.0.133 → 2.0.135
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/CHANGELOG.md +30 -0
- package/dist/CHANGELOG.md +30 -0
- package/dist/{chat-handler-T47GATL5.js → chat-handler-WGDFMOOD.js} +23 -22
- package/dist/chunk-24YKXKCG.js +35 -0
- package/dist/chunk-2OMGR7LN.js +45 -0
- package/dist/{chunk-GFW2HWJ6.js → chunk-4R5GV7RW.js} +37 -16
- package/dist/{chunk-P5MSY7ZI.js → chunk-5H5NRWHA.js} +22 -17
- package/dist/{chunk-MQMPIXON.js → chunk-5UMXFLET.js} +3 -3
- package/dist/{chunk-5JWJEZJ3.js → chunk-5UQ4CKOA.js} +2 -2
- package/dist/{chunk-7JVBDBXE.js → chunk-7QMWYNVF.js} +2 -2
- package/dist/{chunk-P57IBMK4.js → chunk-AATMPL7S.js} +4 -4
- package/dist/{chunk-OUQZZEIQ.js → chunk-BIZFY3QP.js} +487 -210
- package/dist/{chunk-LQKXJPKP.js → chunk-CTWZPN7G.js} +5 -1
- package/dist/{chunk-BKMWZTNO.js → chunk-DWA4IE65.js} +14 -2
- package/dist/{chunk-HXHPKGJE.js → chunk-ESZQTFQP.js} +614 -157
- package/dist/{chunk-KWAHD2JA.js → chunk-F2MOHHXB.js} +15 -2
- package/dist/{chunk-A7CB4USC.js → chunk-GP3CLMPQ.js} +132 -45
- package/dist/{chunk-HCYSGLY2.js → chunk-HF3NDXB4.js} +1 -1
- package/dist/{chunk-Y6ZGHOKM.js → chunk-I5ODJKYM.js} +4 -4
- package/dist/{chunk-OMMPTN6X.js → chunk-IAT2LBIX.js} +69 -27
- package/dist/{chunk-6EZDW4JS.js → chunk-J3NMNYGM.js} +2 -2
- package/dist/{chunk-M5T4RDPJ.js → chunk-MEEUXRFL.js} +2 -2
- package/dist/{chunk-RRUSYVQD.js → chunk-NFEZATSN.js} +8 -8
- package/dist/{chunk-MGEYAYGU.js → chunk-O3RCSKUH.js} +2 -2
- package/dist/{chunk-ELYHHEYL.js → chunk-ORCQ3EXQ.js} +2 -2
- package/dist/{chunk-FEIRWXLX.js → chunk-OZWHRBDY.js} +64 -17
- package/dist/{chunk-FGNJMKDV.js → chunk-QZOV4OVN.js} +29 -5
- package/dist/{chunk-TACWRDDC.js → chunk-S67WIWUG.js} +2 -2
- package/dist/{chunk-ZL4IAFF3.js → chunk-UKIUQAQZ.js} +3 -3
- package/dist/{chunk-VXG3AFFY.js → chunk-VHLD6PCZ.js} +8 -8
- package/dist/chunk-WY3PWHWY.js +7 -0
- package/dist/{chunk-CLDCHOEA.js → chunk-ZMK4VX7V.js} +2 -2
- package/dist/cli/dev.js +4 -1
- package/dist/cli/index.js +4 -1
- package/dist/{client-2K6PPPJJ.js → client-VVYOWXRR.js} +4 -4
- package/dist/{compactor-OEJAA2YP.js → compactor-454UEIEX.js} +9 -9
- package/dist/{dynamic-context-NJZKAZE3.js → dynamic-context-LKC6JYLQ.js} +10 -10
- package/dist/{events-ZJPRGVL2.js → events-335XAKFK.js} +6 -6
- package/dist/export-import-3WMRLO4A.js +137 -0
- package/dist/{folding-QRZOHY2I.js → folding-H7JTX6KI.js} +4 -4
- package/dist/{http-client-P4XTKAZA.js → http-client-A445WYZU.js} +3 -3
- package/dist/{install-VA2F6X6Z.js → install-AVTFA344.js} +64 -15
- package/dist/{launch-UKXVO37B.js → launch-GJ7EHQRI.js} +23 -22
- package/dist/{manager-TMBFBCQL.js → manager-ZACEUL5P.js} +4 -4
- package/dist/{mcp-YU7AM3UV.js → mcp-SQ4DOGPT.js} +22 -9
- package/dist/{orchestrator-GX22Y5EM.js → orchestrator-JGJWTRO5.js} +22 -21
- package/dist/package.json +3 -1
- package/dist/{path-security-CBACXAMS.js → path-security-4LROI7F4.js} +10 -10
- package/dist/{platform-5LQXOZO3.js → platform-XPMZKAUB.js} +3 -3
- package/dist/{processor-V35OLKRV.js → processor-MSQP63ML.js} +22 -21
- package/dist/{project-creator-6AGQTNXB.js → project-creator-T3A4H3YV.js} +42 -29
- package/dist/{protocol-BMUoqwYH.d.ts → protocol-Nr_H1_oC.d.ts} +3 -1
- package/dist/{protocol-Y7MRKRUO.js → protocol-XO4ZROAU.js} +3 -3
- package/dist/provider/index.d.ts +4 -4
- package/dist/provider-JWUNG2TD.js +507 -0
- package/dist/{provider-manager-BO5ZBG3T.js → provider-manager-2KKZ37XJ.js} +5 -5
- package/dist/pwa-V5PFB4OQ.js +502 -0
- package/dist/{registry-CMSSZHDC.js → registry-BEIR7Y5G.js} +3 -3
- package/dist/{serve-XRVT3D7Z.js → serve-CW5C3CBZ.js} +47 -36
- package/dist/server/index.d.ts +18 -3
- package/dist/server/index.js +27 -26
- package/dist/{server-GXMZMPXI.js → server-ZHEB7XS2.js} +26 -25
- package/dist/{service-WKABQHKL.js → service-M77VWL2M.js} +97 -32
- package/dist/{service-O3LCO3TQ.js → service-XIUNS5XV.js} +7 -6
- package/dist/{session-overrides-OECQYRDK.js → session-overrides-LYW5PJ3R.js} +5 -5
- package/dist/{sessions-NMPX5ICI.js → sessions-AOK3AGHY.js} +6 -4
- package/dist/{settings-MDCRNQBY.js → settings-ZJPM6PQV.js} +2 -2
- package/dist/shared/index.d.ts +31 -4
- package/dist/shared/index.js +16 -2
- package/dist/{tasks-WOC3QUFA.js → tasks-3JJWJJ3X.js} +34 -18
- package/dist/{tools-CW6POKUL.js → tools-E63MOJBO.js} +20 -19
- package/dist/{types-CoY8Ka1C.d.ts → types-BlQjLBui.d.ts} +1 -1
- package/dist/{types-BIkpxjaj.d.ts → types-G10ho8PT.d.ts} +1 -1
- package/dist/update-XVXNSSDK.js +76 -0
- package/dist/web/assets/{index-Y300llHY.css → index-Bg_Z8i3F.css} +1 -1
- package/dist/web/assets/index-wTFCxQAw.js +313 -0
- package/dist/web/index.html +2 -2
- package/dist/web/sw.js +1 -1
- package/package.json +3 -1
- package/dist/chunk-JKGHTBEV.js +0 -7
- package/dist/provider-NWRGNGS3.js +0 -403
- package/dist/pwa-2GRFSXD7.js +0 -363
- package/dist/update-VC3Y3EOP.js +0 -49
- package/dist/web/assets/index-ATAQvBwl.js +0 -312
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,35 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 2.0.135 - 2026-09-01
|
|
4
|
+
|
|
5
|
+
### Features
|
|
6
|
+
|
|
7
|
+
- **Export and import sessions** — save a session to a JSON file and restore it elsewhere, preserving its cached layout
|
|
8
|
+
|
|
9
|
+
### Enhancements
|
|
10
|
+
|
|
11
|
+
- **Fuller mobile header navigation** — the project and session dropdowns from desktop now appear on mobile, with a Home shortcut back to the project list
|
|
12
|
+
- **Shorter French UI labels** — history, stop, and related controls use more concise wording
|
|
13
|
+
|
|
14
|
+
### Bug Fixes
|
|
15
|
+
|
|
16
|
+
- **Live turn stats stay visible** — they no longer disappear while the assistant waits for your input
|
|
17
|
+
- **Header dropdown closes on middle-click** — navigating via a link's middle-click now dismisses the menu
|
|
18
|
+
- **Dev server status loads at startup** — the header no longer shows “Aucune config” until the popover is opened
|
|
19
|
+
- **Missing French labels translated** — “No matches” and “Task Completed” now render in French
|
|
20
|
+
|
|
21
|
+
## 2.0.134 - 2026-08-31
|
|
22
|
+
|
|
23
|
+
### Features
|
|
24
|
+
|
|
25
|
+
- **Interface language setting** — pick Automatic, English, or French to localize the web UI, server messages, and CLI
|
|
26
|
+
- **Agent language setting** — the agent replies in your chosen language via injected instructions
|
|
27
|
+
- **Create projects without git** — git init is skipped when git is missing, so git-less codebases work out of the box
|
|
28
|
+
|
|
29
|
+
### Enhancements
|
|
30
|
+
|
|
31
|
+
- **Full error on LLM failures** — an (i) button on failed bubbles and retry pills opens a modal with the details
|
|
32
|
+
|
|
3
33
|
## 2.0.133 - 2026-08-30
|
|
4
34
|
|
|
5
35
|
### Features
|
package/dist/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,35 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 2.0.135 - 2026-09-01
|
|
4
|
+
|
|
5
|
+
### Features
|
|
6
|
+
|
|
7
|
+
- **Export and import sessions** — save a session to a JSON file and restore it elsewhere, preserving its cached layout
|
|
8
|
+
|
|
9
|
+
### Enhancements
|
|
10
|
+
|
|
11
|
+
- **Fuller mobile header navigation** — the project and session dropdowns from desktop now appear on mobile, with a Home shortcut back to the project list
|
|
12
|
+
- **Shorter French UI labels** — history, stop, and related controls use more concise wording
|
|
13
|
+
|
|
14
|
+
### Bug Fixes
|
|
15
|
+
|
|
16
|
+
- **Live turn stats stay visible** — they no longer disappear while the assistant waits for your input
|
|
17
|
+
- **Header dropdown closes on middle-click** — navigating via a link's middle-click now dismisses the menu
|
|
18
|
+
- **Dev server status loads at startup** — the header no longer shows “Aucune config” until the popover is opened
|
|
19
|
+
- **Missing French labels translated** — “No matches” and “Task Completed” now render in French
|
|
20
|
+
|
|
21
|
+
## 2.0.134 - 2026-08-31
|
|
22
|
+
|
|
23
|
+
### Features
|
|
24
|
+
|
|
25
|
+
- **Interface language setting** — pick Automatic, English, or French to localize the web UI, server messages, and CLI
|
|
26
|
+
- **Agent language setting** — the agent replies in your chosen language via injected instructions
|
|
27
|
+
- **Create projects without git** — git init is skipped when git is missing, so git-less codebases work out of the box
|
|
28
|
+
|
|
29
|
+
### Enhancements
|
|
30
|
+
|
|
31
|
+
- **Full error on LLM failures** — an (i) button on failed bubbles and retry pills opens a modal with the details
|
|
32
|
+
|
|
3
33
|
## 2.0.133 - 2026-08-30
|
|
4
34
|
|
|
5
35
|
### Features
|
|
@@ -2,55 +2,56 @@ import {
|
|
|
2
2
|
buildRunChatTurnParams,
|
|
3
3
|
finalizeTurnCompletion,
|
|
4
4
|
generateSessionNameForSession
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-NFEZATSN.js";
|
|
6
6
|
import {
|
|
7
7
|
runChatTurn
|
|
8
|
-
} from "./chunk-
|
|
9
|
-
import "./chunk-
|
|
8
|
+
} from "./chunk-4R5GV7RW.js";
|
|
9
|
+
import "./chunk-ESZQTFQP.js";
|
|
10
10
|
import "./chunk-XE6UC5Z3.js";
|
|
11
11
|
import "./chunk-J7GAZGZT.js";
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-
|
|
12
|
+
import "./chunk-OZWHRBDY.js";
|
|
13
|
+
import "./chunk-S67WIWUG.js";
|
|
14
14
|
import "./chunk-7ET46SNE.js";
|
|
15
15
|
import "./chunk-LW6MMSTD.js";
|
|
16
|
-
import "./chunk-
|
|
16
|
+
import "./chunk-5UMXFLET.js";
|
|
17
17
|
import "./chunk-I72ACQ6R.js";
|
|
18
18
|
import "./chunk-JE7LW7Y6.js";
|
|
19
19
|
import "./chunk-OAN4BXEW.js";
|
|
20
|
-
import "./chunk-
|
|
21
|
-
import "./chunk-
|
|
22
|
-
import "./chunk-
|
|
20
|
+
import "./chunk-VHLD6PCZ.js";
|
|
21
|
+
import "./chunk-DWA4IE65.js";
|
|
22
|
+
import "./chunk-7QMWYNVF.js";
|
|
23
23
|
import "./chunk-JURM3RPZ.js";
|
|
24
|
-
import "./chunk-
|
|
24
|
+
import "./chunk-I5ODJKYM.js";
|
|
25
25
|
import {
|
|
26
26
|
getEventStore
|
|
27
|
-
} from "./chunk-
|
|
28
|
-
import "./chunk-
|
|
29
|
-
import "./chunk-
|
|
30
|
-
import "./chunk-
|
|
27
|
+
} from "./chunk-QZOV4OVN.js";
|
|
28
|
+
import "./chunk-MEEUXRFL.js";
|
|
29
|
+
import "./chunk-F2MOHHXB.js";
|
|
30
|
+
import "./chunk-ORCQ3EXQ.js";
|
|
31
31
|
import "./chunk-OSXPQSLW.js";
|
|
32
32
|
import {
|
|
33
33
|
createChatMessageMessage,
|
|
34
34
|
createPhaseChangedMessage,
|
|
35
35
|
createSessionRunningMessage
|
|
36
|
-
} from "./chunk-
|
|
36
|
+
} from "./chunk-AATMPL7S.js";
|
|
37
37
|
import "./chunk-LCLH6ZUL.js";
|
|
38
|
-
import "./chunk-
|
|
39
|
-
import "./chunk-
|
|
38
|
+
import "./chunk-O3RCSKUH.js";
|
|
39
|
+
import "./chunk-5UQ4CKOA.js";
|
|
40
40
|
import "./chunk-OA2FURC3.js";
|
|
41
41
|
import "./chunk-J2GP3J3X.js";
|
|
42
42
|
import "./chunk-DPFET73G.js";
|
|
43
|
-
import "./chunk-
|
|
43
|
+
import "./chunk-ZMK4VX7V.js";
|
|
44
44
|
import "./chunk-TS5WKTFB.js";
|
|
45
45
|
import "./chunk-UV6IH6HK.js";
|
|
46
46
|
import "./chunk-HNCM3D7Y.js";
|
|
47
47
|
import "./chunk-EUOWCVU6.js";
|
|
48
|
-
import "./chunk-
|
|
49
|
-
import "./chunk-
|
|
48
|
+
import "./chunk-J3NMNYGM.js";
|
|
49
|
+
import "./chunk-CTWZPN7G.js";
|
|
50
50
|
import "./chunk-JU757HVI.js";
|
|
51
51
|
import "./chunk-2AI7VYPN.js";
|
|
52
52
|
import "./chunk-K44MW7JJ.js";
|
|
53
|
-
import "./chunk-
|
|
53
|
+
import "./chunk-HF3NDXB4.js";
|
|
54
|
+
import "./chunk-24YKXKCG.js";
|
|
54
55
|
import "./chunk-R5FAEKXQ.js";
|
|
55
56
|
import "./chunk-CQGTEGKL.js";
|
|
56
57
|
import "./chunk-YLJ4XMA6.js";
|
|
@@ -174,4 +175,4 @@ export {
|
|
|
174
175
|
startChatSession,
|
|
175
176
|
stopSessionExecution
|
|
176
177
|
};
|
|
177
|
-
//# sourceMappingURL=chat-handler-
|
|
178
|
+
//# sourceMappingURL=chat-handler-WGDFMOOD.js.map
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
// src/shared/i18n/index.ts
|
|
2
|
+
var locales = ["en", "fr"];
|
|
3
|
+
var pluralForms = ["one", "other"];
|
|
4
|
+
var currentLocale = "en";
|
|
5
|
+
function getLocale() {
|
|
6
|
+
return currentLocale;
|
|
7
|
+
}
|
|
8
|
+
function setLocale(locale) {
|
|
9
|
+
currentLocale = locale;
|
|
10
|
+
}
|
|
11
|
+
function interpolate(msg, vars) {
|
|
12
|
+
return msg.replace(/\{\{(\w+)\}\}/g, (match, key) => {
|
|
13
|
+
const value = vars[key];
|
|
14
|
+
return value === void 0 ? match : String(value);
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
function t(tx, vars) {
|
|
18
|
+
const entry = tx[currentLocale];
|
|
19
|
+
if (typeof entry === "string") {
|
|
20
|
+
return interpolate(entry, vars ?? {});
|
|
21
|
+
}
|
|
22
|
+
const count = typeof vars?.["count"] === "number" ? vars["count"] : 1;
|
|
23
|
+
const form = new Intl.PluralRules(currentLocale).select(count);
|
|
24
|
+
return interpolate(entry[form], { ...vars, count });
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export {
|
|
28
|
+
locales,
|
|
29
|
+
pluralForms,
|
|
30
|
+
getLocale,
|
|
31
|
+
setLocale,
|
|
32
|
+
interpolate,
|
|
33
|
+
t
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=chunk-24YKXKCG.js.map
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import {
|
|
2
|
+
getLocale,
|
|
3
|
+
setLocale,
|
|
4
|
+
t
|
|
5
|
+
} from "./chunk-24YKXKCG.js";
|
|
6
|
+
import {
|
|
7
|
+
getDatabasePath
|
|
8
|
+
} from "./chunk-CQGTEGKL.js";
|
|
9
|
+
|
|
10
|
+
// src/cli/i18n.ts
|
|
11
|
+
import Database from "better-sqlite3";
|
|
12
|
+
var mode = null;
|
|
13
|
+
var resolved = null;
|
|
14
|
+
function setCliMode(value) {
|
|
15
|
+
mode = value;
|
|
16
|
+
resolved = null;
|
|
17
|
+
}
|
|
18
|
+
function resolveLocale() {
|
|
19
|
+
if (resolved) return resolved;
|
|
20
|
+
let locale = "en";
|
|
21
|
+
try {
|
|
22
|
+
if (!mode) return "en";
|
|
23
|
+
const db = new Database(getDatabasePath(mode), { readonly: true });
|
|
24
|
+
try {
|
|
25
|
+
const row = db.prepare(`SELECT value FROM settings WHERE key = 'display.locale'`).get();
|
|
26
|
+
if (row?.value === "fr") locale = "fr";
|
|
27
|
+
} finally {
|
|
28
|
+
db.close();
|
|
29
|
+
}
|
|
30
|
+
} catch {
|
|
31
|
+
}
|
|
32
|
+
resolved = locale;
|
|
33
|
+
return locale;
|
|
34
|
+
}
|
|
35
|
+
function cliT(tx, vars) {
|
|
36
|
+
const locale = resolveLocale();
|
|
37
|
+
if (getLocale() !== locale) setLocale(locale);
|
|
38
|
+
return t(tx, vars);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export {
|
|
42
|
+
setCliMode,
|
|
43
|
+
cliT
|
|
44
|
+
};
|
|
45
|
+
//# sourceMappingURL=chunk-2OMGR7LN.js.map
|
|
@@ -4,7 +4,10 @@ import {
|
|
|
4
4
|
getToolRegistryForAgent,
|
|
5
5
|
processEventsForConversation,
|
|
6
6
|
runTopLevelAgentLoop
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-ESZQTFQP.js";
|
|
8
|
+
import {
|
|
9
|
+
serverT
|
|
10
|
+
} from "./chunk-OZWHRBDY.js";
|
|
8
11
|
import {
|
|
9
12
|
TurnMetrics,
|
|
10
13
|
createChatDoneEvent,
|
|
@@ -15,34 +18,34 @@ import {
|
|
|
15
18
|
checkToolChangesAndInject,
|
|
16
19
|
computeDynamicContextHash,
|
|
17
20
|
getToolFingerprint
|
|
18
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-VHLD6PCZ.js";
|
|
19
22
|
import {
|
|
20
23
|
getAllInstructions,
|
|
21
24
|
getEnabledSkillMetadata
|
|
22
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-DWA4IE65.js";
|
|
23
26
|
import {
|
|
24
27
|
buildAgentReminder,
|
|
25
28
|
buildAgentSmallReminder,
|
|
26
29
|
buildTopLevelSystemPrompt
|
|
27
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-7QMWYNVF.js";
|
|
28
31
|
import {
|
|
29
32
|
PathAccessDeniedError
|
|
30
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-I5ODJKYM.js";
|
|
31
34
|
import {
|
|
32
35
|
getCurrentContextWindowId,
|
|
33
36
|
getCurrentWindowMessageOptions,
|
|
34
37
|
getEventStore
|
|
35
|
-
} from "./chunk-
|
|
38
|
+
} from "./chunk-QZOV4OVN.js";
|
|
36
39
|
import {
|
|
37
40
|
buildSnapshotFromSessionState
|
|
38
|
-
} from "./chunk-
|
|
41
|
+
} from "./chunk-MEEUXRFL.js";
|
|
39
42
|
import {
|
|
40
43
|
findAgentById,
|
|
41
44
|
getRuntimeConfig,
|
|
42
45
|
getSubAgents,
|
|
43
46
|
loadAllAgentsDefault,
|
|
44
47
|
resolveDefaultAgentId
|
|
45
|
-
} from "./chunk-
|
|
48
|
+
} from "./chunk-ORCQ3EXQ.js";
|
|
46
49
|
import {
|
|
47
50
|
logger
|
|
48
51
|
} from "./chunk-K44MW7JJ.js";
|
|
@@ -52,7 +55,7 @@ import {
|
|
|
52
55
|
|
|
53
56
|
// src/server/chat/orchestrator.ts
|
|
54
57
|
async function buildRetryPatterns() {
|
|
55
|
-
const { getSetting, SETTINGS_KEYS } = await import("./settings-
|
|
58
|
+
const { getSetting, SETTINGS_KEYS } = await import("./settings-ZJPM6PQV.js");
|
|
56
59
|
const raw = getSetting(SETTINGS_KEYS.RETRY_PATTERNS);
|
|
57
60
|
if (!raw) {
|
|
58
61
|
const oldXmlProtection = getSetting("llm.disableXmlProtection");
|
|
@@ -125,11 +128,20 @@ async function runChatTurn(options) {
|
|
|
125
128
|
} catch (error) {
|
|
126
129
|
if (error instanceof PathAccessDeniedError) {
|
|
127
130
|
const errorMsgId2 = crypto.randomUUID();
|
|
128
|
-
const reasonText = error.reason === "sensitive_file" ?
|
|
131
|
+
const reasonText = error.reason === "sensitive_file" ? serverT({
|
|
132
|
+
en: "sensitive files that may contain secrets",
|
|
133
|
+
fr: "des fichiers sensibles pouvant contenir des secrets"
|
|
134
|
+
}) : error.reason === "both" ? serverT({
|
|
135
|
+
en: "files outside the project and sensitive files",
|
|
136
|
+
fr: "des fichiers hors du projet et des fichiers sensibles"
|
|
137
|
+
}) : serverT({ en: "files outside the project directory", fr: "des fichiers hors du dossier du projet" });
|
|
129
138
|
eventStore.append(sessionId, {
|
|
130
139
|
type: "chat.error",
|
|
131
140
|
data: {
|
|
132
|
-
error:
|
|
141
|
+
error: serverT(
|
|
142
|
+
{ en: "User denied access to {{reason}}.", fr: "Acc\xE8s refus\xE9 par l\u2019utilisateur : {{reason}}." },
|
|
143
|
+
{ reason: reasonText }
|
|
144
|
+
),
|
|
133
145
|
recoverable: false
|
|
134
146
|
}
|
|
135
147
|
});
|
|
@@ -138,7 +150,13 @@ async function runChatTurn(options) {
|
|
|
138
150
|
createMessageStartEvent(
|
|
139
151
|
errorMsgId2,
|
|
140
152
|
"user",
|
|
141
|
-
|
|
153
|
+
serverT(
|
|
154
|
+
{
|
|
155
|
+
en: "Access denied: {{paths}}. If you need this file, explain why and ask the user for permission.",
|
|
156
|
+
fr: "Acc\xE8s refus\xE9 : {{paths}}. Si vous avez besoin de ce fichier, expliquez pourquoi et demandez l\u2019autorisation \xE0 l\u2019utilisateur."
|
|
157
|
+
},
|
|
158
|
+
{ paths: error.paths.join(", ") }
|
|
159
|
+
),
|
|
142
160
|
{
|
|
143
161
|
...getCurrentWindowMessageOptions(sessionId) ?? {},
|
|
144
162
|
isSystemGenerated: true,
|
|
@@ -162,7 +180,7 @@ async function runChatTurn(options) {
|
|
|
162
180
|
eventStore.append(sessionId, {
|
|
163
181
|
type: "chat.error",
|
|
164
182
|
data: {
|
|
165
|
-
error: error instanceof Error ? error.message : "Unknown error",
|
|
183
|
+
error: error instanceof Error ? error.message : serverT({ en: "Unknown error", fr: "Erreur inconnue" }),
|
|
166
184
|
recoverable: false
|
|
167
185
|
}
|
|
168
186
|
});
|
|
@@ -171,7 +189,10 @@ async function runChatTurn(options) {
|
|
|
171
189
|
createMessageStartEvent(
|
|
172
190
|
errorMsgId,
|
|
173
191
|
"user",
|
|
174
|
-
|
|
192
|
+
serverT(
|
|
193
|
+
{ en: "Error: {{message}}", fr: "Erreur : {{message}}" },
|
|
194
|
+
{ message: error instanceof Error ? error.message : serverT({ en: "Unknown error", fr: "Erreur inconnue" }) }
|
|
195
|
+
),
|
|
175
196
|
{
|
|
176
197
|
...getCurrentWindowMessageOptions(sessionId) ?? {},
|
|
177
198
|
isSystemGenerated: true,
|
|
@@ -334,7 +355,7 @@ async function runAgentTurn(options, turnMetrics, agentId, append, callbacks) {
|
|
|
334
355
|
getConversationMessages: buildGetConversationMessages(options.sessionId, resolveAgentClient, append),
|
|
335
356
|
injectAgentReminder: () => injectAgentReminder(options.sessionId, agentDef),
|
|
336
357
|
rebuildCachedContext: async () => {
|
|
337
|
-
const { applyDynamicContext } = await import("./dynamic-context-
|
|
358
|
+
const { applyDynamicContext } = await import("./dynamic-context-LKC6JYLQ.js");
|
|
338
359
|
await applyDynamicContext(options.sessionManager, options.sessionId, agentLlmClient.getModel());
|
|
339
360
|
},
|
|
340
361
|
...options.initialCompacting ? { initialCompacting: true } : {},
|
|
@@ -364,4 +385,4 @@ export {
|
|
|
364
385
|
runChatTurn,
|
|
365
386
|
runAgentTurn
|
|
366
387
|
};
|
|
367
|
-
//# sourceMappingURL=chunk-
|
|
388
|
+
//# sourceMappingURL=chunk-4R5GV7RW.js.map
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
runAgentTurn
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-4R5GV7RW.js";
|
|
4
4
|
import {
|
|
5
5
|
executeSubAgent,
|
|
6
6
|
getToolRegistryForAgent
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-ESZQTFQP.js";
|
|
8
8
|
import {
|
|
9
9
|
gitSpawnEnv
|
|
10
10
|
} from "./chunk-J7GAZGZT.js";
|
|
@@ -14,8 +14,9 @@ import {
|
|
|
14
14
|
loadDefaultWorkflows,
|
|
15
15
|
loadProjectWorkflows,
|
|
16
16
|
loadUserWorkflows,
|
|
17
|
-
normalizeWorkflowScope
|
|
18
|
-
|
|
17
|
+
normalizeWorkflowScope,
|
|
18
|
+
serverT
|
|
19
|
+
} from "./chunk-OZWHRBDY.js";
|
|
19
20
|
import {
|
|
20
21
|
TurnMetrics,
|
|
21
22
|
createMessageStartEvent
|
|
@@ -24,27 +25,27 @@ import {
|
|
|
24
25
|
checkAborted,
|
|
25
26
|
decodeUtf8,
|
|
26
27
|
spawnShellProcess
|
|
27
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-5UMXFLET.js";
|
|
28
29
|
import {
|
|
29
30
|
terminateProcessTree
|
|
30
31
|
} from "./chunk-I72ACQ6R.js";
|
|
31
32
|
import {
|
|
32
33
|
getCurrentContextWindowId,
|
|
33
34
|
getEventStore
|
|
34
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-QZOV4OVN.js";
|
|
35
36
|
import {
|
|
36
37
|
findAgentById,
|
|
37
38
|
getRuntimeConfig,
|
|
38
39
|
loadAllAgentsDefault,
|
|
39
40
|
resolveDefaultAgentId
|
|
40
|
-
} from "./chunk-
|
|
41
|
+
} from "./chunk-ORCQ3EXQ.js";
|
|
41
42
|
import {
|
|
42
43
|
createChatMessageMessage,
|
|
43
44
|
createSessionRunningMessage
|
|
44
|
-
} from "./chunk-
|
|
45
|
+
} from "./chunk-AATMPL7S.js";
|
|
45
46
|
import {
|
|
46
47
|
LLMError
|
|
47
|
-
} from "./chunk-
|
|
48
|
+
} from "./chunk-J3NMNYGM.js";
|
|
48
49
|
import {
|
|
49
50
|
logger
|
|
50
51
|
} from "./chunk-K44MW7JJ.js";
|
|
@@ -53,7 +54,7 @@ import {
|
|
|
53
54
|
} from "./chunk-7OHXF5GW.js";
|
|
54
55
|
import {
|
|
55
56
|
createServerMessage
|
|
56
|
-
} from "./chunk-
|
|
57
|
+
} from "./chunk-HF3NDXB4.js";
|
|
57
58
|
import {
|
|
58
59
|
getGlobalConfigDir
|
|
59
60
|
} from "./chunk-CQGTEGKL.js";
|
|
@@ -679,9 +680,10 @@ async function executeWorkflow(workflow, options, subGroup) {
|
|
|
679
680
|
const timeout = shellStep.timeout ?? 6e4;
|
|
680
681
|
const successCodes = shellStep.successExitCodes ?? [0];
|
|
681
682
|
const shellMsgId = crypto.randomUUID();
|
|
683
|
+
const runningContent = serverT({ en: "Running: `{{command}}`", fr: "Ex\xE9cution : `{{command}}`" }, { command });
|
|
682
684
|
eventStore.append(
|
|
683
685
|
sessionId,
|
|
684
|
-
createMessageStartEvent(shellMsgId, "user",
|
|
686
|
+
createMessageStartEvent(shellMsgId, "user", runningContent, {
|
|
685
687
|
...currentWindowMessageOptions ?? {},
|
|
686
688
|
isSystemGenerated: true,
|
|
687
689
|
messageKind: "auto-prompt",
|
|
@@ -693,7 +695,7 @@ async function executeWorkflow(workflow, options, subGroup) {
|
|
|
693
695
|
createChatMessageMessage({
|
|
694
696
|
id: shellMsgId,
|
|
695
697
|
role: "user",
|
|
696
|
-
content:
|
|
698
|
+
content: runningContent,
|
|
697
699
|
timestamp: (/* @__PURE__ */ new Date()).toISOString(),
|
|
698
700
|
isSystemGenerated: true,
|
|
699
701
|
messageKind: "auto-prompt",
|
|
@@ -709,10 +711,13 @@ async function executeWorkflow(workflow, options, subGroup) {
|
|
|
709
711
|
);
|
|
710
712
|
const output = [result.stdout, result.stderr].filter(Boolean).join("\n").trim();
|
|
711
713
|
lastStepOutput = { stdout: result.stdout ?? "", stderr: result.stderr ?? "", exitCode: String(result.exitCode) };
|
|
712
|
-
const outputContent = output ?
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
714
|
+
const outputContent = output ? serverT(
|
|
715
|
+
{
|
|
716
|
+
en: "Exit code: {{code}}\n```\n{{output}}\n```",
|
|
717
|
+
fr: "Code de sortie : {{code}}\n```\n{{output}}\n```"
|
|
718
|
+
},
|
|
719
|
+
{ code: result.exitCode, output: output.slice(0, 1e4) }
|
|
720
|
+
) : serverT({ en: "Exit code: {{code}}", fr: "Code de sortie : {{code}}" }, { code: result.exitCode });
|
|
716
721
|
eventStore.append(sessionId, { type: "message.done", data: { messageId: shellMsgId } });
|
|
717
722
|
const outputMsgId = crypto.randomUUID();
|
|
718
723
|
eventStore.append(
|
|
@@ -1016,4 +1021,4 @@ export {
|
|
|
1016
1021
|
abortRunnerRun,
|
|
1017
1022
|
launchWorkflowRun
|
|
1018
1023
|
};
|
|
1019
|
-
//# sourceMappingURL=chunk-
|
|
1024
|
+
//# sourceMappingURL=chunk-5H5NRWHA.js.map
|
|
@@ -11,11 +11,11 @@ import {
|
|
|
11
11
|
} from "./chunk-I72ACQ6R.js";
|
|
12
12
|
import {
|
|
13
13
|
getPlatformShell
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-O3RCSKUH.js";
|
|
15
15
|
import {
|
|
16
16
|
SETTINGS_KEYS,
|
|
17
17
|
getSetting
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-CTWZPN7G.js";
|
|
19
19
|
|
|
20
20
|
// src/server/utils/shell.ts
|
|
21
21
|
import { spawn } from "child_process";
|
|
@@ -214,4 +214,4 @@ export {
|
|
|
214
214
|
getSessionProcesses2 as getSessionProcesses,
|
|
215
215
|
getProcessLogs
|
|
216
216
|
};
|
|
217
|
-
//# sourceMappingURL=chunk-
|
|
217
|
+
//# sourceMappingURL=chunk-5UMXFLET.js.map
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
} from "./chunk-OA2FURC3.js";
|
|
5
5
|
import {
|
|
6
6
|
createLLMClient
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-ZMK4VX7V.js";
|
|
8
8
|
import {
|
|
9
9
|
getModelProfile
|
|
10
10
|
} from "./chunk-TS5WKTFB.js";
|
|
@@ -895,4 +895,4 @@ export {
|
|
|
895
895
|
parseDefaultModelSelection,
|
|
896
896
|
createProviderManager
|
|
897
897
|
};
|
|
898
|
-
//# sourceMappingURL=chunk-
|
|
898
|
+
//# sourceMappingURL=chunk-5UQ4CKOA.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getPlatformShell
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-O3RCSKUH.js";
|
|
4
4
|
|
|
5
5
|
// src/server/tools/tool-policy.ts
|
|
6
6
|
var ALWAYS_ALLOWED = /* @__PURE__ */ new Set(["step_done"]);
|
|
@@ -246,4 +246,4 @@ export {
|
|
|
246
246
|
buildAgentSmallReminder,
|
|
247
247
|
COMPACTION_PROMPT
|
|
248
248
|
};
|
|
249
|
-
//# sourceMappingURL=chunk-
|
|
249
|
+
//# sourceMappingURL=chunk-7QMWYNVF.js.map
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
import {
|
|
5
5
|
createServerMessage,
|
|
6
6
|
isClientMessage
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-HF3NDXB4.js";
|
|
8
8
|
|
|
9
9
|
// src/server/session/client-session.ts
|
|
10
10
|
function toClientSession(session) {
|
|
@@ -143,8 +143,8 @@ function createChatStatsMessage(stats) {
|
|
|
143
143
|
function createChatErrorMessage(error, recoverable) {
|
|
144
144
|
return createServerMessage("chat.error", { error, recoverable });
|
|
145
145
|
}
|
|
146
|
-
function createChatLLMRetryMessage(attempt, retryInMs) {
|
|
147
|
-
return createServerMessage("chat.llm_retry", { attempt, retryInMs });
|
|
146
|
+
function createChatLLMRetryMessage(attempt, retryInMs, error) {
|
|
147
|
+
return createServerMessage("chat.llm_retry", { attempt, retryInMs, error });
|
|
148
148
|
}
|
|
149
149
|
function createChatLLMRetryFailedMessage(error, attempts) {
|
|
150
150
|
return createServerMessage("chat.llm_retry_failed", { error, attempts });
|
|
@@ -378,4 +378,4 @@ export {
|
|
|
378
378
|
createQueueStateMessage,
|
|
379
379
|
storedEventToServerMessage
|
|
380
380
|
};
|
|
381
|
-
//# sourceMappingURL=chunk-
|
|
381
|
+
//# sourceMappingURL=chunk-AATMPL7S.js.map
|