@@ -32,6 +32,7 @@ const PACKAGE_MANAGER_NAMES: Record<PackageManager, string> = {
3232const AGENT_NAMES : Record < string , string > = {
3333 "claude-code" : "Claude Code" ,
3434 cursor : "Cursor" ,
35+ codex : "Codex" ,
3536 opencode : "Opencode" ,
3637} ;
3738
@@ -169,7 +170,7 @@ const parseArgs = async (): Promise<CliArgs> => {
169170 . option ( "agent" , {
170171 alias : "a" ,
171172 type : "string" ,
172- choices : [ "claude-code" , "cursor" , "opencode" , "none" ] as const ,
173+ choices : [ "claude-code" , "cursor" , "opencode" , "codex" , " none"] as const ,
173174 description : "Agent integration to automatically forward selected elements to agent instead of copying to clipboard" ,
174175 } )
175176 . option ( "yes" , {
@@ -191,12 +192,14 @@ const parseArgs = async (): Promise<CliArgs> => {
191192 . example ( "$0 -y" , "Auto-detect everything and install without prompts" )
192193 . example ( "$0 -f next -r app" , "Configure for Next.js App Router" )
193194 . example ( "$0 -a cursor -y" , "Add Cursor agent integration non-interactively" )
195+ . example ( "$0 -a codex -y" , "Add Codex agent integration non-interactively" )
194196 . example ( "$0 -p pnpm -a claude-code" , "Use pnpm and add Claude Code agent" )
195197 . example ( "$0 --skip-install" , "Only modify files, install packages manually" )
196198 . epilog (
197199 `${ pc . bold ( "Agent Integrations:" ) } \n` +
198200 ` ${ pc . cyan ( "claude-code" ) } Connect React Grab to Claude Code\n` +
199201 ` ${ pc . cyan ( "cursor" ) } Connect React Grab to Cursor IDE\n` +
202+ ` ${ pc . cyan ( "codex" ) } Connect React Grab to Codex CLI\n` +
200203 ` ${ pc . cyan ( "opencode" ) } Connect React Grab to Opencode\n\n` +
201204 `${ pc . bold ( "Supported Frameworks:" ) } \n` +
202205 ` ${ pc . cyan ( "next" ) } Next.js (App Router & Pages Router)\n` +
@@ -360,6 +363,7 @@ const main = async () => {
360363 const availableAgents = [
361364 { name : "Claude Code" , value : "claude-code" as const } ,
362365 { name : "Cursor" , value : "cursor" as const } ,
366+ { name : "Codex" , value : "codex" as const } ,
363367 { name : "Opencode" , value : "opencode" as const } ,
364368 ] . filter ( ( agent ) => ! projectInfo . installedAgents . includes ( agent . value ) ) ;
365369
@@ -372,7 +376,7 @@ const main = async () => {
372376 } ) ;
373377 } else {
374378 const wantAgentIntegration = await confirm ( {
375- message : "Do you want to add an agent integration (Claude Code, Cursor, or Opencode)?" ,
379+ message : "Do you want to add an agent integration (Claude Code, Cursor, Codex, or Opencode)?" ,
376380 default : false ,
377381 } ) ;
378382
0 commit comments