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',
})