pybao-cli 1.3.3
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/LICENSE +201 -0
- package/README.md +440 -0
- package/README.zh-CN.md +338 -0
- package/cli-acp.js +82 -0
- package/cli.js +105 -0
- package/dist/REPL-WPV32MTF.js +42 -0
- package/dist/REPL-WPV32MTF.js.map +7 -0
- package/dist/acp-75HO2LBV.js +1357 -0
- package/dist/acp-75HO2LBV.js.map +7 -0
- package/dist/agentsValidate-6Z57ARKC.js +373 -0
- package/dist/agentsValidate-6Z57ARKC.js.map +7 -0
- package/dist/ask-NXXXCGY4.js +125 -0
- package/dist/ask-NXXXCGY4.js.map +7 -0
- package/dist/autoUpdater-PJMGNPUG.js +17 -0
- package/dist/autoUpdater-PJMGNPUG.js.map +7 -0
- package/dist/chunk-27GYWUY2.js +72 -0
- package/dist/chunk-27GYWUY2.js.map +7 -0
- package/dist/chunk-3DFBSQIT.js +23 -0
- package/dist/chunk-3DFBSQIT.js.map +7 -0
- package/dist/chunk-3KNGJX7Q.js +794 -0
- package/dist/chunk-3KNGJX7Q.js.map +7 -0
- package/dist/chunk-3PDD7M4T.js +164 -0
- package/dist/chunk-3PDD7M4T.js.map +7 -0
- package/dist/chunk-3ZNSAB7B.js +515 -0
- package/dist/chunk-3ZNSAB7B.js.map +7 -0
- package/dist/chunk-4SNFQYCY.js +511 -0
- package/dist/chunk-4SNFQYCY.js.map +7 -0
- package/dist/chunk-4XPNRLJG.js +1609 -0
- package/dist/chunk-4XPNRLJG.js.map +7 -0
- package/dist/chunk-5P7HBXTD.js +12 -0
- package/dist/chunk-5P7HBXTD.js.map +7 -0
- package/dist/chunk-6RZIUY5K.js +191 -0
- package/dist/chunk-6RZIUY5K.js.map +7 -0
- package/dist/chunk-6WELHKDA.js +240 -0
- package/dist/chunk-6WELHKDA.js.map +7 -0
- package/dist/chunk-7AAE6EO2.js +145 -0
- package/dist/chunk-7AAE6EO2.js.map +7 -0
- package/dist/chunk-A3BVXXA3.js +47 -0
- package/dist/chunk-A3BVXXA3.js.map +7 -0
- package/dist/chunk-A6PUMROK.js +152 -0
- package/dist/chunk-A6PUMROK.js.map +7 -0
- package/dist/chunk-BH3Y62E3.js +11 -0
- package/dist/chunk-BH3Y62E3.js.map +7 -0
- package/dist/chunk-BJSWTHRM.js +16 -0
- package/dist/chunk-BJSWTHRM.js.map +7 -0
- package/dist/chunk-BQA2EOUU.js +124 -0
- package/dist/chunk-BQA2EOUU.js.map +7 -0
- package/dist/chunk-CZZKRPE2.js +19 -0
- package/dist/chunk-CZZKRPE2.js.map +7 -0
- package/dist/chunk-ERMQRV55.js +24 -0
- package/dist/chunk-ERMQRV55.js.map +7 -0
- package/dist/chunk-HB2P6645.js +34 -0
- package/dist/chunk-HB2P6645.js.map +7 -0
- package/dist/chunk-HIRIJ2LQ.js +1256 -0
- package/dist/chunk-HIRIJ2LQ.js.map +7 -0
- package/dist/chunk-ICTEVBLN.js +735 -0
- package/dist/chunk-ICTEVBLN.js.map +7 -0
- package/dist/chunk-JKGOGSFT.js +128 -0
- package/dist/chunk-JKGOGSFT.js.map +7 -0
- package/dist/chunk-JZDE77EH.js +836 -0
- package/dist/chunk-JZDE77EH.js.map +7 -0
- package/dist/chunk-M624LT6O.js +17 -0
- package/dist/chunk-M624LT6O.js.map +7 -0
- package/dist/chunk-OMELVAJD.js +96 -0
- package/dist/chunk-OMELVAJD.js.map +7 -0
- package/dist/chunk-OUXHGDLH.js +95 -0
- package/dist/chunk-OUXHGDLH.js.map +7 -0
- package/dist/chunk-PCXUZ6AT.js +249 -0
- package/dist/chunk-PCXUZ6AT.js.map +7 -0
- package/dist/chunk-Q24ZGKIE.js +1097 -0
- package/dist/chunk-Q24ZGKIE.js.map +7 -0
- package/dist/chunk-QBHEERCF.js +30254 -0
- package/dist/chunk-QBHEERCF.js.map +7 -0
- package/dist/chunk-QIHB5PYM.js +472 -0
- package/dist/chunk-QIHB5PYM.js.map +7 -0
- package/dist/chunk-RQVLBMP7.js +24 -0
- package/dist/chunk-RQVLBMP7.js.map +7 -0
- package/dist/chunk-SWYJOV5E.js +490 -0
- package/dist/chunk-SWYJOV5E.js.map +7 -0
- package/dist/chunk-T6GVXTNQ.js +21 -0
- package/dist/chunk-T6GVXTNQ.js.map +7 -0
- package/dist/chunk-T7GPUZVK.js +766 -0
- package/dist/chunk-T7GPUZVK.js.map +7 -0
- package/dist/chunk-TXFCNQDE.js +2934 -0
- package/dist/chunk-TXFCNQDE.js.map +7 -0
- package/dist/chunk-UNNVICVU.js +95 -0
- package/dist/chunk-UNNVICVU.js.map +7 -0
- package/dist/chunk-UUNVJZWA.js +515 -0
- package/dist/chunk-UUNVJZWA.js.map +7 -0
- package/dist/chunk-VRGR4ZTQ.js +49 -0
- package/dist/chunk-VRGR4ZTQ.js.map +7 -0
- package/dist/chunk-VTVTEE5N.js +2613 -0
- package/dist/chunk-VTVTEE5N.js.map +7 -0
- package/dist/chunk-WPTPPOYN.js +936 -0
- package/dist/chunk-WPTPPOYN.js.map +7 -0
- package/dist/chunk-XXFY63TM.js +196 -0
- package/dist/chunk-XXFY63TM.js.map +7 -0
- package/dist/chunk-Z3HMXDXP.js +654 -0
- package/dist/chunk-Z3HMXDXP.js.map +7 -0
- package/dist/chunk-ZJGXEWKF.js +138 -0
- package/dist/chunk-ZJGXEWKF.js.map +7 -0
- package/dist/cli-RFYBXM7F.js +3917 -0
- package/dist/cli-RFYBXM7F.js.map +7 -0
- package/dist/commands-YOXMODDO.js +46 -0
- package/dist/commands-YOXMODDO.js.map +7 -0
- package/dist/config-5OPX3H2K.js +81 -0
- package/dist/config-5OPX3H2K.js.map +7 -0
- package/dist/context-THRRBPFP.js +30 -0
- package/dist/context-THRRBPFP.js.map +7 -0
- package/dist/costTracker-ELNBZ2DN.js +19 -0
- package/dist/costTracker-ELNBZ2DN.js.map +7 -0
- package/dist/customCommands-4XOZH44N.js +25 -0
- package/dist/customCommands-4XOZH44N.js.map +7 -0
- package/dist/env-EL4KBHMB.js +22 -0
- package/dist/env-EL4KBHMB.js.map +7 -0
- package/dist/index.js +34 -0
- package/dist/index.js.map +7 -0
- package/dist/kodeAgentSessionId-PROTVRBR.js +13 -0
- package/dist/kodeAgentSessionId-PROTVRBR.js.map +7 -0
- package/dist/kodeAgentSessionLoad-UMPV7MC3.js +18 -0
- package/dist/kodeAgentSessionLoad-UMPV7MC3.js.map +7 -0
- package/dist/kodeAgentSessionResume-YJS4FVQM.js +16 -0
- package/dist/kodeAgentSessionResume-YJS4FVQM.js.map +7 -0
- package/dist/kodeAgentStreamJson-3T26CHCP.js +13 -0
- package/dist/kodeAgentStreamJson-3T26CHCP.js.map +7 -0
- package/dist/kodeAgentStreamJsonSession-BZS2VDCY.js +131 -0
- package/dist/kodeAgentStreamJsonSession-BZS2VDCY.js.map +7 -0
- package/dist/kodeAgentStructuredStdio-TNB6U6SP.js +10 -0
- package/dist/kodeAgentStructuredStdio-TNB6U6SP.js.map +7 -0
- package/dist/kodeHooks-VUAWIY2D.js +36 -0
- package/dist/kodeHooks-VUAWIY2D.js.map +7 -0
- package/dist/llm-A3BCM4Q2.js +3118 -0
- package/dist/llm-A3BCM4Q2.js.map +7 -0
- package/dist/llmLazy-ZJSRLZVD.js +15 -0
- package/dist/llmLazy-ZJSRLZVD.js.map +7 -0
- package/dist/loader-HZQBWO74.js +28 -0
- package/dist/loader-HZQBWO74.js.map +7 -0
- package/dist/mcp-XKOJ55B2.js +49 -0
- package/dist/mcp-XKOJ55B2.js.map +7 -0
- package/dist/mentionProcessor-ANYU5MLF.js +211 -0
- package/dist/mentionProcessor-ANYU5MLF.js.map +7 -0
- package/dist/messages-75DL5XBP.js +63 -0
- package/dist/messages-75DL5XBP.js.map +7 -0
- package/dist/model-OPJGJZRC.js +30 -0
- package/dist/model-OPJGJZRC.js.map +7 -0
- package/dist/openai-DT54BAFP.js +29 -0
- package/dist/openai-DT54BAFP.js.map +7 -0
- package/dist/outputStyles-TPFVI52O.js +28 -0
- package/dist/outputStyles-TPFVI52O.js.map +7 -0
- package/dist/package.json +4 -0
- package/dist/pluginRuntime-W74PYSZ4.js +218 -0
- package/dist/pluginRuntime-W74PYSZ4.js.map +7 -0
- package/dist/pluginValidation-FALYRVI2.js +17 -0
- package/dist/pluginValidation-FALYRVI2.js.map +7 -0
- package/dist/prompts-J4TPRMJ3.js +48 -0
- package/dist/prompts-J4TPRMJ3.js.map +7 -0
- package/dist/query-K3QKBVDN.js +50 -0
- package/dist/query-K3QKBVDN.js.map +7 -0
- package/dist/responsesStreaming-HMB74TRD.js +10 -0
- package/dist/responsesStreaming-HMB74TRD.js.map +7 -0
- package/dist/ripgrep-XJGSUBG7.js +17 -0
- package/dist/ripgrep-XJGSUBG7.js.map +7 -0
- package/dist/skillMarketplace-AUGKNCPW.js +37 -0
- package/dist/skillMarketplace-AUGKNCPW.js.map +7 -0
- package/dist/state-DQYRXKTG.js +16 -0
- package/dist/state-DQYRXKTG.js.map +7 -0
- package/dist/theme-MS5HDUBJ.js +14 -0
- package/dist/theme-MS5HDUBJ.js.map +7 -0
- package/dist/toolPermissionContext-GYD5LYFK.js +17 -0
- package/dist/toolPermissionContext-GYD5LYFK.js.map +7 -0
- package/dist/toolPermissionSettings-4MPZVYDR.js +18 -0
- package/dist/toolPermissionSettings-4MPZVYDR.js.map +7 -0
- package/dist/tools-QW6SIJLJ.js +47 -0
- package/dist/tools-QW6SIJLJ.js.map +7 -0
- package/dist/userInput-F2PGBRFU.js +311 -0
- package/dist/userInput-F2PGBRFU.js.map +7 -0
- package/dist/uuid-GYYCQ6QK.js +9 -0
- package/dist/uuid-GYYCQ6QK.js.map +7 -0
- package/dist/yoga.wasm +0 -0
- package/package.json +136 -0
- package/scripts/binary-utils.cjs +62 -0
- package/scripts/cli-acp-wrapper.cjs +82 -0
- package/scripts/cli-wrapper.cjs +105 -0
- package/scripts/postinstall.js +144 -0
- package/yoga.wasm +0 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/utils/protocol/kodeAgentStructuredStdio.ts"],
|
|
4
|
+
"sourcesContent": ["import { createInterface } from 'node:readline'\nimport { AbortError } from '@utils/text/errors'\n\ntype ControlRequestMessage = {\n type: 'control_request'\n request_id: string\n request: { subtype: string; [key: string]: unknown }\n}\n\ntype KeepAliveMessage = { type: 'keep_alive' }\n\ntype ControlResponseMessage = {\n type: 'control_response'\n response: {\n request_id: string\n subtype: 'success' | 'error'\n response?: unknown\n error?: string\n }\n}\n\ntype ControlCancelRequestMessage = {\n type: 'control_cancel_request'\n request_id: string\n}\n\ntype UserInputMessage = {\n type: 'user'\n uuid?: string\n parent_tool_use_id?: string | null\n message: { role: 'user'; content: unknown }\n}\n\ntype StructuredInputMessage =\n | ControlRequestMessage\n | ControlResponseMessage\n | ControlCancelRequestMessage\n | UserInputMessage\n | KeepAliveMessage\n | { type: string; [key: string]: unknown }\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return Boolean(value) && typeof value === 'object' && !Array.isArray(value)\n}\n\nfunction tryParseLine(line: string): StructuredInputMessage | null {\n if (!line.trim()) return null\n try {\n const parsed = JSON.parse(line) as unknown\n if (!isRecord(parsed)) return null\n if (typeof parsed.type !== 'string') return null\n return parsed as StructuredInputMessage\n } catch {\n return null\n }\n}\n\nfunction makeRequestId(): string {\n return Math.random().toString(36).slice(2, 15)\n}\n\nexport class KodeAgentStructuredStdio {\n private started = false\n private inputClosed = false\n private pendingRequests = new Map<\n string,\n {\n resolve: (msg: ControlResponseMessage['response']) => void\n reject: (err: Error) => void\n cleanup: () => void\n }\n >()\n private queuedUserMessages: UserInputMessage[] = []\n private awaitingUserWaiters: Array<{\n resolve: (msg: UserInputMessage) => void\n reject: (err: Error) => void\n }> = []\n\n constructor(\n private input: NodeJS.ReadableStream,\n private output: NodeJS.WritableStream,\n private opts: {\n onInterrupt?: () => void\n onControlRequest?: (msg: ControlRequestMessage) => Promise<unknown | void>\n } = {},\n ) {}\n\n start(): void {\n if (this.started) return\n this.started = true\n\n const rl = createInterface({ input: this.input })\n ;(async () => {\n for await (const line of rl) {\n this.handleLine(String(line))\n }\n })()\n .catch(() => {})\n .finally(() => {\n this.inputClosed = true\n rl.close()\n this.rejectAllPending(new Error('Stream closed'))\n this.rejectAllUserWaiters(new Error('Stream closed'))\n })\n }\n\n private rejectAllPending(err: Error): void {\n for (const pending of this.pendingRequests.values()) {\n pending.cleanup()\n pending.reject(err)\n }\n this.pendingRequests.clear()\n }\n\n private rejectAllUserWaiters(err: Error): void {\n for (const waiter of this.awaitingUserWaiters.splice(0)) {\n waiter.reject(err)\n }\n }\n\n private write(obj: unknown): void {\n this.output.write(JSON.stringify(obj) + '\\n')\n }\n\n private sendControlResponseSuccess(\n requestId: string,\n response?: unknown,\n ): void {\n this.write({\n type: 'control_response',\n response: {\n subtype: 'success',\n request_id: requestId,\n ...(response !== undefined ? { response } : {}),\n },\n })\n }\n\n private sendControlResponseError(requestId: string, error: string): void {\n this.write({\n type: 'control_response',\n response: {\n subtype: 'error',\n request_id: requestId,\n error,\n },\n })\n }\n\n private sendControlCancelRequest(requestId: string): void {\n this.write({\n type: 'control_cancel_request',\n request_id: requestId,\n })\n }\n\n private handleLine(line: string): void {\n const msg = tryParseLine(line)\n if (!msg) return\n\n if (msg.type === 'keep_alive') {\n return\n }\n\n if (msg.type === 'user') {\n const userMsg = msg as UserInputMessage\n const waiter = this.awaitingUserWaiters.shift()\n if (waiter) waiter.resolve(userMsg)\n else this.queuedUserMessages.push(userMsg)\n return\n }\n\n if (msg.type === 'control_response') {\n const responseMsg = msg as ControlResponseMessage\n const requestId = responseMsg.response?.request_id\n if (typeof requestId !== 'string' || !requestId) return\n const pending = this.pendingRequests.get(requestId)\n if (!pending) return\n pending.cleanup()\n this.pendingRequests.delete(requestId)\n pending.resolve(responseMsg.response)\n return\n }\n\n if (msg.type === 'control_request') {\n const requestMsg = msg as ControlRequestMessage\n const requestId = requestMsg.request_id\n const subtype = requestMsg.request?.subtype\n if (typeof requestId !== 'string' || !requestId) return\n if (typeof subtype !== 'string' || !subtype) {\n this.sendControlResponseError(\n requestId,\n 'Invalid control request (missing subtype)',\n )\n return\n }\n\n if (subtype === 'interrupt') {\n this.opts.onInterrupt?.()\n this.sendControlResponseSuccess(requestId)\n return\n }\n\n const handler = this.opts.onControlRequest\n if (handler) {\n Promise.resolve()\n .then(async () => await handler(requestMsg))\n .then(response =>\n this.sendControlResponseSuccess(requestId, response),\n )\n .catch(err =>\n this.sendControlResponseError(\n requestId,\n err instanceof Error ? err.message : String(err),\n ),\n )\n return\n }\n\n this.sendControlResponseError(\n requestId,\n `Unsupported control request subtype: ${subtype}`,\n )\n }\n }\n\n async nextUserMessage(args?: {\n signal?: AbortSignal\n timeoutMs?: number\n }): Promise<UserInputMessage> {\n if (this.queuedUserMessages.length > 0) {\n return this.queuedUserMessages.shift()!\n }\n if (this.inputClosed) {\n throw new Error('Stream closed')\n }\n\n const timeoutMs =\n typeof args?.timeoutMs === 'number' && Number.isFinite(args.timeoutMs)\n ? Math.max(0, args.timeoutMs)\n : null\n\n return await new Promise<UserInputMessage>((resolve, reject) => {\n let settled = false\n let waiter: {\n resolve: (msg: UserInputMessage) => void\n reject: (err: Error) => void\n } | null = null\n const onAbort = () => {\n cleanup()\n reject(new AbortError('User input aborted.'))\n }\n\n const onTimeout = () => {\n cleanup()\n reject(new Error('Timed out waiting for user input.'))\n }\n\n const cleanup = () => {\n if (settled) return\n settled = true\n if (args?.signal) args.signal.removeEventListener('abort', onAbort)\n if (timeoutId) clearTimeout(timeoutId)\n if (waiter) {\n const idx = this.awaitingUserWaiters.indexOf(waiter)\n if (idx >= 0) this.awaitingUserWaiters.splice(idx, 1)\n }\n }\n\n let timeoutId: NodeJS.Timeout | null = null\n if (timeoutMs !== null) timeoutId = setTimeout(onTimeout, timeoutMs)\n if (args?.signal)\n args.signal.addEventListener('abort', onAbort, { once: true })\n\n waiter = {\n resolve: msg => {\n cleanup()\n resolve(msg)\n },\n reject: err => {\n cleanup()\n reject(err)\n },\n }\n\n this.awaitingUserWaiters.push(waiter)\n })\n }\n\n async sendRequest<TResponse = unknown>(\n request: Record<string, unknown>,\n args?: { signal?: AbortSignal; timeoutMs?: number },\n ): Promise<TResponse> {\n if (this.inputClosed) {\n throw new Error('Stream closed')\n }\n if (args?.signal?.aborted) {\n throw new AbortError('Request aborted.')\n }\n\n const requestId = makeRequestId()\n this.write({ type: 'control_request', request_id: requestId, request })\n\n const timeoutMs =\n typeof args?.timeoutMs === 'number' && Number.isFinite(args.timeoutMs)\n ? Math.max(0, args.timeoutMs)\n : null\n\n return await new Promise<TResponse>((resolve, reject) => {\n const onAbort = () => {\n this.sendControlCancelRequest(requestId)\n this.pendingRequests.delete(requestId)\n cleanup()\n reject(new AbortError('Request aborted.'))\n }\n\n const onTimeout = () => {\n this.sendControlCancelRequest(requestId)\n this.pendingRequests.delete(requestId)\n cleanup()\n reject(new Error('Timed out waiting for control response.'))\n }\n\n const cleanup = () => {\n if (args?.signal) args.signal.removeEventListener('abort', onAbort)\n if (timeoutId) clearTimeout(timeoutId)\n }\n\n let timeoutId: NodeJS.Timeout | null = null\n if (timeoutMs !== null) timeoutId = setTimeout(onTimeout, timeoutMs)\n if (args?.signal)\n args.signal.addEventListener('abort', onAbort, { once: true })\n\n this.pendingRequests.set(requestId, {\n cleanup,\n resolve: response => {\n if (response.subtype === 'error') {\n reject(\n new Error(response.error || 'Unknown control response error'),\n )\n return\n }\n resolve((response.response ?? null) as TResponse)\n },\n reject,\n })\n })\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|