Project Info

HeyCodex

Devpost

Inspiration

I started HeyCodex because I wanted more control over voice input than the built-in dictation experience I was using gave me. I was already using Codex, and I wondered whether its Codex-app-server workflow could help me build a voice-input companion that matched the way I write, without adding another specialized voice-input subscription. HeyCodex was an in-progress personal project before Build Week, not a finished app. The event gave me a focused push to turn it into something clearer and more usable for other people.

What it does

HeyCodex is a macOS voice-input app for writing in the apps you already use. Press a global hotkey, speak, and it transcribes Japanese or English on-device with Apple SpeechAnalyzer. You can insert the transcript as-is, or optionally use AI Assist to clean it up. Ask AI lets you speak an instruction about selected text or a general question. The privacy boundary matters: raw audio is transcribed on-device. When you choose AI Assist or Ask AI, the relevant text is passed to a separately installed Codex CLI running on your Mac, which may send a request to OpenAI under your authenticated account. I want HeyCodex to feel like a practical companion for people who use Codex, while keeping those choices visible and optional.

How we built it

I built HeyCodex as a native macOS app with Swift, SwiftUI, and AppKit. The core experience combines Apple SpeechAnalyzer, global hotkeys, a recording HUD, and destination-aware text insertion. Optional AI features use the Codex CLI that the user installs and authenticates separately. During Build Week, I used Codex with GPT-5.6 extensively to review existing behavior, make product decisions, implement changes, and validate results. The work was not a claim that the entire app was created during the event; it was a focused period of moving an ongoing project toward a public-facing product.

Challenges we ran into

The hardest part was turning a workflow that made sense to me into one a new person could understand without having the same context. That meant untangling setup and permissions, making hotkey states and recording feedback clear, guarding text insertion, and explaining where optional AI processing begins. Supporting Japanese and English without making settings even more confusing added another layer. I treated those friction points as product decisions, not only technical ones. Each change had to make the next action more obvious while preserving the ability to use ordinary voice input locally.

Accomplishments we're proud of

I am proudest of moving HeyCodex beyond a personal setup and into a more complete product experience. Build Week work added and refined onboarding, input checks, restart behavior, settings, bilingual UI foundations, and safer AI-command interaction. The app now gives people a more understandable path from first launch to using voice input in their own workflow. I also built in practical guardrails: AI is optional, the app checks where it is about to insert text, and the interface communicates recording and processing state instead of hiding it. That combination is what makes HeyCodex feel useful rather than just technically possible.

What we learned

The biggest lesson was that effective use of Codex was not just about asking it to write code. GPT-5.6 was especially useful to me as a way to move between review, design decisions, implementation, and validation. Choosing a model and reasoning level that matched the task helped me keep momentum, but the important decisions still came from testing real behavior and deciding what would be understandable to another person. I also learned that voice input needs clear boundaries. Fast transcription matters, but so do permission explanations, safe insertion, and a plain account of what optional AI features do with text.

What's next

My next priority is to keep making the app more stable while improving and expanding the features people actually use. I also want to simplify the settings experience: it has grown alongside the app, and it now needs a calmer, clearer structure that makes important choices easy to find. Feedback from real users will guide those changes as I prepare HeyCodex for a public open-source release.

Analysis

Compare with all teams

View

Metric

Figures cover GitHub contributors during the hackathon window. A co-authored commit counts in full for each author, so per-member totals add up to more than the whole-team figures.

Technology

Found in codeClaimed only
  • SwiftIn code

1 of 1 appear in the indexed code.

AI coding agents

No AI coding agent signals were found in this repository.

Detected from committed agent config files and commit authorship. Absence of a signal is not proof an agent was unused.

Codebase size

Source size

975 KB

Source files

75

Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.

0 stars