Self-Review Checklist:
- [ ] I've reviewed my own diff for quality, security, and reliability
- [ ] Unsafe blocks (if any) have justifying comments
- [ ] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [ ] Tests cover the new/changed behavior
- [ ] Performance impact has been considered and is acceptable
Closes https://github.com/zed-industries/zed/issues/57073
Release Notes:
- Fixed running Zed on Ubuntu 20.04 installed via the installer by
bundling the required `libstdc++.so`.
Self-Review Checklist:
- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable
Closes #ISSUE
Release Notes:
- N/A or Added/Fixed/Improved ...
This updates the nightly workflow to run hourly as opposed to once
daily.
Notably, it also
- changes the poll duration for the auto updater - we now poll 4 times
an hour on the Nightly channel and continue with the old rate for all
other channels
- moves the pre-checks to the linux runners, since we have more
resources available there
- only ever allow one concurrent nightly run
Release Notes:
- N/A
We shouldn't trigger this workflow on pull_request_review.submitted
because (1) two out of three possible cases here are already handled by
the build-in workflow automation of the project board itself, and (2)
this takes us into the territory of workflow runs that require approval.
Release Notes:
- N/A
Self-Review Checklist:
- [ x] I've reviewed my own diff for quality, security, and reliability
- [ x] Unsafe blocks (if any) have justifying comments
- [ n/a] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [ n/a] Tests cover the new/changed behavior
- [ n/a] Performance impact has been considered and is acceptable
Closes #ISSUE
Release Notes:
- N/A
Auto-syncs derived fields on a private GitHub Project (#84) from issue
labels and comment activity. Goal is to more effectively track issue
states and make sure we're triaging, closing the loop when
possible/relevant.
Self-Review Checklist:
- [ x] I've reviewed my own diff for quality, security, and reliability
- [ x] Unsafe blocks (if any) have justifying comments
- [ n/a] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [ n/a] Tests cover the new/changed behavior
- [ n/a] Performance impact has been considered and is acceptable
Closes #ISSUE
Release Notes:
- N/A
From now on, we will instead just make another patch version bump. That
has the advantage that tags will actually always only be applied to the
version bump and not some random change as well as us being able to
prohibit updates of tag refs for the Zed Zippy identity as well.
Release Notes:
- N/A
Fixes
<img width="1238" height="520" alt="image"
src="https://github.com/user-attachments/assets/5e6c0d93-660f-4d1a-ab8c-c9c269292eaa"
/>
If a parent script with `-euo pipefail` invokes a script, that does not
inherit the `-euo pipefail` option. Fix that by adding the flags to the
scripts needed and adjust the curl command to fail too.
Release Notes:
- N/A
This relies on 1.94s --workspace option we've added to cargo
Self-Review Checklist:
- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable
Closes #ISSUE
Release Notes:
- N/A
Self-Review Checklist:
- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [ ] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [ ] Tests cover the new/changed behavior
- [ ] Performance impact has been considered and is acceptable
Release Notes:
- N/A
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
After #52953 gets merged the git graph will be ready for it's preview
release, so we can finally remove the feature flag! AKA this PR releases
the git graph
Self-Review Checklist:
- [ ] I've reviewed my own diff for quality, security, and reliability
- [ ] Unsafe blocks (if any) have justifying comments
- [ ] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [ ] Tests cover the new/changed behavior
- [ ] Performance impact has been considered and is acceptable
Closes #ISSUE
Release Notes:
- Add Git Graph. Can be accessed through the button on the bottom of the
git panel or the `git graph: Open` action
## Summary
- Added `TarBz2` variant to `AssetKind` enum for `.tar.bz2` / `.tbz2`
archives
- Implemented `extract_tar_bz2` using the `bzip2` feature of
`async-compression` (already a workspace dependency, just enabled the
feature flag)
- Wired up both streaming and file-based extraction paths in
`github_download.rs`
- Added `.tar.bz2` / `.tbz2` URL detection in both
`LocalExtensionArchiveAgent` and `LocalRegistryArchiveAgent`
This unblocks ACP registry entries (like Goose) that only ship
`.tar.bz2` archives.
Reference: https://github.com/block/goose/issues/8047
## Test plan
- [ ] Verify `cargo check` and `clippy` pass (confirmed locally)
- [ ] Test downloading an ACP agent that ships a `.tar.bz2` archive
(e.g., Goose)
- [ ] Verify existing `.tar.gz` and `.zip` agent downloads still work
Release Notes:
- Added support for `.tar.bz2` archives in ACP agent server downloads,
unblocking registry entries like Goose that only ship bzip2-compressed
tarballs.
---------
Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
This PR removes the `language-extension-version` script and cleans up
some of the related documentation around updating extensions, as this is
no longer needed and at this point fully automated.
Release Notes:
- N/A
Closes#51339
This should address issues with too new libstdc++.so on older/more
conservative distros such as RHEL9.
Release Notes:
- Relaxed requirement for libstdc++.so available on Linux distros.
This PR adds a Danger check to remind contributors that any database
changes for Collab need to be done via a migration in the Cloud repo:
<img width="888" height="323" alt="Screenshot 2026-03-10 at 6 39 21 PM"
src="https://github.com/user-attachments/assets/5b3bbc3d-1e9d-409a-837b-565e1ca36935"
/>
Release Notes:
- N/A
Before you mark this PR as ready for review, make sure that you have:
- [x] Added a solid test coverage and/or screenshots from doing manual
testing
- [x] Done a self-review taking into account security and performance
aspects
- [x] Aligned any UI changes with the [UI
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
Release Notes:
- Update legal docs to reflect new Terms, Privacy Policy, Subprocessors,
and Acceptable Use Policies (fka Third Party Terms)
If I follow the steps outlined in https://zed.dev/docs/development/linux
then `cargo run` on my Fedora workstation fails because the install
script is missing `libva-devel` as a required dependency under `dnf` /
`yum` sections.
Before you mark this PR as ready for review, make sure that you have:
- [ ] Added a solid test coverage and/or screenshots from doing manual
testing
- [ ] Done a self-review taking into account security and performance
aspects
- [ ] Aligned any UI changes with the [UI
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
Release Notes:
- N/A
The case of false negatives (“Missed opportunities”) was not considered
when the bot versioning was added. Now we're also automatically
attributing the false negatives to the bot version that made them.
Release Notes:
- N/A
required after livekit bump
Closes #ISSUE
Before you mark this PR as ready for review, make sure that you have:
- [ ] Added a solid test coverage and/or screenshots from doing manual
testing
- [ ] Done a self-review taking into account security and performance
aspects
- [ ] Aligned any UI changes with the [UI
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
Release Notes:
- N/A
Turns out you can't query the duplicate issue for the id of the
original/canonical issue, even though GitHub UI displays “Closed as
duplicate of <original issue id>”. Oh well. For the bot performance
tracking all that matters is whether any of its suggestions were the
actual originals, so we're working around the API limitation by querying
the suggested issues instead.
Release Notes:
- N/A
Obviously™, we add the bot-commented issues onto the tracking board at
the time of the issues getting closed, which is very much not the same
time as when the bot commented. We could very well be adding the issue
with a v1 bot comment to the board when v2 is already deployed. This
commit stops messing up those stats.
Release Notes:
- N/A
## Summary
Fixes issues discovered while running the docs automation workflow for
the first time, plus improvements based on the v0.225 run where 44
suggestions overwhelmed a single Droid invocation.
### docs-suggest-publish
- Ignore untracked files when checking for clean working directory
- Add `--auto high` flag to droid exec for non-interactive use
- Add error handling to show droid output on failure
- Remove non-existent `documentation` label from PR creation
- Use `--write` flag for prettier to fix formatting
- **Batch suggestions** into groups of 10 (configurable with
`--batch-size`) to prevent Droid from dropping suggestions when context
is too large
- **Pre-PR docs build validation** — runs `generate-action-metadata` +
`mdbook build` before creating the PR to catch invalid `{#action}` and
`{#kb}` references locally instead of waiting for CI (skippable with
`--skip-validation`)
- **Prompt guardrail** — instructs Droid not to invent `{#kb}` or
`{#action}` references, only reusing action names already present in
docs files
- **Stable release detection** — at publish time, checks each queued
PR's merge commit against the latest stable release tag. PRs already in
stable get annotated "ALREADY IN STABLE" so Droid applies content
changes without adding incorrect Preview callouts
- **Feature flag detection** — parses
`crates/feature_flags/src/flags.rs` for all feature flag struct names,
then checks each PR's diff for references. PRs behind feature flags are
skipped entirely since those features aren't generally available yet
### docs-strip-preview-callouts
- Remove non-existent `documentation` label from PR creation
- Add `Release Notes: - N/A` to generated PR body (fixes Danger bot
check)
## Context
These scripts were run for the first time as part of the v0.225 release.
Issues found:
1. The `documentation` label doesn't exist in this repo
2. Droid exec needs `--auto high` for non-interactive execution
3. Prettier needs `--write` to actually fix files (was running in check
mode)
4. Untracked files should not block the workflow
5. Sending all 44 suggestions in one Droid invocation only applied 2 —
batching in groups of 10 fixed this
6. Droid hallucinated action names (`settings::OpenSettings`,
`gpui::Modifiers::secondary_key`) that broke the docs preprocessor build
7. PRs that shipped in stable v0.225 incorrectly got Preview callouts
because the queue doesn't distinguish preview-only from
already-in-stable
8. PRs behind feature flags (subagents, git graph) got documented
despite not being generally available
Release Notes:
- N/A
This PR removes Preview callouts from documentation for features that
are now in Stable.
Features documented with Preview callouts are now included in the stable
release.
Generated by script/docs-strip-preview-callouts
Release Notes:
- N/A
This adds `./script/cargo` which is a transparent wrapper around `cargo`
intended for use by internal staff members at Zed.
It:
- adds `--timings` to `cargo build`/`cargo test`/`cargo run`
- saves the output to ZED_DATA_DIR/build-timings
When Zed starts (and you're logged in as a staff member) the
build-timings
directory is uploaded to our existing telemetry stack.
Co-authored-by: Marshall <git@maxdeviant.com>
Release Notes:
- N/A
Add a script that classifies open and closed issues that the duplicate
bot commented (or not commented) on and puts them into the appropriate
columns of the dedicated github project board. Add a workflow that calls
that script for every closed issue and also on a schedule (that's for
the open ones).
If you're reading this some time way later and there's no bot running
around the repository leaving comments like “This issue appears to be a
duplicate of...”, you can delete these files.
Release Notes:
- N/A
## Summary
- Update hosted model and context-window tables in docs/src/ai/models.md
to remove retired models and list current replacements.
- Add a dated Recent Model Retirements section mapping each retired
model to its replacement.
- Update AI docs examples and references in agent-settings.md,
inline-assistant.md, agent-panel.md, and llm-providers.md to use current
model names.
- Remove stale OpenAI model references in llm-providers.md that no
longer align with currently offered hosted models.
## Validation
- ./script/prettier
- ./script/check-todos
## Suggested .rules additions
- N/A
Release Notes:
- N/A
Adds scripts and a GitHub Action workflow for automatically suggesting
documentation updates when PRs modify user-facing code.
## Scripts
- **`script/docs-suggest`**: Analyze PRs/commits for documentation needs
using AI
- **`script/docs-suggest-publish`**: Create a PR from batched
suggestions
- **`script/docs-strip-preview-callouts`**: Remove Preview callouts when
shipping to stable
- **`script/test-docs-suggest-batch`**: Testing utility for batch
analysis
## Workflow
The GitHub Action (`.github/workflows/docs_suggestions.yml`) handles two
scenarios:
1. **PRs merged to main**: Suggestions are batched to
`docs/suggestions-pending` branch for the next Preview release
2. **Cherry-picks to release branches**: Suggestions are posted as PR
comments for immediate review
## Callout Types
The system distinguishes between:
- **Additive features** (new commands, settings, UI):
```markdown
> **Preview:** This feature is available in Zed Preview. It will be
included in the next Stable release.
```
- **Behavior modifications** (changed defaults, altered existing
behavior):
```markdown
> **Changed in Preview (v0.XXX).** See [release notes](/releases#0.XXX).
```
Both callout types are stripped by `docs-strip-preview-callouts` when
features ship to stable.
## Example Output
See PR #49190 for example documentation suggestions generated by running
this on PRs from the v0.224 preview window.
## Usage
```bash
# Analyze a PR (auto-detects batch vs immediate mode)
script/docs-suggest --pr 49100
# Dry run to see assembled context
script/docs-suggest --pr 49100 --dry-run
# Create PR from batched suggestions
script/docs-suggest-publish
# Strip callouts for stable release
script/docs-strip-preview-callouts
```
Release Notes:
- N/A
## Summary
- refresh git auth headers before each per-crash iteration in
`background_agent_mvp`
- add guarded `git fetch`/`git checkout` handling so one candidate auth
failure doesn’t fail the entire run
## Context
- fixes the auth failure seen in workflow run 22106378719 (`fatal: could
not read Username for 'https://github.com'`)
- related Linear issue: BIZOPS-853
## Testing
- ruby -e "require 'yaml';
YAML.load_file('.github/workflows/background_agent_mvp.yml')"
Release Notes:
- N/A
## Summary
- add a new crash issue-linking subagent prompt
(`.factory/prompts/crash/link-issues.md`)
- add a scheduled/manual GitHub workflow for week-one background-agent
runs (`.github/workflows/background_agent_mvp.yml`)
- add Sentry candidate selection script to rank top crashes by
solvability × population (`script/select-sentry-crash-candidates`)
- add a local dry-run runner for end-to-end MVP execution without
push/PR actions (`script/run-background-agent-mvp-local`)
## Guardrails in this MVP
- draft PRs only (no auto-merge)
- reviewer routing defaults to: `eholk,morgankrey,osiewicz,bennetbo`
- pipeline order is: investigate -> link-issues -> fix
## Validation
- `python3 -m py_compile script/select-sentry-crash-candidates
script/run-background-agent-mvp-local`
- `python3 script/select-sentry-crash-candidates --help`
- `python3 script/run-background-agent-mvp-local --help`
---------
Co-authored-by: John D. Swanson <swannysec@users.noreply.github.com>
Closes#45507
There have been 5+ PRs attempting to fix Linux desktop icon association
by adding `StartupWMClass` back to the `.desktop.in` template (#15763,
#20644, #23459, #33019, #37962), all closed because `StartupWMClass` is
an X11-specific key that GNOME happens to misuse on Wayland, and the
correct fix per the FreeDesktop spec is to name the `.desktop` file to
match the app's Wayland `app_id` / X11 `WM_CLASS`. Refer:
https://github.com/zed-industries/zed/issues/12707#issuecomment-2168742761
The root cause is that `bundle-linux` was never updated to produce the
correct filename in the tarball. The only consumers of the tarball's
desktop file are `install.sh` and manual extractors. So this fix is for
people who download the tarball and extract it without `install.sh`. The
docs already tell them to rename, but as @wcbing points out, not
everyone reads that carefully.
We are now making `bundle-linux` produce the correctly named desktop
file from the start.
Release Notes:
- N/A
---------
Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com>