Repository navigation
v0.5.0
Forge 0.4.0 was not published on GitHub, so this release is the first GitHub release since 0.3.0. See the 0.4.0 changes for what that version added.
Security
- Build with Go 1.27.3 or later and patched Node, Bun, and uv releases, and require patched CA certificate packages in container images. These address the eMudhra certificate authority compromise. Earlier Forge binaries and images were built before these fixes; upgrade to this release.
New features
- Ask an agent to create a worklist, a ranked list of pull requests and issues across tracked repositories. Review items beside their details, run bulk actions, and mark items handled. Forge shows changes since ranking, including new commits, comments, reviews, and CI results.
- Search worklists and filter by Open, Closed, or All. Merged and closed items count as done. Forge remembers your last list and item, and the Worklists tab appears from first launch.
- Share and import worklists through links. Opening the same link reopens its existing list, and Forge reports skipped items that are unavailable locally. Copy link appears in applications that support Kenn links. Agents can also import links through
kenn_forge_import_worklist. - Select multiple sidebar workspaces, pull requests, or issues with Shift-click and Cmd/Ctrl-click, then right-click to act on the selection. Bulk actions include labels, assignees, stars, closing, reopening, and quick actions. Label and assignee edits preserve values you leave unchanged.
- Merge several pull requests from the list menu. Ready requests merge immediately, requests with pending CI wait for passing checks, and branches with merge queues use the queue. Drafts, conflicts, and failed CI are skipped with a reason.
- Merge pull requests through GitHub merge queues and follow queue position, state, and removal reasons in Forge. "Merge after CI" also supports queues. Selecting "Delete workspace after merge" removes the workspace after the queue completes the merge.
- Filter pull requests with the Passing CI option. Requests with failed or running checks do not match, and requests with no reported CI are excluded.
- Use Forge tools in Kenn chat without editing configuration. MCP starts by default on Forge's existing local port. Set
[mcp] enabled = falseto disable it.
Improvements
- Read worklist context with distinct info, warning, and critical levels. Ordinary notes default to muted info text, while warnings and critical risks stand out.
- Follow pull request and issue links in chat replies directly into Forge for tracked repositories. In a workspace, the item opens beside the chat and stays in Targets.
- See which pull requests a GitHub native stack merge includes, where they merge, and which requests stay open for GitHub to rebase. Queue dialogs explain when the stack joins as one group.
- See an advisory Merge or Hold recommendation with a factual reason above pull request grading details. Supporting evidence remains under Details. Upgrade Forge before upgrading the adapter that supplies recommendations.
- Keep using Forge while bulk workspace deletion runs in the background. Each row shows its progress, workspaces with uncommitted changes stay intact, and failures appear together when deletion finishes.
- Open large ACP chats with recent messages first and load older history on demand. Smaller updates reduce repeated transcript transfers that interrupt desktop connections.
- Collapse videos in pull request and issue descriptions to keep reading. Collapsing a video also pauses playback.
- Use matching silver-gray colors for light mode and workspace terminals. Restart tools that choose colors at startup to pick up the light background, or change the tool's own theme setting.
- Navigate workspace and Docs context menus with the keyboard. Menus support arrow keys and type-ahead, close after selection, and return focus to the clicked row.
- Find launch agents in one alphabetical list across desktop and mobile menus. Shell remains at the bottom.
- Sort review jobs by repository, branch, or ref, and sort workflow runs by commit.
- Collect landed work, the record of how changes reached a branch, with less analysis time. Collection results also include pull request titles, so integrations avoid separate title requests.
- Receive more specific reasons when landed-work analysis cannot establish how a change landed.
- Report setup completion, sync failures, empty submitted searches, and displayed action errors through anonymous telemetry. Search queries and error text stay on the machine, and repository counts use ranges.
Bug fixes
- Open supported GitHub comment links at the requested comment, including comments inside filtered timelines or hidden threads. Forge reports when the comment is missing.
- Open unsynced pull request and issue links on Forgejo, Gitea, and Bitbucket at the provider page. Bitbucket Cloud issue links also open the correct issue when a pull request has the same number.
- Open and copy pull request and issue links correctly when Forge runs under a path such as
/forge. Links to untracked repositories consistently use the provider site. - Load GitHub attachment images whose upload URLs return 404 even though GitHub still displays the images.
- Keep merge controls in place during Activity refreshes. Draft pull requests show a message explaining that you must mark them ready for review, with merge buttons disabled.
- Save built-in agents after re-enabling them in Settings. Forge restores the default command and identifies missing fields that prevent saving, including agents hidden by a filter.
- Read multiple-choice agent questions above their answer options.
- Start Codex ACP chats in a supported access mode derived from Codex policy when no explicit mode is set. Policies that exclude workspace-write no longer cause the first prompt to fail for supported configurations.
- Recover idle, resumable ACP chats after Forge upgrades without losing their transcripts. Forge explains recovery failures and keeps the chat pane open.
- Keep new workspace terminals running after the login shell changes or disappears. Forge uses the current login shell or falls back to
/bin/sh. - Open workspaces when optional Roborev setup fails, and launch terminals when shared temporary storage is full. Canceled workspace creation also leaves later attempts able to prepare a clean checkout.
- Show working agents even when another session in the workspace responds slowly. Workspace shutdown and cleanup also handle tmux sessions that have already exited.
- Show pull request target diffs and commit lists on fleet members that use another Forge instance for repository data.
- Show accurate pull request colors in phone terminal headers and accurate timeline load-more counts after force pushes. Replaced commits collapse into one row in every timeline order.
- Retry failed external pull request context-card reads every 15 seconds while visible, preserving the last result.
- Fill pull request and issue pages correctly when newer items belong to untracked repositories.
- Explain when the browser withholds installed fonts from the terminal font picker, and offer Try again.
- Spend less API quota refreshing unchanged open GitHub pull requests and retrying merge queue reads that credentials cannot access.
- Complete landed-work collection for more squash merges, including updated branches, repeated-text edits, and edits already applied by other work. GitHub requests with more than 250 and fewer than 10,000 commits also support collection, and fork history no longer stalls solely on upstream pull request associations.
- Stop browser telemetry after opt-out and honor
DO_NOT_TRACK=1. CI runs and non-release builds send no telemetry. - Restrict devbox service accounts to explicitly listed repositories. Existing entries must define at least one repository in
write_repository_idsbefore upgrading, or the broker refuses to start. Useread_repository_idsfor dependencies that need read-only access.