@agimon-ai/po 0.0.0-alpha.0
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 +21 -0
- package/README.md +755 -0
- package/assets/banner.png +0 -0
- package/assets/banner.svg +25 -0
- package/assets/favicon.svg +15 -0
- package/assets/logo-light.png +0 -0
- package/assets/logo-light.svg +25 -0
- package/assets/logo.png +0 -0
- package/assets/logo.svg +25 -0
- package/assets/mascot.png +0 -0
- package/assets/mascot.svg +25 -0
- package/dist/_virtual/_rolldown/runtime.cjs +23 -0
- package/dist/antigravity.cjs +5 -0
- package/dist/antigravity.d.mts +2 -0
- package/dist/antigravity.mjs +2 -0
- package/dist/apiContracts.cjs +11 -0
- package/dist/apiContracts.cjs.map +1 -0
- package/dist/apiContracts.d.mts +52 -0
- package/dist/apiContracts.d.mts.map +1 -0
- package/dist/apiContracts.mjs +7 -0
- package/dist/apiContracts.mjs.map +1 -0
- package/dist/baseCommand.cjs +3 -0
- package/dist/baseCommand.d.mts +2 -0
- package/dist/baseCommand.mjs +2 -0
- package/dist/bin/cli.cjs +24 -0
- package/dist/bin/cli.cjs.map +1 -0
- package/dist/bin/cli.d.mts +1 -0
- package/dist/bin/cli.mjs +25 -0
- package/dist/bin/cli.mjs.map +1 -0
- package/dist/bin/doomRunner.cjs +33 -0
- package/dist/bin/doomRunner.cjs.map +1 -0
- package/dist/bin/doomRunner.d.mts +4 -0
- package/dist/bin/doomRunner.d.mts.map +1 -0
- package/dist/bin/doomRunner.mjs +32 -0
- package/dist/bin/doomRunner.mjs.map +1 -0
- package/dist/bin/serve.cjs +30 -0
- package/dist/bin/serve.cjs.map +1 -0
- package/dist/bin/serve.d.mts +1 -0
- package/dist/bin/serve.mjs +31 -0
- package/dist/bin/serve.mjs.map +1 -0
- package/dist/builders/cli/extensionAssembler/index.cjs +342 -0
- package/dist/builders/cli/extensionAssembler/index.cjs.map +1 -0
- package/dist/builders/cli/extensionAssembler/index.d.mts +85 -0
- package/dist/builders/cli/extensionAssembler/index.d.mts.map +1 -0
- package/dist/builders/cli/extensionAssembler/index.mjs +335 -0
- package/dist/builders/cli/extensionAssembler/index.mjs.map +1 -0
- package/dist/catalog/index.json +430 -0
- package/dist/cli.cjs +28 -0
- package/dist/cli.d.mts +11 -0
- package/dist/cli.mjs +11 -0
- package/dist/cliApp.cjs +6 -0
- package/dist/cliApp.d.mts +2 -0
- package/dist/cliApp.mjs +2 -0
- package/dist/codex.cjs +8 -0
- package/dist/codex.d.mts +2 -0
- package/dist/codex.mjs +2 -0
- package/dist/commands.cjs +18 -0
- package/dist/commands.d.mts +9 -0
- package/dist/commands.mjs +9 -0
- package/dist/compatibility.cjs +27 -0
- package/dist/compatibility.d.mts +6 -0
- package/dist/compatibility.mjs +6 -0
- package/dist/compatibilityCommand.cjs +4 -0
- package/dist/compatibilityCommand.d.mts +2 -0
- package/dist/compatibilityCommand.mjs +2 -0
- package/dist/compatibilityContext.cjs +3 -0
- package/dist/compatibilityContext.d.mts +2 -0
- package/dist/compatibilityContext.mjs +2 -0
- package/dist/compatibilityOptions.cjs +5 -0
- package/dist/compatibilityOptions.d.mts +2 -0
- package/dist/compatibilityOptions.mjs +2 -0
- package/dist/config.cjs +163 -0
- package/dist/config.d.mts +7 -0
- package/dist/config.mjs +7 -0
- package/dist/doctorCommand.cjs +5 -0
- package/dist/doctorCommand.d.mts +2 -0
- package/dist/doctorCommand.mjs +2 -0
- package/dist/emitMcpCommand.cjs +4 -0
- package/dist/emitMcpCommand.d.mts +2 -0
- package/dist/emitMcpCommand.mjs +2 -0
- package/dist/explainCommand.cjs +5 -0
- package/dist/explainCommand.d.mts +2 -0
- package/dist/explainCommand.mjs +2 -0
- package/dist/extensions/server.cjs +39 -0
- package/dist/extensions/server.cjs.map +1 -0
- package/dist/extensions/server.d.mts +5 -0
- package/dist/extensions/server.d.mts.map +1 -0
- package/dist/extensions/server.mjs +34 -0
- package/dist/extensions/server.mjs.map +1 -0
- package/dist/harnessContext.cjs +5 -0
- package/dist/harnessContext.d.mts +2 -0
- package/dist/harnessContext.mjs +2 -0
- package/dist/harnessState.cjs +19 -0
- package/dist/harnessState.d.mts +2 -0
- package/dist/harnessState.mjs +2 -0
- package/dist/help.cjs +12 -0
- package/dist/help.d.mts +6 -0
- package/dist/help.mjs +6 -0
- package/dist/index.cjs +306 -0
- package/dist/index.d.mts +40 -0
- package/dist/index.mjs +37 -0
- package/dist/initCommand.cjs +4 -0
- package/dist/initCommand.d.mts +2 -0
- package/dist/initCommand.mjs +2 -0
- package/dist/matrixOptions.cjs +28 -0
- package/dist/matrixOptions.d.mts +2 -0
- package/dist/matrixOptions.mjs +2 -0
- package/dist/matrixSwitcher.cjs +11 -0
- package/dist/matrixSwitcher.d.mts +3 -0
- package/dist/matrixSwitcher.mjs +3 -0
- package/dist/mcpFilter.cjs +9 -0
- package/dist/mcpFilter.d.mts +1 -0
- package/dist/mcpFilter.mjs +2 -0
- package/dist/options.cjs +3 -0
- package/dist/options.d.mts +2 -0
- package/dist/options.mjs +2 -0
- package/dist/process.cjs +12 -0
- package/dist/process.d.mts +2 -0
- package/dist/process.mjs +2 -0
- package/dist/projectTrust.cjs +6 -0
- package/dist/projectTrust.d.mts +2 -0
- package/dist/projectTrust.mjs +2 -0
- package/dist/repository.cjs +5 -0
- package/dist/repository.d.mts +2 -0
- package/dist/repository.mjs +2 -0
- package/dist/resourceCollector.cjs +9 -0
- package/dist/resourceCollector.d.mts +1 -0
- package/dist/resourceCollector.mjs +2 -0
- package/dist/router.cjs +6 -0
- package/dist/router.d.mts +2 -0
- package/dist/router.mjs +2 -0
- package/dist/services.cjs +97 -0
- package/dist/services.d.mts +12 -0
- package/dist/services.mjs +12 -0
- package/dist/shared.cjs +18 -0
- package/dist/shared.d.mts +2 -0
- package/dist/shared.mjs +2 -0
- package/dist/src/bin/agentDirectory.cjs +27 -0
- package/dist/src/bin/agentDirectory.cjs.map +1 -0
- package/dist/src/bin/agentDirectory.mjs +26 -0
- package/dist/src/bin/agentDirectory.mjs.map +1 -0
- package/dist/src/builders/apiContractExport/index.cjs +126 -0
- package/dist/src/builders/apiContractExport/index.cjs.map +1 -0
- package/dist/src/builders/apiContractExport/index.mjs +123 -0
- package/dist/src/builders/apiContractExport/index.mjs.map +1 -0
- package/dist/src/builders/cli/entryResolution.cjs +39 -0
- package/dist/src/builders/cli/entryResolution.cjs.map +1 -0
- package/dist/src/builders/cli/entryResolution.mjs +35 -0
- package/dist/src/builders/cli/entryResolution.mjs.map +1 -0
- package/dist/src/builders/cli/harnessContext.cjs +175 -0
- package/dist/src/builders/cli/harnessContext.cjs.map +1 -0
- package/dist/src/builders/cli/harnessContext.d.mts +48 -0
- package/dist/src/builders/cli/harnessContext.d.mts.map +1 -0
- package/dist/src/builders/cli/harnessContext.mjs +167 -0
- package/dist/src/builders/cli/harnessContext.mjs.map +1 -0
- package/dist/src/builders/cli/sessionComposition.cjs +27 -0
- package/dist/src/builders/cli/sessionComposition.cjs.map +1 -0
- package/dist/src/builders/cli/sessionComposition.mjs +26 -0
- package/dist/src/builders/cli/sessionComposition.mjs.map +1 -0
- package/dist/src/builders/hooks/index.cjs +238 -0
- package/dist/src/builders/hooks/index.cjs.map +1 -0
- package/dist/src/builders/hooks/index.mjs +231 -0
- package/dist/src/builders/hooks/index.mjs.map +1 -0
- package/dist/src/builders/native/index.cjs +176 -0
- package/dist/src/builders/native/index.cjs.map +1 -0
- package/dist/src/builders/native/index.d.mts +36 -0
- package/dist/src/builders/native/index.d.mts.map +1 -0
- package/dist/src/builders/native/index.mjs +170 -0
- package/dist/src/builders/native/index.mjs.map +1 -0
- package/dist/src/builders/server/backgroundSync.cjs +333 -0
- package/dist/src/builders/server/backgroundSync.cjs.map +1 -0
- package/dist/src/builders/server/backgroundSync.mjs +320 -0
- package/dist/src/builders/server/backgroundSync.mjs.map +1 -0
- package/dist/src/builders/server/computerUseBinding.cjs +273 -0
- package/dist/src/builders/server/computerUseBinding.cjs.map +1 -0
- package/dist/src/builders/server/computerUseBinding.mjs +269 -0
- package/dist/src/builders/server/computerUseBinding.mjs.map +1 -0
- package/dist/src/builders/server/computerUseRecordings.cjs +188 -0
- package/dist/src/builders/server/computerUseRecordings.cjs.map +1 -0
- package/dist/src/builders/server/computerUseRecordings.mjs +184 -0
- package/dist/src/builders/server/computerUseRecordings.mjs.map +1 -0
- package/dist/src/builders/server/defaultWorkspace.cjs +38 -0
- package/dist/src/builders/server/defaultWorkspace.cjs.map +1 -0
- package/dist/src/builders/server/defaultWorkspace.mjs +35 -0
- package/dist/src/builders/server/defaultWorkspace.mjs.map +1 -0
- package/dist/src/builders/server/idleRestart.cjs +149 -0
- package/dist/src/builders/server/idleRestart.cjs.map +1 -0
- package/dist/src/builders/server/idleRestart.mjs +136 -0
- package/dist/src/builders/server/idleRestart.mjs.map +1 -0
- package/dist/src/builders/server/index.cjs +63 -0
- package/dist/src/builders/server/index.cjs.map +1 -0
- package/dist/src/builders/server/index.mjs +60 -0
- package/dist/src/builders/server/index.mjs.map +1 -0
- package/dist/src/builders/server/logSink.cjs +57 -0
- package/dist/src/builders/server/logSink.cjs.map +1 -0
- package/dist/src/builders/server/logSink.mjs +57 -0
- package/dist/src/builders/server/logSink.mjs.map +1 -0
- package/dist/src/builders/server/mcpApp.cjs +152 -0
- package/dist/src/builders/server/mcpApp.cjs.map +1 -0
- package/dist/src/builders/server/mcpApp.d.mts +18 -0
- package/dist/src/builders/server/mcpApp.d.mts.map +1 -0
- package/dist/src/builders/server/mcpApp.mjs +147 -0
- package/dist/src/builders/server/mcpApp.mjs.map +1 -0
- package/dist/src/builders/server/mcpAppBuild.cjs +111 -0
- package/dist/src/builders/server/mcpAppBuild.cjs.map +1 -0
- package/dist/src/builders/server/mcpAppBuild.d.mts +24 -0
- package/dist/src/builders/server/mcpAppBuild.d.mts.map +1 -0
- package/dist/src/builders/server/mcpAppBuild.mjs +105 -0
- package/dist/src/builders/server/mcpAppBuild.mjs.map +1 -0
- package/dist/src/builders/server/mcpBundle.cjs +87 -0
- package/dist/src/builders/server/mcpBundle.cjs.map +1 -0
- package/dist/src/builders/server/mcpBundle.d.mts +23 -0
- package/dist/src/builders/server/mcpBundle.d.mts.map +1 -0
- package/dist/src/builders/server/mcpBundle.mjs +84 -0
- package/dist/src/builders/server/mcpBundle.mjs.map +1 -0
- package/dist/src/builders/server/packageReloadCheck.cjs +62 -0
- package/dist/src/builders/server/packageReloadCheck.cjs.map +1 -0
- package/dist/src/builders/server/packageReloadCheck.mjs +61 -0
- package/dist/src/builders/server/packageReloadCheck.mjs.map +1 -0
- package/dist/src/builders/server/packageUrl.cjs +210 -0
- package/dist/src/builders/server/packageUrl.cjs.map +1 -0
- package/dist/src/builders/server/packageUrl.mjs +203 -0
- package/dist/src/builders/server/packageUrl.mjs.map +1 -0
- package/dist/src/builders/server/runtime.cjs +1428 -0
- package/dist/src/builders/server/runtime.cjs.map +1 -0
- package/dist/src/builders/server/runtime.mjs +1420 -0
- package/dist/src/builders/server/runtime.mjs.map +1 -0
- package/dist/src/builders/server/runtimeResources.cjs +72 -0
- package/dist/src/builders/server/runtimeResources.cjs.map +1 -0
- package/dist/src/builders/server/runtimeResources.mjs +71 -0
- package/dist/src/builders/server/runtimeResources.mjs.map +1 -0
- package/dist/src/builders/server/selectionStatus.cjs +12 -0
- package/dist/src/builders/server/selectionStatus.cjs.map +1 -0
- package/dist/src/builders/server/selectionStatus.mjs +12 -0
- package/dist/src/builders/server/selectionStatus.mjs.map +1 -0
- package/dist/src/builders/server/sessionArguments.cjs +63 -0
- package/dist/src/builders/server/sessionArguments.cjs.map +1 -0
- package/dist/src/builders/server/sessionArguments.mjs +62 -0
- package/dist/src/builders/server/sessionArguments.mjs.map +1 -0
- package/dist/src/builders/server/shutdown.cjs +16 -0
- package/dist/src/builders/server/shutdown.cjs.map +1 -0
- package/dist/src/builders/server/shutdown.mjs +16 -0
- package/dist/src/builders/server/shutdown.mjs.map +1 -0
- package/dist/src/builders/server/webTemplateDecision.cjs +34 -0
- package/dist/src/builders/server/webTemplateDecision.cjs.map +1 -0
- package/dist/src/builders/server/webTemplateDecision.mjs +32 -0
- package/dist/src/builders/server/webTemplateDecision.mjs.map +1 -0
- package/dist/src/builders/server/workspaceCheckout.cjs +31 -0
- package/dist/src/builders/server/workspaceCheckout.cjs.map +1 -0
- package/dist/src/builders/server/workspaceCheckout.mjs +29 -0
- package/dist/src/builders/server/workspaceCheckout.mjs.map +1 -0
- package/dist/src/builders/web/bundle.cjs +225 -0
- package/dist/src/builders/web/bundle.cjs.map +1 -0
- package/dist/src/builders/web/bundle.d.mts +65 -0
- package/dist/src/builders/web/bundle.d.mts.map +1 -0
- package/dist/src/builders/web/bundle.mjs +221 -0
- package/dist/src/builders/web/bundle.mjs.map +1 -0
- package/dist/src/builders/web/bundleAssetPolicy.cjs +96 -0
- package/dist/src/builders/web/bundleAssetPolicy.cjs.map +1 -0
- package/dist/src/builders/web/bundleAssetPolicy.d.mts +22 -0
- package/dist/src/builders/web/bundleAssetPolicy.d.mts.map +1 -0
- package/dist/src/builders/web/bundleAssetPolicy.mjs +95 -0
- package/dist/src/builders/web/bundleAssetPolicy.mjs.map +1 -0
- package/dist/src/builders/web/index.cjs +361 -0
- package/dist/src/builders/web/index.cjs.map +1 -0
- package/dist/src/builders/web/index.d.mts +109 -0
- package/dist/src/builders/web/index.d.mts.map +1 -0
- package/dist/src/builders/web/index.mjs +342 -0
- package/dist/src/builders/web/index.mjs.map +1 -0
- package/dist/src/builders/web/webDevRoots.cjs +27 -0
- package/dist/src/builders/web/webDevRoots.cjs.map +1 -0
- package/dist/src/builders/web/webDevRoots.d.mts +22 -0
- package/dist/src/builders/web/webDevRoots.d.mts.map +1 -0
- package/dist/src/builders/web/webDevRoots.mjs +25 -0
- package/dist/src/builders/web/webDevRoots.mjs.map +1 -0
- package/dist/src/builders/web/webPluginGenerate.cjs +188 -0
- package/dist/src/builders/web/webPluginGenerate.cjs.map +1 -0
- package/dist/src/builders/web/webPluginGenerate.d.mts +56 -0
- package/dist/src/builders/web/webPluginGenerate.d.mts.map +1 -0
- package/dist/src/builders/web/webPluginGenerate.mjs +178 -0
- package/dist/src/builders/web/webPluginGenerate.mjs.map +1 -0
- package/dist/src/builders/web/webPluginManifest.cjs +128 -0
- package/dist/src/builders/web/webPluginManifest.cjs.map +1 -0
- package/dist/src/builders/web/webPluginManifest.d.mts +64 -0
- package/dist/src/builders/web/webPluginManifest.d.mts.map +1 -0
- package/dist/src/builders/web/webPluginManifest.mjs +118 -0
- package/dist/src/builders/web/webPluginManifest.mjs.map +1 -0
- package/dist/src/builders/web/webPluginScan.cjs +57 -0
- package/dist/src/builders/web/webPluginScan.cjs.map +1 -0
- package/dist/src/builders/web/webPluginScan.d.mts +19 -0
- package/dist/src/builders/web/webPluginScan.d.mts.map +1 -0
- package/dist/src/builders/web/webPluginScan.mjs +54 -0
- package/dist/src/builders/web/webPluginScan.mjs.map +1 -0
- package/dist/src/builders/web/webPluginVite.cjs +255 -0
- package/dist/src/builders/web/webPluginVite.cjs.map +1 -0
- package/dist/src/builders/web/webPluginVite.d.mts +64 -0
- package/dist/src/builders/web/webPluginVite.d.mts.map +1 -0
- package/dist/src/builders/web/webPluginVite.mjs +242 -0
- package/dist/src/builders/web/webPluginVite.mjs.map +1 -0
- package/dist/src/cli/cliApp.cjs +187 -0
- package/dist/src/cli/cliApp.cjs.map +1 -0
- package/dist/src/cli/cliApp.d.mts +32 -0
- package/dist/src/cli/cliApp.d.mts.map +1 -0
- package/dist/src/cli/cliApp.mjs +184 -0
- package/dist/src/cli/cliApp.mjs.map +1 -0
- package/dist/src/cli/commands/api-export/index.cjs +66 -0
- package/dist/src/cli/commands/api-export/index.cjs.map +1 -0
- package/dist/src/cli/commands/api-export/index.mjs +62 -0
- package/dist/src/cli/commands/api-export/index.mjs.map +1 -0
- package/dist/src/cli/commands/baseCommand.cjs +16 -0
- package/dist/src/cli/commands/baseCommand.cjs.map +1 -0
- package/dist/src/cli/commands/baseCommand.d.mts +24 -0
- package/dist/src/cli/commands/baseCommand.d.mts.map +1 -0
- package/dist/src/cli/commands/baseCommand.mjs +16 -0
- package/dist/src/cli/commands/baseCommand.mjs.map +1 -0
- package/dist/src/cli/commands/compat/context.cjs +115 -0
- package/dist/src/cli/commands/compat/context.cjs.map +1 -0
- package/dist/src/cli/commands/compat/context.d.mts +22 -0
- package/dist/src/cli/commands/compat/context.d.mts.map +1 -0
- package/dist/src/cli/commands/compat/context.mjs +110 -0
- package/dist/src/cli/commands/compat/context.mjs.map +1 -0
- package/dist/src/cli/commands/compat/help.cjs +26 -0
- package/dist/src/cli/commands/compat/help.cjs.map +1 -0
- package/dist/src/cli/commands/compat/help.d.mts +4 -0
- package/dist/src/cli/commands/compat/help.d.mts.map +1 -0
- package/dist/src/cli/commands/compat/help.mjs +25 -0
- package/dist/src/cli/commands/compat/help.mjs.map +1 -0
- package/dist/src/cli/commands/compat/index.cjs +73 -0
- package/dist/src/cli/commands/compat/index.cjs.map +1 -0
- package/dist/src/cli/commands/compat/index.d.mts +14 -0
- package/dist/src/cli/commands/compat/index.d.mts.map +1 -0
- package/dist/src/cli/commands/compat/index.mjs +70 -0
- package/dist/src/cli/commands/compat/index.mjs.map +1 -0
- package/dist/src/cli/commands/compat/options.cjs +88 -0
- package/dist/src/cli/commands/compat/options.cjs.map +1 -0
- package/dist/src/cli/commands/compat/options.d.mts +15 -0
- package/dist/src/cli/commands/compat/options.d.mts.map +1 -0
- package/dist/src/cli/commands/compat/options.mjs +86 -0
- package/dist/src/cli/commands/compat/options.mjs.map +1 -0
- package/dist/src/cli/commands/compat/providers/antigravity.cjs +294 -0
- package/dist/src/cli/commands/compat/providers/antigravity.cjs.map +1 -0
- package/dist/src/cli/commands/compat/providers/antigravity.d.mts +9 -0
- package/dist/src/cli/commands/compat/providers/antigravity.d.mts.map +1 -0
- package/dist/src/cli/commands/compat/providers/antigravity.mjs +289 -0
- package/dist/src/cli/commands/compat/providers/antigravity.mjs.map +1 -0
- package/dist/src/cli/commands/compat/providers/codex.cjs +178 -0
- package/dist/src/cli/commands/compat/providers/codex.cjs.map +1 -0
- package/dist/src/cli/commands/compat/providers/codex.d.mts +17 -0
- package/dist/src/cli/commands/compat/providers/codex.d.mts.map +1 -0
- package/dist/src/cli/commands/compat/providers/codex.mjs +170 -0
- package/dist/src/cli/commands/compat/providers/codex.mjs.map +1 -0
- package/dist/src/cli/commands/compat/providers/index.cjs +65 -0
- package/dist/src/cli/commands/compat/providers/index.cjs.map +1 -0
- package/dist/src/cli/commands/compat/providers/index.d.mts +15 -0
- package/dist/src/cli/commands/compat/providers/index.d.mts.map +1 -0
- package/dist/src/cli/commands/compat/providers/index.mjs +45 -0
- package/dist/src/cli/commands/compat/providers/index.mjs.map +1 -0
- package/dist/src/cli/commands/compat/providers/process.cjs +172 -0
- package/dist/src/cli/commands/compat/providers/process.cjs.map +1 -0
- package/dist/src/cli/commands/compat/providers/process.d.mts +33 -0
- package/dist/src/cli/commands/compat/providers/process.d.mts.map +1 -0
- package/dist/src/cli/commands/compat/providers/process.mjs +159 -0
- package/dist/src/cli/commands/compat/providers/process.mjs.map +1 -0
- package/dist/src/cli/commands/compat/providers/shared.cjs +76 -0
- package/dist/src/cli/commands/compat/providers/shared.cjs.map +1 -0
- package/dist/src/cli/commands/compat/providers/shared.d.mts +40 -0
- package/dist/src/cli/commands/compat/providers/shared.d.mts.map +1 -0
- package/dist/src/cli/commands/compat/providers/shared.mjs +61 -0
- package/dist/src/cli/commands/compat/providers/shared.mjs.map +1 -0
- package/dist/src/cli/commands/compat/types.d.mts +31 -0
- package/dist/src/cli/commands/compat/types.d.mts.map +1 -0
- package/dist/src/cli/commands/doctor/help.cjs +19 -0
- package/dist/src/cli/commands/doctor/help.cjs.map +1 -0
- package/dist/src/cli/commands/doctor/help.d.mts +4 -0
- package/dist/src/cli/commands/doctor/help.d.mts.map +1 -0
- package/dist/src/cli/commands/doctor/help.mjs +19 -0
- package/dist/src/cli/commands/doctor/help.mjs.map +1 -0
- package/dist/src/cli/commands/doctor/index.cjs +118 -0
- package/dist/src/cli/commands/doctor/index.cjs.map +1 -0
- package/dist/src/cli/commands/doctor/index.d.mts +33 -0
- package/dist/src/cli/commands/doctor/index.d.mts.map +1 -0
- package/dist/src/cli/commands/doctor/index.mjs +113 -0
- package/dist/src/cli/commands/doctor/index.mjs.map +1 -0
- package/dist/src/cli/commands/emit-mcp/index.cjs +32 -0
- package/dist/src/cli/commands/emit-mcp/index.cjs.map +1 -0
- package/dist/src/cli/commands/emit-mcp/index.d.mts +19 -0
- package/dist/src/cli/commands/emit-mcp/index.d.mts.map +1 -0
- package/dist/src/cli/commands/emit-mcp/index.mjs +31 -0
- package/dist/src/cli/commands/emit-mcp/index.mjs.map +1 -0
- package/dist/src/cli/commands/explain/index.cjs +155 -0
- package/dist/src/cli/commands/explain/index.cjs.map +1 -0
- package/dist/src/cli/commands/explain/index.d.mts +57 -0
- package/dist/src/cli/commands/explain/index.d.mts.map +1 -0
- package/dist/src/cli/commands/explain/index.mjs +150 -0
- package/dist/src/cli/commands/explain/index.mjs.map +1 -0
- package/dist/src/cli/commands/init/constants.cjs +11 -0
- package/dist/src/cli/commands/init/constants.cjs.map +1 -0
- package/dist/src/cli/commands/init/constants.mjs +11 -0
- package/dist/src/cli/commands/init/constants.mjs.map +1 -0
- package/dist/src/cli/commands/init/help.cjs +17 -0
- package/dist/src/cli/commands/init/help.cjs.map +1 -0
- package/dist/src/cli/commands/init/help.d.mts +4 -0
- package/dist/src/cli/commands/init/help.d.mts.map +1 -0
- package/dist/src/cli/commands/init/help.mjs +17 -0
- package/dist/src/cli/commands/init/help.mjs.map +1 -0
- package/dist/src/cli/commands/init/index.cjs +67 -0
- package/dist/src/cli/commands/init/index.cjs.map +1 -0
- package/dist/src/cli/commands/init/index.d.mts +12 -0
- package/dist/src/cli/commands/init/index.d.mts.map +1 -0
- package/dist/src/cli/commands/init/index.mjs +63 -0
- package/dist/src/cli/commands/init/index.mjs.map +1 -0
- package/dist/src/cli/commands/init/presenter.cjs +140 -0
- package/dist/src/cli/commands/init/presenter.cjs.map +1 -0
- package/dist/src/cli/commands/init/presenter.d.mts +8 -0
- package/dist/src/cli/commands/init/presenter.d.mts.map +1 -0
- package/dist/src/cli/commands/init/presenter.mjs +140 -0
- package/dist/src/cli/commands/init/presenter.mjs.map +1 -0
- package/dist/src/cli/commands/sync/help.cjs +34 -0
- package/dist/src/cli/commands/sync/help.cjs.map +1 -0
- package/dist/src/cli/commands/sync/help.d.mts +4 -0
- package/dist/src/cli/commands/sync/help.d.mts.map +1 -0
- package/dist/src/cli/commands/sync/help.mjs +34 -0
- package/dist/src/cli/commands/sync/help.mjs.map +1 -0
- package/dist/src/cli/commands/sync/index.cjs +215 -0
- package/dist/src/cli/commands/sync/index.cjs.map +1 -0
- package/dist/src/cli/commands/sync/index.d.mts +20 -0
- package/dist/src/cli/commands/sync/index.d.mts.map +1 -0
- package/dist/src/cli/commands/sync/index.mjs +206 -0
- package/dist/src/cli/commands/sync/index.mjs.map +1 -0
- package/dist/src/cli/commands/sync/presenter.cjs +58 -0
- package/dist/src/cli/commands/sync/presenter.cjs.map +1 -0
- package/dist/src/cli/commands/sync/presenter.d.mts +16 -0
- package/dist/src/cli/commands/sync/presenter.d.mts.map +1 -0
- package/dist/src/cli/commands/sync/presenter.mjs +57 -0
- package/dist/src/cli/commands/sync/presenter.mjs.map +1 -0
- package/dist/src/cli/commands/sync/workflow.cjs +16 -0
- package/dist/src/cli/commands/sync/workflow.cjs.map +1 -0
- package/dist/src/cli/commands/sync/workflow.mjs +16 -0
- package/dist/src/cli/commands/sync/workflow.mjs.map +1 -0
- package/dist/src/cli/commands/web/index.cjs +88 -0
- package/dist/src/cli/commands/web/index.cjs.map +1 -0
- package/dist/src/cli/commands/web/index.mjs +85 -0
- package/dist/src/cli/commands/web/index.mjs.map +1 -0
- package/dist/src/cli/harnessOptions.cjs +70 -0
- package/dist/src/cli/harnessOptions.cjs.map +1 -0
- package/dist/src/cli/harnessOptions.d.mts +26 -0
- package/dist/src/cli/harnessOptions.d.mts.map +1 -0
- package/dist/src/cli/harnessOptions.mjs +66 -0
- package/dist/src/cli/harnessOptions.mjs.map +1 -0
- package/dist/src/cli/help.cjs +82 -0
- package/dist/src/cli/help.cjs.map +1 -0
- package/dist/src/cli/help.d.mts +10 -0
- package/dist/src/cli/help.d.mts.map +1 -0
- package/dist/src/cli/help.mjs +78 -0
- package/dist/src/cli/help.mjs.map +1 -0
- package/dist/src/cli/matrixOptions.cjs +178 -0
- package/dist/src/cli/matrixOptions.cjs.map +1 -0
- package/dist/src/cli/matrixOptions.d.mts +90 -0
- package/dist/src/cli/matrixOptions.d.mts.map +1 -0
- package/dist/src/cli/matrixOptions.mjs +151 -0
- package/dist/src/cli/matrixOptions.mjs.map +1 -0
- package/dist/src/cli/options.cjs +281 -0
- package/dist/src/cli/options.cjs.map +1 -0
- package/dist/src/cli/options.d.mts +5 -0
- package/dist/src/cli/options.d.mts.map +1 -0
- package/dist/src/cli/options.mjs +279 -0
- package/dist/src/cli/options.mjs.map +1 -0
- package/dist/src/cli/router.cjs +57 -0
- package/dist/src/cli/router.cjs.map +1 -0
- package/dist/src/cli/router.d.mts +32 -0
- package/dist/src/cli/router.d.mts.map +1 -0
- package/dist/src/cli/router.mjs +54 -0
- package/dist/src/cli/router.mjs.map +1 -0
- package/dist/src/cli/server/options.cjs +71 -0
- package/dist/src/cli/server/options.cjs.map +1 -0
- package/dist/src/cli/server/options.mjs +70 -0
- package/dist/src/cli/server/options.mjs.map +1 -0
- package/dist/src/cli/server/processGuards.cjs +83 -0
- package/dist/src/cli/server/processGuards.cjs.map +1 -0
- package/dist/src/cli/server/processGuards.mjs +79 -0
- package/dist/src/cli/server/processGuards.mjs.map +1 -0
- package/dist/src/cli/server/run.cjs +69 -0
- package/dist/src/cli/server/run.cjs.map +1 -0
- package/dist/src/cli/server/run.mjs +66 -0
- package/dist/src/cli/server/run.mjs.map +1 -0
- package/dist/src/composition/harnessState/index.cjs +48 -0
- package/dist/src/composition/harnessState/index.cjs.map +1 -0
- package/dist/src/composition/harnessState/index.d.mts +19 -0
- package/dist/src/composition/harnessState/index.d.mts.map +1 -0
- package/dist/src/composition/harnessState/index.mjs +34 -0
- package/dist/src/composition/harnessState/index.mjs.map +1 -0
- package/dist/src/composition/layerPackageInstaller/index.cjs +651 -0
- package/dist/src/composition/layerPackageInstaller/index.cjs.map +1 -0
- package/dist/src/composition/layerPackageInstaller/index.d.mts +74 -0
- package/dist/src/composition/layerPackageInstaller/index.d.mts.map +1 -0
- package/dist/src/composition/layerPackageInstaller/index.mjs +637 -0
- package/dist/src/composition/layerPackageInstaller/index.mjs.map +1 -0
- package/dist/src/composition/poHomeMigration/index.cjs +234 -0
- package/dist/src/composition/poHomeMigration/index.cjs.map +1 -0
- package/dist/src/composition/poHomeMigration/index.d.mts +12 -0
- package/dist/src/composition/poHomeMigration/index.d.mts.map +1 -0
- package/dist/src/composition/poHomeMigration/index.mjs +226 -0
- package/dist/src/composition/poHomeMigration/index.mjs.map +1 -0
- package/dist/src/composition/projectTrust/index.cjs +51 -0
- package/dist/src/composition/projectTrust/index.cjs.map +1 -0
- package/dist/src/composition/projectTrust/index.d.mts +22 -0
- package/dist/src/composition/projectTrust/index.d.mts.map +1 -0
- package/dist/src/composition/projectTrust/index.mjs +48 -0
- package/dist/src/composition/projectTrust/index.mjs.map +1 -0
- package/dist/src/composition/repository/index.cjs +68 -0
- package/dist/src/composition/repository/index.cjs.map +1 -0
- package/dist/src/composition/repository/index.d.mts +22 -0
- package/dist/src/composition/repository/index.d.mts.map +1 -0
- package/dist/src/composition/repository/index.mjs +63 -0
- package/dist/src/composition/repository/index.mjs.map +1 -0
- package/dist/src/composition/syncPrune/index.cjs +85 -0
- package/dist/src/composition/syncPrune/index.cjs.map +1 -0
- package/dist/src/composition/syncPrune/index.d.mts +33 -0
- package/dist/src/composition/syncPrune/index.d.mts.map +1 -0
- package/dist/src/composition/syncPrune/index.mjs +82 -0
- package/dist/src/composition/syncPrune/index.mjs.map +1 -0
- package/dist/src/composition/syncService/index.cjs +808 -0
- package/dist/src/composition/syncService/index.cjs.map +1 -0
- package/dist/src/composition/syncService/index.d.mts +65 -0
- package/dist/src/composition/syncService/index.d.mts.map +1 -0
- package/dist/src/composition/syncService/index.mjs +792 -0
- package/dist/src/composition/syncService/index.mjs.map +1 -0
- package/dist/src/composition/syncService/localBuilds.cjs +367 -0
- package/dist/src/composition/syncService/localBuilds.cjs.map +1 -0
- package/dist/src/composition/syncService/localBuilds.mjs +358 -0
- package/dist/src/composition/syncService/localBuilds.mjs.map +1 -0
- package/dist/src/composition/transitionLayers.cjs +17 -0
- package/dist/src/composition/transitionLayers.cjs.map +1 -0
- package/dist/src/composition/transitionLayers.d.mts +6 -0
- package/dist/src/composition/transitionLayers.d.mts.map +1 -0
- package/dist/src/composition/transitionLayers.mjs +16 -0
- package/dist/src/composition/transitionLayers.mjs.map +1 -0
- package/dist/src/composition/types/harness.d.mts +52 -0
- package/dist/src/composition/types/harness.d.mts.map +1 -0
- package/dist/src/extensions/setupDiagnostics.cjs +65 -0
- package/dist/src/extensions/setupDiagnostics.cjs.map +1 -0
- package/dist/src/extensions/setupDiagnostics.mjs +64 -0
- package/dist/src/extensions/setupDiagnostics.mjs.map +1 -0
- package/dist/utils.cjs +4 -0
- package/dist/utils.d.mts +2 -0
- package/dist/utils.mjs +2 -0
- package/dist/webBuilder.cjs +59 -0
- package/dist/webBuilder.d.mts +9 -0
- package/dist/webBuilder.mjs +9 -0
- package/docs/server/api-export.md +86 -0
- package/docs/server/api.md +144 -0
- package/docs/server/getting-started.md +114 -0
- package/docs/server/index.md +67 -0
- package/docs/server/ipc.md +97 -0
- package/docs/server/lifecycle.md +108 -0
- package/docs/server/security.md +101 -0
- package/llms.txt +12 -0
- package/package.json +295 -0
- package/src/prompts/po-author-extension/SKILL.md +35 -0
- package/src/prompts/po-author-extension/references/extension-contract.md +134 -0
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
const require_runtime = require("../../_virtual/_rolldown/runtime.cjs");
|
|
2
|
+
const require_matrixOptions = require("./matrixOptions.cjs");
|
|
3
|
+
let node_path = require("node:path");
|
|
4
|
+
node_path = require_runtime.__toESM(node_path, 1);
|
|
5
|
+
let _agimon_ai_po_config_domains = require("@agimon-ai/po-config/domains");
|
|
6
|
+
//#region src/cli/options.ts
|
|
7
|
+
const KIMI_FOR_CODING = "kimi-for-coding";
|
|
8
|
+
const KIMI_FOR_CODING_HIGHSPEED = "kimi-for-coding-highspeed";
|
|
9
|
+
const KIMI_K2_6 = "kimi-k2.6";
|
|
10
|
+
const DEFAULT_PRESET = "default";
|
|
11
|
+
const KIMI_PRESET = "kimi";
|
|
12
|
+
const KIMI_CODING_PREFIX = "kimi-coding/";
|
|
13
|
+
const NATIVE_FORMAT = "native";
|
|
14
|
+
const KIMI_CODE_MODEL_ENV = "KIMI_CODE_MODEL";
|
|
15
|
+
const MODEL_OPTION = "--model";
|
|
16
|
+
const MODEL_SHORT_OPTION = "-m";
|
|
17
|
+
const MODE_OPTION = "--mode";
|
|
18
|
+
const THINKING_OPTION = "--thinking";
|
|
19
|
+
const PRINT_OPTION = "--print";
|
|
20
|
+
const PRINT_SHORT_OPTION = "-p";
|
|
21
|
+
const APPROVE_OPTION = "--approve";
|
|
22
|
+
const APPROVE_SHORT_OPTION = "-a";
|
|
23
|
+
const PROFILES_OPTION = "--profiles";
|
|
24
|
+
const NO_DOMAINS_OPTION = "--no-domains";
|
|
25
|
+
const PRESET_OPTION = "--preset";
|
|
26
|
+
const EFFORT_OPTION = "--effort";
|
|
27
|
+
const OUTPUT_FORMAT_OPTION = "--output-format";
|
|
28
|
+
const VIBE_LINT_FORMAT = "vibe-lint";
|
|
29
|
+
const STREAM_JSON_FORMAT = "stream-json";
|
|
30
|
+
const JSON_FORMAT = "json";
|
|
31
|
+
const EXPLAIN_OPTION = "--explain";
|
|
32
|
+
const EMIT_MCP_OPTION = "--emit-mcp";
|
|
33
|
+
const PLUGIN_DIRECTORY_OPTION = "--plugin-dir";
|
|
34
|
+
const CWD_OPTION = "--cwd";
|
|
35
|
+
const CD_OPTION = "--cd";
|
|
36
|
+
const AUTOMATION_OPTION = "--automation";
|
|
37
|
+
const ALLOW_PROTECTED_WRITES_OPTION = "--allow-protected-writes";
|
|
38
|
+
const HOOKS_OPTION = "--hooks";
|
|
39
|
+
const MCP_OPTION = "--mcp";
|
|
40
|
+
const AGENTS_OPTION = "--agents";
|
|
41
|
+
const NO_HOOKS_OPTION = "--no-hooks";
|
|
42
|
+
const NO_MCP_OPTION = "--no-mcp";
|
|
43
|
+
const NO_AGENTS_OPTION = "--no-agents";
|
|
44
|
+
const VERBOSE_OPTION = "--verbose";
|
|
45
|
+
const DANGEROUSLY_SKIP_PERMISSIONS_OPTION = "--dangerously-skip-permissions";
|
|
46
|
+
const HELP_OPTION = "--help";
|
|
47
|
+
const HELP_SHORT_OPTION = "-h";
|
|
48
|
+
const VERSION_OPTION = "--version";
|
|
49
|
+
const VERSION_SHORT_OPTION = "-v";
|
|
50
|
+
const KIMI_ALIASES = /* @__PURE__ */ new Map([
|
|
51
|
+
["k2p5", KIMI_FOR_CODING],
|
|
52
|
+
["k2p6", KIMI_FOR_CODING],
|
|
53
|
+
["k2p7", KIMI_FOR_CODING],
|
|
54
|
+
["kimi-k2.5", KIMI_FOR_CODING],
|
|
55
|
+
[KIMI_K2_6, KIMI_FOR_CODING],
|
|
56
|
+
["kimi-k2.7-code", KIMI_FOR_CODING],
|
|
57
|
+
[KIMI_FOR_CODING, KIMI_FOR_CODING],
|
|
58
|
+
[KIMI_FOR_CODING_HIGHSPEED, KIMI_FOR_CODING_HIGHSPEED]
|
|
59
|
+
]);
|
|
60
|
+
function parsePreset(value) {
|
|
61
|
+
if (value === DEFAULT_PRESET || value === KIMI_PRESET) return value;
|
|
62
|
+
throw new Error(`Unsupported preset: ${value}`);
|
|
63
|
+
}
|
|
64
|
+
function hasOption(args, ...names) {
|
|
65
|
+
return args.some((arg) => names.includes(arg) || names.some((name) => arg.startsWith(`${name}=`)));
|
|
66
|
+
}
|
|
67
|
+
function modelValue(args) {
|
|
68
|
+
for (let index = 0; index < args.length; index += 1) {
|
|
69
|
+
if (args[index] === MODEL_OPTION || args[index] === MODEL_SHORT_OPTION) {
|
|
70
|
+
const value = args[index + 1];
|
|
71
|
+
if (value) return {
|
|
72
|
+
index,
|
|
73
|
+
value,
|
|
74
|
+
inline: false
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
if (args[index]?.startsWith(`${MODEL_OPTION}=`)) return {
|
|
78
|
+
index,
|
|
79
|
+
value: args[index].slice(`${MODEL_OPTION}=`.length),
|
|
80
|
+
inline: true
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
function replaceModel(args, value) {
|
|
85
|
+
const selected = modelValue(args);
|
|
86
|
+
if (!selected) args.unshift(MODEL_OPTION, value);
|
|
87
|
+
else if (selected.inline) args[selected.index] = `${MODEL_OPTION}=${value}`;
|
|
88
|
+
else args[selected.index + 1] = value;
|
|
89
|
+
}
|
|
90
|
+
function normalizeProviderArgs(preset, piArgs, environment) {
|
|
91
|
+
const selected = modelValue(piArgs);
|
|
92
|
+
if (preset === KIMI_PRESET) {
|
|
93
|
+
const value = selected?.value ?? environment[KIMI_CODE_MODEL_ENV] ?? KIMI_FOR_CODING;
|
|
94
|
+
const unqualified = value.includes("/") ? value.slice(value.indexOf("/") + 1) : value;
|
|
95
|
+
replaceModel(piArgs, `${KIMI_CODING_PREFIX}${KIMI_ALIASES.get(unqualified) ?? unqualified}`);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Answers `--help` and `--version` without reading the environment.
|
|
100
|
+
*
|
|
101
|
+
* The caller only looks at `help` and `version` for these, and never launches,
|
|
102
|
+
* so the options carry defaults rather than a resolved matrix. This exists so a
|
|
103
|
+
* stale export cannot break the one command that explains how to fix it.
|
|
104
|
+
*/
|
|
105
|
+
function parseInformationalArgs(args, currentDirectory) {
|
|
106
|
+
const help = args.some((arg) => arg === HELP_OPTION || arg === HELP_SHORT_OPTION);
|
|
107
|
+
const version = args.some((arg) => arg === VERSION_OPTION || arg === VERSION_SHORT_OPTION);
|
|
108
|
+
if (!help && !version) return void 0;
|
|
109
|
+
return {
|
|
110
|
+
options: {
|
|
111
|
+
cwd: currentDirectory,
|
|
112
|
+
profile: void 0,
|
|
113
|
+
domains: [],
|
|
114
|
+
majorMode: require_matrixOptions.DEFAULT_MAJOR_MODE,
|
|
115
|
+
explain: false,
|
|
116
|
+
emitMcp: void 0,
|
|
117
|
+
pluginDirectories: [],
|
|
118
|
+
additionalDirectories: [],
|
|
119
|
+
preset: DEFAULT_PRESET,
|
|
120
|
+
outputFormat: NATIVE_FORMAT,
|
|
121
|
+
automation: false,
|
|
122
|
+
allowProtectedWrites: false,
|
|
123
|
+
hooks: true,
|
|
124
|
+
mcp: true,
|
|
125
|
+
agents: true,
|
|
126
|
+
piArgs: []
|
|
127
|
+
},
|
|
128
|
+
help,
|
|
129
|
+
version
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
function parseHarnessArgs(args, environment = process.env, currentDirectory = process.cwd(), defaultMajorMode = require_matrixOptions.DEFAULT_MAJOR_MODE, defaultDomains, defaultProfile) {
|
|
133
|
+
const informational = parseInformationalArgs(args, currentDirectory);
|
|
134
|
+
if (informational) return informational;
|
|
135
|
+
let profile = require_matrixOptions.resolveInheritedProfile(environment) ?? defaultProfile;
|
|
136
|
+
let profileProvided = false;
|
|
137
|
+
let majorMode = require_matrixOptions.resolveInheritedMajorMode(environment, defaultMajorMode);
|
|
138
|
+
let majorModeProvided = false;
|
|
139
|
+
const domains = [];
|
|
140
|
+
const pluginDirectoryValues = [];
|
|
141
|
+
const additionalDirectoryValues = [];
|
|
142
|
+
const piArgs = [];
|
|
143
|
+
let cwd = currentDirectory;
|
|
144
|
+
let preset = parsePreset(environment["PO_PRESET"] ?? DEFAULT_PRESET);
|
|
145
|
+
let outputFormat = NATIVE_FORMAT;
|
|
146
|
+
let domainsDisabled = false;
|
|
147
|
+
let automation = false;
|
|
148
|
+
let allowProtectedWrites = false;
|
|
149
|
+
let hooks = true;
|
|
150
|
+
let mcp = true;
|
|
151
|
+
let agents = true;
|
|
152
|
+
let help = false;
|
|
153
|
+
let version = false;
|
|
154
|
+
let explain = false;
|
|
155
|
+
let emitMcp;
|
|
156
|
+
for (let index = 0; index < args.length; index += 1) {
|
|
157
|
+
const arg = args[index];
|
|
158
|
+
if (require_matrixOptions.matchesOption(arg, "--target")) throw new Error(`${require_matrixOptions.REMOVED_TARGET_OPTION} was replaced by ${require_matrixOptions.MAJOR_MODE_OPTION}`);
|
|
159
|
+
if (require_matrixOptions.matchesOption(arg, "--layer")) throw new Error(`${require_matrixOptions.REMOVED_LAYER_OPTION} was replaced by ${require_matrixOptions.MAJOR_MODE_OPTION}`);
|
|
160
|
+
if (require_matrixOptions.matchesOption(arg, "--layers")) throw new Error(`${require_matrixOptions.REMOVED_LAYERS_OPTION} was removed; select one major mode with ${require_matrixOptions.MAJOR_MODE_OPTION}`);
|
|
161
|
+
if (require_matrixOptions.matchesOption(arg, PROFILES_OPTION)) throw new Error(`${PROFILES_OPTION} was replaced by ${require_matrixOptions.DOMAINS_OPTION}`);
|
|
162
|
+
const majorModeMatch = require_matrixOptions.readOption(args, index, require_matrixOptions.MAJOR_MODE_OPTION);
|
|
163
|
+
if (majorModeMatch) {
|
|
164
|
+
if (majorModeProvided) throw new Error(`${require_matrixOptions.MAJOR_MODE_OPTION} can only be provided once`);
|
|
165
|
+
majorMode = require_matrixOptions.parseMajorMode(majorModeMatch.value, require_matrixOptions.MAJOR_MODE_OPTION);
|
|
166
|
+
majorModeProvided = true;
|
|
167
|
+
index = majorModeMatch.nextIndex;
|
|
168
|
+
continue;
|
|
169
|
+
}
|
|
170
|
+
const profileMatch = require_matrixOptions.readOption(args, index, require_matrixOptions.PROFILE_OPTION);
|
|
171
|
+
if (profileMatch) {
|
|
172
|
+
if (profileProvided) throw new Error(`${require_matrixOptions.PROFILE_OPTION} can only be provided once`);
|
|
173
|
+
profile = require_matrixOptions.parseProfileValue(profileMatch.value, require_matrixOptions.PROFILE_OPTION);
|
|
174
|
+
profileProvided = true;
|
|
175
|
+
index = profileMatch.nextIndex;
|
|
176
|
+
continue;
|
|
177
|
+
}
|
|
178
|
+
const domainMatch = require_matrixOptions.readOption(args, index, "--domains") ?? require_matrixOptions.readOption(args, index, "--domain");
|
|
179
|
+
if (domainMatch) {
|
|
180
|
+
domains.push(...require_matrixOptions.parseCsv(domainMatch.value));
|
|
181
|
+
index = domainMatch.nextIndex;
|
|
182
|
+
continue;
|
|
183
|
+
}
|
|
184
|
+
const emitMcpMatch = require_matrixOptions.readOption(args, index, EMIT_MCP_OPTION);
|
|
185
|
+
if (emitMcpMatch) {
|
|
186
|
+
emitMcp = node_path.default.resolve(currentDirectory, emitMcpMatch.value);
|
|
187
|
+
index = emitMcpMatch.nextIndex;
|
|
188
|
+
continue;
|
|
189
|
+
}
|
|
190
|
+
const pluginDirectoryMatch = require_matrixOptions.readOption(args, index, PLUGIN_DIRECTORY_OPTION);
|
|
191
|
+
if (pluginDirectoryMatch) {
|
|
192
|
+
pluginDirectoryValues.push(pluginDirectoryMatch.value);
|
|
193
|
+
index = pluginDirectoryMatch.nextIndex;
|
|
194
|
+
continue;
|
|
195
|
+
}
|
|
196
|
+
const addDirectoryMatch = require_matrixOptions.readOption(args, index, require_matrixOptions.ADD_DIRECTORY_OPTION);
|
|
197
|
+
if (addDirectoryMatch) {
|
|
198
|
+
additionalDirectoryValues.push(addDirectoryMatch.value);
|
|
199
|
+
index = addDirectoryMatch.nextIndex;
|
|
200
|
+
continue;
|
|
201
|
+
}
|
|
202
|
+
const presetMatch = require_matrixOptions.readOption(args, index, PRESET_OPTION);
|
|
203
|
+
if (presetMatch) {
|
|
204
|
+
preset = parsePreset(presetMatch.value);
|
|
205
|
+
index = presetMatch.nextIndex;
|
|
206
|
+
continue;
|
|
207
|
+
}
|
|
208
|
+
const cwdMatch = require_matrixOptions.readOption(args, index, CWD_OPTION) ?? require_matrixOptions.readOption(args, index, CD_OPTION);
|
|
209
|
+
if (cwdMatch) {
|
|
210
|
+
cwd = node_path.default.resolve(currentDirectory, cwdMatch.value);
|
|
211
|
+
index = cwdMatch.nextIndex;
|
|
212
|
+
continue;
|
|
213
|
+
}
|
|
214
|
+
const effortMatch = require_matrixOptions.readOption(args, index, EFFORT_OPTION);
|
|
215
|
+
if (effortMatch) {
|
|
216
|
+
if (effortMatch.inline) piArgs.push(`${THINKING_OPTION}=${effortMatch.value}`);
|
|
217
|
+
else piArgs.push(THINKING_OPTION, effortMatch.value);
|
|
218
|
+
index = effortMatch.nextIndex;
|
|
219
|
+
continue;
|
|
220
|
+
}
|
|
221
|
+
const outputFormatMatch = require_matrixOptions.readOption(args, index, OUTPUT_FORMAT_OPTION);
|
|
222
|
+
if (outputFormatMatch) {
|
|
223
|
+
const requested = outputFormatMatch.value;
|
|
224
|
+
if (requested === VIBE_LINT_FORMAT) outputFormat = VIBE_LINT_FORMAT;
|
|
225
|
+
else {
|
|
226
|
+
const mode = requested === STREAM_JSON_FORMAT ? JSON_FORMAT : requested;
|
|
227
|
+
if (outputFormatMatch.inline) piArgs.push(`${MODE_OPTION}=${mode}`);
|
|
228
|
+
else piArgs.push(MODE_OPTION, mode);
|
|
229
|
+
}
|
|
230
|
+
index = outputFormatMatch.nextIndex;
|
|
231
|
+
continue;
|
|
232
|
+
}
|
|
233
|
+
if (arg === NO_DOMAINS_OPTION) domainsDisabled = true;
|
|
234
|
+
else if (arg === EXPLAIN_OPTION) explain = true;
|
|
235
|
+
else if (arg === AUTOMATION_OPTION) automation = true;
|
|
236
|
+
else if (arg === ALLOW_PROTECTED_WRITES_OPTION) allowProtectedWrites = true;
|
|
237
|
+
else if (arg === HOOKS_OPTION) hooks = true;
|
|
238
|
+
else if (arg === MCP_OPTION) mcp = true;
|
|
239
|
+
else if (arg === AGENTS_OPTION) agents = true;
|
|
240
|
+
else if (arg === NO_HOOKS_OPTION) hooks = false;
|
|
241
|
+
else if (arg === NO_MCP_OPTION) mcp = false;
|
|
242
|
+
else if (arg === NO_AGENTS_OPTION) agents = false;
|
|
243
|
+
else if (arg === HELP_OPTION || arg === HELP_SHORT_OPTION) help = true;
|
|
244
|
+
else if (arg === VERSION_OPTION || arg === VERSION_SHORT_OPTION) version = true;
|
|
245
|
+
else if (arg !== VERBOSE_OPTION && arg !== DANGEROUSLY_SKIP_PERMISSIONS_OPTION) piArgs.push(arg);
|
|
246
|
+
}
|
|
247
|
+
if (domainsDisabled && domains.length > 0) throw new Error(`${NO_DOMAINS_OPTION} cannot be combined with ${require_matrixOptions.DOMAINS_OPTION}`);
|
|
248
|
+
if (!domainsDisabled && domains.length === 0 && pluginDirectoryValues.length === 0) domains.push(...(0, _agimon_ai_po_config_domains.defaultDomainsForMajorMode)(majorMode, environment, defaultDomains));
|
|
249
|
+
if (automation) {
|
|
250
|
+
if (!hasOption(piArgs, PRINT_OPTION, PRINT_SHORT_OPTION)) piArgs.unshift(PRINT_OPTION);
|
|
251
|
+
if (!hasOption(piArgs, MODE_OPTION)) piArgs.unshift(MODE_OPTION, JSON_FORMAT);
|
|
252
|
+
if (!hasOption(piArgs, APPROVE_OPTION, APPROVE_SHORT_OPTION)) piArgs.unshift(APPROVE_OPTION);
|
|
253
|
+
}
|
|
254
|
+
normalizeProviderArgs(preset, piArgs, environment);
|
|
255
|
+
return {
|
|
256
|
+
options: {
|
|
257
|
+
cwd,
|
|
258
|
+
profile,
|
|
259
|
+
domains,
|
|
260
|
+
majorMode,
|
|
261
|
+
explain,
|
|
262
|
+
emitMcp,
|
|
263
|
+
pluginDirectories: pluginDirectoryValues.map((value) => node_path.default.resolve(currentDirectory, value)),
|
|
264
|
+
additionalDirectories: [.../* @__PURE__ */ new Set([...require_matrixOptions.resolveAdditionalDirectories(environment, currentDirectory), ...additionalDirectoryValues.map((value) => node_path.default.resolve(currentDirectory, value))])],
|
|
265
|
+
preset,
|
|
266
|
+
outputFormat,
|
|
267
|
+
automation,
|
|
268
|
+
allowProtectedWrites,
|
|
269
|
+
hooks,
|
|
270
|
+
mcp,
|
|
271
|
+
agents,
|
|
272
|
+
piArgs
|
|
273
|
+
},
|
|
274
|
+
help,
|
|
275
|
+
version
|
|
276
|
+
};
|
|
277
|
+
}
|
|
278
|
+
//#endregion
|
|
279
|
+
exports.parseHarnessArgs = parseHarnessArgs;
|
|
280
|
+
|
|
281
|
+
//# sourceMappingURL=options.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"options.cjs","names":["DEFAULT_MAJOR_MODE","resolveInheritedProfile","resolveInheritedMajorMode","matchesOption","REMOVED_TARGET_OPTION","MAJOR_MODE_OPTION","REMOVED_LAYER_OPTION","REMOVED_LAYERS_OPTION","DOMAINS_OPTION","readOption","parseMajorMode","PROFILE_OPTION","parseProfileValue","parseCsv","path","ADD_DIRECTORY_OPTION","defaultDomainsForMajorMode","resolveAdditionalDirectories"],"sources":["../../../src/cli/options.ts"],"sourcesContent":["import path from 'node:path';\n\nimport { defaultDomainsForMajorMode } from '@agimon-ai/po-config/domains';\n\nimport type { HarnessOutputFormat, HarnessPreset, ParsedHarnessArgs } from '../composition/types/harness';\nimport {\n ADD_DIRECTORY_OPTION,\n DEFAULT_MAJOR_MODE,\n DOMAIN_OPTION,\n DOMAINS_OPTION,\n PO_PRESET_ENV,\n MAJOR_MODE_OPTION,\n matchesOption,\n PROFILE_OPTION,\n parseCsv,\n parseMajorMode,\n parseProfileValue,\n REMOVED_LAYER_OPTION,\n REMOVED_LAYERS_OPTION,\n REMOVED_TARGET_OPTION,\n readOption,\n resolveAdditionalDirectories,\n resolveInheritedMajorMode,\n resolveInheritedProfile,\n} from './matrixOptions';\n\nconst KIMI_FOR_CODING = 'kimi-for-coding';\nconst KIMI_FOR_CODING_HIGHSPEED = 'kimi-for-coding-highspeed';\nconst KIMI_K2_6 = 'kimi-k2.6';\nconst DEFAULT_PRESET = 'default';\nconst KIMI_PRESET = 'kimi';\nconst KIMI_CODING_PREFIX = 'kimi-coding/';\nconst NATIVE_FORMAT = 'native';\nconst KIMI_CODE_MODEL_ENV = 'KIMI_CODE_MODEL';\nconst MODEL_OPTION = '--model';\nconst MODEL_SHORT_OPTION = '-m';\nconst MODE_OPTION = '--mode';\nconst THINKING_OPTION = '--thinking';\nconst PRINT_OPTION = '--print';\nconst PRINT_SHORT_OPTION = '-p';\nconst APPROVE_OPTION = '--approve';\nconst APPROVE_SHORT_OPTION = '-a';\nconst PROFILES_OPTION = '--profiles';\nconst NO_DOMAINS_OPTION = '--no-domains';\nconst PRESET_OPTION = '--preset';\nconst EFFORT_OPTION = '--effort';\nconst OUTPUT_FORMAT_OPTION = '--output-format';\nconst VIBE_LINT_FORMAT = 'vibe-lint';\nconst STREAM_JSON_FORMAT = 'stream-json';\nconst JSON_FORMAT = 'json';\nconst EXPLAIN_OPTION = '--explain';\nconst EMIT_MCP_OPTION = '--emit-mcp';\nconst PLUGIN_DIRECTORY_OPTION = '--plugin-dir';\nconst CWD_OPTION = '--cwd';\nconst CD_OPTION = '--cd';\nconst AUTOMATION_OPTION = '--automation';\nconst ALLOW_PROTECTED_WRITES_OPTION = '--allow-protected-writes';\nconst HOOKS_OPTION = '--hooks';\nconst MCP_OPTION = '--mcp';\nconst AGENTS_OPTION = '--agents';\nconst NO_HOOKS_OPTION = '--no-hooks';\nconst NO_MCP_OPTION = '--no-mcp';\nconst NO_AGENTS_OPTION = '--no-agents';\nconst VERBOSE_OPTION = '--verbose';\nconst DANGEROUSLY_SKIP_PERMISSIONS_OPTION = '--dangerously-skip-permissions';\nconst HELP_OPTION = '--help';\nconst HELP_SHORT_OPTION = '-h';\nconst VERSION_OPTION = '--version';\nconst VERSION_SHORT_OPTION = '-v';\n\nconst KIMI_ALIASES = new Map([\n ['k2p5', KIMI_FOR_CODING],\n ['k2p6', KIMI_FOR_CODING],\n ['k2p7', KIMI_FOR_CODING],\n ['kimi-k2.5', KIMI_FOR_CODING],\n [KIMI_K2_6, KIMI_FOR_CODING],\n ['kimi-k2.7-code', KIMI_FOR_CODING],\n [KIMI_FOR_CODING, KIMI_FOR_CODING],\n [KIMI_FOR_CODING_HIGHSPEED, KIMI_FOR_CODING_HIGHSPEED],\n]);\n\nfunction parsePreset(value: string): HarnessPreset {\n if (value === DEFAULT_PRESET || value === KIMI_PRESET) return value;\n throw new Error(`Unsupported preset: ${value}`);\n}\n\nfunction hasOption(args: string[], ...names: string[]): boolean {\n return args.some((arg) => names.includes(arg) || names.some((name) => arg.startsWith(`${name}=`)));\n}\n\nfunction modelValue(args: string[]): { index: number; value: string; inline: boolean } | undefined {\n for (let index = 0; index < args.length; index += 1) {\n if (args[index] === MODEL_OPTION || args[index] === MODEL_SHORT_OPTION) {\n const value = args[index + 1];\n if (value) return { index, value, inline: false };\n }\n if (args[index]?.startsWith(`${MODEL_OPTION}=`)) {\n return { index, value: args[index].slice(`${MODEL_OPTION}=`.length), inline: true };\n }\n }\n return undefined;\n}\n\nfunction replaceModel(args: string[], value: string): void {\n const selected = modelValue(args);\n if (!selected) {\n args.unshift(MODEL_OPTION, value);\n } else if (selected.inline) {\n args[selected.index] = `${MODEL_OPTION}=${value}`;\n } else {\n args[selected.index + 1] = value;\n }\n}\n\nfunction normalizeProviderArgs(preset: HarnessPreset, piArgs: string[], environment: NodeJS.ProcessEnv): void {\n const selected = modelValue(piArgs);\n if (preset === KIMI_PRESET) {\n const value = selected?.value ?? environment[KIMI_CODE_MODEL_ENV] ?? KIMI_FOR_CODING;\n const unqualified = value.includes('/') ? value.slice(value.indexOf('/') + 1) : value;\n replaceModel(piArgs, `${KIMI_CODING_PREFIX}${KIMI_ALIASES.get(unqualified) ?? unqualified}`);\n }\n}\n\n/**\n * Answers `--help` and `--version` without reading the environment.\n *\n * The caller only looks at `help` and `version` for these, and never launches,\n * so the options carry defaults rather than a resolved matrix. This exists so a\n * stale export cannot break the one command that explains how to fix it.\n */\nfunction parseInformationalArgs(args: string[], currentDirectory: string): ParsedHarnessArgs | undefined {\n const help = args.some((arg) => arg === HELP_OPTION || arg === HELP_SHORT_OPTION);\n const version = args.some((arg) => arg === VERSION_OPTION || arg === VERSION_SHORT_OPTION);\n if (!help && !version) return undefined;\n return {\n options: {\n cwd: currentDirectory,\n profile: undefined,\n domains: [],\n majorMode: DEFAULT_MAJOR_MODE,\n explain: false,\n emitMcp: undefined,\n pluginDirectories: [],\n additionalDirectories: [],\n preset: DEFAULT_PRESET,\n outputFormat: NATIVE_FORMAT,\n automation: false,\n allowProtectedWrites: false,\n hooks: true,\n mcp: true,\n agents: true,\n piArgs: [],\n },\n help,\n version,\n };\n}\n\nexport function parseHarnessArgs(\n args: string[],\n environment: NodeJS.ProcessEnv = process.env,\n currentDirectory = process.cwd(),\n defaultMajorMode: string = DEFAULT_MAJOR_MODE,\n defaultDomains?: readonly string[],\n defaultProfile?: string,\n): ParsedHarnessArgs {\n const informational = parseInformationalArgs(args, currentDirectory);\n if (informational) return informational;\n\n // An inherited profile wins: a nested run stays on the persona its parent\n // chose rather than snapping back to the repository default.\n let profile = resolveInheritedProfile(environment) ?? defaultProfile;\n let profileProvided = false;\n let majorMode = resolveInheritedMajorMode(environment, defaultMajorMode);\n let majorModeProvided = false;\n const domains: string[] = [];\n // Directory options are collected verbatim and resolved once after the loop,\n // so a relative path means the same thing regardless of where --cwd appears\n // in the argument list.\n const pluginDirectoryValues: string[] = [];\n const additionalDirectoryValues: string[] = [];\n const piArgs: string[] = [];\n let cwd = currentDirectory;\n let preset = parsePreset(environment[PO_PRESET_ENV] ?? DEFAULT_PRESET);\n let outputFormat: HarnessOutputFormat = NATIVE_FORMAT;\n let domainsDisabled = false;\n let automation = false;\n let allowProtectedWrites = false;\n let hooks = true;\n let mcp = true;\n let agents = true;\n let help = false;\n let version = false;\n let explain = false;\n let emitMcp: string | undefined;\n\n for (let index = 0; index < args.length; index += 1) {\n const arg = args[index]!;\n\n if (matchesOption(arg, REMOVED_TARGET_OPTION)) {\n throw new Error(`${REMOVED_TARGET_OPTION} was replaced by ${MAJOR_MODE_OPTION}`);\n }\n if (matchesOption(arg, REMOVED_LAYER_OPTION)) {\n throw new Error(`${REMOVED_LAYER_OPTION} was replaced by ${MAJOR_MODE_OPTION}`);\n }\n if (matchesOption(arg, REMOVED_LAYERS_OPTION)) {\n throw new Error(`${REMOVED_LAYERS_OPTION} was removed; select one major mode with ${MAJOR_MODE_OPTION}`);\n }\n if (matchesOption(arg, PROFILES_OPTION)) {\n throw new Error(`${PROFILES_OPTION} was replaced by ${DOMAINS_OPTION}`);\n }\n\n const majorModeMatch = readOption(args, index, MAJOR_MODE_OPTION);\n if (majorModeMatch) {\n if (majorModeProvided) throw new Error(`${MAJOR_MODE_OPTION} can only be provided once`);\n majorMode = parseMajorMode(majorModeMatch.value, MAJOR_MODE_OPTION);\n majorModeProvided = true;\n index = majorModeMatch.nextIndex;\n continue;\n }\n\n const profileMatch = readOption(args, index, PROFILE_OPTION);\n if (profileMatch) {\n if (profileProvided) throw new Error(`${PROFILE_OPTION} can only be provided once`);\n profile = parseProfileValue(profileMatch.value, PROFILE_OPTION);\n profileProvided = true;\n index = profileMatch.nextIndex;\n continue;\n }\n\n const domainMatch = readOption(args, index, DOMAINS_OPTION) ?? readOption(args, index, DOMAIN_OPTION);\n if (domainMatch) {\n domains.push(...parseCsv(domainMatch.value));\n index = domainMatch.nextIndex;\n continue;\n }\n\n const emitMcpMatch = readOption(args, index, EMIT_MCP_OPTION);\n if (emitMcpMatch) {\n emitMcp = path.resolve(currentDirectory, emitMcpMatch.value);\n index = emitMcpMatch.nextIndex;\n continue;\n }\n\n const pluginDirectoryMatch = readOption(args, index, PLUGIN_DIRECTORY_OPTION);\n if (pluginDirectoryMatch) {\n pluginDirectoryValues.push(pluginDirectoryMatch.value);\n index = pluginDirectoryMatch.nextIndex;\n continue;\n }\n\n const addDirectoryMatch = readOption(args, index, ADD_DIRECTORY_OPTION);\n if (addDirectoryMatch) {\n additionalDirectoryValues.push(addDirectoryMatch.value);\n index = addDirectoryMatch.nextIndex;\n continue;\n }\n\n const presetMatch = readOption(args, index, PRESET_OPTION);\n if (presetMatch) {\n preset = parsePreset(presetMatch.value);\n index = presetMatch.nextIndex;\n continue;\n }\n\n const cwdMatch = readOption(args, index, CWD_OPTION) ?? readOption(args, index, CD_OPTION);\n if (cwdMatch) {\n cwd = path.resolve(currentDirectory, cwdMatch.value);\n index = cwdMatch.nextIndex;\n continue;\n }\n\n const effortMatch = readOption(args, index, EFFORT_OPTION);\n if (effortMatch) {\n if (effortMatch.inline) piArgs.push(`${THINKING_OPTION}=${effortMatch.value}`);\n else piArgs.push(THINKING_OPTION, effortMatch.value);\n index = effortMatch.nextIndex;\n continue;\n }\n\n const outputFormatMatch = readOption(args, index, OUTPUT_FORMAT_OPTION);\n if (outputFormatMatch) {\n const requested = outputFormatMatch.value;\n if (requested === VIBE_LINT_FORMAT) {\n outputFormat = VIBE_LINT_FORMAT;\n } else {\n const mode = requested === STREAM_JSON_FORMAT ? JSON_FORMAT : requested;\n if (outputFormatMatch.inline) piArgs.push(`${MODE_OPTION}=${mode}`);\n else piArgs.push(MODE_OPTION, mode);\n }\n index = outputFormatMatch.nextIndex;\n continue;\n }\n\n if (arg === NO_DOMAINS_OPTION) domainsDisabled = true;\n else if (arg === EXPLAIN_OPTION) explain = true;\n else if (arg === AUTOMATION_OPTION) automation = true;\n else if (arg === ALLOW_PROTECTED_WRITES_OPTION) allowProtectedWrites = true;\n else if (arg === HOOKS_OPTION) hooks = true;\n else if (arg === MCP_OPTION) mcp = true;\n else if (arg === AGENTS_OPTION) agents = true;\n else if (arg === NO_HOOKS_OPTION) hooks = false;\n else if (arg === NO_MCP_OPTION) mcp = false;\n else if (arg === NO_AGENTS_OPTION) agents = false;\n else if (arg === HELP_OPTION || arg === HELP_SHORT_OPTION) help = true;\n else if (arg === VERSION_OPTION || arg === VERSION_SHORT_OPTION) version = true;\n // Accepted for Claude Code compatibility and deliberately not forwarded.\n else if (arg !== VERBOSE_OPTION && arg !== DANGEROUSLY_SKIP_PERMISSIONS_OPTION) piArgs.push(arg);\n }\n\n if (domainsDisabled && domains.length > 0) {\n throw new Error(`${NO_DOMAINS_OPTION} cannot be combined with ${DOMAINS_OPTION}`);\n }\n if (!domainsDisabled && domains.length === 0 && pluginDirectoryValues.length === 0) {\n domains.push(...defaultDomainsForMajorMode(majorMode, environment, defaultDomains));\n }\n if (automation) {\n if (!hasOption(piArgs, PRINT_OPTION, PRINT_SHORT_OPTION)) piArgs.unshift(PRINT_OPTION);\n if (!hasOption(piArgs, MODE_OPTION)) piArgs.unshift(MODE_OPTION, JSON_FORMAT);\n if (!hasOption(piArgs, APPROVE_OPTION, APPROVE_SHORT_OPTION)) piArgs.unshift(APPROVE_OPTION);\n }\n normalizeProviderArgs(preset, piArgs, environment);\n\n return {\n options: {\n cwd,\n profile,\n domains,\n majorMode,\n explain,\n emitMcp,\n pluginDirectories: pluginDirectoryValues.map((value) => path.resolve(currentDirectory, value)),\n additionalDirectories: [\n ...new Set([\n ...resolveAdditionalDirectories(environment, currentDirectory),\n ...additionalDirectoryValues.map((value) => path.resolve(currentDirectory, value)),\n ]),\n ],\n preset,\n outputFormat,\n automation,\n allowProtectedWrites,\n hooks,\n mcp,\n agents,\n piArgs,\n },\n help,\n version,\n };\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ParsedHarnessArgs } from "../composition/types/harness.mjs";
|
|
2
|
+
//#region src/cli/options.d.ts
|
|
3
|
+
export declare function parseHarnessArgs(args: string[], environment?: NodeJS.ProcessEnv, currentDirectory?: string, defaultMajorMode?: string, defaultDomains?: readonly string[], defaultProfile?: string): ParsedHarnessArgs;
|
|
4
|
+
//#endregion
|
|
5
|
+
//# sourceMappingURL=options.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"options.d.mts","names":[],"sources":["../../../src/cli/options.ts"],"mappings":";;wBA8JgB,iBACd,gBACA,cAAa,OAAO,YACpB,2BACA,2BACA,oCACA,0BACC"}
|
|
@@ -0,0 +1,279 @@
|
|
|
1
|
+
import { ADD_DIRECTORY_OPTION, DEFAULT_MAJOR_MODE, DOMAINS_OPTION, MAJOR_MODE_OPTION, PROFILE_OPTION, REMOVED_LAYERS_OPTION, REMOVED_LAYER_OPTION, REMOVED_TARGET_OPTION, matchesOption, parseCsv, parseMajorMode, parseProfileValue, readOption, resolveAdditionalDirectories, resolveInheritedMajorMode, resolveInheritedProfile } from "./matrixOptions.mjs";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { defaultDomainsForMajorMode } from "@agimon-ai/po-config/domains";
|
|
4
|
+
//#region src/cli/options.ts
|
|
5
|
+
const KIMI_FOR_CODING = "kimi-for-coding";
|
|
6
|
+
const KIMI_FOR_CODING_HIGHSPEED = "kimi-for-coding-highspeed";
|
|
7
|
+
const KIMI_K2_6 = "kimi-k2.6";
|
|
8
|
+
const DEFAULT_PRESET = "default";
|
|
9
|
+
const KIMI_PRESET = "kimi";
|
|
10
|
+
const KIMI_CODING_PREFIX = "kimi-coding/";
|
|
11
|
+
const NATIVE_FORMAT = "native";
|
|
12
|
+
const KIMI_CODE_MODEL_ENV = "KIMI_CODE_MODEL";
|
|
13
|
+
const MODEL_OPTION = "--model";
|
|
14
|
+
const MODEL_SHORT_OPTION = "-m";
|
|
15
|
+
const MODE_OPTION = "--mode";
|
|
16
|
+
const THINKING_OPTION = "--thinking";
|
|
17
|
+
const PRINT_OPTION = "--print";
|
|
18
|
+
const PRINT_SHORT_OPTION = "-p";
|
|
19
|
+
const APPROVE_OPTION = "--approve";
|
|
20
|
+
const APPROVE_SHORT_OPTION = "-a";
|
|
21
|
+
const PROFILES_OPTION = "--profiles";
|
|
22
|
+
const NO_DOMAINS_OPTION = "--no-domains";
|
|
23
|
+
const PRESET_OPTION = "--preset";
|
|
24
|
+
const EFFORT_OPTION = "--effort";
|
|
25
|
+
const OUTPUT_FORMAT_OPTION = "--output-format";
|
|
26
|
+
const VIBE_LINT_FORMAT = "vibe-lint";
|
|
27
|
+
const STREAM_JSON_FORMAT = "stream-json";
|
|
28
|
+
const JSON_FORMAT = "json";
|
|
29
|
+
const EXPLAIN_OPTION = "--explain";
|
|
30
|
+
const EMIT_MCP_OPTION = "--emit-mcp";
|
|
31
|
+
const PLUGIN_DIRECTORY_OPTION = "--plugin-dir";
|
|
32
|
+
const CWD_OPTION = "--cwd";
|
|
33
|
+
const CD_OPTION = "--cd";
|
|
34
|
+
const AUTOMATION_OPTION = "--automation";
|
|
35
|
+
const ALLOW_PROTECTED_WRITES_OPTION = "--allow-protected-writes";
|
|
36
|
+
const HOOKS_OPTION = "--hooks";
|
|
37
|
+
const MCP_OPTION = "--mcp";
|
|
38
|
+
const AGENTS_OPTION = "--agents";
|
|
39
|
+
const NO_HOOKS_OPTION = "--no-hooks";
|
|
40
|
+
const NO_MCP_OPTION = "--no-mcp";
|
|
41
|
+
const NO_AGENTS_OPTION = "--no-agents";
|
|
42
|
+
const VERBOSE_OPTION = "--verbose";
|
|
43
|
+
const DANGEROUSLY_SKIP_PERMISSIONS_OPTION = "--dangerously-skip-permissions";
|
|
44
|
+
const HELP_OPTION = "--help";
|
|
45
|
+
const HELP_SHORT_OPTION = "-h";
|
|
46
|
+
const VERSION_OPTION = "--version";
|
|
47
|
+
const VERSION_SHORT_OPTION = "-v";
|
|
48
|
+
const KIMI_ALIASES = /* @__PURE__ */ new Map([
|
|
49
|
+
["k2p5", KIMI_FOR_CODING],
|
|
50
|
+
["k2p6", KIMI_FOR_CODING],
|
|
51
|
+
["k2p7", KIMI_FOR_CODING],
|
|
52
|
+
["kimi-k2.5", KIMI_FOR_CODING],
|
|
53
|
+
[KIMI_K2_6, KIMI_FOR_CODING],
|
|
54
|
+
["kimi-k2.7-code", KIMI_FOR_CODING],
|
|
55
|
+
[KIMI_FOR_CODING, KIMI_FOR_CODING],
|
|
56
|
+
[KIMI_FOR_CODING_HIGHSPEED, KIMI_FOR_CODING_HIGHSPEED]
|
|
57
|
+
]);
|
|
58
|
+
function parsePreset(value) {
|
|
59
|
+
if (value === DEFAULT_PRESET || value === KIMI_PRESET) return value;
|
|
60
|
+
throw new Error(`Unsupported preset: ${value}`);
|
|
61
|
+
}
|
|
62
|
+
function hasOption(args, ...names) {
|
|
63
|
+
return args.some((arg) => names.includes(arg) || names.some((name) => arg.startsWith(`${name}=`)));
|
|
64
|
+
}
|
|
65
|
+
function modelValue(args) {
|
|
66
|
+
for (let index = 0; index < args.length; index += 1) {
|
|
67
|
+
if (args[index] === MODEL_OPTION || args[index] === MODEL_SHORT_OPTION) {
|
|
68
|
+
const value = args[index + 1];
|
|
69
|
+
if (value) return {
|
|
70
|
+
index,
|
|
71
|
+
value,
|
|
72
|
+
inline: false
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
if (args[index]?.startsWith(`${MODEL_OPTION}=`)) return {
|
|
76
|
+
index,
|
|
77
|
+
value: args[index].slice(`${MODEL_OPTION}=`.length),
|
|
78
|
+
inline: true
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
function replaceModel(args, value) {
|
|
83
|
+
const selected = modelValue(args);
|
|
84
|
+
if (!selected) args.unshift(MODEL_OPTION, value);
|
|
85
|
+
else if (selected.inline) args[selected.index] = `${MODEL_OPTION}=${value}`;
|
|
86
|
+
else args[selected.index + 1] = value;
|
|
87
|
+
}
|
|
88
|
+
function normalizeProviderArgs(preset, piArgs, environment) {
|
|
89
|
+
const selected = modelValue(piArgs);
|
|
90
|
+
if (preset === KIMI_PRESET) {
|
|
91
|
+
const value = selected?.value ?? environment[KIMI_CODE_MODEL_ENV] ?? KIMI_FOR_CODING;
|
|
92
|
+
const unqualified = value.includes("/") ? value.slice(value.indexOf("/") + 1) : value;
|
|
93
|
+
replaceModel(piArgs, `${KIMI_CODING_PREFIX}${KIMI_ALIASES.get(unqualified) ?? unqualified}`);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Answers `--help` and `--version` without reading the environment.
|
|
98
|
+
*
|
|
99
|
+
* The caller only looks at `help` and `version` for these, and never launches,
|
|
100
|
+
* so the options carry defaults rather than a resolved matrix. This exists so a
|
|
101
|
+
* stale export cannot break the one command that explains how to fix it.
|
|
102
|
+
*/
|
|
103
|
+
function parseInformationalArgs(args, currentDirectory) {
|
|
104
|
+
const help = args.some((arg) => arg === HELP_OPTION || arg === HELP_SHORT_OPTION);
|
|
105
|
+
const version = args.some((arg) => arg === VERSION_OPTION || arg === VERSION_SHORT_OPTION);
|
|
106
|
+
if (!help && !version) return void 0;
|
|
107
|
+
return {
|
|
108
|
+
options: {
|
|
109
|
+
cwd: currentDirectory,
|
|
110
|
+
profile: void 0,
|
|
111
|
+
domains: [],
|
|
112
|
+
majorMode: DEFAULT_MAJOR_MODE,
|
|
113
|
+
explain: false,
|
|
114
|
+
emitMcp: void 0,
|
|
115
|
+
pluginDirectories: [],
|
|
116
|
+
additionalDirectories: [],
|
|
117
|
+
preset: DEFAULT_PRESET,
|
|
118
|
+
outputFormat: NATIVE_FORMAT,
|
|
119
|
+
automation: false,
|
|
120
|
+
allowProtectedWrites: false,
|
|
121
|
+
hooks: true,
|
|
122
|
+
mcp: true,
|
|
123
|
+
agents: true,
|
|
124
|
+
piArgs: []
|
|
125
|
+
},
|
|
126
|
+
help,
|
|
127
|
+
version
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
function parseHarnessArgs(args, environment = process.env, currentDirectory = process.cwd(), defaultMajorMode = DEFAULT_MAJOR_MODE, defaultDomains, defaultProfile) {
|
|
131
|
+
const informational = parseInformationalArgs(args, currentDirectory);
|
|
132
|
+
if (informational) return informational;
|
|
133
|
+
let profile = resolveInheritedProfile(environment) ?? defaultProfile;
|
|
134
|
+
let profileProvided = false;
|
|
135
|
+
let majorMode = resolveInheritedMajorMode(environment, defaultMajorMode);
|
|
136
|
+
let majorModeProvided = false;
|
|
137
|
+
const domains = [];
|
|
138
|
+
const pluginDirectoryValues = [];
|
|
139
|
+
const additionalDirectoryValues = [];
|
|
140
|
+
const piArgs = [];
|
|
141
|
+
let cwd = currentDirectory;
|
|
142
|
+
let preset = parsePreset(environment["PO_PRESET"] ?? DEFAULT_PRESET);
|
|
143
|
+
let outputFormat = NATIVE_FORMAT;
|
|
144
|
+
let domainsDisabled = false;
|
|
145
|
+
let automation = false;
|
|
146
|
+
let allowProtectedWrites = false;
|
|
147
|
+
let hooks = true;
|
|
148
|
+
let mcp = true;
|
|
149
|
+
let agents = true;
|
|
150
|
+
let help = false;
|
|
151
|
+
let version = false;
|
|
152
|
+
let explain = false;
|
|
153
|
+
let emitMcp;
|
|
154
|
+
for (let index = 0; index < args.length; index += 1) {
|
|
155
|
+
const arg = args[index];
|
|
156
|
+
if (matchesOption(arg, "--target")) throw new Error(`${REMOVED_TARGET_OPTION} was replaced by ${MAJOR_MODE_OPTION}`);
|
|
157
|
+
if (matchesOption(arg, "--layer")) throw new Error(`${REMOVED_LAYER_OPTION} was replaced by ${MAJOR_MODE_OPTION}`);
|
|
158
|
+
if (matchesOption(arg, "--layers")) throw new Error(`${REMOVED_LAYERS_OPTION} was removed; select one major mode with ${MAJOR_MODE_OPTION}`);
|
|
159
|
+
if (matchesOption(arg, PROFILES_OPTION)) throw new Error(`${PROFILES_OPTION} was replaced by ${DOMAINS_OPTION}`);
|
|
160
|
+
const majorModeMatch = readOption(args, index, MAJOR_MODE_OPTION);
|
|
161
|
+
if (majorModeMatch) {
|
|
162
|
+
if (majorModeProvided) throw new Error(`${MAJOR_MODE_OPTION} can only be provided once`);
|
|
163
|
+
majorMode = parseMajorMode(majorModeMatch.value, MAJOR_MODE_OPTION);
|
|
164
|
+
majorModeProvided = true;
|
|
165
|
+
index = majorModeMatch.nextIndex;
|
|
166
|
+
continue;
|
|
167
|
+
}
|
|
168
|
+
const profileMatch = readOption(args, index, PROFILE_OPTION);
|
|
169
|
+
if (profileMatch) {
|
|
170
|
+
if (profileProvided) throw new Error(`${PROFILE_OPTION} can only be provided once`);
|
|
171
|
+
profile = parseProfileValue(profileMatch.value, PROFILE_OPTION);
|
|
172
|
+
profileProvided = true;
|
|
173
|
+
index = profileMatch.nextIndex;
|
|
174
|
+
continue;
|
|
175
|
+
}
|
|
176
|
+
const domainMatch = readOption(args, index, "--domains") ?? readOption(args, index, "--domain");
|
|
177
|
+
if (domainMatch) {
|
|
178
|
+
domains.push(...parseCsv(domainMatch.value));
|
|
179
|
+
index = domainMatch.nextIndex;
|
|
180
|
+
continue;
|
|
181
|
+
}
|
|
182
|
+
const emitMcpMatch = readOption(args, index, EMIT_MCP_OPTION);
|
|
183
|
+
if (emitMcpMatch) {
|
|
184
|
+
emitMcp = path.resolve(currentDirectory, emitMcpMatch.value);
|
|
185
|
+
index = emitMcpMatch.nextIndex;
|
|
186
|
+
continue;
|
|
187
|
+
}
|
|
188
|
+
const pluginDirectoryMatch = readOption(args, index, PLUGIN_DIRECTORY_OPTION);
|
|
189
|
+
if (pluginDirectoryMatch) {
|
|
190
|
+
pluginDirectoryValues.push(pluginDirectoryMatch.value);
|
|
191
|
+
index = pluginDirectoryMatch.nextIndex;
|
|
192
|
+
continue;
|
|
193
|
+
}
|
|
194
|
+
const addDirectoryMatch = readOption(args, index, ADD_DIRECTORY_OPTION);
|
|
195
|
+
if (addDirectoryMatch) {
|
|
196
|
+
additionalDirectoryValues.push(addDirectoryMatch.value);
|
|
197
|
+
index = addDirectoryMatch.nextIndex;
|
|
198
|
+
continue;
|
|
199
|
+
}
|
|
200
|
+
const presetMatch = readOption(args, index, PRESET_OPTION);
|
|
201
|
+
if (presetMatch) {
|
|
202
|
+
preset = parsePreset(presetMatch.value);
|
|
203
|
+
index = presetMatch.nextIndex;
|
|
204
|
+
continue;
|
|
205
|
+
}
|
|
206
|
+
const cwdMatch = readOption(args, index, CWD_OPTION) ?? readOption(args, index, CD_OPTION);
|
|
207
|
+
if (cwdMatch) {
|
|
208
|
+
cwd = path.resolve(currentDirectory, cwdMatch.value);
|
|
209
|
+
index = cwdMatch.nextIndex;
|
|
210
|
+
continue;
|
|
211
|
+
}
|
|
212
|
+
const effortMatch = readOption(args, index, EFFORT_OPTION);
|
|
213
|
+
if (effortMatch) {
|
|
214
|
+
if (effortMatch.inline) piArgs.push(`${THINKING_OPTION}=${effortMatch.value}`);
|
|
215
|
+
else piArgs.push(THINKING_OPTION, effortMatch.value);
|
|
216
|
+
index = effortMatch.nextIndex;
|
|
217
|
+
continue;
|
|
218
|
+
}
|
|
219
|
+
const outputFormatMatch = readOption(args, index, OUTPUT_FORMAT_OPTION);
|
|
220
|
+
if (outputFormatMatch) {
|
|
221
|
+
const requested = outputFormatMatch.value;
|
|
222
|
+
if (requested === VIBE_LINT_FORMAT) outputFormat = VIBE_LINT_FORMAT;
|
|
223
|
+
else {
|
|
224
|
+
const mode = requested === STREAM_JSON_FORMAT ? JSON_FORMAT : requested;
|
|
225
|
+
if (outputFormatMatch.inline) piArgs.push(`${MODE_OPTION}=${mode}`);
|
|
226
|
+
else piArgs.push(MODE_OPTION, mode);
|
|
227
|
+
}
|
|
228
|
+
index = outputFormatMatch.nextIndex;
|
|
229
|
+
continue;
|
|
230
|
+
}
|
|
231
|
+
if (arg === NO_DOMAINS_OPTION) domainsDisabled = true;
|
|
232
|
+
else if (arg === EXPLAIN_OPTION) explain = true;
|
|
233
|
+
else if (arg === AUTOMATION_OPTION) automation = true;
|
|
234
|
+
else if (arg === ALLOW_PROTECTED_WRITES_OPTION) allowProtectedWrites = true;
|
|
235
|
+
else if (arg === HOOKS_OPTION) hooks = true;
|
|
236
|
+
else if (arg === MCP_OPTION) mcp = true;
|
|
237
|
+
else if (arg === AGENTS_OPTION) agents = true;
|
|
238
|
+
else if (arg === NO_HOOKS_OPTION) hooks = false;
|
|
239
|
+
else if (arg === NO_MCP_OPTION) mcp = false;
|
|
240
|
+
else if (arg === NO_AGENTS_OPTION) agents = false;
|
|
241
|
+
else if (arg === HELP_OPTION || arg === HELP_SHORT_OPTION) help = true;
|
|
242
|
+
else if (arg === VERSION_OPTION || arg === VERSION_SHORT_OPTION) version = true;
|
|
243
|
+
else if (arg !== VERBOSE_OPTION && arg !== DANGEROUSLY_SKIP_PERMISSIONS_OPTION) piArgs.push(arg);
|
|
244
|
+
}
|
|
245
|
+
if (domainsDisabled && domains.length > 0) throw new Error(`${NO_DOMAINS_OPTION} cannot be combined with ${DOMAINS_OPTION}`);
|
|
246
|
+
if (!domainsDisabled && domains.length === 0 && pluginDirectoryValues.length === 0) domains.push(...defaultDomainsForMajorMode(majorMode, environment, defaultDomains));
|
|
247
|
+
if (automation) {
|
|
248
|
+
if (!hasOption(piArgs, PRINT_OPTION, PRINT_SHORT_OPTION)) piArgs.unshift(PRINT_OPTION);
|
|
249
|
+
if (!hasOption(piArgs, MODE_OPTION)) piArgs.unshift(MODE_OPTION, JSON_FORMAT);
|
|
250
|
+
if (!hasOption(piArgs, APPROVE_OPTION, APPROVE_SHORT_OPTION)) piArgs.unshift(APPROVE_OPTION);
|
|
251
|
+
}
|
|
252
|
+
normalizeProviderArgs(preset, piArgs, environment);
|
|
253
|
+
return {
|
|
254
|
+
options: {
|
|
255
|
+
cwd,
|
|
256
|
+
profile,
|
|
257
|
+
domains,
|
|
258
|
+
majorMode,
|
|
259
|
+
explain,
|
|
260
|
+
emitMcp,
|
|
261
|
+
pluginDirectories: pluginDirectoryValues.map((value) => path.resolve(currentDirectory, value)),
|
|
262
|
+
additionalDirectories: [.../* @__PURE__ */ new Set([...resolveAdditionalDirectories(environment, currentDirectory), ...additionalDirectoryValues.map((value) => path.resolve(currentDirectory, value))])],
|
|
263
|
+
preset,
|
|
264
|
+
outputFormat,
|
|
265
|
+
automation,
|
|
266
|
+
allowProtectedWrites,
|
|
267
|
+
hooks,
|
|
268
|
+
mcp,
|
|
269
|
+
agents,
|
|
270
|
+
piArgs
|
|
271
|
+
},
|
|
272
|
+
help,
|
|
273
|
+
version
|
|
274
|
+
};
|
|
275
|
+
}
|
|
276
|
+
//#endregion
|
|
277
|
+
export { parseHarnessArgs };
|
|
278
|
+
|
|
279
|
+
//# sourceMappingURL=options.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"options.mjs","names":[],"sources":["../../../src/cli/options.ts"],"sourcesContent":["import path from 'node:path';\n\nimport { defaultDomainsForMajorMode } from '@agimon-ai/po-config/domains';\n\nimport type { HarnessOutputFormat, HarnessPreset, ParsedHarnessArgs } from '../composition/types/harness';\nimport {\n ADD_DIRECTORY_OPTION,\n DEFAULT_MAJOR_MODE,\n DOMAIN_OPTION,\n DOMAINS_OPTION,\n PO_PRESET_ENV,\n MAJOR_MODE_OPTION,\n matchesOption,\n PROFILE_OPTION,\n parseCsv,\n parseMajorMode,\n parseProfileValue,\n REMOVED_LAYER_OPTION,\n REMOVED_LAYERS_OPTION,\n REMOVED_TARGET_OPTION,\n readOption,\n resolveAdditionalDirectories,\n resolveInheritedMajorMode,\n resolveInheritedProfile,\n} from './matrixOptions';\n\nconst KIMI_FOR_CODING = 'kimi-for-coding';\nconst KIMI_FOR_CODING_HIGHSPEED = 'kimi-for-coding-highspeed';\nconst KIMI_K2_6 = 'kimi-k2.6';\nconst DEFAULT_PRESET = 'default';\nconst KIMI_PRESET = 'kimi';\nconst KIMI_CODING_PREFIX = 'kimi-coding/';\nconst NATIVE_FORMAT = 'native';\nconst KIMI_CODE_MODEL_ENV = 'KIMI_CODE_MODEL';\nconst MODEL_OPTION = '--model';\nconst MODEL_SHORT_OPTION = '-m';\nconst MODE_OPTION = '--mode';\nconst THINKING_OPTION = '--thinking';\nconst PRINT_OPTION = '--print';\nconst PRINT_SHORT_OPTION = '-p';\nconst APPROVE_OPTION = '--approve';\nconst APPROVE_SHORT_OPTION = '-a';\nconst PROFILES_OPTION = '--profiles';\nconst NO_DOMAINS_OPTION = '--no-domains';\nconst PRESET_OPTION = '--preset';\nconst EFFORT_OPTION = '--effort';\nconst OUTPUT_FORMAT_OPTION = '--output-format';\nconst VIBE_LINT_FORMAT = 'vibe-lint';\nconst STREAM_JSON_FORMAT = 'stream-json';\nconst JSON_FORMAT = 'json';\nconst EXPLAIN_OPTION = '--explain';\nconst EMIT_MCP_OPTION = '--emit-mcp';\nconst PLUGIN_DIRECTORY_OPTION = '--plugin-dir';\nconst CWD_OPTION = '--cwd';\nconst CD_OPTION = '--cd';\nconst AUTOMATION_OPTION = '--automation';\nconst ALLOW_PROTECTED_WRITES_OPTION = '--allow-protected-writes';\nconst HOOKS_OPTION = '--hooks';\nconst MCP_OPTION = '--mcp';\nconst AGENTS_OPTION = '--agents';\nconst NO_HOOKS_OPTION = '--no-hooks';\nconst NO_MCP_OPTION = '--no-mcp';\nconst NO_AGENTS_OPTION = '--no-agents';\nconst VERBOSE_OPTION = '--verbose';\nconst DANGEROUSLY_SKIP_PERMISSIONS_OPTION = '--dangerously-skip-permissions';\nconst HELP_OPTION = '--help';\nconst HELP_SHORT_OPTION = '-h';\nconst VERSION_OPTION = '--version';\nconst VERSION_SHORT_OPTION = '-v';\n\nconst KIMI_ALIASES = new Map([\n ['k2p5', KIMI_FOR_CODING],\n ['k2p6', KIMI_FOR_CODING],\n ['k2p7', KIMI_FOR_CODING],\n ['kimi-k2.5', KIMI_FOR_CODING],\n [KIMI_K2_6, KIMI_FOR_CODING],\n ['kimi-k2.7-code', KIMI_FOR_CODING],\n [KIMI_FOR_CODING, KIMI_FOR_CODING],\n [KIMI_FOR_CODING_HIGHSPEED, KIMI_FOR_CODING_HIGHSPEED],\n]);\n\nfunction parsePreset(value: string): HarnessPreset {\n if (value === DEFAULT_PRESET || value === KIMI_PRESET) return value;\n throw new Error(`Unsupported preset: ${value}`);\n}\n\nfunction hasOption(args: string[], ...names: string[]): boolean {\n return args.some((arg) => names.includes(arg) || names.some((name) => arg.startsWith(`${name}=`)));\n}\n\nfunction modelValue(args: string[]): { index: number; value: string; inline: boolean } | undefined {\n for (let index = 0; index < args.length; index += 1) {\n if (args[index] === MODEL_OPTION || args[index] === MODEL_SHORT_OPTION) {\n const value = args[index + 1];\n if (value) return { index, value, inline: false };\n }\n if (args[index]?.startsWith(`${MODEL_OPTION}=`)) {\n return { index, value: args[index].slice(`${MODEL_OPTION}=`.length), inline: true };\n }\n }\n return undefined;\n}\n\nfunction replaceModel(args: string[], value: string): void {\n const selected = modelValue(args);\n if (!selected) {\n args.unshift(MODEL_OPTION, value);\n } else if (selected.inline) {\n args[selected.index] = `${MODEL_OPTION}=${value}`;\n } else {\n args[selected.index + 1] = value;\n }\n}\n\nfunction normalizeProviderArgs(preset: HarnessPreset, piArgs: string[], environment: NodeJS.ProcessEnv): void {\n const selected = modelValue(piArgs);\n if (preset === KIMI_PRESET) {\n const value = selected?.value ?? environment[KIMI_CODE_MODEL_ENV] ?? KIMI_FOR_CODING;\n const unqualified = value.includes('/') ? value.slice(value.indexOf('/') + 1) : value;\n replaceModel(piArgs, `${KIMI_CODING_PREFIX}${KIMI_ALIASES.get(unqualified) ?? unqualified}`);\n }\n}\n\n/**\n * Answers `--help` and `--version` without reading the environment.\n *\n * The caller only looks at `help` and `version` for these, and never launches,\n * so the options carry defaults rather than a resolved matrix. This exists so a\n * stale export cannot break the one command that explains how to fix it.\n */\nfunction parseInformationalArgs(args: string[], currentDirectory: string): ParsedHarnessArgs | undefined {\n const help = args.some((arg) => arg === HELP_OPTION || arg === HELP_SHORT_OPTION);\n const version = args.some((arg) => arg === VERSION_OPTION || arg === VERSION_SHORT_OPTION);\n if (!help && !version) return undefined;\n return {\n options: {\n cwd: currentDirectory,\n profile: undefined,\n domains: [],\n majorMode: DEFAULT_MAJOR_MODE,\n explain: false,\n emitMcp: undefined,\n pluginDirectories: [],\n additionalDirectories: [],\n preset: DEFAULT_PRESET,\n outputFormat: NATIVE_FORMAT,\n automation: false,\n allowProtectedWrites: false,\n hooks: true,\n mcp: true,\n agents: true,\n piArgs: [],\n },\n help,\n version,\n };\n}\n\nexport function parseHarnessArgs(\n args: string[],\n environment: NodeJS.ProcessEnv = process.env,\n currentDirectory = process.cwd(),\n defaultMajorMode: string = DEFAULT_MAJOR_MODE,\n defaultDomains?: readonly string[],\n defaultProfile?: string,\n): ParsedHarnessArgs {\n const informational = parseInformationalArgs(args, currentDirectory);\n if (informational) return informational;\n\n // An inherited profile wins: a nested run stays on the persona its parent\n // chose rather than snapping back to the repository default.\n let profile = resolveInheritedProfile(environment) ?? defaultProfile;\n let profileProvided = false;\n let majorMode = resolveInheritedMajorMode(environment, defaultMajorMode);\n let majorModeProvided = false;\n const domains: string[] = [];\n // Directory options are collected verbatim and resolved once after the loop,\n // so a relative path means the same thing regardless of where --cwd appears\n // in the argument list.\n const pluginDirectoryValues: string[] = [];\n const additionalDirectoryValues: string[] = [];\n const piArgs: string[] = [];\n let cwd = currentDirectory;\n let preset = parsePreset(environment[PO_PRESET_ENV] ?? DEFAULT_PRESET);\n let outputFormat: HarnessOutputFormat = NATIVE_FORMAT;\n let domainsDisabled = false;\n let automation = false;\n let allowProtectedWrites = false;\n let hooks = true;\n let mcp = true;\n let agents = true;\n let help = false;\n let version = false;\n let explain = false;\n let emitMcp: string | undefined;\n\n for (let index = 0; index < args.length; index += 1) {\n const arg = args[index]!;\n\n if (matchesOption(arg, REMOVED_TARGET_OPTION)) {\n throw new Error(`${REMOVED_TARGET_OPTION} was replaced by ${MAJOR_MODE_OPTION}`);\n }\n if (matchesOption(arg, REMOVED_LAYER_OPTION)) {\n throw new Error(`${REMOVED_LAYER_OPTION} was replaced by ${MAJOR_MODE_OPTION}`);\n }\n if (matchesOption(arg, REMOVED_LAYERS_OPTION)) {\n throw new Error(`${REMOVED_LAYERS_OPTION} was removed; select one major mode with ${MAJOR_MODE_OPTION}`);\n }\n if (matchesOption(arg, PROFILES_OPTION)) {\n throw new Error(`${PROFILES_OPTION} was replaced by ${DOMAINS_OPTION}`);\n }\n\n const majorModeMatch = readOption(args, index, MAJOR_MODE_OPTION);\n if (majorModeMatch) {\n if (majorModeProvided) throw new Error(`${MAJOR_MODE_OPTION} can only be provided once`);\n majorMode = parseMajorMode(majorModeMatch.value, MAJOR_MODE_OPTION);\n majorModeProvided = true;\n index = majorModeMatch.nextIndex;\n continue;\n }\n\n const profileMatch = readOption(args, index, PROFILE_OPTION);\n if (profileMatch) {\n if (profileProvided) throw new Error(`${PROFILE_OPTION} can only be provided once`);\n profile = parseProfileValue(profileMatch.value, PROFILE_OPTION);\n profileProvided = true;\n index = profileMatch.nextIndex;\n continue;\n }\n\n const domainMatch = readOption(args, index, DOMAINS_OPTION) ?? readOption(args, index, DOMAIN_OPTION);\n if (domainMatch) {\n domains.push(...parseCsv(domainMatch.value));\n index = domainMatch.nextIndex;\n continue;\n }\n\n const emitMcpMatch = readOption(args, index, EMIT_MCP_OPTION);\n if (emitMcpMatch) {\n emitMcp = path.resolve(currentDirectory, emitMcpMatch.value);\n index = emitMcpMatch.nextIndex;\n continue;\n }\n\n const pluginDirectoryMatch = readOption(args, index, PLUGIN_DIRECTORY_OPTION);\n if (pluginDirectoryMatch) {\n pluginDirectoryValues.push(pluginDirectoryMatch.value);\n index = pluginDirectoryMatch.nextIndex;\n continue;\n }\n\n const addDirectoryMatch = readOption(args, index, ADD_DIRECTORY_OPTION);\n if (addDirectoryMatch) {\n additionalDirectoryValues.push(addDirectoryMatch.value);\n index = addDirectoryMatch.nextIndex;\n continue;\n }\n\n const presetMatch = readOption(args, index, PRESET_OPTION);\n if (presetMatch) {\n preset = parsePreset(presetMatch.value);\n index = presetMatch.nextIndex;\n continue;\n }\n\n const cwdMatch = readOption(args, index, CWD_OPTION) ?? readOption(args, index, CD_OPTION);\n if (cwdMatch) {\n cwd = path.resolve(currentDirectory, cwdMatch.value);\n index = cwdMatch.nextIndex;\n continue;\n }\n\n const effortMatch = readOption(args, index, EFFORT_OPTION);\n if (effortMatch) {\n if (effortMatch.inline) piArgs.push(`${THINKING_OPTION}=${effortMatch.value}`);\n else piArgs.push(THINKING_OPTION, effortMatch.value);\n index = effortMatch.nextIndex;\n continue;\n }\n\n const outputFormatMatch = readOption(args, index, OUTPUT_FORMAT_OPTION);\n if (outputFormatMatch) {\n const requested = outputFormatMatch.value;\n if (requested === VIBE_LINT_FORMAT) {\n outputFormat = VIBE_LINT_FORMAT;\n } else {\n const mode = requested === STREAM_JSON_FORMAT ? JSON_FORMAT : requested;\n if (outputFormatMatch.inline) piArgs.push(`${MODE_OPTION}=${mode}`);\n else piArgs.push(MODE_OPTION, mode);\n }\n index = outputFormatMatch.nextIndex;\n continue;\n }\n\n if (arg === NO_DOMAINS_OPTION) domainsDisabled = true;\n else if (arg === EXPLAIN_OPTION) explain = true;\n else if (arg === AUTOMATION_OPTION) automation = true;\n else if (arg === ALLOW_PROTECTED_WRITES_OPTION) allowProtectedWrites = true;\n else if (arg === HOOKS_OPTION) hooks = true;\n else if (arg === MCP_OPTION) mcp = true;\n else if (arg === AGENTS_OPTION) agents = true;\n else if (arg === NO_HOOKS_OPTION) hooks = false;\n else if (arg === NO_MCP_OPTION) mcp = false;\n else if (arg === NO_AGENTS_OPTION) agents = false;\n else if (arg === HELP_OPTION || arg === HELP_SHORT_OPTION) help = true;\n else if (arg === VERSION_OPTION || arg === VERSION_SHORT_OPTION) version = true;\n // Accepted for Claude Code compatibility and deliberately not forwarded.\n else if (arg !== VERBOSE_OPTION && arg !== DANGEROUSLY_SKIP_PERMISSIONS_OPTION) piArgs.push(arg);\n }\n\n if (domainsDisabled && domains.length > 0) {\n throw new Error(`${NO_DOMAINS_OPTION} cannot be combined with ${DOMAINS_OPTION}`);\n }\n if (!domainsDisabled && domains.length === 0 && pluginDirectoryValues.length === 0) {\n domains.push(...defaultDomainsForMajorMode(majorMode, environment, defaultDomains));\n }\n if (automation) {\n if (!hasOption(piArgs, PRINT_OPTION, PRINT_SHORT_OPTION)) piArgs.unshift(PRINT_OPTION);\n if (!hasOption(piArgs, MODE_OPTION)) piArgs.unshift(MODE_OPTION, JSON_FORMAT);\n if (!hasOption(piArgs, APPROVE_OPTION, APPROVE_SHORT_OPTION)) piArgs.unshift(APPROVE_OPTION);\n }\n normalizeProviderArgs(preset, piArgs, environment);\n\n return {\n options: {\n cwd,\n profile,\n domains,\n majorMode,\n explain,\n emitMcp,\n pluginDirectories: pluginDirectoryValues.map((value) => path.resolve(currentDirectory, value)),\n additionalDirectories: [\n ...new Set([\n ...resolveAdditionalDirectories(environment, currentDirectory),\n ...additionalDirectoryValues.map((value) => path.resolve(currentDirectory, value)),\n ]),\n ],\n preset,\n outputFormat,\n automation,\n allowProtectedWrites,\n hooks,\n mcp,\n agents,\n piArgs,\n },\n help,\n version,\n };\n}\n"],"mappings":"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"}
|