@shareai-lab/kode 2.1.0 → 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/dist/chunks/{Doctor-AES5ON33.js → Doctor-TWRIVOVW.js} +13 -13
- package/dist/chunks/{LogList-PQJEJHHE.js → LogList-PUTPM24L.js} +10 -10
- package/dist/chunks/REPL-YGIR5VXC.js +78 -0
- package/dist/chunks/{ResumeConversation-OWQ3DB4M.js → ResumeConversation-IJMKQXBU.js} +44 -44
- package/dist/chunks/{ScreenFrame-AGLR6B4D.js → ScreenFrame-PQJRZ5DQ.js} +2 -2
- package/dist/chunks/{agentLoader-BMWB4UKI.js → agentLoader-GOYNJTAO.js} +5 -5
- package/dist/chunks/{agentsValidate-LSMJSFYW.js → agentsValidate-R26AKPAA.js} +6 -6
- package/dist/chunks/{ask-3TSZR6AJ.js → ask-6SYVJONJ.js} +18 -18
- package/dist/chunks/{autoUpdater-MEPC7LJF.js → autoUpdater-SDLJ5QSH.js} +4 -4
- package/dist/chunks/{chunk-NC3RX5AB.js → chunk-2B2TR2S3.js} +4 -4
- package/dist/chunks/{chunk-HDEYMVIJ.js → chunk-437YGKVA.js} +2 -2
- package/dist/chunks/{chunk-WGMKKKS2.js → chunk-4BBWDSDC.js} +1 -1
- package/dist/chunks/{chunk-KKOES3YK.js → chunk-4T5LR4P5.js} +55 -116
- package/dist/chunks/chunk-4T5LR4P5.js.map +7 -0
- package/dist/chunks/{chunk-PMC3BZ3M.js → chunk-5HZWM4JB.js} +1 -1
- package/dist/chunks/{chunk-REQTXUXO.js → chunk-5LBRVQT5.js} +1 -1
- package/dist/chunks/{chunk-BEDQTC44.js → chunk-5LL33G6X.js} +2 -2
- package/dist/chunks/{chunk-YUXYJB45.js → chunk-5RCVEFJS.js} +19 -8
- package/dist/chunks/chunk-5RCVEFJS.js.map +7 -0
- package/dist/chunks/{chunk-MDCOIZVX.js → chunk-6C6VNA2D.js} +2 -2
- package/dist/chunks/{chunk-P77NF36M.js → chunk-6CAQXUDY.js} +1 -1
- package/dist/chunks/{chunk-DPQE5NA4.js → chunk-7SRIFZDJ.js} +1 -1
- package/dist/chunks/{chunk-TI2CTTMA.js → chunk-7ZC22R33.js} +1 -1
- package/dist/chunks/{chunk-EV56PDOI.js → chunk-AX3VXMUS.js} +1 -1
- package/dist/chunks/{chunk-5MVUCX6O.js → chunk-AZHJLRRP.js} +1 -1
- package/dist/chunks/{chunk-LIBZWJEW.js → chunk-BNSPVA24.js} +11 -10
- package/dist/chunks/chunk-BNSPVA24.js.map +7 -0
- package/dist/chunks/{chunk-Z3J3WJ2K.js → chunk-BPMYW5DT.js} +415 -414
- package/dist/chunks/chunk-BPMYW5DT.js.map +7 -0
- package/dist/chunks/{chunk-QBW7VU7C.js → chunk-DWKF6SQH.js} +3 -3
- package/dist/chunks/{chunk-4RVYYLN7.js → chunk-E4C4N7OV.js} +1 -1
- package/dist/chunks/{chunk-4RVYYLN7.js.map → chunk-E4C4N7OV.js.map} +1 -1
- package/dist/chunks/chunk-ESRGV7DC.js +34 -0
- package/dist/chunks/chunk-ESRGV7DC.js.map +7 -0
- package/dist/chunks/{chunk-VSKGDU73.js → chunk-FKWFR23G.js} +2 -2
- package/dist/chunks/{chunk-E6BU32L2.js → chunk-H5F7M5D3.js} +2 -2
- package/dist/chunks/{chunk-DZPD6H7A.js → chunk-JXYXMP2Q.js} +2 -2
- package/dist/chunks/{chunk-65FLXXMH.js → chunk-KA543BHH.js} +8 -8
- package/dist/chunks/{chunk-MEQ7TAT7.js → chunk-KHMXPPO7.js} +4 -4
- package/dist/chunks/{chunk-G5ET7GFB.js → chunk-KQV5FGSS.js} +5 -5
- package/dist/chunks/{chunk-DPVCHIF7.js → chunk-KRBZO255.js} +1 -1
- package/dist/chunks/{chunk-Y33AS3MY.js → chunk-L2LWCVUF.js} +21 -7
- package/dist/chunks/chunk-L2LWCVUF.js.map +7 -0
- package/dist/chunks/{chunk-EKXQ7ZWV.js → chunk-L5ZJIOEF.js} +4 -4
- package/dist/chunks/{chunk-UUJN5ZCN.js → chunk-LBHVWSUP.js} +2 -2
- package/dist/chunks/{chunk-GL6HUBBX.js → chunk-LKDMUCWA.js} +6 -6
- package/dist/chunks/{chunk-HJCYE2AS.js → chunk-LUZMHHQF.js} +10 -10
- package/dist/chunks/{chunk-MXFN7OSL.js → chunk-MOGUUWKG.js} +1 -1
- package/dist/chunks/{chunk-4UDKRYWZ.js → chunk-N4772IDQ.js} +3 -3
- package/dist/chunks/{chunk-TJMA65RL.js → chunk-N5AH66UG.js} +168 -23
- package/dist/chunks/chunk-N5AH66UG.js.map +7 -0
- package/dist/chunks/{chunk-JJ67KF6A.js → chunk-PTIAF6KF.js} +4 -4
- package/dist/chunks/{chunk-YUJB4WDK.js → chunk-PVMCLI36.js} +1 -1
- package/dist/chunks/{chunk-3TLVYEGW.js → chunk-RTGKCKD3.js} +1 -1
- package/dist/chunks/{chunk-AKC4BUW5.js → chunk-SOBWNYOW.js} +7 -6
- package/dist/chunks/chunk-SOBWNYOW.js.map +7 -0
- package/dist/chunks/{chunk-3DBNJOZI.js → chunk-SUNG5KP5.js} +1 -1
- package/dist/chunks/{chunk-VBGSHKHX.js → chunk-SVRXO73D.js} +16 -13
- package/dist/chunks/chunk-SVRXO73D.js.map +7 -0
- package/dist/chunks/{chunk-Q55CB4Y4.js → chunk-WE7CQGRG.js} +2 -2
- package/dist/chunks/{chunk-V3IXG64X.js → chunk-WOMV4RCI.js} +404 -446
- package/dist/chunks/chunk-WOMV4RCI.js.map +7 -0
- package/dist/chunks/{chunk-ZAT5BSQI.js → chunk-WVJMXIKQ.js} +12 -12
- package/dist/chunks/{chunk-ZAT5BSQI.js.map → chunk-WVJMXIKQ.js.map} +1 -1
- package/dist/chunks/{chunk-DELUVYKS.js → chunk-XVNEJVZC.js} +2 -2
- package/dist/chunks/{chunk-KDY7XYYS.js → chunk-YQ3YJSMI.js} +1 -1
- package/dist/chunks/{chunk-6CNJ3CYQ.js → chunk-YUZBVKVH.js} +3 -3
- package/dist/chunks/{chunk-VJ2QSQ3E.js → chunk-ZXOTOID7.js} +2 -2
- package/dist/chunks/{client-OWTJ7TPE.js → client-QUCHWMEW.js} +5 -5
- package/dist/chunks/{customCommands-FA6HRXXV.js → customCommands-S6YGRUED.js} +5 -5
- package/dist/chunks/{engine-UBCAVO7E.js → engine-FRDEQVDF.js} +17 -17
- package/dist/chunks/{env-JIMGBRE2.js → env-YH77MILU.js} +3 -3
- package/dist/chunks/{kodeAgentSessionLoad-BZRTCPMB.js → kodeAgentSessionLoad-TBPU4TWU.js} +3 -3
- package/dist/chunks/{kodeAgentSessionResume-V3WB3OWQ.js → kodeAgentSessionResume-3CNE5T6N.js} +3 -3
- package/dist/chunks/{kodeHooks-R3YHG4ZI.js → kodeHooks-6SWQE5W7.js} +4 -4
- package/dist/chunks/{llm-C4F2Q7I2.js → llm-PONI6QWH.js} +47 -20
- package/dist/chunks/llm-PONI6QWH.js.map +7 -0
- package/dist/chunks/{llmLazy-IBED5LIH.js → llmLazy-O4T62IIT.js} +1 -1
- package/dist/chunks/{mcpCli-A744Z3FL.js → mcpCli-HIA4I4GG.js} +5 -5
- package/dist/chunks/{mentionProcessor-VV6DN2LJ.js → mentionProcessor-HH4EF7BE.js} +6 -6
- package/dist/chunks/{messages-ZR64JVON.js → messages-WKWCZBGM.js} +1 -1
- package/dist/chunks/{model-NPMMYL2U.js → model-4EIFU5QN.js} +5 -5
- package/dist/chunks/{openai-FEBNBOGM.js → openai-KTBJ2KNZ.js} +5 -5
- package/dist/chunks/{permissions-34CRWMCH.js → permissions-C3N4DKS2.js} +7 -7
- package/dist/chunks/{pluginRuntime-7YBUMVFI.js → pluginRuntime-2FKZLVA5.js} +3 -3
- package/dist/chunks/{pluginValidation-NZ4LOT3Q.js → pluginValidation-X5NZZCFA.js} +7 -7
- package/dist/chunks/registry-3UVW32YF.js +68 -0
- package/dist/chunks/{responsesStreaming-JNGE2P3D.js → responsesStreaming-LB4THIUM.js} +2 -2
- package/dist/chunks/{ripgrep-KGHLK4RO.js → ripgrep-N7O6M4IE.js} +4 -4
- package/dist/chunks/{runNonTextPrintMode-U3TKEYYN.js → runNonTextPrintMode-YFWCUTWZ.js} +12 -12
- package/dist/chunks/server-3CICV7EL.js +59 -0
- package/dist/chunks/server-FRP7OT4H.js +61 -0
- package/dist/chunks/{skillMarketplace-PPPUBC4N.js → skillMarketplace-4Y2H4JFK.js} +4 -4
- package/dist/chunks/{src-TVS6YABL.js → src-IETAWKYR.js} +30 -30
- package/dist/chunks/{src-QST7UD2A.js → src-OB2HE3RX.js} +27 -27
- package/dist/chunks/{src-DB7GKD4L.js → src-Y2IM2VKU.js} +78 -78
- package/dist/chunks/{thinking-O7LIIMFW.js → thinking-XG3FB4HO.js} +6 -6
- package/dist/chunks/{toolPermissionContext-UWGATCUZ.js → toolPermissionContext-RFYFDINH.js} +1 -1
- package/dist/chunks/{toolPermissionSettings-WD7CB37T.js → toolPermissionSettings-EEFURGBO.js} +5 -5
- package/dist/chunks/{useScreenLayout-PKLCMNZD.js → useScreenLayout-OUGQRR4I.js} +2 -2
- package/dist/chunks/{webOnlyMode-GJ6PQCPU.js → webOnlyMode-FRQBIAXG.js} +1 -1
- package/dist/entrypoints/cli.js +1 -1
- package/dist/entrypoints/daemon.js +1 -1
- package/dist/entrypoints/mcp.js +28 -28
- package/dist/index.js +5 -5
- package/dist/sdk/core.cjs +93 -34
- package/dist/sdk/core.cjs.map +3 -3
- package/dist/sdk/core.js +96 -37
- package/dist/sdk/core.js.map +4 -4
- package/dist/sdk/tools.cjs +1787 -1748
- package/dist/sdk/tools.cjs.map +4 -4
- package/dist/sdk/tools.js +1611 -1572
- package/dist/sdk/tools.js.map +4 -4
- package/package.json +1 -1
- package/dist/chunks/REPL-KD7YOSI5.js +0 -78
- package/dist/chunks/chunk-AKC4BUW5.js.map +0 -7
- package/dist/chunks/chunk-KKOES3YK.js.map +0 -7
- package/dist/chunks/chunk-LIBZWJEW.js.map +0 -7
- package/dist/chunks/chunk-LOCXPQNJ.js +0 -20
- package/dist/chunks/chunk-LOCXPQNJ.js.map +0 -7
- package/dist/chunks/chunk-TJMA65RL.js.map +0 -7
- package/dist/chunks/chunk-V3IXG64X.js.map +0 -7
- package/dist/chunks/chunk-VBGSHKHX.js.map +0 -7
- package/dist/chunks/chunk-Y33AS3MY.js.map +0 -7
- package/dist/chunks/chunk-YUXYJB45.js.map +0 -7
- package/dist/chunks/chunk-Z3J3WJ2K.js.map +0 -7
- package/dist/chunks/llm-C4F2Q7I2.js.map +0 -7
- package/dist/chunks/registry-FHPZ36EO.js +0 -68
- package/dist/chunks/server-Y42VR6YJ.js +0 -59
- package/dist/chunks/server-ZSC5G3TU.js +0 -61
- /package/dist/chunks/{Doctor-AES5ON33.js.map → Doctor-TWRIVOVW.js.map} +0 -0
- /package/dist/chunks/{LogList-PQJEJHHE.js.map → LogList-PUTPM24L.js.map} +0 -0
- /package/dist/chunks/{REPL-KD7YOSI5.js.map → REPL-YGIR5VXC.js.map} +0 -0
- /package/dist/chunks/{ResumeConversation-OWQ3DB4M.js.map → ResumeConversation-IJMKQXBU.js.map} +0 -0
- /package/dist/chunks/{ScreenFrame-AGLR6B4D.js.map → ScreenFrame-PQJRZ5DQ.js.map} +0 -0
- /package/dist/chunks/{agentLoader-BMWB4UKI.js.map → agentLoader-GOYNJTAO.js.map} +0 -0
- /package/dist/chunks/{agentsValidate-LSMJSFYW.js.map → agentsValidate-R26AKPAA.js.map} +0 -0
- /package/dist/chunks/{ask-3TSZR6AJ.js.map → ask-6SYVJONJ.js.map} +0 -0
- /package/dist/chunks/{autoUpdater-MEPC7LJF.js.map → autoUpdater-SDLJ5QSH.js.map} +0 -0
- /package/dist/chunks/{chunk-NC3RX5AB.js.map → chunk-2B2TR2S3.js.map} +0 -0
- /package/dist/chunks/{chunk-HDEYMVIJ.js.map → chunk-437YGKVA.js.map} +0 -0
- /package/dist/chunks/{chunk-WGMKKKS2.js.map → chunk-4BBWDSDC.js.map} +0 -0
- /package/dist/chunks/{chunk-PMC3BZ3M.js.map → chunk-5HZWM4JB.js.map} +0 -0
- /package/dist/chunks/{chunk-REQTXUXO.js.map → chunk-5LBRVQT5.js.map} +0 -0
- /package/dist/chunks/{chunk-BEDQTC44.js.map → chunk-5LL33G6X.js.map} +0 -0
- /package/dist/chunks/{chunk-MDCOIZVX.js.map → chunk-6C6VNA2D.js.map} +0 -0
- /package/dist/chunks/{chunk-P77NF36M.js.map → chunk-6CAQXUDY.js.map} +0 -0
- /package/dist/chunks/{chunk-DPQE5NA4.js.map → chunk-7SRIFZDJ.js.map} +0 -0
- /package/dist/chunks/{chunk-TI2CTTMA.js.map → chunk-7ZC22R33.js.map} +0 -0
- /package/dist/chunks/{chunk-EV56PDOI.js.map → chunk-AX3VXMUS.js.map} +0 -0
- /package/dist/chunks/{chunk-5MVUCX6O.js.map → chunk-AZHJLRRP.js.map} +0 -0
- /package/dist/chunks/{chunk-QBW7VU7C.js.map → chunk-DWKF6SQH.js.map} +0 -0
- /package/dist/chunks/{chunk-VSKGDU73.js.map → chunk-FKWFR23G.js.map} +0 -0
- /package/dist/chunks/{chunk-E6BU32L2.js.map → chunk-H5F7M5D3.js.map} +0 -0
- /package/dist/chunks/{chunk-DZPD6H7A.js.map → chunk-JXYXMP2Q.js.map} +0 -0
- /package/dist/chunks/{chunk-65FLXXMH.js.map → chunk-KA543BHH.js.map} +0 -0
- /package/dist/chunks/{chunk-MEQ7TAT7.js.map → chunk-KHMXPPO7.js.map} +0 -0
- /package/dist/chunks/{chunk-G5ET7GFB.js.map → chunk-KQV5FGSS.js.map} +0 -0
- /package/dist/chunks/{chunk-DPVCHIF7.js.map → chunk-KRBZO255.js.map} +0 -0
- /package/dist/chunks/{chunk-EKXQ7ZWV.js.map → chunk-L5ZJIOEF.js.map} +0 -0
- /package/dist/chunks/{chunk-UUJN5ZCN.js.map → chunk-LBHVWSUP.js.map} +0 -0
- /package/dist/chunks/{chunk-GL6HUBBX.js.map → chunk-LKDMUCWA.js.map} +0 -0
- /package/dist/chunks/{chunk-HJCYE2AS.js.map → chunk-LUZMHHQF.js.map} +0 -0
- /package/dist/chunks/{chunk-MXFN7OSL.js.map → chunk-MOGUUWKG.js.map} +0 -0
- /package/dist/chunks/{chunk-4UDKRYWZ.js.map → chunk-N4772IDQ.js.map} +0 -0
- /package/dist/chunks/{chunk-JJ67KF6A.js.map → chunk-PTIAF6KF.js.map} +0 -0
- /package/dist/chunks/{chunk-YUJB4WDK.js.map → chunk-PVMCLI36.js.map} +0 -0
- /package/dist/chunks/{chunk-3TLVYEGW.js.map → chunk-RTGKCKD3.js.map} +0 -0
- /package/dist/chunks/{chunk-3DBNJOZI.js.map → chunk-SUNG5KP5.js.map} +0 -0
- /package/dist/chunks/{chunk-Q55CB4Y4.js.map → chunk-WE7CQGRG.js.map} +0 -0
- /package/dist/chunks/{chunk-DELUVYKS.js.map → chunk-XVNEJVZC.js.map} +0 -0
- /package/dist/chunks/{chunk-KDY7XYYS.js.map → chunk-YQ3YJSMI.js.map} +0 -0
- /package/dist/chunks/{chunk-6CNJ3CYQ.js.map → chunk-YUZBVKVH.js.map} +0 -0
- /package/dist/chunks/{chunk-VJ2QSQ3E.js.map → chunk-ZXOTOID7.js.map} +0 -0
- /package/dist/chunks/{client-OWTJ7TPE.js.map → client-QUCHWMEW.js.map} +0 -0
- /package/dist/chunks/{customCommands-FA6HRXXV.js.map → customCommands-S6YGRUED.js.map} +0 -0
- /package/dist/chunks/{engine-UBCAVO7E.js.map → engine-FRDEQVDF.js.map} +0 -0
- /package/dist/chunks/{env-JIMGBRE2.js.map → env-YH77MILU.js.map} +0 -0
- /package/dist/chunks/{kodeAgentSessionLoad-BZRTCPMB.js.map → kodeAgentSessionLoad-TBPU4TWU.js.map} +0 -0
- /package/dist/chunks/{kodeAgentSessionResume-V3WB3OWQ.js.map → kodeAgentSessionResume-3CNE5T6N.js.map} +0 -0
- /package/dist/chunks/{kodeHooks-R3YHG4ZI.js.map → kodeHooks-6SWQE5W7.js.map} +0 -0
- /package/dist/chunks/{llmLazy-IBED5LIH.js.map → llmLazy-O4T62IIT.js.map} +0 -0
- /package/dist/chunks/{mcpCli-A744Z3FL.js.map → mcpCli-HIA4I4GG.js.map} +0 -0
- /package/dist/chunks/{mentionProcessor-VV6DN2LJ.js.map → mentionProcessor-HH4EF7BE.js.map} +0 -0
- /package/dist/chunks/{messages-ZR64JVON.js.map → messages-WKWCZBGM.js.map} +0 -0
- /package/dist/chunks/{model-NPMMYL2U.js.map → model-4EIFU5QN.js.map} +0 -0
- /package/dist/chunks/{openai-FEBNBOGM.js.map → openai-KTBJ2KNZ.js.map} +0 -0
- /package/dist/chunks/{permissions-34CRWMCH.js.map → permissions-C3N4DKS2.js.map} +0 -0
- /package/dist/chunks/{pluginRuntime-7YBUMVFI.js.map → pluginRuntime-2FKZLVA5.js.map} +0 -0
- /package/dist/chunks/{pluginValidation-NZ4LOT3Q.js.map → pluginValidation-X5NZZCFA.js.map} +0 -0
- /package/dist/chunks/{registry-FHPZ36EO.js.map → registry-3UVW32YF.js.map} +0 -0
- /package/dist/chunks/{responsesStreaming-JNGE2P3D.js.map → responsesStreaming-LB4THIUM.js.map} +0 -0
- /package/dist/chunks/{ripgrep-KGHLK4RO.js.map → ripgrep-N7O6M4IE.js.map} +0 -0
- /package/dist/chunks/{runNonTextPrintMode-U3TKEYYN.js.map → runNonTextPrintMode-YFWCUTWZ.js.map} +0 -0
- /package/dist/chunks/{server-Y42VR6YJ.js.map → server-3CICV7EL.js.map} +0 -0
- /package/dist/chunks/{server-ZSC5G3TU.js.map → server-FRP7OT4H.js.map} +0 -0
- /package/dist/chunks/{skillMarketplace-PPPUBC4N.js.map → skillMarketplace-4Y2H4JFK.js.map} +0 -0
- /package/dist/chunks/{src-TVS6YABL.js.map → src-IETAWKYR.js.map} +0 -0
- /package/dist/chunks/{src-QST7UD2A.js.map → src-OB2HE3RX.js.map} +0 -0
- /package/dist/chunks/{src-DB7GKD4L.js.map → src-Y2IM2VKU.js.map} +0 -0
- /package/dist/chunks/{thinking-O7LIIMFW.js.map → thinking-XG3FB4HO.js.map} +0 -0
- /package/dist/chunks/{toolPermissionContext-UWGATCUZ.js.map → toolPermissionContext-RFYFDINH.js.map} +0 -0
- /package/dist/chunks/{toolPermissionSettings-WD7CB37T.js.map → toolPermissionSettings-EEFURGBO.js.map} +0 -0
- /package/dist/chunks/{useScreenLayout-PKLCMNZD.js.map → useScreenLayout-OUGQRR4I.js.map} +0 -0
- /package/dist/chunks/{webOnlyMode-GJ6PQCPU.js.map → webOnlyMode-FRQBIAXG.js.map} +0 -0
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import {
|
|
2
2
|
loadToolPermissionContextFromDisk,
|
|
3
3
|
persistToolPermissionUpdateToDisk
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-LBHVWSUP.js";
|
|
5
5
|
import {
|
|
6
6
|
applyToolPermissionContextUpdate,
|
|
7
7
|
createDefaultToolPermissionContext
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-E4C4N7OV.js";
|
|
9
9
|
import {
|
|
10
10
|
debug
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-YQ3YJSMI.js";
|
|
12
12
|
import {
|
|
13
13
|
PRODUCT_NAME,
|
|
14
14
|
getKodeBaseDir,
|
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
getPlanFilePath,
|
|
17
17
|
isMainPlanFilePathForActiveConversation,
|
|
18
18
|
logError
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-SOBWNYOW.js";
|
|
20
20
|
import {
|
|
21
21
|
getCwd,
|
|
22
22
|
getOriginalCwd
|
|
@@ -54,8 +54,142 @@ var ConfigParseError = class extends Error {
|
|
|
54
54
|
}
|
|
55
55
|
};
|
|
56
56
|
|
|
57
|
+
// packages/core/src/types/PermissionMode.ts
|
|
58
|
+
function normalizePermissionMode(mode) {
|
|
59
|
+
return mode === "default" ? "cautious" : mode;
|
|
60
|
+
}
|
|
61
|
+
var MODE_CONFIGS = {
|
|
62
|
+
yolo: {
|
|
63
|
+
name: "yolo",
|
|
64
|
+
label: "YOLO",
|
|
65
|
+
icon: "",
|
|
66
|
+
color: "text",
|
|
67
|
+
description: "Auto-execute non-destructive, prompt for HIGH severity only",
|
|
68
|
+
allowedTools: ["*"],
|
|
69
|
+
restrictions: {
|
|
70
|
+
readOnly: false,
|
|
71
|
+
requireConfirmation: false,
|
|
72
|
+
bypassValidation: false
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
cautious: {
|
|
76
|
+
name: "cautious",
|
|
77
|
+
label: "Ask",
|
|
78
|
+
icon: "??",
|
|
79
|
+
color: "blue",
|
|
80
|
+
description: "Requires confirmation for all tool uses",
|
|
81
|
+
allowedTools: ["*"],
|
|
82
|
+
restrictions: {
|
|
83
|
+
readOnly: false,
|
|
84
|
+
requireConfirmation: true,
|
|
85
|
+
bypassValidation: false
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
default: {
|
|
89
|
+
name: "default",
|
|
90
|
+
label: "Ask",
|
|
91
|
+
icon: "??",
|
|
92
|
+
color: "blue",
|
|
93
|
+
description: "Legacy alias for cautious",
|
|
94
|
+
allowedTools: ["*"],
|
|
95
|
+
restrictions: {
|
|
96
|
+
readOnly: false,
|
|
97
|
+
requireConfirmation: true,
|
|
98
|
+
bypassValidation: false
|
|
99
|
+
}
|
|
100
|
+
},
|
|
101
|
+
acceptEdits: {
|
|
102
|
+
name: "acceptEdits",
|
|
103
|
+
label: "Accept Edits",
|
|
104
|
+
icon: ">>",
|
|
105
|
+
color: "green",
|
|
106
|
+
description: "Auto-approve edit operations",
|
|
107
|
+
allowedTools: ["*"],
|
|
108
|
+
restrictions: {
|
|
109
|
+
readOnly: false,
|
|
110
|
+
requireConfirmation: false,
|
|
111
|
+
bypassValidation: false
|
|
112
|
+
}
|
|
113
|
+
},
|
|
114
|
+
plan: {
|
|
115
|
+
name: "plan",
|
|
116
|
+
label: "Plan",
|
|
117
|
+
icon: "||",
|
|
118
|
+
color: "yellow",
|
|
119
|
+
description: "Research and planning - read-only tools only",
|
|
120
|
+
allowedTools: [
|
|
121
|
+
"Read",
|
|
122
|
+
"Grep",
|
|
123
|
+
"Glob",
|
|
124
|
+
"WebSearch",
|
|
125
|
+
"WebFetch",
|
|
126
|
+
"AskUserQuestion",
|
|
127
|
+
"TodoWrite",
|
|
128
|
+
"Write",
|
|
129
|
+
"Edit",
|
|
130
|
+
"ExitPlanMode",
|
|
131
|
+
"KillShell",
|
|
132
|
+
"TaskOutput",
|
|
133
|
+
"ListMcpResourcesTool",
|
|
134
|
+
"ReadMcpResourceTool",
|
|
135
|
+
"mcp"
|
|
136
|
+
],
|
|
137
|
+
restrictions: {
|
|
138
|
+
readOnly: true,
|
|
139
|
+
requireConfirmation: true,
|
|
140
|
+
bypassValidation: false
|
|
141
|
+
}
|
|
142
|
+
},
|
|
143
|
+
bypassPermissions: {
|
|
144
|
+
name: "bypassPermissions",
|
|
145
|
+
label: "Bypass",
|
|
146
|
+
icon: "\u{1F680}",
|
|
147
|
+
color: "red",
|
|
148
|
+
description: "All permissions bypassed",
|
|
149
|
+
allowedTools: ["*"],
|
|
150
|
+
restrictions: {
|
|
151
|
+
readOnly: false,
|
|
152
|
+
requireConfirmation: false,
|
|
153
|
+
bypassValidation: true
|
|
154
|
+
}
|
|
155
|
+
},
|
|
156
|
+
dontAsk: {
|
|
157
|
+
name: "dontAsk",
|
|
158
|
+
label: "Don't Ask",
|
|
159
|
+
icon: "X",
|
|
160
|
+
color: "red",
|
|
161
|
+
description: "Auto-deny permission prompts",
|
|
162
|
+
allowedTools: ["*"],
|
|
163
|
+
restrictions: {
|
|
164
|
+
readOnly: false,
|
|
165
|
+
requireConfirmation: true,
|
|
166
|
+
bypassValidation: false
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
};
|
|
170
|
+
function getNextPermissionMode(currentMode, isBypassAvailable = true) {
|
|
171
|
+
const normalized = normalizePermissionMode(currentMode);
|
|
172
|
+
switch (normalized) {
|
|
173
|
+
case "yolo":
|
|
174
|
+
return "plan";
|
|
175
|
+
case "plan":
|
|
176
|
+
return "acceptEdits";
|
|
177
|
+
case "acceptEdits":
|
|
178
|
+
return "cautious";
|
|
179
|
+
case "cautious":
|
|
180
|
+
return isBypassAvailable ? "bypassPermissions" : "yolo";
|
|
181
|
+
case "bypassPermissions":
|
|
182
|
+
return "yolo";
|
|
183
|
+
case "dontAsk":
|
|
184
|
+
return "yolo";
|
|
185
|
+
default:
|
|
186
|
+
return "yolo";
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
|
|
57
190
|
// packages/core/src/utils/permissionModeState.ts
|
|
58
191
|
var DEFAULT_CONVERSATION_KEY = "default";
|
|
192
|
+
var ACTUAL_DEFAULT_MODE = "yolo";
|
|
59
193
|
var permissionModeByConversationKey = /* @__PURE__ */ new Map();
|
|
60
194
|
function getConversationKey(context) {
|
|
61
195
|
const messageLogName = context?.options?.messageLogName ?? DEFAULT_CONVERSATION_KEY;
|
|
@@ -65,34 +199,37 @@ function getConversationKey(context) {
|
|
|
65
199
|
function getPermissionModeForConversationKey(options) {
|
|
66
200
|
const existing = permissionModeByConversationKey.get(options.conversationKey);
|
|
67
201
|
if (existing) {
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
202
|
+
const normalized = normalizePermissionMode(existing);
|
|
203
|
+
if (normalized === "bypassPermissions" && !options.isBypassPermissionsModeAvailable) {
|
|
204
|
+
permissionModeByConversationKey.set(options.conversationKey, ACTUAL_DEFAULT_MODE);
|
|
205
|
+
return ACTUAL_DEFAULT_MODE;
|
|
71
206
|
}
|
|
72
|
-
return
|
|
207
|
+
return normalized;
|
|
73
208
|
}
|
|
74
|
-
permissionModeByConversationKey.set(options.conversationKey,
|
|
75
|
-
return
|
|
209
|
+
permissionModeByConversationKey.set(options.conversationKey, ACTUAL_DEFAULT_MODE);
|
|
210
|
+
return ACTUAL_DEFAULT_MODE;
|
|
76
211
|
}
|
|
77
212
|
function setPermissionModeForConversationKey(options) {
|
|
78
|
-
permissionModeByConversationKey.set(options.conversationKey, options.mode);
|
|
213
|
+
permissionModeByConversationKey.set(options.conversationKey, normalizePermissionMode(options.mode));
|
|
79
214
|
}
|
|
80
215
|
function getPermissionMode(context) {
|
|
81
216
|
const conversationKey = getConversationKey(context);
|
|
82
217
|
const safeMode = context?.options?.safeMode ?? false;
|
|
83
218
|
const fromToolPermissionContext = context?.options?.toolPermissionContext?.mode;
|
|
84
|
-
if (fromToolPermissionContext
|
|
85
|
-
|
|
86
|
-
|
|
219
|
+
if (fromToolPermissionContext) {
|
|
220
|
+
const normalized = normalizePermissionMode(fromToolPermissionContext);
|
|
221
|
+
if (normalized === "bypassPermissions" && safeMode) {
|
|
222
|
+
return ACTUAL_DEFAULT_MODE;
|
|
87
223
|
}
|
|
88
|
-
return
|
|
224
|
+
return normalized;
|
|
89
225
|
}
|
|
90
226
|
const override = context?.options?.permissionMode;
|
|
91
|
-
if (override
|
|
92
|
-
|
|
93
|
-
|
|
227
|
+
if (override) {
|
|
228
|
+
const normalized = normalizePermissionMode(override);
|
|
229
|
+
if (normalized === "bypassPermissions" && safeMode) {
|
|
230
|
+
return ACTUAL_DEFAULT_MODE;
|
|
94
231
|
}
|
|
95
|
-
return
|
|
232
|
+
return normalized;
|
|
96
233
|
}
|
|
97
234
|
return getPermissionModeForConversationKey({
|
|
98
235
|
conversationKey,
|
|
@@ -101,7 +238,7 @@ function getPermissionMode(context) {
|
|
|
101
238
|
}
|
|
102
239
|
function setPermissionMode(context, mode) {
|
|
103
240
|
const conversationKey = getConversationKey(context);
|
|
104
|
-
permissionModeByConversationKey.set(conversationKey, mode);
|
|
241
|
+
permissionModeByConversationKey.set(conversationKey, normalizePermissionMode(mode));
|
|
105
242
|
}
|
|
106
243
|
|
|
107
244
|
// packages/core/src/permissions/fileToolPermissionEngine/paths.ts
|
|
@@ -3478,7 +3615,7 @@ var getCommandSubcommandPrefix = memoize(
|
|
|
3478
3615
|
var getCommandPrefix = memoize(
|
|
3479
3616
|
async (command, abortSignal) => {
|
|
3480
3617
|
const { systemPrompt, userPrompt } = buildBashCommandPrefixDetectionPrompt(command);
|
|
3481
|
-
const { API_ERROR_MESSAGE_PREFIX, queryQuick } = await import("./llm-
|
|
3618
|
+
const { API_ERROR_MESSAGE_PREFIX, queryQuick } = await import("./llm-PONI6QWH.js");
|
|
3482
3619
|
const response = await queryQuick({
|
|
3483
3620
|
systemPrompt,
|
|
3484
3621
|
userPrompt,
|
|
@@ -4395,8 +4532,10 @@ function flattenPermissionRuleGroups(groups) {
|
|
|
4395
4532
|
return out;
|
|
4396
4533
|
}
|
|
4397
4534
|
var hasPermissionsToUseTool = async (tool, input, context, assistantMessage) => {
|
|
4398
|
-
const
|
|
4535
|
+
const rawPermissionMode = getPermissionMode(context);
|
|
4536
|
+
const permissionMode = normalizePermissionMode(rawPermissionMode);
|
|
4399
4537
|
const isDontAskMode = permissionMode === "dontAsk";
|
|
4538
|
+
const isYoloMode = permissionMode === "yolo";
|
|
4400
4539
|
const shouldAvoidPermissionPrompts = context.options?.shouldAvoidPermissionPrompts === true;
|
|
4401
4540
|
const safeMode = Boolean(context.options?.safeMode ?? context.safeMode);
|
|
4402
4541
|
const requiresUserInteraction = tool.requiresUserInteraction?.(input) ?? false;
|
|
@@ -4599,6 +4738,9 @@ var hasPermissionsToUseTool = async (tool, input, context, assistantMessage) =>
|
|
|
4599
4738
|
if (shouldAvoidPermissionPrompts && permissionResult.result === false && permissionResult.shouldPromptUser !== false) {
|
|
4600
4739
|
return promptsUnavailableDenied;
|
|
4601
4740
|
}
|
|
4741
|
+
if (isYoloMode && !requiresUserInteraction && permissionResult.result === false && permissionResult.shouldPromptUser !== false) {
|
|
4742
|
+
return { result: true };
|
|
4743
|
+
}
|
|
4602
4744
|
return permissionResult;
|
|
4603
4745
|
};
|
|
4604
4746
|
|
|
@@ -4703,7 +4845,7 @@ function getToolPermissionContextForConversationKey(options) {
|
|
|
4703
4845
|
};
|
|
4704
4846
|
}
|
|
4705
4847
|
if (!options.isBypassPermissionsModeAvailable && next.mode === "bypassPermissions") {
|
|
4706
|
-
next = { ...next, mode: "
|
|
4848
|
+
next = { ...next, mode: "yolo" };
|
|
4707
4849
|
}
|
|
4708
4850
|
if (next !== existing) {
|
|
4709
4851
|
toolPermissionContextByConversationKey.set(options.conversationKey, next);
|
|
@@ -5003,6 +5145,9 @@ export {
|
|
|
5003
5145
|
splitBashCommandIntoSubcommands,
|
|
5004
5146
|
isPathInWorkingDirectories,
|
|
5005
5147
|
xi,
|
|
5148
|
+
normalizePermissionMode,
|
|
5149
|
+
MODE_CONFIGS,
|
|
5150
|
+
getNextPermissionMode,
|
|
5006
5151
|
setPermissionModeForConversationKey,
|
|
5007
5152
|
getPermissionMode,
|
|
5008
5153
|
setPermissionMode,
|