Interactive Cowlick mockup · Built from the product's real states

Choose a state, or use the arrow keys, Home, and End to move between states.

Codex lives at the notch.

Codex usage stays minimal at the MacBook notch. Hover or click for current work and safe approvals. Native on macOS. Local by default.

Release status No public binary yet. Cowlick will only publish a signed, notarized build.

Live demo

Try Cowlick at the notch.

Hover or click the notch to open it.

The right interruption at the right size.

The compact notch stays quota-only. Work opens on hover or click, permission requests show only what you need to decide, and multiple sessions remain separate.

Cowlick approval view for a Bash command, with Deny, Open Codex, Copy, and Allow once actions
Approval asks plainly. Project, tool, operation, and explicit actions stay together.
Cowlick session list showing ActivityPilot and Scoutly working independently
Sessions do not blur together. Each project keeps its own lifecycle and request identity.

Make quota last until reset.

Cowlick compares your current pace with the reset window, estimates time to empty, and keeps API-price equivalents visibly separate from real organization billing.

Quota pace
Used or remaining, plus a marker for even spend through reset.
Time to empty
A direct warning when the observed pace would run out early.
Billing accounts
Codex quota uses one local identity. OpenAI and Anthropic organization billing accounts stay labeled and uncombined.

Unofficial reset forecast. Cowlick displays data from Will Codex Reset? as provided. It is not Cowlick data or a Cowlick estimate, and Cowlick does not warrant it.

Cowlick quota panel showing remaining usage, time to empty, partial API-price equivalent, and an attributed third-party forecast
Demo fixture captured July 20, 2026. “Will Codex Reset?” is third-party data, not a Cowlick estimate.

Allow once means this request. Nothing else.

Every approval is matched to one pending UUID. Cowlick never makes Allow the default and never turns a timeout, malformed response, or disconnected app into permission.

  • Authenticated locally A current request arrives over private IPC.
  • Explicit every time Allow once or Deny is a deliberate action.
  • Failure defers Codex keeps its normal approval UI.
Read the threat model

Prompts stay private.

Prompt previews are off by default. Cowlick has no analytics, Cowlick account, cloud backend, ads, or third-party crash reporter.

Lifecycle fields only. Local observation ignores prompt, message, command, tool-input, and result payloads. Approvals come only from authenticated hooks.

No prompt history. Full prompts and approval operations are not persisted.

No hidden aggregation. Provider accounts and cost coverage remain separate.

Every stored file and network path

Build from source today.

The source is public today. A one-click binary and Homebrew cask will appear only after Developer ID signing, notarization, and clean-install verification pass.

Contributor install

macOS 14+, Xcode 16 or newer, Homebrew, and XcodeGen.

git clone https://github.com/henryvn27/cowlick.git
cd cowlick
brew install xcodegen
./Scripts/install_local.sh