Skip to content

About

Unofficial macOS one-shot launcher for wider Codex conversations and full-width Markdown tables. Original signed app stays untouched.

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

Repository files navigation

Codex Full Width

A small, unofficial macOS launcher for a wider Codex conversation layout. It opens your existing, signed app and applies one stylesheet in memory; it does not modify the official app bundle.

The conversation and composer use 90% of the available conversation area, leaving intentional 5% outer gutters. Markdown tables fill the inner content width. The stylesheet also makes room for the open summary panel, removes one narrow task-title cap, and gives the fixed title header an opaque background. Native padding still applies; “full width” does not mean edge-to-edge.

Before and after

Real screenshots from the owner's Codex, with private text covered by opaque redaction blocks. Click either image to view it at full resolution.

Before: narrow conversation column After: wider conversation and composer
Codex before: narrow conversation column, with private text redacted Codex after: wider conversation and composer, with private text redacted

These historical screenshots show different content and window heights, not a controlled same-content comparison. The after image uses the earlier 80% preset; today's preset is 90%. No cropping, scaling, or AI regeneration was applied to the source images. See image provenance.

Before you install

  • macOS only. This release does not ship a Windows helper or offer tested Windows support.
  • Node.js 22 or newer must be on your terminal's PATH when installing.
  • This release targets the official OpenAI-signed app at /Applications/ChatGPT.app, with executable Contents/MacOS/ChatGPT. Different bundle paths, including Codex.app, are not supported; do not rename or re-sign an app to bypass these checks.
  • This depends on unsupported app internals and can break after an update.

Security tradeoff: this launcher starts the app with a random loopback Chromium debugging port. That endpoint remains open for the app's entire lifetime, even after the helper disconnects and exits. Other local processes may use it to control the app, execute code in its renderer, and access chat data. A random port and loopback binding are not authentication. If that risk is unacceptable, use the stock app. Fully quit the app to close the endpoint. Read SECURITY.md before installing.

Install

Download the repository ZIP and extract it, or clone it:

git clone https://github.com/Akrabut/codex-full-width.git
cd codex-full-width

Then run these commands from the repository directory:

node --version
bash scripts/install.sh --dry-run
bash scripts/install.sh

Do not use sudo. No npm dependencies need installing. The installer creates:

  • ~/Applications/Codex Full Width.app
  • ~/Library/Application Support/CodexFullWidth/ with the helper and logs

It pins the resolved Node executable so Finder and Dock launches do not depend on your shell's PATH. Rerun the installer if a Node upgrade removes or changes that path. The installer also disables, unloads, and removes the specifically named legacy local.codex-full-width.helper LaunchAgent, if present. It does not install a watcher, login item, or background service.

Use

  1. Quit Codex completely with Cmd-Q; closing its window is not enough.
  2. Open ~/Applications/Codex Full Width.app in Finder.
  3. Optionally drag that launcher to the Dock.

Your existing account, conversations, projects, and settings remain in the official app's profile. If the app is already running, the launcher refuses to attach and asks you to quit it first.

Normal in-app conversation navigation retains the style. A full renderer reload, renderer crash/replacement, or new window does not reliably retain it. Quit completely and reopen through Codex Full Width to reapply it. There are no reload hooks, app-process signals, or retained helper connections.

To return to the stock layout, fully quit, then open the ordinary app icon. Opening that icon while a styled instance is still running does not reset it.

The installer copies the official app's currently selected Dock icon locally. This is an installation-time snapshot, not an icon watcher. Rerun the installer after changing the selected icon or appearance to refresh it. The repository contains no extracted OpenAI icons or app-bundle assets. The layout examples are sanitized, user-provided screenshots published with permission.

In app versions that expose a Full width pages setting, that setting has been separate from chat width; its behavior may change in later versions.

Limits and checks

This is an unsupported local customization, not an OpenAI product setting or an OpenAI-endorsed project. Signature, endpoint, renderer, and width checks refuse unexpected conditions rather than bypassing them. A passing width probe is not proof that every visual layout works. A failed launch may leave the official app running with its debugging port open; quit it before retrying.

The helper exits after bounded startup checks and one-shot injection. This reduces persistent companion work, but does not guarantee lower memory use or prevent app freezes.

npm test

For local macOS and isolated-browser checks, see CONTRIBUTING.md. For errors and logs, see Troubleshooting. Maintainers should read the handover, including the real-app checklist. The initial snapshot's verification record lists tested versions and the live-app acceptance gap.

Uninstall

Quit Codex first, then preview and remove only this launcher's files:

bash scripts/uninstall.sh --dry-run
bash scripts/uninstall.sh

This removes the launcher, its support directory and logs, and the named legacy LaunchAgent file. It does not remove the official app or its account/chat data. It does not stop a running app: quit and reopen the ordinary app to clear an active style and close its debugging endpoint.

License

MIT. OpenAI and Codex names belong to their respective owners; the license does not grant rights to their artwork or other proprietary assets.

About

Unofficial macOS one-shot launcher for wider Codex conversations and full-width Markdown tables. Original signed app stays untouched.

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages