OptionalfileA file in one of YOUR OWN mounts, by the portable mount reference. relPath is
mount-relative and leading-slash (e.g. /notes/idea.mdx). Mutually exclusive
with EditTarget.path.
There is no mode here on purpose: writability is the HOST's live reading of
the mount, not the caller's claim. A ro mount — which is also how an anonymous
share-link viewer surfaces — is refused read-only at call time, before the
editor is entered, so you never land in an editor that cannot save.
OptionalpathA repo-relative working-tree path in the current repo to focus once in edit
mode (e.g. src/App.tsx). Omit to edit the current route's entry.
Where to land when entering the edit experience (EDITOR_FIRST_EDITING_SPEC §6).
Two target classes, and at most one may be given — supplying both is refused
invalid-params. Omit both to edit the current route's entry.path): a repo-relative path in the CURRENT repo. Self-scoped — the app you are already running; the host navigates within the current route, never to another repo.file): a file in a mount you ALREADY HOLD, opened in the main edit experience (§9, settled 2026-08-28). You can only name a mount you hold: an unheld one isforbidden, and indistinguishably so from one that does not exist, because an app must not be able to probe for mounts (no existence oracle). Editing a file outside your mounts stays picker-mediated (pick-file).A URI, a
..segment, or a NUL is refusedinvalid-paramsin either class.