pybao-cli 1.5.43 → 1.5.45
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/REPL-FPYYTXYI.js +53 -0
- package/dist/{acp-LVHAM3WT.js → acp-Y3YRP7PX.js} +32 -30
- package/dist/{acp-LVHAM3WT.js.map → acp-Y3YRP7PX.js.map} +1 -1
- package/dist/{agentsValidate-BIL7UNX5.js → agentsValidate-LYQDYON6.js} +7 -7
- package/dist/{ask-QYJE6B5E.js → ask-BH7SPGEV.js} +32 -30
- package/dist/{ask-QYJE6B5E.js.map → ask-BH7SPGEV.js.map} +1 -1
- package/dist/{autoUpdater-LAJDPNSA.js → autoUpdater-WQ7NSMS6.js} +3 -3
- package/dist/{chunk-IMTSYQJ5.js → chunk-2CFC3PYO.js} +1 -1
- package/dist/chunk-2RXKUCFS.js +56 -0
- package/dist/chunk-2RXKUCFS.js.map +7 -0
- package/dist/{chunk-BY5NKQMC.js → chunk-3V35SGQ7.js} +1 -1
- package/dist/{chunk-6CJP4KDE.js → chunk-6TJCSOV3.js} +3 -3
- package/dist/{chunk-O5YZTB5G.js → chunk-7BDU4UKY.js} +1 -1
- package/dist/{chunk-UL4MJNFE.js → chunk-7XHORF4S.js} +1 -1
- package/dist/{chunk-2TSFRYBQ.js → chunk-A3E3KOP5.js} +8 -5
- package/dist/{chunk-2TSFRYBQ.js.map → chunk-A3E3KOP5.js.map} +2 -2
- package/dist/{chunk-XRYS53BQ.js → chunk-B4DLSHE7.js} +3 -3
- package/dist/{chunk-HL57BCKA.js → chunk-BGT7XDPE.js} +3 -3
- package/dist/{chunk-5HEO7RAF.js → chunk-BIRC5MFX.js} +1 -1
- package/dist/{chunk-3PDQTTHC.js → chunk-F6A7OSLF.js} +3 -3
- package/dist/{chunk-QWWHPWOT.js → chunk-FDU3LJPV.js} +3 -3
- package/dist/{chunk-2QGZFE6O.js → chunk-FGYA5FY5.js} +2 -2
- package/dist/{chunk-2XIK7WIG.js → chunk-FS2I7CEG.js} +4 -4
- package/dist/{chunk-GC32L3BW.js → chunk-FSHVF7L6.js} +1 -1
- package/dist/{chunk-MES7PKDS.js → chunk-FZDJSTSK.js} +3 -3
- package/dist/{chunk-3CEAIULU.js → chunk-G57Q2LMI.js} +4 -4
- package/dist/{chunk-WFZABDD5.js → chunk-HFEWWAXY.js} +1 -1
- package/dist/{chunk-FROHRXK3.js → chunk-HPEY66LP.js} +3 -3
- package/dist/{chunk-UGK22Z7U.js → chunk-HPLKXHZG.js} +4 -4
- package/dist/{chunk-AY6XGM2V.js → chunk-ILSNA4QO.js} +1 -1
- package/dist/{chunk-YQZ36RXO.js → chunk-K4GZU7WR.js} +3 -3
- package/dist/{chunk-ODMS5WD2.js → chunk-LFTLSBFK.js} +2 -2
- package/dist/{chunk-4WBXCBNQ.js → chunk-LO7D5L6Q.js} +2 -2
- package/dist/{chunk-P576YHXH.js → chunk-PZ3WTDXV.js} +2 -2
- package/dist/{chunk-64D4RTUL.js → chunk-QYZADXNT.js} +2 -2
- package/dist/{chunk-WGO4I32J.js → chunk-RHUSN5MT.js} +5 -14
- package/dist/chunk-RHUSN5MT.js.map +7 -0
- package/dist/{chunk-2UVNJF72.js → chunk-SD2KLYSK.js} +162 -57
- package/dist/{chunk-2UVNJF72.js.map → chunk-SD2KLYSK.js.map} +3 -3
- package/dist/{chunk-XRJ6MMNI.js → chunk-SRWWGIOO.js} +2 -2
- package/dist/{chunk-R473IZUI.js → chunk-T2V55G3O.js} +2 -1
- package/dist/chunk-T2V55G3O.js.map +7 -0
- package/dist/chunk-TFHFYID3.js +18 -0
- package/dist/chunk-TFHFYID3.js.map +7 -0
- package/dist/{chunk-UV4CROSJ.js → chunk-VHDLVHEI.js} +1 -1
- package/dist/{chunk-N22YCAOH.js → chunk-ZJJR2GKA.js} +1 -1
- package/dist/{cli-EMF2LNWT.js → cli-SPB5RXN4.js} +92 -90
- package/dist/{cli-EMF2LNWT.js.map → cli-SPB5RXN4.js.map} +1 -1
- package/dist/commands-SWWMSOJY.js +57 -0
- package/dist/{config-QWOKTE4Z.js → config-BMWR2IR4.js} +4 -4
- package/dist/{context-CR4OHAW3.js → context-SNWJ6H3N.js} +6 -6
- package/dist/{conversationPersistence-2ZTLQGE5.js → conversationPersistence-L6KNQU6J.js} +3 -3
- package/dist/{conversationTracker-DTMFBXF2.js → conversationTracker-LE56DVAC.js} +4 -4
- package/dist/{customCommands-X2WOVBVA.js → customCommands-4X76E7O3.js} +4 -4
- package/dist/{env-LL3E6GKF.js → env-FP3P46RT.js} +2 -2
- package/dist/{file-A757K2PX.js → file-KV52REUC.js} +4 -4
- package/dist/index.js +3 -3
- package/dist/{llm-UC6Z6IP4.js → llm-OTA3UYTD.js} +35 -32
- package/dist/{llm-UC6Z6IP4.js.map → llm-OTA3UYTD.js.map} +1 -1
- package/dist/{llmLazy-EG3IM7LV.js → llmLazy-6C5RDNID.js} +1 -1
- package/dist/{loader-6I2QGDJO.js → loader-OQK52QDI.js} +4 -4
- package/dist/{lsp-UZCTF63W.js → lsp-EIMYRWRU.js} +6 -6
- package/dist/{lspAnchor-FPVASO3V.js → lspAnchor-5TJ5JKEJ.js} +20 -6
- package/dist/lspAnchor-5TJ5JKEJ.js.map +7 -0
- package/dist/{mcp-WQJDBKMI.js → mcp-ESHTAOQ2.js} +7 -7
- package/dist/{mentionProcessor-ENFGCIDA.js → mentionProcessor-SVY2HFAN.js} +5 -5
- package/dist/{messages-OY5FPDQM.js → messages-WTIERLAV.js} +2 -1
- package/dist/{model-TNO4KLC5.js → model-XIQ6J7WO.js} +5 -5
- package/dist/{openai-CMZMQBHT.js → openai-MHDKXTKR.js} +5 -5
- package/dist/{outputStyles-JGXWSFHW.js → outputStyles-AOELRVFL.js} +4 -4
- package/dist/{pluginRuntime-G3GOMV5D.js → pluginRuntime-3CCOPRUZ.js} +6 -6
- package/dist/{pluginValidation-H6YPRL33.js → pluginValidation-L3NUKGCQ.js} +6 -6
- package/dist/prompts-LCARBCSA.js +59 -0
- package/dist/{pybAgentSessionLoad-CKBQWEHL.js → pybAgentSessionLoad-DS67RJAJ.js} +4 -4
- package/dist/{pybAgentSessionResume-5JHOPPQ4.js → pybAgentSessionResume-UGQCQVNW.js} +4 -4
- package/dist/{pybAgentStreamJsonSession-KWVXQUVD.js → pybAgentStreamJsonSession-YFYCFTMO.js} +2 -1
- package/dist/{pybAgentStreamJsonSession-KWVXQUVD.js.map → pybAgentStreamJsonSession-YFYCFTMO.js.map} +1 -1
- package/dist/{pybHooks-GGKEH2FR.js → pybHooks-XUN2UYB2.js} +4 -4
- package/dist/query-63DINS6E.js +57 -0
- package/dist/{registry-GQQQTCFQ.js → registry-XAPOPN44.js} +5 -5
- package/dist/{ripgrep-AVZW7VVL.js → ripgrep-DQDBRTBS.js} +3 -3
- package/dist/{skillMarketplace-D2A5XXKV.js → skillMarketplace-SUMGVSYS.js} +3 -3
- package/dist/{state-RTSSAAIG.js → state-QUWQKTQZ.js} +2 -2
- package/dist/{theme-V4OGMWPI.js → theme-GZSN2BNR.js} +5 -5
- package/dist/{toolPermissionSettings-6VJOURZH.js → toolPermissionSettings-G5JQX7I2.js} +6 -6
- package/dist/tools-PPRXMRLD.js +57 -0
- package/dist/{userInput-EMH7S76R.js → userInput-PKPNFQMN.js} +34 -32
- package/dist/{userInput-EMH7S76R.js.map → userInput-PKPNFQMN.js.map} +1 -1
- package/package.json +2 -1
- package/dist/REPL-DB574DFH.js +0 -51
- package/dist/chunk-R473IZUI.js.map +0 -7
- package/dist/chunk-WGO4I32J.js.map +0 -7
- package/dist/commands-H755ZYPB.js +0 -55
- package/dist/lspAnchor-FPVASO3V.js.map +0 -7
- package/dist/prompts-DOBVYFHP.js +0 -57
- package/dist/query-B5JGYOT4.js +0 -55
- package/dist/tools-P4FXYKF4.js +0 -55
- /package/dist/{REPL-DB574DFH.js.map → REPL-FPYYTXYI.js.map} +0 -0
- /package/dist/{agentsValidate-BIL7UNX5.js.map → agentsValidate-LYQDYON6.js.map} +0 -0
- /package/dist/{autoUpdater-LAJDPNSA.js.map → autoUpdater-WQ7NSMS6.js.map} +0 -0
- /package/dist/{chunk-IMTSYQJ5.js.map → chunk-2CFC3PYO.js.map} +0 -0
- /package/dist/{chunk-BY5NKQMC.js.map → chunk-3V35SGQ7.js.map} +0 -0
- /package/dist/{chunk-6CJP4KDE.js.map → chunk-6TJCSOV3.js.map} +0 -0
- /package/dist/{chunk-O5YZTB5G.js.map → chunk-7BDU4UKY.js.map} +0 -0
- /package/dist/{chunk-UL4MJNFE.js.map → chunk-7XHORF4S.js.map} +0 -0
- /package/dist/{chunk-XRYS53BQ.js.map → chunk-B4DLSHE7.js.map} +0 -0
- /package/dist/{chunk-HL57BCKA.js.map → chunk-BGT7XDPE.js.map} +0 -0
- /package/dist/{chunk-5HEO7RAF.js.map → chunk-BIRC5MFX.js.map} +0 -0
- /package/dist/{chunk-3PDQTTHC.js.map → chunk-F6A7OSLF.js.map} +0 -0
- /package/dist/{chunk-QWWHPWOT.js.map → chunk-FDU3LJPV.js.map} +0 -0
- /package/dist/{chunk-2QGZFE6O.js.map → chunk-FGYA5FY5.js.map} +0 -0
- /package/dist/{chunk-2XIK7WIG.js.map → chunk-FS2I7CEG.js.map} +0 -0
- /package/dist/{chunk-GC32L3BW.js.map → chunk-FSHVF7L6.js.map} +0 -0
- /package/dist/{chunk-MES7PKDS.js.map → chunk-FZDJSTSK.js.map} +0 -0
- /package/dist/{chunk-3CEAIULU.js.map → chunk-G57Q2LMI.js.map} +0 -0
- /package/dist/{chunk-WFZABDD5.js.map → chunk-HFEWWAXY.js.map} +0 -0
- /package/dist/{chunk-FROHRXK3.js.map → chunk-HPEY66LP.js.map} +0 -0
- /package/dist/{chunk-UGK22Z7U.js.map → chunk-HPLKXHZG.js.map} +0 -0
- /package/dist/{chunk-AY6XGM2V.js.map → chunk-ILSNA4QO.js.map} +0 -0
- /package/dist/{chunk-YQZ36RXO.js.map → chunk-K4GZU7WR.js.map} +0 -0
- /package/dist/{chunk-ODMS5WD2.js.map → chunk-LFTLSBFK.js.map} +0 -0
- /package/dist/{chunk-4WBXCBNQ.js.map → chunk-LO7D5L6Q.js.map} +0 -0
- /package/dist/{chunk-P576YHXH.js.map → chunk-PZ3WTDXV.js.map} +0 -0
- /package/dist/{chunk-64D4RTUL.js.map → chunk-QYZADXNT.js.map} +0 -0
- /package/dist/{chunk-XRJ6MMNI.js.map → chunk-SRWWGIOO.js.map} +0 -0
- /package/dist/{chunk-UV4CROSJ.js.map → chunk-VHDLVHEI.js.map} +0 -0
- /package/dist/{chunk-N22YCAOH.js.map → chunk-ZJJR2GKA.js.map} +0 -0
- /package/dist/{commands-H755ZYPB.js.map → commands-SWWMSOJY.js.map} +0 -0
- /package/dist/{config-QWOKTE4Z.js.map → config-BMWR2IR4.js.map} +0 -0
- /package/dist/{context-CR4OHAW3.js.map → context-SNWJ6H3N.js.map} +0 -0
- /package/dist/{conversationPersistence-2ZTLQGE5.js.map → conversationPersistence-L6KNQU6J.js.map} +0 -0
- /package/dist/{conversationTracker-DTMFBXF2.js.map → conversationTracker-LE56DVAC.js.map} +0 -0
- /package/dist/{customCommands-X2WOVBVA.js.map → customCommands-4X76E7O3.js.map} +0 -0
- /package/dist/{env-LL3E6GKF.js.map → env-FP3P46RT.js.map} +0 -0
- /package/dist/{file-A757K2PX.js.map → file-KV52REUC.js.map} +0 -0
- /package/dist/{llmLazy-EG3IM7LV.js.map → llmLazy-6C5RDNID.js.map} +0 -0
- /package/dist/{loader-6I2QGDJO.js.map → loader-OQK52QDI.js.map} +0 -0
- /package/dist/{lsp-UZCTF63W.js.map → lsp-EIMYRWRU.js.map} +0 -0
- /package/dist/{mcp-WQJDBKMI.js.map → mcp-ESHTAOQ2.js.map} +0 -0
- /package/dist/{mentionProcessor-ENFGCIDA.js.map → mentionProcessor-SVY2HFAN.js.map} +0 -0
- /package/dist/{messages-OY5FPDQM.js.map → messages-WTIERLAV.js.map} +0 -0
- /package/dist/{model-TNO4KLC5.js.map → model-XIQ6J7WO.js.map} +0 -0
- /package/dist/{openai-CMZMQBHT.js.map → openai-MHDKXTKR.js.map} +0 -0
- /package/dist/{outputStyles-JGXWSFHW.js.map → outputStyles-AOELRVFL.js.map} +0 -0
- /package/dist/{pluginRuntime-G3GOMV5D.js.map → pluginRuntime-3CCOPRUZ.js.map} +0 -0
- /package/dist/{pluginValidation-H6YPRL33.js.map → pluginValidation-L3NUKGCQ.js.map} +0 -0
- /package/dist/{prompts-DOBVYFHP.js.map → prompts-LCARBCSA.js.map} +0 -0
- /package/dist/{pybAgentSessionLoad-CKBQWEHL.js.map → pybAgentSessionLoad-DS67RJAJ.js.map} +0 -0
- /package/dist/{pybAgentSessionResume-5JHOPPQ4.js.map → pybAgentSessionResume-UGQCQVNW.js.map} +0 -0
- /package/dist/{pybHooks-GGKEH2FR.js.map → pybHooks-XUN2UYB2.js.map} +0 -0
- /package/dist/{query-B5JGYOT4.js.map → query-63DINS6E.js.map} +0 -0
- /package/dist/{registry-GQQQTCFQ.js.map → registry-XAPOPN44.js.map} +0 -0
- /package/dist/{ripgrep-AVZW7VVL.js.map → ripgrep-DQDBRTBS.js.map} +0 -0
- /package/dist/{skillMarketplace-D2A5XXKV.js.map → skillMarketplace-SUMGVSYS.js.map} +0 -0
- /package/dist/{state-RTSSAAIG.js.map → state-QUWQKTQZ.js.map} +0 -0
- /package/dist/{theme-V4OGMWPI.js.map → theme-GZSN2BNR.js.map} +0 -0
- /package/dist/{toolPermissionSettings-6VJOURZH.js.map → toolPermissionSettings-G5JQX7I2.js.map} +0 -0
- /package/dist/{tools-P4FXYKF4.js.map → tools-PPRXMRLD.js.map} +0 -0
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/app/ask.ts"],
|
|
4
4
|
"sourcesContent": ["import { last } from 'lodash-es'\nimport { Command } from '@commands'\nimport { getSystemPrompt } from '@constants/prompts'\nimport { getContext } from '@context'\nimport { getTotalCost } from '@costTracker'\nimport { Message, query } from '@query'\nimport type { CanUseToolFn } from '@pyb-types/canUseTool'\nimport { Tool } from '@tool'\nimport { getModelManager } from '@utils/model'\nimport { setCwd } from '@utils/state'\nimport { getMessagesPath, overwriteLog } from '@utils/log'\nimport { createUserTurnMessageFromBlocks } from '@utils/messages'\nimport { ConversationTracker } from '@utils/session/conversationTracker'\nimport { FileSystemConversationPersistence } from '@utils/session/conversationPersistence'\nimport { beginReplSessionScope } from '@utils/session/replSessionBridge'\nimport { resolveXdgDataPath } from '@utils/config/env'\nimport { createConversationTrackerPersistenceTelemetryEmitter } from '@services/telemetry/conversationTrackerTelemetry'\nimport { join } from 'path'\n\ntype Props = {\n commands: Command[]\n safeMode?: boolean\n hasPermissionsToUseTool: CanUseToolFn\n messageLogName: string\n prompt: string\n cwd: string\n tools: Tool[]\n verbose?: boolean\n initialMessages?: Message[]\n persistSession?: boolean\n}\n\nfunction getProjectDirSlug(cwd: string): string {\n return cwd.replace(/[^a-zA-Z0-9]/g, '-')\n}\n\nfunction getConversationTrackerPersistenceDir(cwd: string): string {\n return resolveXdgDataPath(join(getProjectDirSlug(cwd), 'conversation-trackers'))\n}\n\nexport async function ask({\n commands,\n safeMode,\n hasPermissionsToUseTool,\n messageLogName,\n prompt,\n cwd,\n tools,\n verbose = false,\n initialMessages,\n persistSession = true,\n}: Props): Promise<{\n resultText: string\n totalCost: number\n messageHistoryFile: string\n}> {\n await setCwd(cwd)\n const trackerSessionId = `ask:${messageLogName}:0`\n const trackerPersistenceMode = 'required'\n const restoreSessionScope = beginReplSessionScope(trackerSessionId)\n const conversationTracker = new ConversationTracker({\n sessionId: trackerSessionId,\n persistence: new FileSystemConversationPersistence(\n getConversationTrackerPersistenceDir(cwd),\n ),\n persistenceMode: trackerPersistenceMode,\n onPersistenceEvent: createConversationTrackerPersistenceTelemetryEmitter('ask'),\n })\n conversationTracker.restore()\n const message = createUserTurnMessageFromBlocks([{ type: 'text', text: prompt }])\n const messages: Message[] = [...(initialMessages ?? []), message]\n\n const [systemPrompt, context, model] = await Promise.all([\n getSystemPrompt(),\n getContext(),\n getModelManager().getModelName('main'),\n ])\n\n try {\n for await (const m of query(\n messages,\n systemPrompt,\n context,\n hasPermissionsToUseTool,\n {\n options: {\n commands,\n tools,\n verbose,\n safeMode,\n forkNumber: 0,\n messageLogName: 'unused',\n maxThinkingTokens: 0,\n persistSession,\n },\n abortController: new AbortController(),\n messageId: undefined,\n readFileTimestamps: {},\n setToolJSX: () => {},\n conversationTracker,\n },\n )) {\n messages.push(m)\n }\n } finally {\n restoreSessionScope()\n }\n\n const result = last(messages)\n if (!result || result.type !== 'assistant') {\n throw new Error('Expected content to be an assistant message')\n }\n\n const textContent = result.message.content.find(c => c.type === 'text')\n if (!textContent) {\n throw new Error(\n `Expected at least one text content item, but got ${JSON.stringify(\n result.message.content,\n null,\n 2,\n )}`,\n )\n }\n\n const messageHistoryFile = getMessagesPath(messageLogName, 0, 0)\n overwriteLog(messageHistoryFile, messages)\n\n return {\n resultText: textContent.text,\n totalCost: getTotalCost(),\n messageHistoryFile,\n }\n}\n"],
|
|
5
|
-
"mappings": "
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAS,YAAY;AAiBrB,SAAS,YAAY;AAerB,SAAS,kBAAkB,KAAqB;AAC9C,SAAO,IAAI,QAAQ,iBAAiB,GAAG;AACzC;AAEA,SAAS,qCAAqC,KAAqB;AACjE,SAAO,mBAAmB,KAAK,kBAAkB,GAAG,GAAG,uBAAuB,CAAC;AACjF;AAEA,eAAsB,IAAI;AAAA,EACxB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU;AAAA,EACV;AAAA,EACA,iBAAiB;AACnB,GAIG;AACD,QAAM,OAAO,GAAG;AAChB,QAAM,mBAAmB,OAAO,cAAc;AAC9C,QAAM,yBAAyB;AAC/B,QAAM,sBAAsB,sBAAsB,gBAAgB;AAClE,QAAM,sBAAsB,IAAI,oBAAoB;AAAA,IAClD,WAAW;AAAA,IACX,aAAa,IAAI;AAAA,MACf,qCAAqC,GAAG;AAAA,IAC1C;AAAA,IACA,iBAAiB;AAAA,IACjB,oBAAoB,qDAAqD,KAAK;AAAA,EAChF,CAAC;AACD,sBAAoB,QAAQ;AAC5B,QAAM,UAAU,gCAAgC,CAAC,EAAE,MAAM,QAAQ,MAAM,OAAO,CAAC,CAAC;AAChF,QAAM,WAAsB,CAAC,GAAI,mBAAmB,CAAC,GAAI,OAAO;AAEhE,QAAM,CAAC,cAAc,SAAS,KAAK,IAAI,MAAM,QAAQ,IAAI;AAAA,IACvD,gBAAgB;AAAA,IAChB,WAAW;AAAA,IACX,gBAAgB,EAAE,aAAa,MAAM;AAAA,EACvC,CAAC;AAED,MAAI;AACF,qBAAiB,KAAK;AAAA,MACpB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,QACE,SAAS;AAAA,UACP;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA,YAAY;AAAA,UACZ,gBAAgB;AAAA,UAChB,mBAAmB;AAAA,UACnB;AAAA,QACF;AAAA,QACA,iBAAiB,IAAI,gBAAgB;AAAA,QACrC,WAAW;AAAA,QACX,oBAAoB,CAAC;AAAA,QACrB,YAAY,MAAM;AAAA,QAAC;AAAA,QACnB;AAAA,MACF;AAAA,IACF,GAAG;AACD,eAAS,KAAK,CAAC;AAAA,IACjB;AAAA,EACF,UAAE;AACA,wBAAoB;AAAA,EACtB;AAEA,QAAM,SAAS,KAAK,QAAQ;AAC5B,MAAI,CAAC,UAAU,OAAO,SAAS,aAAa;AAC1C,UAAM,IAAI,MAAM,6CAA6C;AAAA,EAC/D;AAEA,QAAM,cAAc,OAAO,QAAQ,QAAQ,KAAK,OAAK,EAAE,SAAS,MAAM;AACtE,MAAI,CAAC,aAAa;AAChB,UAAM,IAAI;AAAA,MACR,oDAAoD,KAAK;AAAA,QACvD,OAAO,QAAQ;AAAA,QACf;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EACF;AAEA,QAAM,qBAAqB,gBAAgB,gBAAgB,GAAG,CAAC;AAC/D,eAAa,oBAAoB,QAAQ;AAEzC,SAAO;AAAA,IACL,YAAY,YAAY;AAAA,IACxB,WAAW,aAAa;AAAA,IACxB;AAAA,EACF;AACF;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -5,9 +5,9 @@ import {
|
|
|
5
5
|
checkAndNotifyUpdate,
|
|
6
6
|
getLatestVersion,
|
|
7
7
|
getUpdateCommandSuggestions
|
|
8
|
-
} from "./chunk-
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-
|
|
8
|
+
} from "./chunk-FDU3LJPV.js";
|
|
9
|
+
import "./chunk-HFEWWAXY.js";
|
|
10
|
+
import "./chunk-T2V55G3O.js";
|
|
11
11
|
import "./chunk-I3J4JYES.js";
|
|
12
12
|
export {
|
|
13
13
|
assertMinVersion,
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { createRequire as __pybCreateRequire } from "node:module";
|
|
2
|
+
const require = __pybCreateRequire(import.meta.url);
|
|
3
|
+
|
|
4
|
+
// src/lsp/errorCodes.ts
|
|
5
|
+
var LSP_ERROR_CODES = {
|
|
6
|
+
LSP_UNAVAILABLE: {
|
|
7
|
+
category: "availability",
|
|
8
|
+
recoverable: true
|
|
9
|
+
},
|
|
10
|
+
LSP_TIMEOUT: {
|
|
11
|
+
category: "timeout",
|
|
12
|
+
recoverable: true
|
|
13
|
+
},
|
|
14
|
+
LSP_RUNTIME_ERROR: {
|
|
15
|
+
category: "runtime",
|
|
16
|
+
recoverable: true
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
// src/lsp/fallbackTelemetry.ts
|
|
21
|
+
function toMessage(error) {
|
|
22
|
+
return String(error instanceof Error ? error.message : error);
|
|
23
|
+
}
|
|
24
|
+
function classifyLspToolFallbackError(error) {
|
|
25
|
+
const message = toMessage(error).toLowerCase();
|
|
26
|
+
if (message.includes("no lsp server") || message.includes("lsp unavailable") || message.includes("unable to initialize lsp")) {
|
|
27
|
+
return "LSP_UNAVAILABLE";
|
|
28
|
+
}
|
|
29
|
+
if (message.includes("timeout")) {
|
|
30
|
+
return "LSP_TIMEOUT";
|
|
31
|
+
}
|
|
32
|
+
return "LSP_RUNTIME_ERROR";
|
|
33
|
+
}
|
|
34
|
+
function toLspToolFallbackEvent(input) {
|
|
35
|
+
const message = toMessage(input.error);
|
|
36
|
+
const code = classifyLspToolFallbackError(input.error);
|
|
37
|
+
const codeInfo = LSP_ERROR_CODES[code];
|
|
38
|
+
return {
|
|
39
|
+
channel: "lsp",
|
|
40
|
+
phase: "LSP_TOOL_FALLBACK",
|
|
41
|
+
timestamp: input.timestamp ?? Date.now(),
|
|
42
|
+
data: {
|
|
43
|
+
tool: input.tool,
|
|
44
|
+
operation: input.operation,
|
|
45
|
+
code,
|
|
46
|
+
category: codeInfo.category,
|
|
47
|
+
message,
|
|
48
|
+
recoverable: input.recoverable ?? codeInfo.recoverable,
|
|
49
|
+
...input.filePath ? { filePath: input.filePath } : {}
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export {
|
|
55
|
+
toLspToolFallbackEvent
|
|
56
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/lsp/errorCodes.ts", "../src/lsp/fallbackTelemetry.ts"],
|
|
4
|
+
"sourcesContent": ["export const LSP_ERROR_CODES = {\n LSP_UNAVAILABLE: {\n category: 'availability',\n recoverable: true,\n },\n LSP_TIMEOUT: {\n category: 'timeout',\n recoverable: true,\n },\n LSP_RUNTIME_ERROR: {\n category: 'runtime',\n recoverable: true,\n },\n} as const\n\nexport type LspErrorCode = keyof typeof LSP_ERROR_CODES\n\nexport function isKnownLspErrorCode(code: string): code is LspErrorCode {\n return Object.prototype.hasOwnProperty.call(LSP_ERROR_CODES, code)\n}\n\n", "import { LSP_ERROR_CODES, type LspErrorCode } from './errorCodes'\n\nfunction toMessage(error: unknown): string {\n return String(error instanceof Error ? error.message : error)\n}\n\nexport function classifyLspToolFallbackError(\n error: unknown,\n): LspErrorCode {\n const message = toMessage(error).toLowerCase()\n if (\n message.includes('no lsp server') ||\n message.includes('lsp unavailable') ||\n message.includes('unable to initialize lsp')\n ) {\n return 'LSP_UNAVAILABLE'\n }\n if (message.includes('timeout')) {\n return 'LSP_TIMEOUT'\n }\n return 'LSP_RUNTIME_ERROR'\n}\n\nexport function toLspToolFallbackEvent(input: {\n tool: 'FileEdit' | 'TaskOutput' | string\n operation: string\n error: unknown\n filePath?: string\n recoverable?: boolean\n timestamp?: number\n}) {\n const message = toMessage(input.error)\n const code = classifyLspToolFallbackError(input.error)\n const codeInfo = LSP_ERROR_CODES[code]\n return {\n channel: 'lsp',\n phase: 'LSP_TOOL_FALLBACK',\n timestamp: input.timestamp ?? Date.now(),\n data: {\n tool: input.tool,\n operation: input.operation,\n code,\n category: codeInfo.category,\n message,\n recoverable: input.recoverable ?? codeInfo.recoverable,\n ...(input.filePath ? { filePath: input.filePath } : {}),\n },\n }\n}\n"],
|
|
5
|
+
"mappings": ";;;;AAAO,IAAM,kBAAkB;AAAA,EAC7B,iBAAiB;AAAA,IACf,UAAU;AAAA,IACV,aAAa;AAAA,EACf;AAAA,EACA,aAAa;AAAA,IACX,UAAU;AAAA,IACV,aAAa;AAAA,EACf;AAAA,EACA,mBAAmB;AAAA,IACjB,UAAU;AAAA,IACV,aAAa;AAAA,EACf;AACF;;;ACXA,SAAS,UAAU,OAAwB;AACzC,SAAO,OAAO,iBAAiB,QAAQ,MAAM,UAAU,KAAK;AAC9D;AAEO,SAAS,6BACd,OACc;AACd,QAAM,UAAU,UAAU,KAAK,EAAE,YAAY;AAC7C,MACE,QAAQ,SAAS,eAAe,KAChC,QAAQ,SAAS,iBAAiB,KAClC,QAAQ,SAAS,0BAA0B,GAC3C;AACA,WAAO;AAAA,EACT;AACA,MAAI,QAAQ,SAAS,SAAS,GAAG;AAC/B,WAAO;AAAA,EACT;AACA,SAAO;AACT;AAEO,SAAS,uBAAuB,OAOpC;AACD,QAAM,UAAU,UAAU,MAAM,KAAK;AACrC,QAAM,OAAO,6BAA6B,MAAM,KAAK;AACrD,QAAM,WAAW,gBAAgB,IAAI;AACrC,SAAO;AAAA,IACL,SAAS;AAAA,IACT,OAAO;AAAA,IACP,WAAW,MAAM,aAAa,KAAK,IAAI;AAAA,IACvC,MAAM;AAAA,MACJ,MAAM,MAAM;AAAA,MACZ,WAAW,MAAM;AAAA,MACjB;AAAA,MACA,UAAU,SAAS;AAAA,MACnB;AAAA,MACA,aAAa,MAAM,eAAe,SAAS;AAAA,MAC3C,GAAI,MAAM,WAAW,EAAE,UAAU,MAAM,SAAS,IAAI,CAAC;AAAA,IACvD;AAAA,EACF;AACF;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -5,14 +5,14 @@ import {
|
|
|
5
5
|
} from "./chunk-B6IMQJZM.js";
|
|
6
6
|
import {
|
|
7
7
|
loadSettingsWithLegacyFallback
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-BIRC5MFX.js";
|
|
9
9
|
import {
|
|
10
10
|
getSessionPlugins
|
|
11
11
|
} from "./chunk-BJSWTHRM.js";
|
|
12
12
|
import {
|
|
13
13
|
getCwd,
|
|
14
14
|
logError
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-HFEWWAXY.js";
|
|
16
16
|
|
|
17
17
|
// src/utils/session/pybHooks.ts
|
|
18
18
|
import { spawn } from "child_process";
|
|
@@ -496,7 +496,7 @@ async function runPromptHook(args) {
|
|
|
496
496
|
fallbackTimeoutMs: args.fallbackTimeoutMs
|
|
497
497
|
});
|
|
498
498
|
try {
|
|
499
|
-
const { queryQuick } = await import("./llmLazy-
|
|
499
|
+
const { queryQuick } = await import("./llmLazy-6C5RDNID.js");
|
|
500
500
|
const systemPrompt = [
|
|
501
501
|
"You are executing a Pyb prompt hook.",
|
|
502
502
|
"Return a single JSON object only (no markdown, no prose).",
|
|
@@ -2,7 +2,7 @@ import { createRequire as __pybCreateRequire } from "node:module";
|
|
|
2
2
|
const require = __pybCreateRequire(import.meta.url);
|
|
3
3
|
import {
|
|
4
4
|
PERSISTENCE_VERSION
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-VHDLVHEI.js";
|
|
6
6
|
|
|
7
7
|
// src/utils/session/conversationMessageState.ts
|
|
8
8
|
function mapFinishReason(rawReason) {
|
|
@@ -4,17 +4,17 @@ import {
|
|
|
4
4
|
LspServerRegistry,
|
|
5
5
|
findNearestRoot,
|
|
6
6
|
getInstallNotices
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-BGT7XDPE.js";
|
|
8
8
|
import {
|
|
9
9
|
levenshtein
|
|
10
10
|
} from "./chunk-UZ34JEUK.js";
|
|
11
11
|
import {
|
|
12
12
|
debug
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-ZJJR2GKA.js";
|
|
14
14
|
import {
|
|
15
15
|
getCwd,
|
|
16
16
|
getSessionRoot
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-HFEWWAXY.js";
|
|
18
18
|
|
|
19
19
|
// src/lsp/index.ts
|
|
20
20
|
import { extname as extname2 } from "path";
|
|
@@ -565,7 +565,7 @@ var LspClientManager = class _LspClientManager {
|
|
|
565
565
|
const safeCwd = /[^\x00-\x7F]/.test(resolvedRoot) ? process.cwd() : resolvedRoot;
|
|
566
566
|
let initOpts = serverInfo.initializationOptions;
|
|
567
567
|
if (serverInfo.id === "pyright" || serverInfo.id === "ty") {
|
|
568
|
-
const { detectPythonVenv } = await import("./registry-
|
|
568
|
+
const { detectPythonVenv } = await import("./registry-XAPOPN44.js");
|
|
569
569
|
const pythonPath = detectPythonVenv(resolvedRoot);
|
|
570
570
|
if (pythonPath) {
|
|
571
571
|
initOpts = { ...initOpts ?? {}, pythonPath };
|
|
@@ -1606,7 +1606,10 @@ var parserCache = /* @__PURE__ */ new Map();
|
|
|
1606
1606
|
var isInitialized = false;
|
|
1607
1607
|
var resolveResourceDir = () => {
|
|
1608
1608
|
const envDir = process.env.PYB_RESOURCE_DIR?.trim();
|
|
1609
|
-
if (envDir)
|
|
1609
|
+
if (envDir) {
|
|
1610
|
+
const absoluteEnvDir = path2.resolve(envDir);
|
|
1611
|
+
return path2.basename(absoluteEnvDir) === "tree-sitter" ? absoluteEnvDir : path2.resolve(absoluteEnvDir, "tree-sitter");
|
|
1612
|
+
}
|
|
1610
1613
|
if (_dirname.includes("dist") || _dirname.includes("node_modules")) {
|
|
1611
1614
|
return path2.resolve(_dirname, "../resources/tree-sitter");
|
|
1612
1615
|
}
|