dsh-git-worktree 0.11.0 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/README.en.md +26 -19
  3. package/README.md +26 -19
  4. package/lib/adapters/git.js +45 -8
  5. package/lib/adapters/git.js.map +1 -1
  6. package/lib/adapters/project-skill-io.js +7 -1
  7. package/lib/adapters/project-skill-io.js.map +1 -1
  8. package/lib/adapters/project-skill-snapshot.d.ts +10 -0
  9. package/lib/adapters/project-skill-snapshot.js +182 -0
  10. package/lib/adapters/project-skill-snapshot.js.map +1 -0
  11. package/lib/adapters/project-skills.d.ts +18 -3
  12. package/lib/adapters/project-skills.js +102 -13
  13. package/lib/adapters/project-skills.js.map +1 -1
  14. package/lib/client/WorktreeCreateRow.js +14 -2
  15. package/lib/client/WorktreeCreateRow.js.map +1 -1
  16. package/lib/client/actions.d.ts +32 -1
  17. package/lib/client/actions.js +41 -0
  18. package/lib/client/actions.js.map +1 -1
  19. package/lib/client/index.d.ts +6 -1
  20. package/lib/client/index.js +11 -2
  21. package/lib/client/index.js.map +1 -1
  22. package/lib/client/target-console/TargetStatusAction.js +11 -9
  23. package/lib/client/target-console/TargetStatusAction.js.map +1 -1
  24. package/lib/client/workspace-desktop.d.ts +15 -0
  25. package/lib/client/workspace-desktop.js +95 -0
  26. package/lib/client/workspace-desktop.js.map +1 -0
  27. package/lib/client.js +255 -105
  28. package/lib/console-host/review-diff.js +9 -4
  29. package/lib/console-host/review-diff.js.map +1 -1
  30. package/lib/creation-failure.d.ts +6 -0
  31. package/lib/creation-failure.js +9 -0
  32. package/lib/creation-failure.js.map +1 -1
  33. package/lib/i18n/client-messages.d.ts +8 -0
  34. package/lib/i18n/client-messages.js +3 -1
  35. package/lib/i18n/client-messages.js.map +1 -1
  36. package/lib/session-checkout-apply.js +6 -3
  37. package/lib/session-checkout-apply.js.map +1 -1
  38. package/lib/session-checkout-module.js +6 -1
  39. package/lib/session-checkout-module.js.map +1 -1
  40. package/package.json +13 -13
  41. package/scripts/workspace-sidebar-resources.mjs +25 -0
  42. package/scripts/workspace-sidebar-upstream-alpha.mjs +2 -1
  43. package/scripts/workspace-sidebar-upstream-next.mjs +2 -1
  44. package/scripts/workspace-sidebar-upstream.mjs +2 -1
package/lib/client.js CHANGED
@@ -1727,6 +1727,14 @@ const clientMessages = {
1727
1727
  "error.category.invalid": {
1728
1728
  "zh": "无效请求",
1729
1729
  "en": "Invalid request"
1730
+ },
1731
+ "open.workspace.path.failed": {
1732
+ "zh": "无法打开该工作目录:{p0}",
1733
+ "en": "Could not open this working directory: {p0}"
1734
+ },
1735
+ "open.workspace.path.unavailable": {
1736
+ "zh": "当前 Host 未提供打开工作目录的能力。",
1737
+ "en": "This Host does not provide a desktop opener for working directories."
1730
1738
  }
1731
1739
  };
1732
1740
 
@@ -8184,6 +8192,33 @@ function prefillSessionDraft(services, sessionId, text) {
8184
8192
  services.conversation.input.for(binding.ctx).setDraft(text);
8185
8193
  return true;
8186
8194
  }
8195
+ /** Only a successful Host answer is definitive; transport/provider failures are unknown. */
8196
+ async function readHostDesktopCapability(services) {
8197
+ try {
8198
+ const session = services.remote?.session;
8199
+ if (typeof session?.canOpenWorkspacePath !== "function") return void 0;
8200
+ const result = await session.canOpenWorkspacePath();
8201
+ return result.ok ? result.value === true : void 0;
8202
+ } catch {
8203
+ return;
8204
+ }
8205
+ }
8206
+ /**
8207
+ * Hand one verified managed root to the Host desktop.
8208
+ * Resolves the already-localized failure copy, or null once the Host
8209
+ * acknowledged the handoff; the caller owns where that copy becomes visible.
8210
+ */
8211
+ async function openHostPath(services, path) {
8212
+ const t = translatorForServices(services);
8213
+ const session = services.remote?.session;
8214
+ if (typeof session?.openWorkspacePath !== "function") return t("open.workspace.path.unavailable");
8215
+ try {
8216
+ const result = await session.openWorkspacePath({ path });
8217
+ return result.ok ? null : t("open.workspace.path.failed", { p0: result.error.message });
8218
+ } catch (reason) {
8219
+ return t("open.workspace.path.failed", { p0: reason instanceof Error ? reason.message : String(reason) });
8220
+ }
8221
+ }
8187
8222
 
8188
8223
  //#endregion
8189
8224
  //#region src/client/model.ts
@@ -8310,15 +8345,112 @@ function parseReviewTool(block, t = defaultClientTranslator) {
8310
8345
  };
8311
8346
  }
8312
8347
 
8348
+ //#endregion
8349
+ //#region src/client/workspace-desktop.tsx
8350
+ const availability = /* @__PURE__ */ new WeakMap();
8351
+ function entryFor$2(remote) {
8352
+ let entry = availability.get(remote);
8353
+ if (!entry) {
8354
+ entry = {
8355
+ attempts: 0,
8356
+ retryAt: 0,
8357
+ listeners: /* @__PURE__ */ new Set()
8358
+ };
8359
+ availability.set(remote, entry);
8360
+ }
8361
+ return entry;
8362
+ }
8363
+ function readAvailability(remote, entry) {
8364
+ if (entry.value !== void 0 || entry.pending || entry.timer !== void 0) return;
8365
+ if (entry.attempts >= 3) {
8366
+ if (Date.now() < entry.retryAt) return;
8367
+ entry.attempts = 0;
8368
+ }
8369
+ if (Date.now() < entry.retryAt) {
8370
+ if (entry.listeners.size) entry.timer = setTimeout(() => {
8371
+ entry.timer = void 0;
8372
+ readAvailability(remote, entry);
8373
+ }, entry.retryAt - Date.now());
8374
+ return;
8375
+ }
8376
+ entry.attempts += 1;
8377
+ entry.pending = readHostDesktopCapability({ remote }).then((value) => {
8378
+ entry.pending = void 0;
8379
+ if (value !== void 0) {
8380
+ entry.value = value;
8381
+ for (const listener of entry.listeners) listener();
8382
+ } else {
8383
+ entry.retryAt = Date.now() + (entry.attempts >= 3 ? 3e4 : entry.attempts * 1e3);
8384
+ if (entry.attempts < 3 && entry.listeners.size) readAvailability(remote, entry);
8385
+ }
8386
+ });
8387
+ }
8388
+ /** Warm the shared read without owning background retry timers. */
8389
+ function prefetchHostDesktop(remote) {
8390
+ if (remote !== void 0) readAvailability(remote, entryFor$2(remote));
8391
+ }
8392
+ /** undefined while pending/unavailable transport; false only for a successful no-desktop answer. */
8393
+ function useHostDesktopAvailable(remote) {
8394
+ const [, update] = (0, react.useState)(0);
8395
+ (0, react.useEffect)(() => {
8396
+ if (remote === void 0) return;
8397
+ const entry = entryFor$2(remote);
8398
+ const listener = () => update((value) => value + 1);
8399
+ entry.listeners.add(listener);
8400
+ readAvailability(remote, entry);
8401
+ return () => {
8402
+ entry.listeners.delete(listener);
8403
+ if (!entry.listeners.size && entry.timer !== void 0) {
8404
+ clearTimeout(entry.timer);
8405
+ entry.timer = void 0;
8406
+ }
8407
+ };
8408
+ }, [remote]);
8409
+ return remote === void 0 ? false : entryFor$2(remote).value;
8410
+ }
8411
+ /**
8412
+ * Transient failure banner owned by the gesture's control.
8413
+ * Menu rows close before the request settles, so an inline error inside the
8414
+ * menu would never be seen; the banner is announced from the control instead.
8415
+ */
8416
+ function useOpenFailureToast() {
8417
+ const seq = (0, react.useRef)(0);
8418
+ const [banner, setBanner] = (0, react.useState)(null);
8419
+ const dismiss = (0, react.useCallback)(() => {
8420
+ setBanner(null);
8421
+ }, []);
8422
+ return {
8423
+ toast: banner === null ? null : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__deepseek_ai_dsh_client_ui_primitives.Toast, {
8424
+ text: banner.text,
8425
+ holdMs: 5e3,
8426
+ onDone: dismiss
8427
+ }, banner.seq),
8428
+ show: (text) => {
8429
+ seq.current += 1;
8430
+ setBanner({
8431
+ seq: seq.current,
8432
+ text
8433
+ });
8434
+ }
8435
+ };
8436
+ }
8437
+
8313
8438
  //#endregion
8314
8439
  //#region src/client/WorktreeCreateRow.tsx
8315
8440
  function WorktreeCreateRow({ block, services }) {
8316
8441
  const t = useClientTranslator();
8442
+ const desktopAvailable = useHostDesktopAvailable(services.remote);
8443
+ const { toast, show } = useOpenFailureToast();
8317
8444
  const model = parseCreateTool(block, t);
8318
8445
  const [openState, setOpenState] = (0, react.useState)("idle");
8319
8446
  const [openError, setOpenError] = (0, react.useState)(null);
8320
8447
  const payload = model.payload;
8321
8448
  const state = model.lifecycle === "running" ? "running" : model.lifecycle === "ok" ? "ok" : "error";
8449
+ const reveal = async () => {
8450
+ if (!payload) return;
8451
+ const message = await openHostPath(services, payload.managedRoot);
8452
+ if (message !== null) show(message);
8453
+ };
8322
8454
  const openTarget = async () => {
8323
8455
  if (!payload || openState === "opening") return;
8324
8456
  setOpenState("opening");
@@ -8335,83 +8467,90 @@ function WorktreeCreateRow({ block, services }) {
8335
8467
  "data-tool": "worktree_create",
8336
8468
  "data-state": state,
8337
8469
  "aria-label": t("isolated.session.target"),
8338
- children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("header", {
8339
- className: "dsh-wt-head",
8340
- children: [
8341
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
8342
- className: "dsh-wt-mark",
8343
- "aria-hidden": true
8344
- }),
8345
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)("strong", {
8346
- className: "dsh-wt-title",
8347
- children: t("isolated.session.target")
8348
- }),
8349
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
8350
- className: "dsh-wt-subtitle",
8351
- children: model.lifecycle === "running" ? t("creating.the.unique.worktree") : payload ? t("ready.to.open") : t("creation.failed")
8352
- })
8353
- ]
8354
- }), payload ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
8355
- className: "dsh-wt-body",
8356
- children: [
8357
- /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
8358
- className: "dsh-wt-grid",
8359
- children: [
8360
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
8361
- className: "dsh-wt-label",
8362
- children: t("checkout")
8363
- }),
8364
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
8365
- className: "dsh-wt-value dsh-wt-code",
8366
- children: payload.checkoutId
8367
- }),
8368
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
8369
- className: "dsh-wt-label",
8370
- children: t("base")
8371
- }),
8372
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
8373
- className: "dsh-wt-value dsh-wt-code",
8374
- children: payload.currentOid.slice(0, 12)
8375
- }),
8376
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
8377
- className: "dsh-wt-label",
8378
- children: t("workspace")
8379
- }),
8380
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
8470
+ children: [
8471
+ /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("header", {
8472
+ className: "dsh-wt-head",
8473
+ children: [
8474
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
8475
+ className: "dsh-wt-mark",
8476
+ "aria-hidden": true
8477
+ }),
8478
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("strong", {
8479
+ className: "dsh-wt-title",
8480
+ children: t("isolated.session.target")
8481
+ }),
8482
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
8483
+ className: "dsh-wt-subtitle",
8484
+ children: model.lifecycle === "running" ? t("creating.the.unique.worktree") : payload ? t("ready.to.open") : t("creation.failed")
8485
+ })
8486
+ ]
8487
+ }),
8488
+ payload ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
8489
+ className: "dsh-wt-body",
8490
+ children: [
8491
+ /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
8492
+ className: "dsh-wt-grid",
8493
+ children: [
8494
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
8495
+ className: "dsh-wt-label",
8496
+ children: t("checkout")
8497
+ }),
8498
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
8499
+ className: "dsh-wt-value dsh-wt-code",
8500
+ children: payload.checkoutId
8501
+ }),
8502
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
8503
+ className: "dsh-wt-label",
8504
+ children: t("base")
8505
+ }),
8506
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
8507
+ className: "dsh-wt-value dsh-wt-code",
8508
+ children: payload.currentOid.slice(0, 12)
8509
+ }),
8510
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
8511
+ className: "dsh-wt-label",
8512
+ children: t("workspace")
8513
+ }),
8514
+ desktopAvailable === true ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
8515
+ type: "button",
8516
+ className: "dsh-wt-value dsh-wt-code dsh-wt-path",
8517
+ onClick: () => void reveal(),
8518
+ children: payload.managedRoot
8519
+ }) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
8520
+ className: "dsh-wt-value dsh-wt-code",
8521
+ children: payload.managedRoot
8522
+ })
8523
+ ]
8524
+ }),
8525
+ /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
8526
+ className: "dsh-wt-actions",
8527
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("button", {
8381
8528
  type: "button",
8382
- className: "dsh-wt-value dsh-wt-code dsh-wt-path",
8383
- onClick: () => void services.workspaces.openPath(payload.managedRoot),
8384
- children: payload.managedRoot
8385
- })
8386
- ]
8387
- }),
8388
- /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
8389
- className: "dsh-wt-actions",
8390
- children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("button", {
8391
- type: "button",
8392
- className: "dsh-wt-button dsh-wt-primary",
8393
- disabled: openState === "opening",
8394
- onClick: () => void openTarget(),
8395
- children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(ReviewIcon, { name: "external" }), openState === "opening" ? t("opening.2") : openState === "error" ? t("retry.opening.isolated.session") : t("open.isolated.session")]
8396
- }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
8397
- className: "dsh-wt-status",
8398
- children: t("the.current.local.session.cwd.will.not.be")
8399
- })]
8400
- }),
8401
- openError ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
8529
+ className: "dsh-wt-button dsh-wt-primary",
8530
+ disabled: openState === "opening",
8531
+ onClick: () => void openTarget(),
8532
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(ReviewIcon, { name: "external" }), openState === "opening" ? t("opening.2") : openState === "error" ? t("retry.opening.isolated.session") : t("open.isolated.session")]
8533
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
8534
+ className: "dsh-wt-status",
8535
+ children: t("the.current.local.session.cwd.will.not.be")
8536
+ })]
8537
+ }),
8538
+ openError ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
8539
+ className: "dsh-wt-error",
8540
+ role: "alert",
8541
+ children: openError
8542
+ }) : null
8543
+ ]
8544
+ }) : model.error ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
8545
+ className: "dsh-wt-body",
8546
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
8402
8547
  className: "dsh-wt-error",
8403
8548
  role: "alert",
8404
- children: openError
8405
- }) : null
8406
- ]
8407
- }) : model.error ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
8408
- className: "dsh-wt-body",
8409
- children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
8410
- className: "dsh-wt-error",
8411
- role: "alert",
8412
- children: model.error
8413
- })
8414
- }) : null]
8549
+ children: model.error
8550
+ })
8551
+ }) : null,
8552
+ toast
8553
+ ]
8415
8554
  });
8416
8555
  }
8417
8556
 
@@ -10026,6 +10165,8 @@ function shortOid$2(value) {
10026
10165
  function TargetStatusAction({ sessionId, adapter, services }) {
10027
10166
  const t = useClientTranslator();
10028
10167
  const language = useClientLanguage();
10168
+ const desktopAvailable = useHostDesktopAvailable(services.remote);
10169
+ const { toast, show } = useOpenFailureToast();
10029
10170
  const [target, setTarget] = (0, react.useState)(null);
10030
10171
  const [loading, setLoading] = (0, react.useState)(true);
10031
10172
  const [error, setError] = (0, react.useState)(null);
@@ -10078,12 +10219,11 @@ function TargetStatusAction({ sessionId, adapter, services }) {
10078
10219
  p0: triggerLabel,
10079
10220
  p1: expiry
10080
10221
  });
10081
- const reveal = () => {
10222
+ const reveal = async () => {
10082
10223
  if (!target?.managedRoot) return;
10083
10224
  setMenuOpen(false);
10084
- services.workspaces.openPath(target.managedRoot).catch((reason) => {
10085
- if (mounted.current) setError(reason instanceof Error ? reason.message : String(reason));
10086
- });
10225
+ const message = await openHostPath(services, target.managedRoot);
10226
+ if (mounted.current && message !== null) show(message);
10087
10227
  };
10088
10228
  const openSource = () => {
10089
10229
  if (!target || target.sourceSessionId === sessionId) return;
@@ -10225,7 +10365,7 @@ function TargetStatusAction({ sessionId, adapter, services }) {
10225
10365
  type: "separator",
10226
10366
  id: "summary-separator"
10227
10367
  },
10228
- ...target?.managedRoot && target.capabilities.open ? [{
10368
+ ...target?.managedRoot && target.capabilities.open && desktopAvailable === true ? [{
10229
10369
  id: "reveal",
10230
10370
  icon: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ReviewIcon, { name: "folder" }),
10231
10371
  label: t("open.current.working.location")
@@ -10337,7 +10477,8 @@ function TargetStatusAction({ sessionId, adapter, services }) {
10337
10477
  children: [t("confirm.worktree.cleanup"), " "]
10338
10478
  })]
10339
10479
  })
10340
- })
10480
+ }),
10481
+ toast
10341
10482
  ] });
10342
10483
  }
10343
10484
 
@@ -13007,14 +13148,21 @@ const TARGET_CONSOLE_STYLES = String.raw`
13007
13148
  //#region src/client/index.tsx
13008
13149
  /** Browser entry: dedicated ToolViews for Worktree target handoff and review. */
13009
13150
  const WORKTREE_CONSOLE_ADAPTER_SERVICE = "worktreeConsole";
13010
- /** Required client services. */
13151
+ /**
13152
+ * Required client services.
13153
+ * `remote.session` carries the Host desktop face; cordis refuses the nested
13154
+ * `remote.session` read without this declaration, so the access would throw
13155
+ * instead of returning undefined.
13156
+ */
13011
13157
  const inject$1 = [
13012
13158
  "slots",
13013
13159
  "workspaces",
13014
13160
  "sessions",
13015
13161
  "conversation",
13016
13162
  "connection",
13017
- "locale"
13163
+ "locale",
13164
+ "remote",
13165
+ "remote.session"
13018
13166
  ];
13019
13167
  function servicesOf(ctx) {
13020
13168
  return {
@@ -13022,12 +13170,14 @@ function servicesOf(ctx) {
13022
13170
  workspaces: ctx.get("workspaces"),
13023
13171
  sessions: ctx.get("sessions"),
13024
13172
  uiWorkspace: ctx.get("uiWorkspace"),
13025
- conversation: ctx.get("conversation")
13173
+ conversation: ctx.get("conversation"),
13174
+ remote: ctx.get("remote")
13026
13175
  };
13027
13176
  }
13028
13177
  /** Register replay-stable keyed rows and one scoped stylesheet. */
13029
13178
  function apply$1(ctx, adapterOverride) {
13030
13179
  const services = servicesOf(ctx);
13180
+ prefetchHostDesktop(services.remote);
13031
13181
  const locale = services.locale;
13032
13182
  const localizedSlots = new Proxy(ctx.slots, { get(target, key, receiver) {
13033
13183
  if (key === "register") return (descriptor$1, Component) => target.register(descriptor$1, (props) => (0, react.createElement)(ClientI18nProvider, {
@@ -14803,10 +14953,10 @@ const official$2 = ((require$1) => {
14803
14953
  return title === "default-workspace" ? localizedDefault : title;
14804
14954
  }
14805
14955
  const css$3 = ".YDXeBa_projectRow,.YDXeBa_sessionRow{border-radius:var(--dsw-radius-md);padding:0 8px;cursor:pointer;user-select:none;color:var(--dsw-alias-label-primary);align-items:center;gap:6px;padding-inline-start:calc(8px + var(--dsh-workspace-indent,0px));display:flex}.YDXeBa_projectRow:hover,.YDXeBa_sessionRow:hover,.YDXeBa_sessionRow.YDXeBa_selected{background:var(--dsw-alias-interactive-bg-hover)}.YDXeBa_searchResultRow{box-sizing:border-box;border-radius:var(--dsw-radius-lg);cursor:pointer;text-align:left;width:100%;min-height:48px;color:var(--dsw-alias-label-primary);background:0 0;border:none;flex-direction:column;align-items:stretch;padding:4px 8px;display:flex}.YDXeBa_searchResultRow:hover,.YDXeBa_searchResultRow.YDXeBa_selected{background:var(--dsw-alias-interactive-bg-hover)}.YDXeBa_searchResultHeading{align-items:center;min-width:0;display:flex}.YDXeBa_searchResultTitle{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;margin-left:4px;font-size:14px;line-height:20px;overflow:hidden}.YDXeBa_searchResultMeta{align-items:center;gap:6px;min-width:0;margin-left:20px;display:flex}.YDXeBa_searchResultWorkspace,.YDXeBa_searchResultSnippet{text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:17px;overflow:hidden}.YDXeBa_searchResultWorkspace{max-width:40%;color:var(--dsw-alias-label-tertiary);flex:none}.YDXeBa_searchResultWorkspace:only-child{max-width:100%}.YDXeBa_searchResultSnippet{min-width:0;color:var(--dsw-alias-label-secondary);flex:1}.YDXeBa_projectRow{box-sizing:border-box;align-items:center;height:34px}.YDXeBa_projectRow .YDXeBa_rowActions{height:20px}.YDXeBa_sessionRow{gap:0;height:32px}.YDXeBa_sessionRow .YDXeBa_title{margin:0 6px 0 4px}.YDXeBa_slot{width:16px;height:20px;color:var(--dsw-alias-label-tertiary);flex:none;justify-content:center;align-items:center;display:inline-flex}.YDXeBa_visuallyHidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.YDXeBa_folderActive{color:var(--dsw-alias-state-business-primary)}.YDXeBa_projectRow .YDXeBa_chevron{display:none}.YDXeBa_projectRow:hover .YDXeBa_chevron{display:inline-flex}.YDXeBa_projectRow:hover .YDXeBa_folder{display:none}.YDXeBa_arrow{transition:transform .15s var(--ds-ease-in-out)}.YDXeBa_arrowOpen{transform:rotate(90deg)}.YDXeBa_projectText{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.YDXeBa_title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;line-height:20px;overflow:hidden}.YDXeBa_renameInput{border:.5px solid var(--dsw-alias-border-l4);border-radius:var(--dsw-radius-sm);background:var(--dsw-alias-button-elevated-fill);min-width:0;color:inherit;outline:none;padding:0 2px;font-size:14px;line-height:20px}.YDXeBa_sessionRow .YDXeBa_title{flex:1}.YDXeBa_sessionRow .YDXeBa_title[data-scrolled]{mask-image:linear-gradient(90deg,#0000,#000 12px)}.YDXeBa_sessionRow .YDXeBa_title[data-clipped]{mask-image:linear-gradient(270deg,#0000,#000 12px)}.YDXeBa_sessionRow .YDXeBa_title[data-scrolled][data-clipped]{mask-image:linear-gradient(90deg,#0000,#000 12px calc(100% - 12px),#0000)}.YDXeBa_meta{text-overflow:ellipsis;white-space:nowrap;color:var(--dsw-alias-label-tertiary);font-size:12px;line-height:20px;overflow:hidden}.YDXeBa_time{color:var(--dsw-alias-label-tertiary);flex:none;font-size:10px;line-height:16px}.YDXeBa_pinIndicator{width:16px;height:20px;color:var(--dsw-alias-label-caption);flex:none;justify-content:center;align-items:center;margin-left:6px;display:inline-flex}.YDXeBa_sessionRow.YDXeBa_archived .YDXeBa_title,.YDXeBa_searchResultRow.YDXeBa_archived .YDXeBa_searchResultTitle,.YDXeBa_searchResultRow.YDXeBa_archived .YDXeBa_searchResultWorkspace,.YDXeBa_searchResultRow.YDXeBa_archived .YDXeBa_searchResultSnippet{color:var(--dsw-alias-label-caption)}.YDXeBa_dot{flex:none}.YDXeBa_rowActions{flex:none;align-items:center;gap:15px;display:none}.YDXeBa_projectRow:hover .YDXeBa_rowActions,.YDXeBa_sessionRow:hover .YDXeBa_rowActions,.YDXeBa_searchResultRow:hover .YDXeBa_rowActions,.YDXeBa_projectRow.YDXeBa_menuOpen .YDXeBa_rowActions,.YDXeBa_sessionRow.YDXeBa_menuOpen .YDXeBa_rowActions{display:inline-flex}.YDXeBa_searchResultHeading .YDXeBa_rowActions{margin-left:auto}.YDXeBa_sessionRow:hover .YDXeBa_time,.YDXeBa_sessionRow.YDXeBa_menuOpen .YDXeBa_time,.YDXeBa_sessionRow:hover .YDXeBa_pinIndicator,.YDXeBa_sessionRow.YDXeBa_menuOpen .YDXeBa_pinIndicator{display:none}@media (hover:hover){.YDXeBa_sessionRow:hover .YDXeBa_title,.YDXeBa_sessionRow.YDXeBa_menuOpen .YDXeBa_title{text-overflow:clip}}.YDXeBa_projectRow.YDXeBa_menuOpen,.YDXeBa_sessionRow.YDXeBa_menuOpen{background:var(--dsw-alias-interactive-bg-hover)}.YDXeBa_sessionRow.YDXeBa_dropBefore,.YDXeBa_sessionRow.YDXeBa_dropAfter{position:relative}.YDXeBa_sessionRow.YDXeBa_dropBefore:before,.YDXeBa_sessionRow.YDXeBa_dropAfter:after{content:\"\";z-index:1;background:linear-gradient(55deg, transparent calc(50% - 1px), var(--dsw-alias-state-business-primary) calc(50% - 1px) calc(50% + 1px), transparent calc(50% + 1px)) 0 0 / 5px 7px no-repeat, linear-gradient(125deg, transparent calc(50% - 1px), var(--dsw-alias-state-business-primary) calc(50% - 1px) calc(50% + 1px), transparent calc(50% + 1px)) 0 5px / 5px 7px no-repeat, linear-gradient(var(--dsw-alias-state-business-primary) 0 0) 4px 5px / calc(100% - 4px) 2px no-repeat;pointer-events:none;height:12px;position:absolute;left:0;right:4px}.YDXeBa_sessionRow.YDXeBa_dropBefore:before{top:-7px}.YDXeBa_sessionRow.YDXeBa_dropAfter:after{bottom:-7px}.YDXeBa_hoverContent{flex-direction:column;gap:8px;display:flex}.YDXeBa_hoverTitle{color:#fff;overflow-wrap:break-word;font-size:14px;line-height:20px}.YDXeBa_hoverPath{color:#cfd3d6;word-break:break-all;font-size:12px;line-height:16px}.YDXeBa_hoverTime{color:#cfd3d6;font-size:12px;line-height:16px}.YDXeBa_hoverStatus{color:#adb2b8;align-items:center;gap:8px;font-size:12px;line-height:20px;display:flex}.YDXeBa_hoverArchived svg{flex-shrink:0;margin:0 -4px}.YDXeBa_iconButton{border-radius:var(--dsw-radius-xs);cursor:pointer;width:16px;height:16px;color:var(--dsw-alias-label-tertiary);background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.YDXeBa_iconButton:hover{color:var(--dsw-alias-label-primary)}.YDXeBa_chevron{color:var(--dsw-alias-label-caption)}@media (prefers-reduced-motion:reduce){.YDXeBa_arrow{transition:none;animation:none}}";
14806
- const tagId$3 = "@deepseek-ai/dsh-client-ui-workspace/Rows.module.css";
14956
+ const tagId$3 = "dsh-git-worktree/workspace-0.2.1-rc.2/Rows.module.css";
14807
14957
  if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$3) + "]") === null) {
14808
14958
  const tag = document.createElement("style");
14809
- tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-workspace";
14959
+ tag.dataset.plugin = "dsh-git-worktree";
14810
14960
  tag.dataset.pluginCss = tagId$3;
14811
14961
  tag.textContent = css$3;
14812
14962
  document.head.appendChild(tag);
@@ -15464,10 +15614,10 @@ const official$2 = ((require$1) => {
15464
15614
  });
15465
15615
  }
15466
15616
  const css$2 = ".Qg_5Eq_exits{contain:strict;pointer-events:none;position:absolute;inset:0;overflow:clip}";
15467
- const tagId$2 = "@deepseek-ai/dsh-client-ui-workspace/AnimatedRows.module.css";
15617
+ const tagId$2 = "dsh-git-worktree/workspace-0.2.1-rc.2/AnimatedRows.module.css";
15468
15618
  if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$2) + "]") === null) {
15469
15619
  const tag = document.createElement("style");
15470
- tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-workspace";
15620
+ tag.dataset.plugin = "dsh-git-worktree";
15471
15621
  tag.dataset.pluginCss = tagId$2;
15472
15622
  tag.textContent = css$2;
15473
15623
  document.head.appendChild(tag);
@@ -15636,10 +15786,10 @@ const official$2 = ((require$1) => {
15636
15786
  }
15637
15787
  };
15638
15788
  const css$1 = "._G5b-a_modalAction{min-width:72px}._G5b-a_modalError,._G5b-a_menuStatus{margin-top:8px;font-size:12px;line-height:18px}._G5b-a_modalError{color:var(--dsw-alias-state-error-primary)}._G5b-a_menuStatus{color:var(--dsw-alias-label-secondary)}";
15639
- const tagId$1 = "@deepseek-ai/dsh-client-ui-workspace/WorkspacePicker.module.css";
15789
+ const tagId$1 = "dsh-git-worktree/workspace-0.2.1-rc.2/WorkspacePicker.module.css";
15640
15790
  if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$1) + "]") === null) {
15641
15791
  const tag = document.createElement("style");
15642
- tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-workspace";
15792
+ tag.dataset.plugin = "dsh-git-worktree";
15643
15793
  tag.dataset.pluginCss = tagId$1;
15644
15794
  tag.textContent = css$1;
15645
15795
  document.head.appendChild(tag);
@@ -15805,10 +15955,10 @@ const official$2 = ((require$1) => {
15805
15955
  });
15806
15956
  }
15807
15957
  const css = ".bhn1Oq_root{--dsh-session-list-edge-inset:var(--dsh-sidebar-inline-padding);--dsh-session-list-scrollbar-width:5px;--dsh-session-list-scrollbar-offset:2px;box-sizing:border-box;min-height:0;padding-right:var(--dsh-session-list-edge-inset);flex-direction:column;flex:1;display:flex}.bhn1Oq_root.bhn1Oq_rail{padding-right:0}.bhn1Oq_iconButton{border-radius:var(--dsw-radius-sm);cursor:pointer;width:28px;height:28px;color:var(--dsw-alias-label-secondary);background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.bhn1Oq_iconButton:focus-visible,.bhn1Oq_searchButton:focus-visible,.bhn1Oq_clearButton:focus-visible{outline:var(--dsw-focus-ring-width) solid var(--dsw-focus-ring-color,var(--dsw-alias-state-business-primary));outline-offset:-2px}.bhn1Oq_iconButton:hover{background:var(--dsw-alias-interactive-bg-hover)}.bhn1Oq_viewOptionsMenu{min-width:200px}.bhn1Oq_sectionHeader{box-sizing:border-box;border-radius:var(--dsw-radius-md);height:36px;color:var(--dsw-alias-label-tertiary);flex:none;justify-content:flex-end;align-items:center;gap:4px;margin-bottom:4px;padding-left:4px;display:flex;overflow:hidden}.bhn1Oq_root:not(.bhn1Oq_rail) .bhn1Oq_sectionHeader{margin-top:2px;margin-right:-4px}.bhn1Oq_sectionLabel{white-space:nowrap;opacity:1;visibility:visible;min-width:0;max-width:45%;transition:max-width .18s var(--ds-ease-in-out), margin-right .18s var(--ds-ease-in-out), opacity .12s var(--ds-ease-in-out), transform .18s var(--ds-ease-in-out), visibility 0s linear;flex:none;line-height:20px;overflow:hidden}.bhn1Oq_sectionLabelHidden{opacity:0;visibility:hidden;max-width:0;margin-right:-4px;transition-delay:0s,0s,0s,0s,.18s;transform:translate(-4px)}.bhn1Oq_searchSlot{box-sizing:border-box;min-width:0;max-width:28px;transition:max-width .18s var(--ds-ease-in-out), padding-left .18s var(--ds-ease-in-out);flex:1;align-items:center;margin-left:auto;padding-left:0;display:flex}.bhn1Oq_searchSlotExpanded{max-width:100%;padding-left:0}.bhn1Oq_headerActions{opacity:1;visibility:visible;max-width:60px;transition:max-width .18s var(--ds-ease-in-out), opacity .12s var(--ds-ease-in-out), transform .18s var(--ds-ease-in-out), visibility 0s linear;flex:none;align-items:center;gap:4px;display:flex;overflow:hidden}.bhn1Oq_headerActionsHidden{opacity:0;visibility:hidden;pointer-events:none;max-width:0;transition-delay:0s,0s,0s,.18s;transform:translate(4px)}.bhn1Oq_search{box-sizing:border-box;border-radius:var(--dsw-radius-sm);cursor:text;width:100%;height:28px;color:var(--dsw-alias-label-secondary);transition:width .18s var(--ds-ease-in-out), padding .18s var(--ds-ease-in-out), border-color .18s var(--ds-ease-in-out), background-color .18s var(--ds-ease-in-out);background:0 0;border:none;flex:none;align-items:center;gap:0;margin:0;padding:0;display:flex;overflow:hidden}.bhn1Oq_searchExpanded{border:.5px solid var(--dsw-alias-border-l4);border-radius:var(--dsw-radius-md);width:calc(100% + 4px);height:30px;color:var(--dsw-alias-label-caption);background:0 0;margin-inline:-2px;padding:0 4px 0 0}.bhn1Oq_searchButton{border-radius:var(--dsw-radius-sm);cursor:pointer;width:28px;height:28px;color:inherit;background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.bhn1Oq_searchExpanded .bhn1Oq_searchButton{width:28px;height:30px}.bhn1Oq_searchButton:hover{background:var(--dsw-alias-interactive-bg-hover)}.bhn1Oq_searchExpanded .bhn1Oq_searchButton:hover{background:0 0}.bhn1Oq_searchInput{opacity:0;pointer-events:none;width:0;min-width:0;color:var(--dsw-alias-label-primary);transition:opacity .12s var(--ds-ease-in-out);background:0 0;border:none;outline:none;flex:1;font-size:13px;line-height:18px}.bhn1Oq_searchExpanded .bhn1Oq_searchInput{opacity:1;pointer-events:auto;margin-left:-2px}.bhn1Oq_searchInput::placeholder{color:var(--dsw-alias-label-tertiary)}.bhn1Oq_clearButton{border-radius:var(--dsw-radius-sm);cursor:pointer;width:24px;height:24px;color:var(--dsw-alias-label-secondary);background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.bhn1Oq_clearButton:hover{background:var(--dsw-alias-interactive-bg-hover)}.bhn1Oq_rail .bhn1Oq_sectionHeader{justify-content:flex-start;gap:0;margin-bottom:12px;padding-left:0}.bhn1Oq_rail .bhn1Oq_headerActions{max-width:none}.bhn1Oq_rail .bhn1Oq_iconButton{border-radius:var(--dsw-radius-md);width:36px;height:36px;color:var(--dsw-alias-label-primary)}.bhn1Oq_rail .bhn1Oq_search{border-radius:var(--dsw-radius-md);background:0 0;border-color:#0000;gap:0;width:36px;height:36px;margin:0 0 12px;padding:0}.bhn1Oq_rail .bhn1Oq_searchButton{border-radius:var(--dsw-radius-md);width:36px;height:36px;color:var(--dsw-alias-label-primary)}.bhn1Oq_rail .bhn1Oq_searchButton:hover{background:var(--dsw-alias-interactive-bg-hover)}.bhn1Oq_listArea{min-height:0;margin-left:-4px;margin-right:calc(-1 * var(--dsh-session-list-edge-inset));flex-direction:column;flex:1;padding-left:4px;display:flex;overflow:visible}.bhn1Oq_rail .bhn1Oq_listArea{margin-left:0;margin-right:0;padding-left:0}.bhn1Oq_treeBody{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.bhn1Oq_fade{left:0;right:var(--dsh-session-list-edge-inset);background:linear-gradient(to bottom, transparent, var(--dsw-specific-sidebar-fill));pointer-events:none;height:24px;position:absolute;bottom:0}[data-platform=darwin] .bhn1Oq_fade{display:none}.bhn1Oq_wide{animation:bhn1Oq_wide-in .2s var(--ds-ease-in-out)}@keyframes bhn1Oq_wide-in{0%{opacity:0}}.bhn1Oq_list{min-height:0;margin-left:-4px;margin-right:var(--dsh-session-list-scrollbar-offset);padding-left:4px;padding-right:calc(var(--dsh-session-list-edge-inset) - var(--dsh-session-list-scrollbar-width) - var(--dsh-session-list-scrollbar-offset));scrollbar-gutter:stable;flex:1;padding-bottom:16px;overflow-y:auto}.bhn1Oq_flatList>*+*,.bhn1Oq_searchTree>[role=treeitem]+[role=treeitem],.bhn1Oq_groupSection>*+*{margin-top:2px}.bhn1Oq_searchStatus{color:var(--dsw-alias-label-tertiary);padding:10px 12px;font-size:12px;line-height:18px}.bhn1Oq_skeletonRow{box-sizing:border-box;align-items:flex-start;gap:8px;min-height:48px;padding:6px 8px 7px;display:flex}.bhn1Oq_skeletonDot{corner-shape:round;border-radius:50%;flex:none;width:16px;height:16px}.bhn1Oq_skeletonBars{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.bhn1Oq_skeletonDot,.bhn1Oq_skeletonBar{background:var(--dsw-alias-bg-skeleton);animation:2s cubic-bezier(.36,0,.64,1) infinite bhn1Oq_search-skeleton}.bhn1Oq_skeletonBar{border-radius:var(--dsw-radius-xs);width:65%;height:16px}.bhn1Oq_skeletonBarWide{width:90%;height:13px}@keyframes bhn1Oq_search-skeleton{0%{opacity:1}40%{opacity:.6}80%,to{opacity:1}}.bhn1Oq_groupSection{position:relative}.bhn1Oq_groupSection+.bhn1Oq_groupSection{margin-top:4px}.bhn1Oq_listTopDropIndicator,.bhn1Oq_workspaceDropBefore:before,.bhn1Oq_workspaceDropAfter:after{content:\"\";z-index:1;background:linear-gradient(55deg, transparent calc(50% - 1px), var(--dsw-alias-state-business-primary) calc(50% - 1px) calc(50% + 1px), transparent calc(50% + 1px)) 0 0 / 5px 7px no-repeat, linear-gradient(125deg, transparent calc(50% - 1px), var(--dsw-alias-state-business-primary) calc(50% - 1px) calc(50% + 1px), transparent calc(50% + 1px)) 0 5px / 5px 7px no-repeat, linear-gradient(var(--dsw-alias-state-business-primary) 0 0) 4px 5px / calc(100% - 4px) 2px no-repeat;pointer-events:none;height:12px;position:absolute;left:0;right:0}.bhn1Oq_listTopDropIndicator{top:-8px;left:0;right:var(--dsh-session-list-edge-inset)}.bhn1Oq_listTopDropActive>.bhn1Oq_workspaceDropBefore:first-child:before{display:none}.bhn1Oq_workspaceDropBefore:before{top:-8px}.bhn1Oq_workspaceDropAfter:after{bottom:-8px}.bhn1Oq_sessionOverflowButton{border-radius:var(--dsw-radius-sm);width:100%;height:28px;padding:0 12px 0 calc(28px + var(--dsh-workspace-indent,0px));cursor:pointer;text-align:left;color:var(--dsw-alias-label-tertiary);background:0 0;border:none;font-size:12px}.bhn1Oq_groupSection>.bhn1Oq_sessionOverflowButton{margin-top:0}.bhn1Oq_sessionOverflowButton:hover{color:var(--dsw-alias-label-secondary);background:0 0}.bhn1Oq_empty{color:var(--dsw-alias-label-tertiary);padding:16px 12px;font-size:13px}.bhn1Oq_emptyState{color:var(--dsw-alias-label-tertiary);flex-direction:column;align-items:center;gap:8px;margin-top:80px;padding:0 12px;font-size:13px;line-height:20px;display:flex}.bhn1Oq_emptyState>svg{color:var(--dsw-alias-label-caption);margin-bottom:4px}.bhn1Oq_emptyAction{cursor:pointer;color:var(--dsw-alias-link);background:0 0;border:none;padding:0;font-size:13px;line-height:20px}.bhn1Oq_renameInput{box-sizing:border-box;border:.5px solid var(--dsw-alias-border-l4);border-radius:var(--dsw-radius-lg);width:100%;height:44px;color:var(--dsw-alias-label-primary);background:0 0;outline:none;padding:7px 14px;font-size:14px;font-weight:400;line-height:22px}.bhn1Oq_renameInput:disabled{color:var(--dsw-alias-label-dimmed)}.bhn1Oq_renameError{color:var(--dsw-alias-state-error-primary);margin-top:8px;font-size:12px;line-height:18px}.bhn1Oq_deleteAction:not(:disabled){color:var(--dsw-alias-state-error-primary)}.bhn1Oq_deleteStatus{color:var(--dsw-alias-label-secondary);font-size:12px;line-height:18px}.bhn1Oq_archiveActivity{color:var(--dsw-alias-label-primary);margin:0 0 8px;padding-left:18px;font-size:13px;line-height:20px}.bhn1Oq_archiveActivity li{overflow-wrap:anywhere}@media (prefers-reduced-motion:reduce){.bhn1Oq_wide,.bhn1Oq_skeletonDot,.bhn1Oq_skeletonBar{animation:none}.bhn1Oq_search,.bhn1Oq_sectionLabel,.bhn1Oq_searchSlot,.bhn1Oq_searchInput,.bhn1Oq_headerActions{transition:none}}";
15808
- const tagId = "@deepseek-ai/dsh-client-ui-workspace/WorkspaceBrowser.module.css";
15958
+ const tagId = "dsh-git-worktree/workspace-0.2.1-rc.2/WorkspaceBrowser.module.css";
15809
15959
  if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId) + "]") === null) {
15810
15960
  const tag = document.createElement("style");
15811
- tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-workspace";
15961
+ tag.dataset.plugin = "dsh-git-worktree";
15812
15962
  tag.dataset.pluginCss = tagId;
15813
15963
  tag.textContent = css;
15814
15964
  document.head.appendChild(tag);
@@ -19823,10 +19973,10 @@ const official$1 = ((require$1) => {
19823
19973
  return title === "default-workspace" ? localizedDefault : title;
19824
19974
  }
19825
19975
  const css$3 = ".YDXeBa_projectRow,.YDXeBa_sessionRow{border-radius:var(--dsw-radius-md);padding:0 8px;cursor:pointer;user-select:none;color:var(--dsw-alias-label-primary);align-items:center;gap:6px;padding-inline-start:calc(8px + var(--dsh-workspace-indent,0px));display:flex}.YDXeBa_projectRow:hover,.YDXeBa_sessionRow:hover,.YDXeBa_sessionRow.YDXeBa_selected{background:var(--dsw-alias-interactive-bg-hover)}.YDXeBa_searchResultRow{box-sizing:border-box;border-radius:var(--dsw-radius-lg);cursor:pointer;text-align:left;width:100%;min-height:48px;color:var(--dsw-alias-label-primary);background:0 0;border:none;flex-direction:column;align-items:stretch;padding:4px 8px;display:flex}.YDXeBa_searchResultRow:hover,.YDXeBa_searchResultRow.YDXeBa_selected{background:var(--dsw-alias-interactive-bg-hover)}.YDXeBa_searchResultHeading{align-items:center;min-width:0;display:flex}.YDXeBa_searchResultTitle{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;margin-left:4px;font-size:14px;line-height:20px;overflow:hidden}.YDXeBa_searchResultMeta{align-items:center;gap:6px;min-width:0;margin-left:20px;display:flex}.YDXeBa_searchResultWorkspace,.YDXeBa_searchResultSnippet{text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:17px;overflow:hidden}.YDXeBa_searchResultWorkspace{max-width:40%;color:var(--dsw-alias-label-tertiary);flex:none}.YDXeBa_searchResultWorkspace:only-child{max-width:100%}.YDXeBa_searchResultSnippet{min-width:0;color:var(--dsw-alias-label-secondary);flex:1}.YDXeBa_projectRow{box-sizing:border-box;align-items:center;height:34px}.YDXeBa_projectRow .YDXeBa_rowActions{height:20px}.YDXeBa_sessionRow{gap:0;height:32px}.YDXeBa_sessionRow .YDXeBa_title{margin:0 6px 0 4px}.YDXeBa_slot{width:16px;height:20px;color:var(--dsw-alias-label-tertiary);flex:none;justify-content:center;align-items:center;display:inline-flex}.YDXeBa_visuallyHidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.YDXeBa_folderActive{color:var(--dsw-alias-state-business-primary)}.YDXeBa_projectRow .YDXeBa_chevron{display:none}.YDXeBa_projectRow:hover .YDXeBa_chevron{display:inline-flex}.YDXeBa_projectRow:hover .YDXeBa_folder{display:none}.YDXeBa_arrow{transition:transform .15s var(--ds-ease-in-out)}.YDXeBa_arrowOpen{transform:rotate(90deg)}.YDXeBa_projectText{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.YDXeBa_title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;line-height:20px;overflow:hidden}.YDXeBa_renameInput{border:.5px solid var(--dsw-alias-border-l4);border-radius:var(--dsw-radius-sm);background:var(--dsw-alias-button-elevated-fill);min-width:0;color:inherit;outline:none;padding:0 2px;font-size:14px;line-height:20px}.YDXeBa_sessionRow .YDXeBa_title{flex:1}.YDXeBa_sessionRow .YDXeBa_title[data-scrolled]{mask-image:linear-gradient(90deg,#0000,#000 12px)}.YDXeBa_sessionRow .YDXeBa_title[data-clipped]{mask-image:linear-gradient(270deg,#0000,#000 12px)}.YDXeBa_sessionRow .YDXeBa_title[data-scrolled][data-clipped]{mask-image:linear-gradient(90deg,#0000,#000 12px calc(100% - 12px),#0000)}.YDXeBa_meta{text-overflow:ellipsis;white-space:nowrap;color:var(--dsw-alias-label-tertiary);font-size:12px;line-height:20px;overflow:hidden}.YDXeBa_time{color:var(--dsw-alias-label-tertiary);flex:none;font-size:10px;line-height:16px}.YDXeBa_pinIndicator{width:16px;height:20px;color:var(--dsw-alias-label-caption);flex:none;justify-content:center;align-items:center;margin-left:6px;display:inline-flex}.YDXeBa_sessionRow.YDXeBa_archived .YDXeBa_title,.YDXeBa_searchResultRow.YDXeBa_archived .YDXeBa_searchResultTitle,.YDXeBa_searchResultRow.YDXeBa_archived .YDXeBa_searchResultWorkspace,.YDXeBa_searchResultRow.YDXeBa_archived .YDXeBa_searchResultSnippet{color:var(--dsw-alias-label-caption)}.YDXeBa_dot{flex:none}.YDXeBa_rowActions{flex:none;align-items:center;gap:10px;display:none}.YDXeBa_projectRow:hover .YDXeBa_rowActions,.YDXeBa_sessionRow:hover .YDXeBa_rowActions,.YDXeBa_searchResultRow:hover .YDXeBa_rowActions,.YDXeBa_projectRow.YDXeBa_menuOpen .YDXeBa_rowActions,.YDXeBa_sessionRow.YDXeBa_menuOpen .YDXeBa_rowActions{display:inline-flex}.YDXeBa_searchResultHeading .YDXeBa_rowActions{margin-left:auto}.YDXeBa_sessionRow:hover .YDXeBa_time,.YDXeBa_sessionRow.YDXeBa_menuOpen .YDXeBa_time,.YDXeBa_sessionRow:hover .YDXeBa_pinIndicator,.YDXeBa_sessionRow.YDXeBa_menuOpen .YDXeBa_pinIndicator{display:none}@media (hover:hover){.YDXeBa_sessionRow:hover .YDXeBa_title,.YDXeBa_sessionRow.YDXeBa_menuOpen .YDXeBa_title{text-overflow:clip}}.YDXeBa_projectRow.YDXeBa_menuOpen,.YDXeBa_sessionRow.YDXeBa_menuOpen{background:var(--dsw-alias-interactive-bg-hover)}.YDXeBa_sessionRow.YDXeBa_dropBefore,.YDXeBa_sessionRow.YDXeBa_dropAfter{position:relative}.YDXeBa_sessionRow.YDXeBa_dropBefore:before,.YDXeBa_sessionRow.YDXeBa_dropAfter:after{content:\"\";z-index:1;background:linear-gradient(55deg, transparent calc(50% - 1px), var(--dsw-alias-state-business-primary) calc(50% - 1px) calc(50% + 1px), transparent calc(50% + 1px)) 0 0 / 5px 7px no-repeat, linear-gradient(125deg, transparent calc(50% - 1px), var(--dsw-alias-state-business-primary) calc(50% - 1px) calc(50% + 1px), transparent calc(50% + 1px)) 0 5px / 5px 7px no-repeat, linear-gradient(var(--dsw-alias-state-business-primary) 0 0) 4px 5px / calc(100% - 4px) 2px no-repeat;pointer-events:none;height:12px;position:absolute;left:0;right:4px}.YDXeBa_sessionRow.YDXeBa_dropBefore:before{top:-7px}.YDXeBa_sessionRow.YDXeBa_dropAfter:after{bottom:-7px}.YDXeBa_hoverContent{flex-direction:column;gap:8px;display:flex}.YDXeBa_hoverTitle{color:#fff;overflow-wrap:break-word;font-size:14px;line-height:20px}.YDXeBa_hoverPath{color:#cfd3d6;word-break:break-all;font-size:12px;line-height:16px}.YDXeBa_hoverTime{color:#cfd3d6;font-size:12px;line-height:16px}.YDXeBa_hoverStatus{color:#adb2b8;align-items:center;gap:8px;font-size:12px;line-height:20px;display:flex}.YDXeBa_hoverArchived svg{flex-shrink:0;margin:0 -4px}.YDXeBa_iconButton{border-radius:var(--dsw-radius-xs);cursor:pointer;width:16px;height:16px;color:var(--dsw-alias-label-tertiary);background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.YDXeBa_iconButton:hover{color:var(--dsw-alias-label-primary)}.YDXeBa_chevron{color:var(--dsw-alias-label-caption)}@media (prefers-reduced-motion:reduce){.YDXeBa_arrow{transition:none;animation:none}}";
19826
- const tagId$3 = "@deepseek-ai/dsh-client-ui-workspace/Rows.module.css";
19976
+ const tagId$3 = "dsh-git-worktree/workspace-0.1.7-rc.2/Rows.module.css";
19827
19977
  if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$3) + "]") === null) {
19828
19978
  const tag = document.createElement("style");
19829
- tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-workspace";
19979
+ tag.dataset.plugin = "dsh-git-worktree";
19830
19980
  tag.dataset.pluginCss = tagId$3;
19831
19981
  tag.textContent = css$3;
19832
19982
  document.head.appendChild(tag);
@@ -20460,10 +20610,10 @@ const official$1 = ((require$1) => {
20460
20610
  });
20461
20611
  }
20462
20612
  const css$2 = ".Qg_5Eq_exits{contain:strict;pointer-events:none;position:absolute;inset:0;overflow:clip}";
20463
- const tagId$2 = "@deepseek-ai/dsh-client-ui-workspace/AnimatedRows.module.css";
20613
+ const tagId$2 = "dsh-git-worktree/workspace-0.1.7-rc.2/AnimatedRows.module.css";
20464
20614
  if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$2) + "]") === null) {
20465
20615
  const tag = document.createElement("style");
20466
- tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-workspace";
20616
+ tag.dataset.plugin = "dsh-git-worktree";
20467
20617
  tag.dataset.pluginCss = tagId$2;
20468
20618
  tag.textContent = css$2;
20469
20619
  document.head.appendChild(tag);
@@ -20632,10 +20782,10 @@ const official$1 = ((require$1) => {
20632
20782
  }
20633
20783
  };
20634
20784
  const css$1 = "._G5b-a_modalAction{min-width:72px}._G5b-a_modalError,._G5b-a_menuStatus{margin-top:8px;font-size:12px;line-height:18px}._G5b-a_modalError{color:var(--dsw-alias-state-error-primary)}._G5b-a_menuStatus{color:var(--dsw-alias-label-secondary)}";
20635
- const tagId$1 = "@deepseek-ai/dsh-client-ui-workspace/WorkspacePicker.module.css";
20785
+ const tagId$1 = "dsh-git-worktree/workspace-0.1.7-rc.2/WorkspacePicker.module.css";
20636
20786
  if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$1) + "]") === null) {
20637
20787
  const tag = document.createElement("style");
20638
- tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-workspace";
20788
+ tag.dataset.plugin = "dsh-git-worktree";
20639
20789
  tag.dataset.pluginCss = tagId$1;
20640
20790
  tag.textContent = css$1;
20641
20791
  document.head.appendChild(tag);
@@ -20801,10 +20951,10 @@ const official$1 = ((require$1) => {
20801
20951
  });
20802
20952
  }
20803
20953
  const css = ".bhn1Oq_root{--dsh-session-list-edge-inset:var(--dsh-sidebar-inline-padding);--dsh-session-list-scrollbar-width:5px;--dsh-session-list-scrollbar-offset:2px;box-sizing:border-box;min-height:0;padding-right:var(--dsh-session-list-edge-inset);flex-direction:column;flex:1;display:flex}.bhn1Oq_root.bhn1Oq_rail{padding-right:0}.bhn1Oq_iconButton{border-radius:var(--dsw-radius-sm);cursor:pointer;width:28px;height:28px;color:var(--dsw-alias-label-secondary);background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.bhn1Oq_iconButton:focus-visible,.bhn1Oq_searchButton:focus-visible,.bhn1Oq_clearButton:focus-visible{outline:var(--dsw-focus-ring-width) solid var(--dsw-focus-ring-color,var(--dsw-alias-state-business-primary));outline-offset:-2px}.bhn1Oq_iconButton:hover{background:var(--dsw-alias-interactive-bg-hover)}.bhn1Oq_viewOptionsMenu{min-width:200px}.bhn1Oq_sectionHeader{box-sizing:border-box;border-radius:var(--dsw-radius-md);height:36px;color:var(--dsw-alias-label-tertiary);flex:none;justify-content:flex-end;align-items:center;gap:4px;margin-bottom:4px;padding-left:4px;display:flex;overflow:hidden}.bhn1Oq_root:not(.bhn1Oq_rail) .bhn1Oq_sectionHeader{margin-top:2px;margin-right:-4px}.bhn1Oq_sectionLabel{white-space:nowrap;opacity:1;visibility:visible;min-width:0;max-width:45%;transition:max-width .18s var(--ds-ease-in-out), margin-right .18s var(--ds-ease-in-out), opacity .12s var(--ds-ease-in-out), transform .18s var(--ds-ease-in-out), visibility 0s linear;flex:none;line-height:20px;overflow:hidden}.bhn1Oq_sectionLabelHidden{opacity:0;visibility:hidden;max-width:0;margin-right:-4px;transition-delay:0s,0s,0s,0s,.18s;transform:translate(-4px)}.bhn1Oq_searchSlot{box-sizing:border-box;min-width:0;max-width:28px;transition:max-width .18s var(--ds-ease-in-out), padding-left .18s var(--ds-ease-in-out);flex:1;align-items:center;margin-left:auto;padding-left:0;display:flex}.bhn1Oq_searchSlotExpanded{max-width:100%;padding-left:0}.bhn1Oq_headerActions{opacity:1;visibility:visible;max-width:60px;transition:max-width .18s var(--ds-ease-in-out), opacity .12s var(--ds-ease-in-out), transform .18s var(--ds-ease-in-out), visibility 0s linear;flex:none;align-items:center;gap:4px;display:flex;overflow:hidden}.bhn1Oq_headerActionsHidden{opacity:0;visibility:hidden;pointer-events:none;max-width:0;transition-delay:0s,0s,0s,.18s;transform:translate(4px)}.bhn1Oq_search{box-sizing:border-box;border-radius:var(--dsw-radius-sm);cursor:text;width:100%;height:28px;color:var(--dsw-alias-label-secondary);transition:width .18s var(--ds-ease-in-out), padding .18s var(--ds-ease-in-out), border-color .18s var(--ds-ease-in-out), background-color .18s var(--ds-ease-in-out);background:0 0;border:none;flex:none;align-items:center;gap:0;margin:0;padding:0;display:flex;overflow:hidden}.bhn1Oq_searchExpanded{border:.5px solid var(--dsw-alias-border-l4);border-radius:var(--dsw-radius-md);width:calc(100% + 4px);height:30px;color:var(--dsw-alias-label-caption);background:0 0;margin-inline:-2px;padding:0 4px 0 0}.bhn1Oq_searchButton{border-radius:var(--dsw-radius-sm);cursor:pointer;width:28px;height:28px;color:inherit;background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.bhn1Oq_searchExpanded .bhn1Oq_searchButton{width:28px;height:30px}.bhn1Oq_searchButton:hover{background:var(--dsw-alias-interactive-bg-hover)}.bhn1Oq_searchExpanded .bhn1Oq_searchButton:hover{background:0 0}.bhn1Oq_searchInput{opacity:0;pointer-events:none;width:0;min-width:0;color:var(--dsw-alias-label-primary);transition:opacity .12s var(--ds-ease-in-out);background:0 0;border:none;outline:none;flex:1;font-size:13px;line-height:18px}.bhn1Oq_searchExpanded .bhn1Oq_searchInput{opacity:1;pointer-events:auto;margin-left:-2px}.bhn1Oq_searchInput::placeholder{color:var(--dsw-alias-label-tertiary)}.bhn1Oq_clearButton{border-radius:var(--dsw-radius-sm);cursor:pointer;width:24px;height:24px;color:var(--dsw-alias-label-secondary);background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.bhn1Oq_clearButton:hover{background:var(--dsw-alias-interactive-bg-hover)}.bhn1Oq_rail .bhn1Oq_sectionHeader{justify-content:flex-start;gap:0;margin-bottom:12px;padding-left:0}.bhn1Oq_rail .bhn1Oq_headerActions{max-width:none}.bhn1Oq_rail .bhn1Oq_iconButton{border-radius:var(--dsw-radius-md);width:36px;height:36px;color:var(--dsw-alias-label-primary)}.bhn1Oq_rail .bhn1Oq_search{border-radius:var(--dsw-radius-md);background:0 0;border-color:#0000;gap:0;width:36px;height:36px;margin:0 0 12px;padding:0}.bhn1Oq_rail .bhn1Oq_searchButton{border-radius:var(--dsw-radius-md);width:36px;height:36px;color:var(--dsw-alias-label-primary)}.bhn1Oq_rail .bhn1Oq_searchButton:hover{background:var(--dsw-alias-interactive-bg-hover)}.bhn1Oq_listArea{min-height:0;margin-left:-4px;margin-right:calc(-1 * var(--dsh-session-list-edge-inset));flex-direction:column;flex:1;padding-left:4px;display:flex;overflow:visible}.bhn1Oq_rail .bhn1Oq_listArea{margin-left:0;margin-right:0;padding-left:0}.bhn1Oq_treeBody{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.bhn1Oq_fade{left:0;right:var(--dsh-session-list-edge-inset);background:linear-gradient(to bottom, transparent, var(--dsw-specific-sidebar-fill));pointer-events:none;height:24px;position:absolute;bottom:0}[data-platform=darwin] .bhn1Oq_fade{display:none}.bhn1Oq_wide{animation:bhn1Oq_wide-in .2s var(--ds-ease-in-out)}@keyframes bhn1Oq_wide-in{0%{opacity:0}}.bhn1Oq_list{min-height:0;margin-left:-4px;margin-right:var(--dsh-session-list-scrollbar-offset);padding-left:4px;padding-right:calc(var(--dsh-session-list-edge-inset) - var(--dsh-session-list-scrollbar-width) - var(--dsh-session-list-scrollbar-offset));scrollbar-gutter:stable;flex:1;padding-bottom:16px;overflow-y:auto}.bhn1Oq_flatList>*+*,.bhn1Oq_searchTree>[role=treeitem]+[role=treeitem],.bhn1Oq_groupSection>*+*{margin-top:2px}.bhn1Oq_searchStatus{color:var(--dsw-alias-label-tertiary);padding:10px 12px;font-size:12px;line-height:18px}.bhn1Oq_skeletonRow{box-sizing:border-box;align-items:flex-start;gap:8px;min-height:48px;padding:6px 8px 7px;display:flex}.bhn1Oq_skeletonDot{corner-shape:round;border-radius:50%;flex:none;width:16px;height:16px}.bhn1Oq_skeletonBars{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.bhn1Oq_skeletonDot,.bhn1Oq_skeletonBar{background:var(--dsw-alias-bg-skeleton);animation:2s cubic-bezier(.36,0,.64,1) infinite bhn1Oq_search-skeleton}.bhn1Oq_skeletonBar{border-radius:var(--dsw-radius-xs);width:65%;height:16px}.bhn1Oq_skeletonBarWide{width:90%;height:13px}@keyframes bhn1Oq_search-skeleton{0%{opacity:1}40%{opacity:.6}80%,to{opacity:1}}.bhn1Oq_groupSection{position:relative}.bhn1Oq_groupSection+.bhn1Oq_groupSection{margin-top:4px}.bhn1Oq_listTopDropIndicator,.bhn1Oq_workspaceDropBefore:before,.bhn1Oq_workspaceDropAfter:after{content:\"\";z-index:1;background:linear-gradient(55deg, transparent calc(50% - 1px), var(--dsw-alias-state-business-primary) calc(50% - 1px) calc(50% + 1px), transparent calc(50% + 1px)) 0 0 / 5px 7px no-repeat, linear-gradient(125deg, transparent calc(50% - 1px), var(--dsw-alias-state-business-primary) calc(50% - 1px) calc(50% + 1px), transparent calc(50% + 1px)) 0 5px / 5px 7px no-repeat, linear-gradient(var(--dsw-alias-state-business-primary) 0 0) 4px 5px / calc(100% - 4px) 2px no-repeat;pointer-events:none;height:12px;position:absolute;left:0;right:0}.bhn1Oq_listTopDropIndicator{top:-8px;left:0;right:var(--dsh-session-list-edge-inset)}.bhn1Oq_listTopDropActive>.bhn1Oq_workspaceDropBefore:first-child:before{display:none}.bhn1Oq_workspaceDropBefore:before{top:-8px}.bhn1Oq_workspaceDropAfter:after{bottom:-8px}.bhn1Oq_sessionOverflowButton{border-radius:var(--dsw-radius-sm);width:100%;height:28px;padding:0 12px 0 calc(28px + var(--dsh-workspace-indent,0px));cursor:pointer;text-align:left;color:var(--dsw-alias-label-tertiary);background:0 0;border:none;font-size:12px}.bhn1Oq_groupSection>.bhn1Oq_sessionOverflowButton{margin-top:0}.bhn1Oq_sessionOverflowButton:hover{color:var(--dsw-alias-label-secondary);background:0 0}.bhn1Oq_empty{color:var(--dsw-alias-label-tertiary);padding:16px 12px;font-size:13px}.bhn1Oq_emptyState{color:var(--dsw-alias-label-tertiary);flex-direction:column;align-items:center;gap:8px;margin-top:80px;padding:0 12px;font-size:13px;line-height:20px;display:flex}.bhn1Oq_emptyState>svg{color:var(--dsw-alias-label-caption);margin-bottom:4px}.bhn1Oq_emptyAction{cursor:pointer;color:var(--dsw-alias-link);background:0 0;border:none;padding:0;font-size:13px;line-height:20px}.bhn1Oq_renameInput{box-sizing:border-box;border:.5px solid var(--dsw-alias-border-l4);border-radius:var(--dsw-radius-lg);width:100%;height:44px;color:var(--dsw-alias-label-primary);background:0 0;outline:none;padding:7px 14px;font-size:14px;font-weight:400;line-height:22px}.bhn1Oq_renameInput:disabled{color:var(--dsw-alias-label-dimmed)}.bhn1Oq_renameError{color:var(--dsw-alias-state-error-primary);margin-top:8px;font-size:12px;line-height:18px}.bhn1Oq_deleteAction:not(:disabled){color:var(--dsw-alias-state-error-primary)}.bhn1Oq_deleteStatus{color:var(--dsw-alias-label-secondary);font-size:12px;line-height:18px}.bhn1Oq_archiveActivity{color:var(--dsw-alias-label-primary);margin:0 0 8px;padding-left:18px;font-size:13px;line-height:20px}.bhn1Oq_archiveActivity li{overflow-wrap:anywhere}@media (prefers-reduced-motion:reduce){.bhn1Oq_wide,.bhn1Oq_skeletonDot,.bhn1Oq_skeletonBar{animation:none}.bhn1Oq_search,.bhn1Oq_sectionLabel,.bhn1Oq_searchSlot,.bhn1Oq_searchInput,.bhn1Oq_headerActions{transition:none}}";
20804
- const tagId = "@deepseek-ai/dsh-client-ui-workspace/WorkspaceBrowser.module.css";
20954
+ const tagId = "dsh-git-worktree/workspace-0.1.7-rc.2/WorkspaceBrowser.module.css";
20805
20955
  if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId) + "]") === null) {
20806
20956
  const tag = document.createElement("style");
20807
- tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-workspace";
20957
+ tag.dataset.plugin = "dsh-git-worktree";
20808
20958
  tag.dataset.pluginCss = tagId;
20809
20959
  tag.textContent = css;
20810
20960
  document.head.appendChild(tag);
@@ -23861,10 +24011,10 @@ const official = ((require$1) => {
23861
24011
  return owner;
23862
24012
  }
23863
24013
  const css$2 = ".YDXeBa_projectRow,.YDXeBa_sessionRow{padding:0 8px;cursor:pointer;user-select:none;color:var(--dsw-alias-label-primary);border-radius:8px;align-items:center;gap:6px;padding-inline-start:calc(8px + var(--dsh-workspace-indent,0px));display:flex}.YDXeBa_projectRow:hover,.YDXeBa_sessionRow:hover,.YDXeBa_sessionRow.YDXeBa_selected{background:var(--dsw-alias-interactive-bg-hover)}.YDXeBa_searchResultRow{box-sizing:border-box;cursor:pointer;text-align:left;width:100%;min-height:48px;color:var(--dsw-alias-label-primary);background:0 0;border:none;border-radius:8px;flex-direction:column;align-items:stretch;padding:4px 8px;display:flex}.YDXeBa_searchResultRow:hover,.YDXeBa_searchResultRow.YDXeBa_selected{background:var(--dsw-alias-interactive-bg-hover)}.YDXeBa_searchResultHeading{align-items:center;min-width:0;display:flex}.YDXeBa_searchResultTitle{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;margin-left:4px;font-size:14px;line-height:20px;overflow:hidden}.YDXeBa_searchResultMeta{align-items:center;gap:6px;min-width:0;margin-left:20px;display:flex}.YDXeBa_searchResultWorkspace,.YDXeBa_searchResultSnippet{text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:17px;overflow:hidden}.YDXeBa_searchResultWorkspace{max-width:40%;color:var(--dsw-alias-label-tertiary);flex:none}.YDXeBa_searchResultSnippet{min-width:0;color:var(--dsw-alias-label-secondary);flex:1}.YDXeBa_projectRow{box-sizing:border-box;align-items:center;height:34px}.YDXeBa_projectRow .YDXeBa_rowActions{height:20px}.YDXeBa_sessionRow{height:32px;animation:YDXeBa_row-in .15s var(--ds-ease-in-out);gap:0}.YDXeBa_sessionRow .YDXeBa_title{margin:0 6px 0 4px}.YDXeBa_flatSessionRowWithoutStatus .YDXeBa_title{margin-left:0}@keyframes YDXeBa_row-in{0%{opacity:0}}.YDXeBa_slot{width:16px;height:20px;color:var(--dsw-alias-label-tertiary);flex:none;justify-content:center;align-items:center;display:inline-flex}.YDXeBa_visuallyHidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.YDXeBa_folderActive{color:var(--dsw-alias-state-business-primary)}.YDXeBa_projectRow .YDXeBa_chevron{display:none}.YDXeBa_projectRow:hover .YDXeBa_chevron{display:inline-flex}.YDXeBa_projectRow:hover .YDXeBa_folder{display:none}.YDXeBa_arrow{transition:transform .15s var(--ds-ease-in-out)}.YDXeBa_arrowOpen{transform:rotate(90deg)}.YDXeBa_projectText{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.YDXeBa_title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;line-height:20px;overflow:hidden}.YDXeBa_renameInput{border:.5px solid var(--dsw-alias-border-l4);background:var(--dsw-alias-button-elevated-fill);min-width:0;color:inherit;border-radius:4px;outline:none;padding:0 2px;font-size:14px;line-height:20px}.YDXeBa_sessionRow .YDXeBa_title{scroll-behavior:smooth;flex:1}@media (hover:hover){.YDXeBa_sessionRow:hover .YDXeBa_title{text-overflow:clip}}.YDXeBa_meta{text-overflow:ellipsis;white-space:nowrap;color:var(--dsw-alias-label-tertiary);font-size:12px;line-height:20px;overflow:hidden}.YDXeBa_time{color:var(--dsw-alias-label-tertiary);flex:none;font-size:12px;line-height:20px}.YDXeBa_scheduleIndicator{width:16px;height:20px;color:var(--dsw-alias-label-tertiary);flex:none;justify-content:center;align-items:center;margin-right:6px;display:inline-flex}.YDXeBa_searchScheduleIndicator{margin-left:4px;margin-right:0}.YDXeBa_dot{flex:none}.YDXeBa_rowActions{flex:none;align-items:center;gap:12px;display:none}.YDXeBa_projectRow:hover .YDXeBa_rowActions,.YDXeBa_sessionRow:hover .YDXeBa_rowActions,.YDXeBa_projectRow.YDXeBa_menuOpen .YDXeBa_rowActions,.YDXeBa_sessionRow.YDXeBa_menuOpen .YDXeBa_rowActions{display:inline-flex}.YDXeBa_sessionRow:hover .YDXeBa_time,.YDXeBa_sessionRow.YDXeBa_menuOpen .YDXeBa_time{display:none}.YDXeBa_projectRow.YDXeBa_menuOpen,.YDXeBa_sessionRow.YDXeBa_menuOpen{background:var(--dsw-alias-interactive-bg-hover)}.YDXeBa_sessionRow.YDXeBa_dropBefore,.YDXeBa_sessionRow.YDXeBa_dropAfter{position:relative}.YDXeBa_sessionRow.YDXeBa_dropBefore:before,.YDXeBa_sessionRow.YDXeBa_dropAfter:after{content:\"\";z-index:1;background:linear-gradient(55deg, transparent calc(50% - 1px), var(--dsw-alias-state-business-primary) calc(50% - 1px) calc(50% + 1px), transparent calc(50% + 1px)) 0 0 / 5px 7px no-repeat, linear-gradient(125deg, transparent calc(50% - 1px), var(--dsw-alias-state-business-primary) calc(50% - 1px) calc(50% + 1px), transparent calc(50% + 1px)) 0 5px / 5px 7px no-repeat, linear-gradient(var(--dsw-alias-state-business-primary) 0 0) 4px 5px / calc(100% - 4px) 2px no-repeat;pointer-events:none;height:12px;position:absolute;left:0;right:4px}.YDXeBa_sessionRow.YDXeBa_dropBefore:before{top:-7px}.YDXeBa_sessionRow.YDXeBa_dropAfter:after{bottom:-7px}.YDXeBa_hoverContent{flex-direction:column;gap:8px;display:flex}.YDXeBa_hoverTitle{color:#fff;overflow-wrap:break-word;font-size:14px;line-height:20px}.YDXeBa_hoverPath{color:#cfd3d6;word-break:break-all;font-size:12px;line-height:16px}.YDXeBa_hoverTime{color:#cfd3d6;font-size:12px;line-height:16px}.YDXeBa_hoverStatus{color:#adb2b8;align-items:center;gap:8px;font-size:12px;line-height:20px;display:flex}.YDXeBa_iconButton{cursor:pointer;width:16px;height:16px;color:var(--dsw-alias-label-tertiary);background:0 0;border:none;border-radius:4px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.YDXeBa_iconButton:hover{color:var(--dsw-alias-label-primary)}.YDXeBa_chevron{color:var(--dsw-alias-label-caption)}@media (prefers-reduced-motion:reduce){.YDXeBa_sessionRow,.YDXeBa_arrow{transition:none;animation:none}.YDXeBa_sessionRow .YDXeBa_title{scroll-behavior:auto}}";
23864
- const tagId$2 = "@deepseek-ai/dsh-client-ui-workspace/Rows.module.css";
24014
+ const tagId$2 = "dsh-git-worktree/workspace-0.1.6-alpha.2/Rows.module.css";
23865
24015
  if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$2) + "]") === null) {
23866
24016
  const tag = document.createElement("style");
23867
- tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-workspace";
24017
+ tag.dataset.plugin = "dsh-git-worktree";
23868
24018
  tag.dataset.pluginCss = tagId$2;
23869
24019
  tag.textContent = css$2;
23870
24020
  document.head.appendChild(tag);
@@ -24402,10 +24552,10 @@ const official = ((require$1) => {
24402
24552
  });
24403
24553
  }
24404
24554
  const css$1 = "._G5b-a_modalAction{min-width:72px}._G5b-a_modalError,._G5b-a_menuStatus{margin-top:8px;font-size:12px;line-height:18px}._G5b-a_modalError{color:var(--dsw-alias-state-error-primary)}._G5b-a_menuStatus{color:var(--dsw-alias-label-secondary)}";
24405
- const tagId$1 = "@deepseek-ai/dsh-client-ui-workspace/WorkspacePicker.module.css";
24555
+ const tagId$1 = "dsh-git-worktree/workspace-0.1.6-alpha.2/WorkspacePicker.module.css";
24406
24556
  if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$1) + "]") === null) {
24407
24557
  const tag = document.createElement("style");
24408
- tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-workspace";
24558
+ tag.dataset.plugin = "dsh-git-worktree";
24409
24559
  tag.dataset.pluginCss = tagId$1;
24410
24560
  tag.textContent = css$1;
24411
24561
  document.head.appendChild(tag);
@@ -24568,10 +24718,10 @@ const official = ((require$1) => {
24568
24718
  });
24569
24719
  }
24570
24720
  const css = ".bhn1Oq_root{--dsh-session-list-edge-inset:var(--dsh-sidebar-inline-padding);--dsh-session-list-scrollbar-width:8px;--dsh-session-list-scrollbar-offset:2px;box-sizing:border-box;min-height:0;padding-right:var(--dsh-session-list-edge-inset);flex-direction:column;flex:1;display:flex}.bhn1Oq_root.bhn1Oq_rail{padding-right:0}.bhn1Oq_iconButton{corner-shape:round;cursor:pointer;width:28px;height:28px;color:var(--dsw-alias-label-secondary);background:0 0;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.bhn1Oq_iconButton:hover{background:var(--dsw-alias-interactive-bg-hover)}.bhn1Oq_sectionHeader{box-sizing:border-box;height:36px;color:var(--dsw-alias-label-tertiary);border-radius:12px;flex:none;justify-content:flex-end;align-items:center;gap:4px;margin-bottom:4px;padding-left:4px;display:flex;overflow:hidden}.bhn1Oq_root:not(.bhn1Oq_rail) .bhn1Oq_sectionHeader{margin-top:2px;margin-right:-4px}.bhn1Oq_sectionLabel{white-space:nowrap;opacity:1;visibility:visible;min-width:0;max-width:45%;transition:max-width .18s var(--ds-ease-in-out), margin-right .18s var(--ds-ease-in-out), opacity .12s var(--ds-ease-in-out), transform .18s var(--ds-ease-in-out), visibility 0s linear;flex:none;line-height:20px;overflow:hidden}.bhn1Oq_sectionLabelHidden{opacity:0;visibility:hidden;max-width:0;margin-right:-4px;transition-delay:0s,0s,0s,0s,.18s;transform:translate(-4px)}.bhn1Oq_searchSlot{box-sizing:border-box;min-width:0;max-width:28px;transition:max-width .18s var(--ds-ease-in-out), padding-left .18s var(--ds-ease-in-out);flex:1;align-items:center;margin-left:auto;padding-left:0;display:flex}.bhn1Oq_searchSlotExpanded{max-width:100%;padding-left:0}.bhn1Oq_headerActions{opacity:1;visibility:visible;max-width:60px;transition:max-width .18s var(--ds-ease-in-out), opacity .12s var(--ds-ease-in-out), transform .18s var(--ds-ease-in-out), visibility 0s linear;flex:none;align-items:center;gap:4px;display:flex;overflow:hidden}.bhn1Oq_headerActionsHidden{opacity:0;visibility:hidden;pointer-events:none;max-width:0;transition-delay:0s,0s,0s,.18s;transform:translate(4px)}.bhn1Oq_search{box-sizing:border-box;corner-shape:round;cursor:text;width:100%;height:28px;color:var(--dsw-alias-label-secondary);transition:width .18s var(--ds-ease-in-out), padding .18s var(--ds-ease-in-out), border-color .18s var(--ds-ease-in-out), background-color .18s var(--ds-ease-in-out);background:0 0;border:none;border-radius:50%;flex:none;align-items:center;gap:0;margin:0;padding:0;display:flex;overflow:hidden}.bhn1Oq_searchExpanded{border:.5px solid var(--dsw-alias-border-l4);width:calc(100% + 4px);height:30px;color:var(--dsw-alias-label-caption);background:0 0;border-radius:10px;margin-inline:-2px;padding:0 4px 0 0}.bhn1Oq_searchButton{corner-shape:round;cursor:pointer;width:28px;height:28px;color:inherit;background:0 0;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.bhn1Oq_searchExpanded .bhn1Oq_searchButton{width:28px;height:30px}.bhn1Oq_searchButton:hover{background:var(--dsw-alias-interactive-bg-hover)}.bhn1Oq_searchExpanded .bhn1Oq_searchButton:hover{background:0 0}.bhn1Oq_searchInput{opacity:0;pointer-events:none;width:0;min-width:0;color:var(--dsw-alias-label-primary);transition:opacity .12s var(--ds-ease-in-out);background:0 0;border:none;outline:none;flex:1;font-size:13px;line-height:18px}.bhn1Oq_searchExpanded .bhn1Oq_searchInput{opacity:1;pointer-events:auto;margin-left:-2px}.bhn1Oq_searchInput::placeholder{color:var(--dsw-alias-label-tertiary)}.bhn1Oq_clearButton{corner-shape:round;cursor:pointer;width:24px;height:24px;color:var(--dsw-alias-label-secondary);background:0 0;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.bhn1Oq_clearButton:hover{background:var(--dsw-alias-interactive-bg-hover)}.bhn1Oq_rail .bhn1Oq_sectionHeader{justify-content:flex-start;gap:0;margin-bottom:12px;padding-left:0}.bhn1Oq_rail .bhn1Oq_headerActions{max-width:none}.bhn1Oq_rail .bhn1Oq_iconButton{width:36px;height:36px;color:var(--dsw-alias-label-primary);border-radius:12px}.bhn1Oq_rail .bhn1Oq_search{background:0 0;border-color:#0000;border-radius:12px;gap:0;width:36px;height:36px;margin:0 0 12px;padding:0}.bhn1Oq_rail .bhn1Oq_searchButton{width:36px;height:36px;color:var(--dsw-alias-label-primary);border-radius:12px}.bhn1Oq_rail .bhn1Oq_searchButton:hover{background:var(--dsw-alias-interactive-bg-hover)}.bhn1Oq_listArea{min-height:0;margin-left:-4px;margin-right:calc(-1 * var(--dsh-session-list-edge-inset));flex-direction:column;flex:1;padding-left:4px;display:flex;overflow:visible}.bhn1Oq_rail .bhn1Oq_listArea{margin-left:0;margin-right:0;padding-left:0}.bhn1Oq_treeBody{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.bhn1Oq_fade{left:0;right:var(--dsh-session-list-edge-inset);background:linear-gradient(to bottom, transparent, var(--dsw-specific-sidebar-fill));pointer-events:none;height:24px;position:absolute;bottom:0}[data-platform=darwin] .bhn1Oq_fade{display:none}.bhn1Oq_wide{animation:bhn1Oq_wide-in .2s var(--ds-ease-in-out)}@keyframes bhn1Oq_wide-in{0%{opacity:0}}.bhn1Oq_list{min-height:0;margin-left:-4px;margin-right:var(--dsh-session-list-scrollbar-offset);padding-left:4px;padding-right:calc(var(--dsh-session-list-edge-inset) - var(--dsh-session-list-scrollbar-width) - var(--dsh-session-list-scrollbar-offset));scrollbar-gutter:stable;flex:1;padding-bottom:16px;overflow-y:auto}.bhn1Oq_flatList>*+*,.bhn1Oq_searchTree>[role=treeitem]+[role=treeitem],.bhn1Oq_groupSection>*+*{margin-top:2px}.bhn1Oq_searchStatus,.bhn1Oq_searchWarning{color:var(--dsw-alias-label-tertiary);padding:10px 12px;font-size:12px;line-height:18px}.bhn1Oq_searchWarning{color:var(--dsw-alias-label-secondary)}.bhn1Oq_groupSection{position:relative}.bhn1Oq_groupSection+.bhn1Oq_groupSection{margin-top:4px}.bhn1Oq_listTopDropIndicator,.bhn1Oq_workspaceDropBefore:before,.bhn1Oq_workspaceDropAfter:after{content:\"\";z-index:1;background:linear-gradient(55deg, transparent calc(50% - 1px), var(--dsw-alias-state-business-primary) calc(50% - 1px) calc(50% + 1px), transparent calc(50% + 1px)) 0 0 / 5px 7px no-repeat, linear-gradient(125deg, transparent calc(50% - 1px), var(--dsw-alias-state-business-primary) calc(50% - 1px) calc(50% + 1px), transparent calc(50% + 1px)) 0 5px / 5px 7px no-repeat, linear-gradient(var(--dsw-alias-state-business-primary) 0 0) 4px 5px / calc(100% - 4px) 2px no-repeat;pointer-events:none;height:12px;position:absolute;left:0;right:0}.bhn1Oq_listTopDropIndicator{top:-8px;left:0;right:var(--dsh-session-list-edge-inset)}.bhn1Oq_listTopDropActive>.bhn1Oq_workspaceDropBefore:first-child:before{display:none}.bhn1Oq_workspaceDropBefore:before{top:-8px}.bhn1Oq_workspaceDropAfter:after{bottom:-8px}.bhn1Oq_sessionOverflowButton{width:100%;height:28px;padding:0 12px 0 calc(28px + var(--dsh-workspace-indent,0px));cursor:pointer;text-align:left;color:var(--dsw-alias-label-tertiary);background:0 0;border:none;border-radius:8px;font-size:12px}.bhn1Oq_groupSection>.bhn1Oq_sessionOverflowButton{margin-top:0}.bhn1Oq_sessionOverflowButton:hover{color:var(--dsw-alias-label-secondary);background:0 0}.bhn1Oq_empty{color:var(--dsw-alias-label-tertiary);padding:16px 12px;font-size:13px}.bhn1Oq_renameInput{box-sizing:border-box;border:.5px solid var(--dsw-alias-border-l4);width:100%;height:44px;color:var(--dsw-alias-label-primary);background:0 0;border-radius:22px;outline:none;padding:7px 14px;font-size:14px;font-weight:400;line-height:22px}.bhn1Oq_renameInput:disabled{color:var(--dsw-alias-label-dimmed)}.bhn1Oq_renameError{color:var(--dsw-alias-state-error-primary);margin-top:8px;font-size:12px;line-height:18px}.bhn1Oq_deleteAction:not(:disabled){color:var(--dsw-alias-state-error-primary)}.bhn1Oq_deleteStatus{color:var(--dsw-alias-label-secondary);font-size:12px;line-height:18px}@media (prefers-reduced-motion:reduce){.bhn1Oq_wide{animation:none}.bhn1Oq_search,.bhn1Oq_sectionLabel,.bhn1Oq_searchSlot,.bhn1Oq_searchInput,.bhn1Oq_headerActions{transition:none}}";
24571
- const tagId = "@deepseek-ai/dsh-client-ui-workspace/WorkspaceBrowser.module.css";
24721
+ const tagId = "dsh-git-worktree/workspace-0.1.6-alpha.2/WorkspaceBrowser.module.css";
24572
24722
  if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId) + "]") === null) {
24573
24723
  const tag = document.createElement("style");
24574
- tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-workspace";
24724
+ tag.dataset.plugin = "dsh-git-worktree";
24575
24725
  tag.dataset.pluginCss = tagId;
24576
24726
  tag.textContent = css;
24577
24727
  document.head.appendChild(tag);