@remotion/studio: Support custom editors - #9950
Merged
Merged
Conversation
Contributor
JonnyBurger
changed the base branch from
main
to
codex/configure-default-editor-menu
July 30, 2026 13:40
JonnyBurger
force-pushed
the
codex/custom-editors
branch
from
July 30, 2026 14:43
aec0a7b to
395c4a5
Compare
JonnyBurger
force-pushed
the
codex/custom-editors
branch
from
July 30, 2026 15:00
395c4a5 to
1fbda73
Compare
JonnyBurger
marked this pull request as ready for review
July 30, 2026 16:40
auto-merge was automatically disabled
July 30, 2026 16:53
Pull Request is not mergeable
auto-merge was automatically disabled
July 30, 2026 16:53
Pull Request is not mergeable
auto-merge was automatically disabled
July 30, 2026 16:53
Pull Request is not mergeable
Contributor
There was a problem hiding this comment.
✅ No new issues found.
Reviewed changes
CustomEditortype and option validation — addsCustomEditortype withtype,name,executable, andargumentsfields; validates placeholders (%TARGET_PATH%required), argument types, and empty-name checks indefault-editor.tsx. Renames the oldDefaultEditortoBuiltInEditorand makes the newDefaultEditor = BuiltInEditor | CustomEditor.- Server-side resolution and launching —
resolveCustomEditorExecutablesearchesPATH, handles absolute paths, Mac.appbundles (viaopen -a), Windows.exe/.comfiltering, and symlinks.launchCustomEditorspawns withshell: false,detached: true,stdio: 'ignore'— no shell injection surface. - WSL path normalization —
normalizeCustomEditorTargetPathconverts absolute/mnt/paths to relative paths when running under WSL, mirroring the existing behavior inlaunchEditorfor built-in editors. - Sanitized API surface —
GetDefaultEditorInfoResponseandUpdateDefaultEditorRequestuseEditorPickerId = BuiltInEditor | 'custom'. The browser never sees the custom editor's executable path, arguments, or config object — only the opaque'custom'ID and display name.updateDefaultEditorHandlerrejects any custom editor payload sent from the browser and preserves the server-side config as-is when'custom'is selected. - Test coverage —
custom-editor.test.tsvalidates resolution on Linux/Windows/macOS, placeholder expansion, WSL normalization, and a full end-to-end spawn.default-editor-route.test.tscovers info-exposure, config preservation on'custom'select, and browser-submitted rejection.editor-registry.test.tscovers custom editor resolution, fallback on missing executable, and warning deduplication. - Docs and UI — new
docs/studio/open-in-editor.mdxpage documents custom editor config, placeholders, platform support, and security model.ConfigureDefaultEditorModalshows the custom editor with an icon in the dropdown.
DeepSeek Pro (free via Pullfrog for OSS) (Claude Opus not used — the program covers this model; add its provider key to run your pick) | 𝕏
auto-merge was automatically disabled
July 30, 2026 16:54
Pull Request is not mergeable
JonnyBurger
force-pushed
the
codex/custom-editors
branch
from
July 30, 2026 17:06
98fbe3b to
ec3ff2b
Compare
JonnyBurger
changed the base branch from
codex/configure-default-editor-menu
to
main
July 30, 2026 17:14
JonnyBurger
force-pushed
the
codex/custom-editors
branch
from
July 30, 2026 17:15
ec3ff2b to
011dd5b
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Summary
Test plan
Stack
@remotion/studio: Add default editor menu #9935Closes #9342