Open-Source Wikis

/

Zed

/

How to contribute

/

Tooling

zed-industries/zed

Tooling

A reference for the build, lint, and release tooling used by the project.

Build

Command What it does
cargo run Debug build of the zed binary
cargo run --release Release build
cargo run --profile release-fast Faster compile, near-release perf
cargo build -p <crate> Build a single crate
cargo check Type-check without producing binaries
script/bootstrap Install OS-level build deps (POSIX)
script/bootstrap.ps1 Install OS-level build deps (Windows)

Lint

The wrapper ./script/clippy is the single source of truth. From .rules:

Use ./script/clippy instead of cargo clippy.

It applies workspace-wide flags and feature toggles that raw cargo clippy would miss.

Tests

Command What it does
cargo test All tests
cargo test -p <crate> One crate
cargo nextest run Same, via nextest if installed
cargo bench -p editor Editor benchmarks
cargo run --features visual-tests Run with visual test runner enabled
script/compare-perf Performance regression comparison

CI workflow: .github/workflows/run_tests.yml.

Licenses

Tool What it does
cargo-about License vetting library
script/check-licenses Run cargo-about with project rules
script/licenses/zed-licenses.toml Allowed-license list + clarifications
script/generate-licenses Build the bundled third-party-licenses page

If CI complains about licenses, the README.md has step-by-step recovery.

Releases

Script / workflow Purpose
script/cherry-pick Cherry-pick onto a release branch
script/draft-release-notes Draft notes from PRs since a tag
script/get-release-notes-since Lower-level: list PRs since a tag
script/get-pull-requests-since Even lower: just PR titles + numbers
script/bump-zed-version Bump main version
script/bump-nightly Bump nightly
script/bump-extension-cli Bump the bundled extension CLI version
script/bump-gpui-version Bump the gpui crate version
script/create-draft-release Create a draft GitHub release
script/determine-release-channel Infer channel from branch
script/bundle-mac Build the macOS bundle
script/bundle-linux Build the Linux bundle
script/bundle-windows.ps1 Build the Windows bundle
script/bundle-freebsd Build the FreeBSD bundle
script/flatpak Flatpak packaging

Workflows that drive releases:

  • .github/workflows/bump_patch_version.yml
  • .github/workflows/bump_zed_version.yml
  • .github/workflows/cherry_pick.yml
  • .github/workflows/after_release.yml
  • .github/workflows/extension_auto_bump.yml
  • .github/workflows/extension_bump.yml

Crash & telemetry tooling

Item Purpose
crates/crashes In-process crash handler → Sentry
script/sentry-fetch <issue-id> Pull a crash report
script/crash-to-prompt <issue-id> Generate an AI investigation prompt
.factory/prompts/crash/investigate.md Investigation prompt template
.factory/prompts/crash/fix.md Fix prompt template
crates/telemetry, crates/telemetry_events Event pipeline

Other developer aids

Tool / script Purpose
script/check-keymaps Validate bundled keymaps
script/check-todos Sweep TODO/FIXME annotations
script/check-links Validate links in docs (lychee)
lychee.toml Lychee config
script/crate-dep-graph Visualise the workspace dependency graph
script/danger Run Danger PR checks
dangerfile.ts / package.json Danger and Prettier configuration
clippy.toml Custom clippy lint configuration
.git-blame-ignore-revs Mass-format commits to ignore in blame
.mailmap Author normalization for git log
tooling/ Misc dev tooling
script/docs-suggest LLM-based documentation suggestions
script/docs-strip-preview-callouts Strip preview-only callouts from docs

Editor metadata

  • .zed/ — bundled per-repo Zed settings (used when you open the Zed repo in Zed).
  • .factory/ — Factory.ai integration: prompts (.factory/prompts/) and skills (.factory/skills/). The humanizer and brand-writer skills are project-local writing aids.

CI infrastructure

.github/workflows/ carries 30+ workflows. The biggest ones to know:

  • run_tests.yml — main CI.
  • assign-reviewers.yml — auto-assign reviewers from REVIEWERS.conl.
  • pr_labeler.yml, community_* — community automation.
  • deploy_collab.yml, bump_collab_staging.ymlcollab backend deployment.
  • deploy_cloudflare.yml — Cloudflare deploys (likely the docs site).
  • compliance_check.yml — license/CLA enforcement.
  • release_actions.yml — release-time orchestration.
  • compare_perf.yml — performance regression checks.
  • cherry_pick.yml, hotfix-review-monitor.yml — release-branch hygiene.

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

Tooling – Zed wiki | Factory