Local Raycast extension for one job: reply to Codex from a tiny Raycast form without leaving fullscreen apps like movie playback.
This repo turns Raycast into a lightweight human-reply UI for Codex.
- Codex asks for input
- a local hook opens Raycast
- Raycast shows the last Codex message above a reply field
- your answer is saved locally
- a terminal workflow can wait for that answer and continue
Current setup also supports a practical fallback flow:
- save reply
- copy reply to clipboard
- optionally return focus to
Warp - paste and send automatically
- A local script writes the current prompt to
~/.codex/raycast-codex-reply/current-prompt.json - The script opens Raycast through a deeplink
- Raycast shows the last Codex message plus a minimal reply form
- Submit saves
reply.jsonand copies the text to the clipboard - A waiting terminal script prints the reply back to stdout
src/reply-to-codex.tsx: Raycast UIsrc/approve-codex-action.tsx: Raycast UI for single-key approvalsscripts/request-reply.sh: open Raycast with a promptscripts/wait-for-reply.sh: open Raycast and block until a reply arrivesscripts/wait-for-approval.sh: open Raycast and wait for a one-key approval replyscripts/run-approval-watcher.sh: watch Codex rollouts for approval prompts and send a key to Warp
npm install
npm run devThen import the extension in Raycast when the dev tool prompts you.
Open Raycast manually:
./scripts/request-reply.sh "Need your answer here"Wait in a terminal workflow:
./scripts/wait-for-reply.sh "Need your answer here"Run the approval watcher:
./scripts/run-approval-watcher.sh- The deeplink path assumes local extension owner
sebasand extension nameraycast-codex-reply - Adjust the deeplink in
scripts/request-reply.shif Raycast assigns a different owner/name on import - In Sebas's current local setup,
~/.codex/hooks/notify_macos.shcan use this repo as the human-reply bridge - The approval watcher is separate from
notify; it watches the latest Codex rollout for approval prompts that start withDo you want me to