2
0
Kevin van Dijk 1 сар өмнө
parent
commit
f3f6f7af00

+ 1 - 0
cli/src/constants/providers/labels.ts

@@ -8,6 +8,7 @@ export const PROVIDER_LABELS: Record<ProviderName, string> = {
 	kilocode: "Kilo Code",
 	anthropic: "Anthropic",
 	"openai-native": "OpenAI",
+	"openai-codex": "OpenAI - ChatGPT Plus/Pro",
 	openrouter: "OpenRouter",
 	bedrock: "Amazon Bedrock",
 	gemini: "Google Gemini",

+ 2 - 0
cli/src/constants/providers/models.ts

@@ -141,6 +141,7 @@ export const PROVIDER_TO_ROUTER_NAME: Record<ProviderName, RouterName | null> =
 	"vscode-lm": null,
 	gemini: null,
 	"openai-native": null,
+	"openai-codex": null,
 	mistral: null,
 	moonshot: null,
 	deepseek: null,
@@ -193,6 +194,7 @@ export const PROVIDER_MODEL_FIELD: Record<ProviderName, string | null> = {
 	"vscode-lm": "vsCodeLmModelSelector",
 	gemini: null,
 	"openai-native": null,
+	"openai-codex": null,
 	mistral: null,
 	moonshot: null,
 	deepseek: null,

+ 4 - 0
cli/src/constants/providers/settings.ts

@@ -810,6 +810,9 @@ export const getProviderSettings = (provider: ProviderName, config: ProviderSett
 				createFieldConfig("openAiNativeBaseUrl", config, "Default"),
 			]
 
+		case "openai-codex":
+			return [createFieldConfig("apiModelId", config, "gpt-4o")]
+
 		case "bedrock":
 			return [
 				createFieldConfig("awsAccessKey", config),
@@ -1055,6 +1058,7 @@ export const PROVIDER_DEFAULT_MODELS: Record<ProviderName, string> = {
 	kilocode: "anthropic/claude-sonnet-4",
 	anthropic: "claude-3-5-sonnet-20241022",
 	"openai-native": "gpt-4o",
+	"openai-codex": "gpt-4o",
 	openrouter: "anthropic/claude-3-5-sonnet",
 	bedrock: "anthropic.claude-3-5-sonnet-20241022-v2:0",
 	gemini: "gemini-1.5-pro-latest",

+ 1 - 0
cli/src/constants/providers/validation.ts

@@ -8,6 +8,7 @@ export const PROVIDER_REQUIRED_FIELDS: Record<ProviderName, string[]> = {
 	kilocode: ["kilocodeToken", "kilocodeModel"],
 	anthropic: ["apiKey", "apiModelId"],
 	"openai-native": ["openAiNativeApiKey", "apiModelId"],
+	"openai-codex": ["apiModelId"],
 	openrouter: ["openRouterApiKey", "openRouterModelId"],
 	ollama: ["ollamaBaseUrl", "ollamaModelId"],
 	lmstudio: ["lmStudioBaseUrl", "lmStudioModelId"],

+ 4 - 3
cli/src/ui/messages/extension/ExtensionMessageRow.tsx

@@ -1,7 +1,7 @@
 import React from "react"
 import { Box, Text } from "ink"
 import type { ExtensionChatMessage } from "../../../types/messages.js"
-import { ErrorBoundary } from "react-error-boundary"
+import { ErrorBoundary, type FallbackProps } from "react-error-boundary"
 import { AskMessageRouter } from "./AskMessageRouter.js"
 import { SayMessageRouter } from "./SayMessageRouter.js"
 import { useTheme } from "../../../state/hooks/useTheme.js"
@@ -11,11 +11,12 @@ interface ExtensionMessageRowProps {
 	message: ExtensionChatMessage
 }
 
-function ErrorFallback({ error }: { error: Error }) {
+function ErrorFallback({ error }: FallbackProps) {
 	const theme = useTheme()
+	const errorMessage = error instanceof Error ? error.message : String(error)
 	return (
 		<Box width={getBoxWidth(1)} borderColor={theme.semantic.error} borderStyle="round" padding={1} marginY={1}>
-			<Text color={theme.semantic.error}>Error rendering message: {error.message}</Text>
+			<Text color={theme.semantic.error}>Error rendering message: {errorMessage}</Text>
 		</Box>
 	)
 }

+ 1 - 1
packages/core/tsconfig.json

@@ -6,6 +6,6 @@
 		"rootDir": "src",
 		"composite": false
 	},
-	"include": ["src", "scripts", "*.config.ts"],
+	"include": ["src", "scripts"],
 	"exclude": ["node_modules"]
 }

+ 2 - 0
packages/types/src/vscode-extension-host.ts

@@ -758,6 +758,7 @@ export interface WebviewMessage {
 		| "openCustomModesSettings"
 		| "checkpointDiff"
 		| "checkpointRestore"
+		| "requestCheckpointRestoreApproval" // kilocode_change: Request approval for checkpoint restore
 		| "deleteMcpServer"
 		| "insertTextToChatArea" // kilocode_change
 		| "humanRelayResponse" // kilocode_change
@@ -887,6 +888,7 @@ export interface WebviewMessage {
 		| "sessionShow" // kilocode_change
 		| "sessionSelect" // kilocode_change
 		| "singleCompletion" // kilocode_change
+		| "openExtensionSettings" // kilocode_change: Open extension settings from CLI
 		| "openDebugApiHistory"
 		| "openDebugUiHistory"
 		| "startDeviceAuth" // kilocode_change: Start device auth flow