Feat:add codex,gemini, windsurf, chatgpt in onboarding flow

This commit is contained in:
Manik 2025-10-30 12:52:07 +05:30
parent f038ad5c61
commit 5e281a42eb
7 changed files with 108 additions and 0 deletions

View File

@ -9,6 +9,10 @@ import { LinearIcon, SlackIcon } from "./icons";
import { Cursor } from "./icons/cursor";
import { Claude } from "./icons/claude";
import { Cline } from "./icons/cline";
import { Codex } from "./icons/codex";
import { ChatGPT } from "./icons/chatgpt";
import { Gemini } from "./icons/gemini";
import { Windsurf } from "./icons/windsurf";
import { VSCode } from "./icons/vscode";
import { Obsidian } from "./icons/obsidian";
import { Figma } from "./icons/figma";
@ -25,6 +29,10 @@ export const ICON_MAPPING = {
cursor: Cursor,
claude: Claude,
cline: Cline,
codex: Codex,
chatgpt: ChatGPT,
gemini: Gemini,
windsurf: Windsurf,
vscode: VSCode,
obsidian: Obsidian,
figma: Figma,

View File

@ -0,0 +1,17 @@
import type { IconProps } from "./types";
export function ChatGPT({ size = 18, className }: IconProps) {
return (
<svg
fill="currentColor"
viewBox="0 0 24 24"
height={size}
className={className}
width={size}
xmlns="http://www.w3.org/2000/svg"
>
<title>ChatGPT</title>
<path d="M22.282 9.821a5.985 5.985 0 00-.516-4.91 6.046 6.046 0 00-6.51-2.9A6.065 6.065 0 004.981 4.18a5.985 5.985 0 00-3.998 2.9 6.046 6.046 0 00.743 7.097 5.98 5.98 0 00.51 4.911 6.051 6.051 0 006.515 2.9A5.985 5.985 0 0013.26 24a6.056 6.056 0 005.772-4.206 5.99 5.99 0 003.997-2.9 6.056 6.056 0 00-.747-7.073zM13.26 22.43a4.476 4.476 0 01-2.876-1.04l.141-.081 4.779-2.758a.795.795 0 00.392-.681v-6.737l2.02 1.168a.071.071 0 01.038.052v5.583a4.504 4.504 0 01-4.494 4.494zM3.6 18.304a4.47 4.47 0 01-.535-3.014l.142.085 4.783 2.759a.771.771 0 00.78 0l5.843-3.369v2.332a.08.08 0 01-.033.062L9.74 19.95a4.5 4.5 0 01-6.14-1.646zM2.34 7.896a4.485 4.485 0 012.366-1.973V11.6a.766.766 0 00.388.676l5.815 3.355-2.02 1.168a.076.076 0 01-.071 0l-4.83-2.786A4.504 4.504 0 012.34 7.872zm16.597 3.855l-5.833-3.387L15.119 7.2a.076.076 0 01.071 0l4.83 2.791a4.494 4.494 0 01-.676 8.105v-5.678a.79.79 0 00-.407-.667zm2.01-3.023l-.141-.085-4.774-2.782a.776.776 0 00-.785 0L9.409 9.23V6.897a.066.066 0 01.028-.061l4.83-2.787a4.5 4.5 0 016.68 4.66zm-12.64 4.135l-2.02-1.164a.08.08 0 01-.038-.057V6.075a4.5 4.5 0 017.375-3.453l-.142.08L8.704 5.46a.795.795 0 00-.393.681zm1.097-2.365l2.602-1.5 2.607 1.5v2.999l-2.597 1.5-2.607-1.5z" />
</svg>
);
}

View File

@ -0,0 +1,17 @@
import type { IconProps } from "./types";
export function Codex({ size = 18, className }: IconProps) {
return (
<svg
fill="currentColor"
viewBox="0 0 24 24"
height={size}
className={className}
width={size}
xmlns="http://www.w3.org/2000/svg"
>
<title>Codex</title>
<path d="M8.5 3L3 8.5v7L8.5 21h7L21 15.5v-7L15.5 3h-7zm0 2h6.086L19 9.414v5.172L14.586 19H9.414L5 14.586V9.414L9.414 5H8.5zm2.5 3v8l6-4-6-4z" />
</svg>
);
}

View File

@ -0,0 +1,17 @@
import type { IconProps } from "./types";
export function Gemini({ size = 18, className }: IconProps) {
return (
<svg
fill="currentColor"
viewBox="0 0 24 24"
height={size}
className={className}
width={size}
xmlns="http://www.w3.org/2000/svg"
>
<title>Gemini</title>
<path d="M12 2L2 7v10l10 5 10-5V7L12 2zm0 2.18L19.82 8 12 11.82 4.18 8 12 4.18zM4 9.47l7 3.5v7.85l-7-3.5V9.47zm16 0v7.85l-7 3.5v-7.85l7-3.5z" />
</svg>
);
}

View File

@ -0,0 +1,17 @@
import type { IconProps } from "./types";
export function Windsurf({ size = 18, className }: IconProps) {
return (
<svg
fill="currentColor"
viewBox="0 0 24 24"
height={size}
className={className}
width={size}
xmlns="http://www.w3.org/2000/svg"
>
<title>Windsurf</title>
<path d="M3 14l3-3 4 4-3 3-4-4zm7-7l3-3 4 4-3 3-4-4zm7 0l4-4 3 3-4 4-3-3zM7 21l10-10 3 3-10 10-3-3z" />
</svg>
);
}

View File

@ -1,6 +1,13 @@
import { Provider, type ProviderConfig } from "./types";
export const PROVIDER_CONFIGS: Record<Provider, ProviderConfig> = {
[Provider.CHATGPT]: {
id: Provider.CHATGPT,
name: "ChatGPT",
description: "Connect ChatGPT to CORE's memory system via browser extension",
docsUrl: "https://docs.heysol.ai/providers/browser-extension",
icon: "chatgpt",
},
[Provider.CLAUDE_CODE]: {
id: Provider.CLAUDE_CODE,
name: "Claude Code CLI",
@ -15,6 +22,13 @@ export const PROVIDER_CONFIGS: Record<Provider, ProviderConfig> = {
docsUrl: "https://docs.heysol.ai/providers/claude",
icon: "claude",
},
[Provider.CODEX]: {
id: Provider.CODEX,
name: "Codex",
description: "Connect your Codex CLI to CORE's memory system",
docsUrl: "https://docs.heysol.ai/providers/codex",
icon: "codex",
},
[Provider.CURSOR]: {
id: Provider.CURSOR,
name: "Cursor",
@ -22,6 +36,13 @@ export const PROVIDER_CONFIGS: Record<Provider, ProviderConfig> = {
docsUrl: "https://docs.heysol.ai/providers/cursor",
icon: "cursor",
},
[Provider.GEMINI]: {
id: Provider.GEMINI,
name: "Gemini",
description: "Connect Gemini to CORE's memory system via browser extension",
docsUrl: "https://docs.heysol.ai/providers/browser-extension",
icon: "gemini",
},
[Provider.KILO_CODE]: {
id: Provider.KILO_CODE,
name: "Kilo-Code",
@ -36,6 +57,13 @@ export const PROVIDER_CONFIGS: Record<Provider, ProviderConfig> = {
docsUrl: "https://docs.heysol.ai/providers/vscode",
icon: "vscode",
},
[Provider.WINDSURF]: {
id: Provider.WINDSURF,
name: "Windsurf",
description: "Connect your Windsurf editor to CORE's memory system via MCP",
docsUrl: "https://docs.heysol.ai/providers/windsurf",
icon: "windsurf",
},
[Provider.ZED]: {
id: Provider.ZED,
name: "Zed",

View File

@ -1,9 +1,13 @@
export enum Provider {
CHATGPT = "chatgpt",
CLAUDE_CODE = "claude-code",
CLAUDE = "claude",
CODEX = "codex",
CURSOR = "cursor",
GEMINI = "gemini",
KILO_CODE = "kilo-code",
VSCODE = "vscode",
WINDSURF = "windsurf",
ZED = "zed",
}