@carboncode/cli 0.1.0 → 0.1.1
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/README.md +15 -24
- package/README.zh-CN.md +13 -11
- package/dist/cli/{acp-35C4ME6Y.js → acp-E6QAGSG4.js} +17 -16
- package/dist/cli/acp-E6QAGSG4.js.map +1 -0
- package/dist/cli/{chat-A6UJDPGV.js → chat-6MBLB7MU.js} +21 -21
- package/dist/cli/{chunk-J5BYPUB5.js → chunk-2EKLWOE3.js} +794 -554
- package/dist/cli/chunk-2EKLWOE3.js.map +1 -0
- package/dist/cli/{chunk-UI66BH6D.js → chunk-2UXHZAXP.js} +2 -2
- package/dist/cli/{chunk-IX6XI2RG.js → chunk-3PNIUDTA.js} +2 -2
- package/dist/cli/{chunk-JKGYMRX5.js → chunk-676EW5HH.js} +2 -2
- package/dist/cli/{chunk-BSINVTTL.js → chunk-7R3PKZXB.js} +7 -7
- package/dist/cli/{chunk-3T6VBZCL.js → chunk-B2RA3NMS.js} +2 -2
- package/dist/cli/{chunk-CPKCNHRR.js → chunk-BYBOY5UY.js} +5 -5
- package/dist/cli/{chunk-3OAR6NVL.js → chunk-GG2V37EH.js} +2 -2
- package/dist/cli/{chunk-4IBIPQVB.js → chunk-J6UWUIT2.js} +3 -3
- package/dist/cli/{chunk-4TVNJWMA.js → chunk-LRXTF6NZ.js} +178 -18
- package/dist/cli/chunk-LRXTF6NZ.js.map +1 -0
- package/dist/cli/{chunk-T5TQ4NDT.js → chunk-MDQWQYBS.js} +3 -3
- package/dist/cli/{chunk-TH756VLN.js → chunk-NCMC7AMN.js} +240 -191
- package/dist/cli/chunk-NCMC7AMN.js.map +1 -0
- package/dist/cli/{chunk-ILJOIQ5W.js → chunk-NTF4IE7G.js} +2 -2
- package/dist/cli/{chunk-XJ5SRLKK.js → chunk-OYAIE6C7.js} +2 -2
- package/dist/cli/{chunk-BSGCXZQN.js → chunk-PT4UDK7Z.js} +2 -2
- package/dist/cli/{chunk-QJG7OF27.js → chunk-QLPHVU3W.js} +27 -10
- package/dist/cli/chunk-QLPHVU3W.js.map +1 -0
- package/dist/cli/{chunk-WRN65TRD.js → chunk-RLQQOIBS.js} +2 -2
- package/dist/cli/{chunk-QVC75MR3.js → chunk-U7RHC7D6.js} +2 -2
- package/dist/cli/{chunk-IAUOP25G.js → chunk-V6A26HU5.js} +34 -20
- package/dist/cli/chunk-V6A26HU5.js.map +1 -0
- package/dist/cli/{chunk-D5NFKRGO.js → chunk-VVQTSZWX.js} +2 -2
- package/dist/cli/{chunk-7L2WTRNU.js → chunk-X3IHKOYW.js} +2 -2
- package/dist/cli/{chunk-S2KIUQKQ.js → chunk-XJIF545V.js} +7 -6
- package/dist/cli/{chunk-S2KIUQKQ.js.map → chunk-XJIF545V.js.map} +1 -1
- package/dist/cli/{chunk-4MQ3VURH.js → chunk-ZADUQPQP.js} +24 -24
- package/dist/cli/chunk-ZADUQPQP.js.map +1 -0
- package/dist/cli/{code-4TUTAGO5.js → code-LBRSX6ZI.js} +24 -33
- package/dist/cli/code-LBRSX6ZI.js.map +1 -0
- package/dist/cli/{commands-KMOZEYCF.js → commands-PCHFC3CL.js} +4 -4
- package/dist/cli/{commit-DTFA56VQ.js → commit-HDN6VJBA.js} +3 -3
- package/dist/cli/{desktop-7N3MHNBD.js → desktop-RHWSCBHO.js} +17 -17
- package/dist/cli/{diff-E5OWTF4C.js → diff-MV5JNUH4.js} +8 -8
- package/dist/cli/{doctor-IEJQRJMN.js → doctor-QLO4V4DD.js} +8 -8
- package/dist/cli/index.js +32 -32
- package/dist/cli/{mcp-PDI2PDLG.js → mcp-JSHFAINM.js} +2 -2
- package/dist/cli/{mcp-browse-OSPXOFPZ.js → mcp-browse-ESMKKKYH.js} +2 -2
- package/dist/cli/{mcp-inspect-QRFVTHMF.js → mcp-inspect-WSUN36FM.js} +2 -2
- package/dist/cli/{prompt-3CDII3UO.js → prompt-5LMDCF4M.js} +3 -3
- package/dist/cli/{replay-HYOSRQIV.js → replay-D3ILR2YO.js} +8 -8
- package/dist/cli/{run-2ZHADOUP.js → run-6NN3P5JM.js} +13 -13
- package/dist/cli/{server-X75PAZG5.js → server-HE7LFAHH.js} +10 -10
- package/dist/cli/{sessions-POOZA5CQ.js → sessions-HXDBQM3V.js} +12 -12
- package/dist/cli/{setup-YLPFI3OH.js → setup-EP3UPG3F.js} +5 -5
- package/dist/cli/{stats-NXJ3TO2D.js → stats-5RC6P5TN.js} +6 -6
- package/dist/cli/{version-NXXWE3WN.js → version-AIR25TRN.js} +12 -12
- package/dist/index.d.ts +15 -2
- package/dist/index.js +328 -89
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/dist/cli/acp-35C4ME6Y.js.map +0 -1
- package/dist/cli/chunk-4MQ3VURH.js.map +0 -1
- package/dist/cli/chunk-4TVNJWMA.js.map +0 -1
- package/dist/cli/chunk-IAUOP25G.js.map +0 -1
- package/dist/cli/chunk-J5BYPUB5.js.map +0 -1
- package/dist/cli/chunk-QJG7OF27.js.map +0 -1
- package/dist/cli/chunk-TH756VLN.js.map +0 -1
- package/dist/cli/code-4TUTAGO5.js.map +0 -1
- /package/dist/cli/{chat-A6UJDPGV.js.map → chat-6MBLB7MU.js.map} +0 -0
- /package/dist/cli/{chunk-UI66BH6D.js.map → chunk-2UXHZAXP.js.map} +0 -0
- /package/dist/cli/{chunk-IX6XI2RG.js.map → chunk-3PNIUDTA.js.map} +0 -0
- /package/dist/cli/{chunk-JKGYMRX5.js.map → chunk-676EW5HH.js.map} +0 -0
- /package/dist/cli/{chunk-BSINVTTL.js.map → chunk-7R3PKZXB.js.map} +0 -0
- /package/dist/cli/{chunk-3T6VBZCL.js.map → chunk-B2RA3NMS.js.map} +0 -0
- /package/dist/cli/{chunk-CPKCNHRR.js.map → chunk-BYBOY5UY.js.map} +0 -0
- /package/dist/cli/{chunk-3OAR6NVL.js.map → chunk-GG2V37EH.js.map} +0 -0
- /package/dist/cli/{chunk-4IBIPQVB.js.map → chunk-J6UWUIT2.js.map} +0 -0
- /package/dist/cli/{chunk-T5TQ4NDT.js.map → chunk-MDQWQYBS.js.map} +0 -0
- /package/dist/cli/{chunk-ILJOIQ5W.js.map → chunk-NTF4IE7G.js.map} +0 -0
- /package/dist/cli/{chunk-XJ5SRLKK.js.map → chunk-OYAIE6C7.js.map} +0 -0
- /package/dist/cli/{chunk-BSGCXZQN.js.map → chunk-PT4UDK7Z.js.map} +0 -0
- /package/dist/cli/{chunk-WRN65TRD.js.map → chunk-RLQQOIBS.js.map} +0 -0
- /package/dist/cli/{chunk-QVC75MR3.js.map → chunk-U7RHC7D6.js.map} +0 -0
- /package/dist/cli/{chunk-D5NFKRGO.js.map → chunk-VVQTSZWX.js.map} +0 -0
- /package/dist/cli/{chunk-7L2WTRNU.js.map → chunk-X3IHKOYW.js.map} +0 -0
- /package/dist/cli/{commands-KMOZEYCF.js.map → commands-PCHFC3CL.js.map} +0 -0
- /package/dist/cli/{commit-DTFA56VQ.js.map → commit-HDN6VJBA.js.map} +0 -0
- /package/dist/cli/{desktop-7N3MHNBD.js.map → desktop-RHWSCBHO.js.map} +0 -0
- /package/dist/cli/{diff-E5OWTF4C.js.map → diff-MV5JNUH4.js.map} +0 -0
- /package/dist/cli/{doctor-IEJQRJMN.js.map → doctor-QLO4V4DD.js.map} +0 -0
- /package/dist/cli/{mcp-PDI2PDLG.js.map → mcp-JSHFAINM.js.map} +0 -0
- /package/dist/cli/{mcp-browse-OSPXOFPZ.js.map → mcp-browse-ESMKKKYH.js.map} +0 -0
- /package/dist/cli/{mcp-inspect-QRFVTHMF.js.map → mcp-inspect-WSUN36FM.js.map} +0 -0
- /package/dist/cli/{prompt-3CDII3UO.js.map → prompt-5LMDCF4M.js.map} +0 -0
- /package/dist/cli/{replay-HYOSRQIV.js.map → replay-D3ILR2YO.js.map} +0 -0
- /package/dist/cli/{run-2ZHADOUP.js.map → run-6NN3P5JM.js.map} +0 -0
- /package/dist/cli/{server-X75PAZG5.js.map → server-HE7LFAHH.js.map} +0 -0
- /package/dist/cli/{sessions-POOZA5CQ.js.map → sessions-HXDBQM3V.js.map} +0 -0
- /package/dist/cli/{setup-YLPFI3OH.js.map → setup-EP3UPG3F.js.map} +0 -0
- /package/dist/cli/{stats-NXJ3TO2D.js.map → stats-5RC6P5TN.js.map} +0 -0
- /package/dist/cli/{version-NXXWE3WN.js.map → version-AIR25TRN.js.map} +0 -0
|
@@ -24,11 +24,11 @@ import {
|
|
|
24
24
|
} from "./chunk-4VR6XF4P.js";
|
|
25
25
|
import {
|
|
26
26
|
registerSemanticSearchTool
|
|
27
|
-
} from "./chunk-
|
|
27
|
+
} from "./chunk-GG2V37EH.js";
|
|
28
28
|
import {
|
|
29
29
|
BUILTIN_ALLOWLIST,
|
|
30
30
|
lineDiff
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-NCMC7AMN.js";
|
|
32
32
|
import {
|
|
33
33
|
CARBON_RUNTIME_DIRNAME,
|
|
34
34
|
LEGACY_REASONIX_RUNTIME_DIRNAME,
|
|
@@ -46,7 +46,7 @@ import {
|
|
|
46
46
|
checkOllamaStatus,
|
|
47
47
|
pullOllamaModel,
|
|
48
48
|
startOllamaDaemon
|
|
49
|
-
} from "./chunk-
|
|
49
|
+
} from "./chunk-676EW5HH.js";
|
|
50
50
|
import {
|
|
51
51
|
buildIndex,
|
|
52
52
|
compareIndexIdentity,
|
|
@@ -55,13 +55,13 @@ import {
|
|
|
55
55
|
querySemantic,
|
|
56
56
|
readIndexMeta,
|
|
57
57
|
walkChunks
|
|
58
|
-
} from "./chunk-
|
|
58
|
+
} from "./chunk-RLQQOIBS.js";
|
|
59
59
|
import {
|
|
60
60
|
HOOK_EVENTS,
|
|
61
61
|
globalSettingsPath,
|
|
62
62
|
loadHooks,
|
|
63
63
|
projectSettingsPath
|
|
64
|
-
} from "./chunk-
|
|
64
|
+
} from "./chunk-3PNIUDTA.js";
|
|
65
65
|
import "./chunk-S4XVGLRW.js";
|
|
66
66
|
import {
|
|
67
67
|
deleteSession,
|
|
@@ -74,16 +74,16 @@ import {
|
|
|
74
74
|
bucketCacheHitRatio,
|
|
75
75
|
formatLogSize,
|
|
76
76
|
readUsageLog
|
|
77
|
-
} from "./chunk-
|
|
77
|
+
} from "./chunk-U7RHC7D6.js";
|
|
78
78
|
import {
|
|
79
79
|
DEEPSEEK_PRICING,
|
|
80
80
|
cacheSavingsUsd
|
|
81
|
-
} from "./chunk-
|
|
81
|
+
} from "./chunk-NTF4IE7G.js";
|
|
82
82
|
import {
|
|
83
83
|
getLanguage,
|
|
84
84
|
getSupportedLanguages,
|
|
85
85
|
setLanguage
|
|
86
|
-
} from "./chunk-
|
|
86
|
+
} from "./chunk-V6A26HU5.js";
|
|
87
87
|
import {
|
|
88
88
|
DEFAULT_INDEX_EXCLUDES,
|
|
89
89
|
DEFAULT_MAX_FILE_BYTES,
|
|
@@ -106,7 +106,7 @@ import {
|
|
|
106
106
|
resolveSemanticEmbeddingConfig,
|
|
107
107
|
saveSemanticEmbeddingConfig,
|
|
108
108
|
writeConfig
|
|
109
|
-
} from "./chunk-
|
|
109
|
+
} from "./chunk-ZADUQPQP.js";
|
|
110
110
|
import {
|
|
111
111
|
VERSION
|
|
112
112
|
} from "./chunk-LN3B5PMX.js";
|
|
@@ -3569,4 +3569,4 @@ export {
|
|
|
3569
3569
|
readBody,
|
|
3570
3570
|
startDashboardServer
|
|
3571
3571
|
};
|
|
3572
|
-
//# sourceMappingURL=server-
|
|
3572
|
+
//# sourceMappingURL=server-HE7LFAHH.js.map
|
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire as __cr } from 'node:module'; if (typeof globalThis.require === 'undefined') { globalThis.require = __cr(import.meta.url); }
|
|
3
|
-
import "./chunk-
|
|
4
|
-
import "./chunk-
|
|
5
|
-
import "./chunk-
|
|
3
|
+
import "./chunk-LRXTF6NZ.js";
|
|
4
|
+
import "./chunk-X3IHKOYW.js";
|
|
5
|
+
import "./chunk-MDQWQYBS.js";
|
|
6
6
|
import "./chunk-GALC45Q2.js";
|
|
7
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-QLPHVU3W.js";
|
|
8
8
|
import "./chunk-6OWJV3YW.js";
|
|
9
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-PT4UDK7Z.js";
|
|
10
10
|
import "./chunk-25T6CVUP.js";
|
|
11
11
|
import "./chunk-2UQP6H6T.js";
|
|
12
|
-
import "./chunk-
|
|
12
|
+
import "./chunk-NCMC7AMN.js";
|
|
13
13
|
import "./chunk-M2UFZUX3.js";
|
|
14
|
-
import "./chunk-
|
|
14
|
+
import "./chunk-3PNIUDTA.js";
|
|
15
15
|
import "./chunk-S4XVGLRW.js";
|
|
16
16
|
import {
|
|
17
17
|
listSessions,
|
|
18
18
|
loadSessionMessages,
|
|
19
19
|
sessionPath
|
|
20
20
|
} from "./chunk-U4IJVG32.js";
|
|
21
|
-
import "./chunk-
|
|
22
|
-
import "./chunk-
|
|
21
|
+
import "./chunk-U7RHC7D6.js";
|
|
22
|
+
import "./chunk-NTF4IE7G.js";
|
|
23
23
|
import {
|
|
24
24
|
t
|
|
25
|
-
} from "./chunk-
|
|
26
|
-
import "./chunk-
|
|
25
|
+
} from "./chunk-V6A26HU5.js";
|
|
26
|
+
import "./chunk-ZADUQPQP.js";
|
|
27
27
|
import "./chunk-LN3B5PMX.js";
|
|
28
28
|
import "./chunk-TUK7OWJA.js";
|
|
29
29
|
|
|
@@ -117,4 +117,4 @@ function truncate(s, max) {
|
|
|
117
117
|
export {
|
|
118
118
|
sessionsCommand
|
|
119
119
|
};
|
|
120
|
-
//# sourceMappingURL=sessions-
|
|
120
|
+
//# sourceMappingURL=sessions-HXDBQM3V.js.map
|
|
@@ -3,11 +3,11 @@ import { createRequire as __cr } from 'node:module'; if (typeof globalThis.requi
|
|
|
3
3
|
import {
|
|
4
4
|
MultiSelect,
|
|
5
5
|
SingleSelect
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-2UXHZAXP.js";
|
|
7
7
|
import {
|
|
8
8
|
ThemeProvider,
|
|
9
9
|
useTheme
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-VVQTSZWX.js";
|
|
11
11
|
import {
|
|
12
12
|
Box_default,
|
|
13
13
|
Text,
|
|
@@ -34,7 +34,7 @@ import {
|
|
|
34
34
|
onLanguageChange,
|
|
35
35
|
setLanguage,
|
|
36
36
|
t
|
|
37
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-V6A26HU5.js";
|
|
38
38
|
import {
|
|
39
39
|
defaultConfigPath,
|
|
40
40
|
isPlausibleKey,
|
|
@@ -46,7 +46,7 @@ import {
|
|
|
46
46
|
redactKey,
|
|
47
47
|
resolveThemePreference,
|
|
48
48
|
writeConfig
|
|
49
|
-
} from "./chunk-
|
|
49
|
+
} from "./chunk-ZADUQPQP.js";
|
|
50
50
|
import {
|
|
51
51
|
__toESM
|
|
52
52
|
} from "./chunk-TUK7OWJA.js";
|
|
@@ -615,4 +615,4 @@ async function setupCommand(opts = {}) {
|
|
|
615
615
|
export {
|
|
616
616
|
setupCommand
|
|
617
617
|
};
|
|
618
|
-
//# sourceMappingURL=setup-
|
|
618
|
+
//# sourceMappingURL=setup-EP3UPG3F.js.map
|
|
@@ -3,14 +3,14 @@ import { createRequire as __cr } from 'node:module'; if (typeof globalThis.requi
|
|
|
3
3
|
import {
|
|
4
4
|
renderDashboard,
|
|
5
5
|
statsCommand
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-J6UWUIT2.js";
|
|
7
|
+
import "./chunk-U7RHC7D6.js";
|
|
8
|
+
import "./chunk-NTF4IE7G.js";
|
|
9
|
+
import "./chunk-V6A26HU5.js";
|
|
10
|
+
import "./chunk-ZADUQPQP.js";
|
|
11
11
|
import "./chunk-TUK7OWJA.js";
|
|
12
12
|
export {
|
|
13
13
|
renderDashboard,
|
|
14
14
|
statsCommand
|
|
15
15
|
};
|
|
16
|
-
//# sourceMappingURL=stats-
|
|
16
|
+
//# sourceMappingURL=stats-5RC6P5TN.js.map
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire as __cr } from 'node:module'; if (typeof globalThis.require === 'undefined') { globalThis.require = __cr(import.meta.url); }
|
|
3
|
-
import "./chunk-
|
|
4
|
-
import "./chunk-
|
|
5
|
-
import "./chunk-
|
|
3
|
+
import "./chunk-LRXTF6NZ.js";
|
|
4
|
+
import "./chunk-X3IHKOYW.js";
|
|
5
|
+
import "./chunk-MDQWQYBS.js";
|
|
6
6
|
import "./chunk-GALC45Q2.js";
|
|
7
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-QLPHVU3W.js";
|
|
8
8
|
import "./chunk-6OWJV3YW.js";
|
|
9
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-PT4UDK7Z.js";
|
|
10
10
|
import "./chunk-25T6CVUP.js";
|
|
11
11
|
import "./chunk-2UQP6H6T.js";
|
|
12
|
-
import "./chunk-
|
|
12
|
+
import "./chunk-NCMC7AMN.js";
|
|
13
13
|
import "./chunk-M2UFZUX3.js";
|
|
14
|
-
import "./chunk-
|
|
14
|
+
import "./chunk-3PNIUDTA.js";
|
|
15
15
|
import "./chunk-S4XVGLRW.js";
|
|
16
16
|
import "./chunk-U4IJVG32.js";
|
|
17
|
-
import "./chunk-
|
|
18
|
-
import "./chunk-
|
|
19
|
-
import "./chunk-
|
|
20
|
-
import "./chunk-
|
|
17
|
+
import "./chunk-U7RHC7D6.js";
|
|
18
|
+
import "./chunk-NTF4IE7G.js";
|
|
19
|
+
import "./chunk-V6A26HU5.js";
|
|
20
|
+
import "./chunk-ZADUQPQP.js";
|
|
21
21
|
import {
|
|
22
22
|
VERSION
|
|
23
23
|
} from "./chunk-LN3B5PMX.js";
|
|
@@ -30,4 +30,4 @@ function versionCommand() {
|
|
|
30
30
|
export {
|
|
31
31
|
versionCommand
|
|
32
32
|
};
|
|
33
|
-
//# sourceMappingURL=version-
|
|
33
|
+
//# sourceMappingURL=version-AIR25TRN.js.map
|
package/dist/index.d.ts
CHANGED
|
@@ -634,6 +634,8 @@ interface LoopEvent {
|
|
|
634
634
|
toolCallReadyCount?: number;
|
|
635
635
|
/** Stable id for tool_start / tool pairs — also the inflight-set key. UI uses this as the card id so it can derive `running` from `loop.inflight.has(callId)` instead of trusting end-event delivery. */
|
|
636
636
|
callId?: string;
|
|
637
|
+
/** Tool execution duration excluding interactive approval wait when available. */
|
|
638
|
+
elapsedMs?: number;
|
|
637
639
|
stats?: TurnStats;
|
|
638
640
|
repair?: RepairReport;
|
|
639
641
|
error?: string;
|
|
@@ -689,6 +691,8 @@ interface ToolCallContext {
|
|
|
689
691
|
signal?: AbortSignal;
|
|
690
692
|
/** Inject a mock PauseGate for tests. When absent, tools use the singleton. */
|
|
691
693
|
confirmationGate?: PauseGate;
|
|
694
|
+
/** Time spent waiting for interactive approval; UIs subtract this from tool runtime. */
|
|
695
|
+
onInteractiveWait?: (elapsedMs: number) => void;
|
|
692
696
|
}
|
|
693
697
|
interface ToolDefinition<A = any, R = any> {
|
|
694
698
|
name: string;
|
|
@@ -714,7 +718,7 @@ type ToolCallAuditEvent = {
|
|
|
714
718
|
};
|
|
715
719
|
type ToolCallAuditListener = (event: ToolCallAuditEvent) => void;
|
|
716
720
|
/** String return short-circuits dispatch; null/undefined falls through to the tool fn. */
|
|
717
|
-
type ToolInterceptor = (name: string, args: Record<string, unknown
|
|
721
|
+
type ToolInterceptor = (name: string, args: Record<string, unknown>, ctx?: ToolCallContext) => string | null | undefined | Promise<string | null | undefined>;
|
|
718
722
|
/** Final-stage post-processor — runs on every dispatch return (success and error paths) so callers can append context like a remaining-budget hint. Whatever it returns becomes the dispatch result. */
|
|
719
723
|
type ToolResultAugmenter = (name: string, args: Record<string, unknown>, result: string) => string;
|
|
720
724
|
declare class ToolRegistry {
|
|
@@ -755,6 +759,8 @@ declare class ToolRegistry {
|
|
|
755
759
|
maxResultTokens?: number;
|
|
756
760
|
/** Inject a mock PauseGate for tests. */
|
|
757
761
|
confirmationGate?: PauseGate;
|
|
762
|
+
/** Report modal / approval wait time so callers can keep runtime metrics honest. */
|
|
763
|
+
onInteractiveWait?: (elapsedMs: number) => void;
|
|
758
764
|
}): Promise<string>;
|
|
759
765
|
/** Records the failed call's fingerprint; on the 2nd consecutive identical malformed call to the same tool, returns a sharper error that tells the model to stop retrying. */
|
|
760
766
|
private _noteMalformed;
|
|
@@ -1174,8 +1180,11 @@ interface ReasonixConfig {
|
|
|
1174
1180
|
/** Stable URL token (#968). If unset, a fresh token is minted each boot. Min 16 chars enforced at load time. */
|
|
1175
1181
|
token?: string;
|
|
1176
1182
|
};
|
|
1177
|
-
/** Per-field visibility toggles for the bottom status row.
|
|
1183
|
+
/** Per-field visibility toggles for the bottom status row. Codex-style defaults keep only turn cost and context visible. */
|
|
1178
1184
|
statusBar?: {
|
|
1185
|
+
showMode?: boolean;
|
|
1186
|
+
showPreset?: boolean;
|
|
1187
|
+
showSessionInfo?: boolean;
|
|
1179
1188
|
showBalance?: boolean;
|
|
1180
1189
|
showSessionCost?: boolean;
|
|
1181
1190
|
showTurnCost?: boolean;
|
|
@@ -1651,6 +1660,8 @@ declare function detectShellOperator(cmd: string): string | null;
|
|
|
1651
1660
|
declare function isAllowed(cmd: string, extra?: readonly string[], projectRoot?: string, sensitivePathConfig?: {
|
|
1652
1661
|
prefixes?: readonly string[];
|
|
1653
1662
|
patterns?: readonly string[];
|
|
1663
|
+
}, opts?: {
|
|
1664
|
+
includeBuiltin?: boolean;
|
|
1654
1665
|
}): boolean;
|
|
1655
1666
|
|
|
1656
1667
|
/** cwd pinned to root; non-allowlisted commands throw to a UI confirm gate; spawn is `shell: false`, tokenized argv only. */
|
|
@@ -1665,6 +1676,8 @@ interface ShellToolsOptions {
|
|
|
1665
1676
|
extraAllowed?: readonly string[] | (() => readonly string[]);
|
|
1666
1677
|
/** Getter form lets `editMode === "yolo"` flip mid-session without re-registering tools. */
|
|
1667
1678
|
allowAll?: boolean | (() => boolean);
|
|
1679
|
+
/** When true, built-in read/test/lint commands still go through the approval gate. Project allowlist entries still bypass it. */
|
|
1680
|
+
requireApprovalForBuiltin?: boolean;
|
|
1668
1681
|
jobs?: JobRegistry;
|
|
1669
1682
|
/** Fired after `run_background` / `stop_job` mutate the registry — used by the desktop popover for near-real-time updates without polling. */
|
|
1670
1683
|
onJobsChanged?: () => void;
|