Contributing
Open Interpreter is a fork of Codex with a narrower product focus. We accept contributions that affect what this fork owns: Open Interpreter's low-memory multi-tab runtime, model/provider harness behavior, Open Interpreter-specific TUI and onboarding changes, installer/update behavior, and product documentation.
For generic Codex CLI behavior that is not specific to Open Interpreter, please contribute upstream to OpenAI Codex. Keeping general-purpose fixes upstream helps both projects and reduces long-term fork drift.
Good First Step
Before opening a pull request, open or join an issue so the behavior and scope are clear. That is especially important for changes to:
- low-memory multi-tab behavior and shared-runtime work;
- harness selection, harness compatibility, and provider-specific coding-agent behavior;
- Open Interpreter-specific TUI, onboarding, model picker, or status UI;
- installer, standalone layout, and update behavior;
- provider/model catalog generation for Open Interpreter-supported providers;
- Open Interpreter docs, examples, and migration guidance.
Changes that are primarily upstream Codex concerns should start in the upstream Codex repository instead. Examples include generic sandbox internals, generic MCP protocol behavior, generic app-server protocol changes, or broad CLI features that are not tied to Open Interpreter's product direction.
Pull Requests
Keep changes focused and easy to review. If a change affects user behavior, update the relevant docs in this folder and the CLI help where appropriate.
For code changes:
- run the formatter for the area you changed;
- run the narrowest meaningful test target first;
- include regression tests for behavior changes when practical;
- avoid unrelated refactors in the same pull request.
Model And Provider Metadata
Provider/model membership is generated. Do not hand-patch model lists in Rust as a product fix.
When model catalog behavior changes, update the generator inputs or overrides and regenerate the catalog artifacts. The main generators live under:
codex-rs/scripts/write_provider_catalog.py
codex-rs/scripts/write_model_compatibility_catalog.pyUpdate Models, Providers, or Config reference when the user-facing setup changes.
Security
Do not report vulnerabilities in public issue threads. Use the security contact listed by the Open Interpreter project or repository.