Explorar el Código

Merge pull request #3404 from Kilo-Org/cli-auto-mode-2

CLI: Use yoloMode for --auto
Kevin van Dijk hace 3 meses
padre
commit
504b5dc5b9
Se han modificado 3 ficheros con 6 adiciones y 84 borrados
  1. 6 0
      cli/src/cli.ts
  2. 0 4
      cli/src/state/hooks/index.ts
  3. 0 80
      cli/src/state/hooks/useConfig.ts

+ 6 - 0
cli/src/cli.ts

@@ -119,6 +119,12 @@ export class CLI {
 			await this.injectConfigurationToExtension()
 			logs.debug("CLI configuration injected into extension", "CLI")
 
+			const extensionHost = this.service.getExtensionHost()
+			extensionHost.sendWebviewMessage({
+				type: "yoloMode",
+				bool: Boolean(this.options.ci),
+			})
+
 			// Request router models after configuration is injected
 			void this.requestRouterModels()
 

+ 0 - 4
cli/src/state/hooks/index.ts

@@ -54,10 +54,6 @@ export type { UseMessageHandlerReturn } from "./useMessageHandler.js"
 export { useTaskState } from "./useTaskState.js"
 export type { UseTaskStateReturn } from "./useTaskState.js"
 
-// Config hooks
-export { useConfig } from "./useConfig.js"
-export type { UseConfigReturn } from "./useConfig.js"
-
 // Theme hooks
 export { useTheme } from "./useTheme.js"
 

+ 0 - 80
cli/src/state/hooks/useConfig.ts

@@ -1,80 +0,0 @@
-import { useAtom, useAtomValue, useSetAtom } from "jotai"
-import { useEffect, useCallback } from "react"
-import {
-	configAtom,
-	configLoadingAtom,
-	configErrorAtom,
-	providerAtom,
-	providersAtom,
-	loadConfigAtom,
-	saveConfigAtom,
-	selectProviderAtom,
-	addProviderAtom,
-	updateProviderAtom,
-	removeProviderAtom,
-	mappedExtensionStateAtom,
-} from "../atoms/config.js"
-import { updatePartialExtensionStateAtom } from "../atoms/extension.js"
-import { syncConfigToExtensionEffectAtom } from "../atoms/config-sync.js"
-import type { CLIConfig, ProviderConfig } from "../../config/types.js"
-
-export interface UseConfigReturn {
-	config: CLIConfig
-	loading: boolean
-	error: Error | null
-	provider: ProviderConfig | undefined
-	providers: ProviderConfig[]
-	loadConfig: () => Promise<CLIConfig>
-	saveConfig: (config?: CLIConfig) => Promise<void>
-	selectProvider: (providerId: string) => Promise<void>
-	addProvider: (provider: ProviderConfig) => Promise<void>
-	updateProvider: (providerId: string, updates: Partial<ProviderConfig>) => Promise<void>
-	removeProvider: (providerId: string) => Promise<void>
-	syncWithExtension: () => void
-}
-
-export function useConfig(): UseConfigReturn {
-	const [config] = useAtom(configAtom)
-	const loading = useAtomValue(configLoadingAtom)
-	const error = useAtomValue(configErrorAtom)
-	const provider = useAtomValue(providerAtom)
-	const providers = useAtomValue(providersAtom)
-	const mappedState = useAtomValue(mappedExtensionStateAtom)
-
-	const loadConfigAction = useSetAtom(loadConfigAtom)
-	const saveConfigAction = useSetAtom(saveConfigAtom)
-	const selectProviderAction = useSetAtom(selectProviderAtom)
-	const addProviderAction = useSetAtom(addProviderAtom)
-	const updateProviderAction = useSetAtom(updateProviderAtom)
-	const removeProviderAction = useSetAtom(removeProviderAtom)
-	const updateExtensionState = useSetAtom(updatePartialExtensionStateAtom)
-	const syncConfigToExtension = useSetAtom(syncConfigToExtensionEffectAtom)
-
-	// Sync config with extension state whenever it changes
-	const syncWithExtension = useCallback(async () => {
-		// Update local extension state atoms
-		updateExtensionState(mappedState)
-		// Sync to actual extension
-		await syncConfigToExtension()
-	}, [mappedState, updateExtensionState, syncConfigToExtension])
-
-	// Auto-sync on config changes
-	useEffect(() => {
-		syncWithExtension()
-	}, [config, syncWithExtension])
-
-	return {
-		config,
-		loading,
-		error,
-		provider,
-		providers,
-		loadConfig: loadConfigAction,
-		saveConfig: saveConfigAction,
-		selectProvider: selectProviderAction,
-		addProvider: addProviderAction,
-		updateProvider: updateProviderAction,
-		removeProvider: removeProviderAction,
-		syncWithExtension,
-	}
-}