Skip to content

Zed ​

Zed is a minimal code editor crafted for speed and collaboration with humans and AI. Protocol Launcher allows you to generate deep links to open and configure resources in Zed.

Usage ​

There are two ways to use this library:

  • On-Demand import from subpaths enables tree-shaking and keeps bundles small.
  • Full Import from the root package is convenient but includes all app modules.

Pick On-Demand for production builds; Full Import is fine for quick scripts or demos.

Select Installation Method

On-Demand
Recommended. Optimized for production.
Full Import
Convenient. Good for quick scripts.

Open File ​

On-Demand
ts
import { openFile } from 'protocol-launcher/zed'

const url = openFile({
  path: '/etc/hosts',
  line: 1,
  column: 2,
})

Open Folder ​

On-Demand
ts
import { openFolder } from 'protocol-launcher/zed'

const url = openFolder({
  path: '/etc',
})

Open Remote ​

On-Demand
ts
import { openRemote } from 'protocol-launcher/zed'

const url = openRemote({
  host: 'root@172.18.105.209:22',
  path: '/code/my-project',
})

Clone Project ​

On-Demand
ts
import { cloneProject } from 'protocol-launcher/zed'

const url = cloneProject({
  repo: 'https://github.com/zhensherlock/protocol-launcher',
})

Open Git Commit ​

On-Demand
ts
import { openGitCommit } from 'protocol-launcher/zed'

const url = openGitCommit({
  sha: '739420c',
  path: '/Users/dev/Documents/protocol-launcher',
})

Open Extension ​

On-Demand
ts
import { openExtension } from 'protocol-launcher/zed'

const url = openExtension({
  id: 'html',
})

Open Agent ​

On-Demand
ts
import { openAgent } from 'protocol-launcher/zed'

const url = openAgent({
  prompt: 'Hello World',
})

Join Agent ​

On-Demand
ts
import { joinAgent } from 'protocol-launcher/zed'

const url = joinAgent({
  id: '12345',
})

Open Settings ​

On-Demand
ts
import { openSettings } from 'protocol-launcher/zed'

const url = openSettings({
  path: 'autosave',
})