[Feature Request] Domain- and project-specific link opening rules
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 125k
- Forks
- 19.4k
- PR merge metrics
- PR metrics pending
Description
Description
Add configurable rules for choosing where links open in the Codex desktop app. The current setting applies globally: links open either in the in-app browser or in the system browser.
It would be useful to override that behavior for specific domains and projects.
Proposed behavior
Allow users to define rules such as:
- Open every
*.my-domain.examplelink in the system browser. - Open links in the system browser only for a selected Codex project.
- Keep all other links opening in the in-app browser.
Domain matching should support exact hosts and wildcard subdomains. Project-specific rules should override the global default.
Motivation
Some sites rely on authentication, browser extensions, certificates, profiles, or policies that are available only in the user's system browser. Other links still benefit from the integrated browser experience, so changing the global default is too broad.
Example configuration
[desktop.link_opening]
default = "in-app-browser"
[[desktop.link_opening.rules]]
domain = "*.my-domain.example"
target = "external-browser"
[[desktop.link_opening.rules]]
project = "/path/to/project"
target = "external-browser"
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the Codex desktop app's current global link-opening setting and its TOML configuration handling. Trace how links are routed to the in-app or system browser, then determine how domain and project rules could be represented and prioritized. Done means exact hosts, wildcard subdomains, project-specific overrides, and the global default all behave as described.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- desktop
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100