Files
deepseek-harness/packages/experimental/forge-bundle
Yichen Jiang 06d1616224 feat(forge): redesign the change request panel
Call every bound item a change request, whatever its code host calls it,
and rebuild the panel around the redesign:

- State glyphs for open, needs attention, draft, merged, closed, and
  unknown change requests; an open one with failed checks, requested
  changes, or conflicts needs attention, as the header dot does.
- A card whose title opens the change request, with a plain number line,
  a collapsed status summary, and expanded checks, review, merge, and diff
  rows; the checks row opens a list with failed checks first.
- The only open change request of a Session starts expanded.
- The checkout row names the branch or detached commit and the kind of
  checkout, with Restore for a removed worktree; the Host home shortens
  paths.
- Checkout inspection reports linked worktrees and the HEAD commit.
2026-10-20 11:50:10 +08:00
..

description, kind
description kind
Enable the change request panel and worktree Sessions from the Plugins page. package-bundle

@deepseek-ai/dsh-experimental-forge-bundle

English | 中文

Summary

Show the change requests of each Session with their checks and reviews, and let a new Session start in its own Git worktree. Enable Change requests & worktrees on the Web or Desktop Plugins page; shipped profiles leave it disabled. GitHub status comes from the gh CLI signed in on the Host; without it, the panel still shows the branch and the worktree option still works.

Table of Contents


Use this package

Open Plugins and enable Change requests & worktrees in the Official group. In a Git workspace, check Worktree in the composer before the first message to start the Session in a new worktree. In a Session whose directory is inside a Git checkout, the header button opens the panel. GitHub pull requests that the Session creates with gh pr create, or that a later git push updates, appear as change requests without further steps. Run gh auth login --hostname <host> in a terminal to sign in; the panel shows the command when sign-in is missing. The panel package describes each control.


Understand the implementation

Maintainer details — click to expand

The bundle patch inserts the forge registry, the GitHub provider, and the Session bindings as Host rows, and a group that isolates the worktrees service, holding a worktree service row and the panel's two-face package, whose Client half the Web and Desktop clients load while the row is enabled. The isolation lets the bundle coexist with the Git Worktrees bundle, whose model tool keeps its own service. The rows need the Session projection registry, working-directory, filesystem, subprocess, and sandbox services that every base-backed profile composes.


Further Exploration

Forge subsystem · Session bindings · Panel


Model Experience

None, as the composed packages add no model tool or prompt; the directory notice of a Session that starts in a worktree reaches the model through the working-directory service, as described by the panel.

KV Cache effect

None from the bundle; see the panel for the worktree notice.

Known Limitations and Deferred Work

  • GitHub is the only code host provider, and the bundle serves github.com only; a GitHub Enterprise host needs a profile patch that lists it in the forge-github row's hosts. No provider recognizes GitLab or other hosts.
  • The model has no tool for bound change requests yet.

Dev Note

Working context for maintainers — click to expand

None.