Skip to content

Windsurf ​

Windsurf is the first agentic IDE, developed by Codeium. It features Cascade, an AI agent that combines deep codebase understanding, advanced tools, and real-time awareness of your actions to handle complex coding tasks while keeping you in flow. Protocol Launcher allows you to generate deep links to open and configure resources in Windsurf.

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 IDE ​

On-Demand
ts
import { open } from 'protocol-launcher/windsurf'

const url = open()

Open File ​

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

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

Open Folder ​

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

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

Open Remote ​

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

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

Clone Project ​

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

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

Open Extension ​

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

const url = openExtension({
  id: 'esbenp.prettier-vscode',
})

Open Settings ​

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

const url = openSettings({
  path: 'terminal.integrated.suggest.enabled',
})