Open-Source Wikis

/

Zed

/

Apps

/

extension_cli

zed-industries/zed

extension_cli

Active contributors: kubkon, maxdeviant

Purpose

crates/extension_cli is the command-line companion for authoring Zed extensions. It builds, validates, and packages WASM extensions against the public extension API.

Directory layout

crates/extension_cli/
├── Cargo.toml
└── src/
    └── main.rs       # Single-file CLI

The extension API lives in crates/extension_api (consumed by extensions); the in-app host lives in crates/extension_host.

What the CLI does

  • Build / package. Compile the user's extension WASM and bundle it with extension.toml, themes, languages, and snippets into the format Zed loads.
  • Validate. Check that the manifest is well-formed and the WASM exports match the ABI version the extension declares.
  • Publish helpers. The Zed extensions registry is populated by GitHub workflows that run this CLI; see .github/workflows/extension_bump.yml and .github/workflows/extension_auto_bump.yml.

Integration points

  • Reads: extension.toml and the extension's source.
  • Talks to: the WASM toolchain (cargo + wasm32-wasi target).
  • Used by: extension authors locally, plus the registry auto-bump workflows.
  • Extensions — how the host loads what this CLI ships

Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.

extension_cli – Zed wiki | Factory