@dsh-workbench/core 0.1.9 → 0.1.10

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.
@@ -1,4 +1,5 @@
1
1
  import type { DshClientContext } from '@dsh-workbench/shared';
2
+ import type { MessagesContribution } from '@dsh-workbench/shared';
2
3
  import { Tip } from '../shared/components/Tip';
3
4
  import * as apiModule from '@dsh-workbench/shared';
4
5
  import * as chipsModule from '../shared/api/context-chips';
@@ -23,6 +24,7 @@ export declare const kit: {
23
24
  }): capabilityGateModule.CapabilityGate;
24
25
  useCapabilityMap(refreshToken: number): capabilityGateModule.CapabilityMapView;
25
26
  mockModeOn(search: string): boolean;
27
+ crashModeOn(search: string): boolean;
26
28
  useLongTask<T extends {
27
29
  readonly id: string;
28
30
  readonly status: apiModule.LongTaskStatus;
@@ -97,6 +99,8 @@ export declare const kit: {
97
99
  ApprovalDetail(props: apiModule.ApprovalDetailProps): JSX.Element | null;
98
100
  ApprovalPlan({ rows, hint, warn, children }: apiModule.ApprovalPlanProps): JSX.Element;
99
101
  Card({ t, title, refreshing, onRefresh, meta, head, children }: apiModule.CardProps): JSX.Element;
102
+ errorReasonOf(error: unknown): string;
103
+ CardBoundary: typeof apiModule.CardBoundary;
100
104
  CardHead({ t, title, meta, refreshing, onRefresh, gear, gearOpen, onToggleGear, platformHref, platform, platformTitle, }: apiModule.CardHeadProps): JSX.Element;
101
105
  ChoiceGroup({ label, name, value, options, disabled, onChange }: apiModule.ChoiceGroupProps): JSX.Element;
102
106
  LongTaskRow(props: apiModule.LongTaskRowProps): JSX.Element;
@@ -179,6 +183,20 @@ export declare const kit: {
179
183
  readonly "project.none": "\u672A\u9009\u62E9\u9879\u76EE";
180
184
  readonly "project.empty": "\u8FD8\u6CA1\u6709\u9879\u76EE\u3002\u7528\u4E0B\u9762\u7684\u300C\u6DFB\u52A0\u9879\u76EE\u300D\u9009\u4E00\u4E2A\u76EE\u5F55\u3002";
181
185
  readonly "project.add": "\u6DFB\u52A0\u9879\u76EE\u2026";
186
+ readonly "project.search.label": "\u641C\u7D22\u5DE5\u4F5C\u533A";
187
+ readonly "project.search.placeholder": "\u641C\u7D22\u5DE5\u4F5C\u533A\uFF08\u76EE\u5F55\u540D / \u4E2D\u6587\u540D / \u8DEF\u5F84\uFF09";
188
+ readonly "project.search.empty": "\u6CA1\u6709\u5339\u914D\u300C{query}\u300D\u7684\u5DE5\u4F5C\u533A\u3002";
189
+ readonly "project.rename.row": "\u6539\u300C{name}\u300D\u7684\u4E2D\u6587\u540D";
190
+ readonly "project.rename.current": "\u6539\u5F53\u524D\u5DE5\u4F5C\u533A\u7684\u4E2D\u6587\u540D\u2026";
191
+ readonly "project.rename.title": "\u7ED9\u300C{name}\u300D\u914D\u4E00\u4E2A\u4E2D\u6587\u540D";
192
+ readonly "project.rename.description": "\u663E\u793A\u5728\u76EE\u5F55\u540D\u540E\u9762\u3002\u6539\u7684\u662F\u5DE5\u4F5C\u533A\u672C\u8EAB\u7684\u540D\u5B57\u3002";
193
+ readonly "project.rename.field": "\u4E2D\u6587\u540D";
194
+ readonly "project.rename.placeholder": "\u4F8B\u5982\uFF1A\u5DE5\u4F5C\u53F0\u5916\u58F3";
195
+ readonly "project.rename.hint": "\u7559\u7A7A = \u53EA\u663E\u793A\u76EE\u5F55\u540D";
196
+ readonly "project.rename.save": "\u4FDD\u5B58";
197
+ readonly "project.rename.saving": "\u4FDD\u5B58\u4E2D\u2026";
198
+ readonly "project.rename.cancel": "\u53D6\u6D88";
199
+ readonly "project.rename.failed": "\u6539\u540D\u5931\u8D25\u4E86\uFF0C\u518D\u8BD5\u4E00\u6B21\u3002";
182
200
  readonly "session.new": "\u65B0\u4F1A\u8BDD";
183
201
  readonly "session.new.label": "\u5728\u5F53\u524D\u9879\u76EE\u65B0\u5EFA\u4F1A\u8BDD";
184
202
  readonly "session.empty": "\u8FD9\u4E2A\u9879\u76EE\u8FD8\u6CA1\u6709\u4F1A\u8BDD\u3002";
@@ -207,6 +225,7 @@ export declare const kit: {
207
225
  readonly "panels.dragHint": "\u62D6\u52A8\u8C03\u6574\u987A\u5E8F";
208
226
  readonly "panels.unknownStep": "\u8FD9\u4E00\u5C42\u6CA1\u6709\u5957\u4EF6\u63D0\u4F9B";
209
227
  readonly "panels.labelWithHint": "{label}\uFF08{hint}\uFF09";
228
+ readonly "panels.dep.failed": "\u26A0 \u8D77\u4E0D\u6765";
210
229
  readonly "panels.dep.missingPlugin": "\u26A0 \u8FD8\u6CA1\u88C5\u597D";
211
230
  readonly "panels.dep.missingCommands": "\u26A0 \u9700\u8981\u66F4\u65B0";
212
231
  readonly "panels.dep.unchecked": "\u26A0 \u68C0\u6D4B\u4E0D\u4E86";
@@ -400,6 +419,8 @@ export declare const kit: {
400
419
  readonly "blocker.exec.hint": "\u786E\u8BA4 opencli \u5DF2\u5B89\u88C5\u4E14\u5728 PATH \u91CC\uFF08which opencli\uFF09\u3002";
401
420
  readonly "blocker.unknown.title": "\u51FA\u4E86\u70B9\u95EE\u9898";
402
421
  readonly "panels.reading": "\u6B63\u5728\u8BFB\u53D6\u9762\u677F\u914D\u7F6E\u2026";
422
+ readonly "panels.cardBroken": "\u8FD9\u4E2A\u6A21\u5757\u8D77\u4E0D\u6765\uFF1A{unit}\uFF08{reason}\uFF09";
423
+ readonly "panels.cardRetry": "\u91CD\u8BD5";
403
424
  readonly "panels.empty": "\u9762\u677F\u91CC\u8FD8\u6CA1\u6709\u6A21\u5757";
404
425
  readonly "panels.emptyHint": "\u4E5F\u53EF\u4EE5\u76F4\u63A5\u8DDF agent \u8BF4\uFF1A\u300C\u628A\u67D0\u4E2A\u6A21\u5757\u52A0\u5230\u9762\u677F\u300D\u3002";
405
426
  readonly "env.title": "\u51C6\u5907\u5DE5\u4F5C\u53F0";
@@ -438,6 +459,8 @@ export declare const kit: {
438
459
  readonly "env.step.warm": "\u9884\u70ED\u7AD9\u70B9\u767B\u5F55\u6001";
439
460
  readonly "env.warm.done": "\u5DF2\u9884\u70ED {n} \u4E2A\u7AD9\u70B9";
440
461
  readonly "env.warm.short": "\u8FD9\u6B21\u6CA1\u70ED\u4E0A \u2014\u2014 \u4E0D\u5F71\u54CD\u7528\uFF0C\u9762\u677F\u7B2C\u4E00\u6B21\u8BFB\u53D6\u4F1A\u81EA\u5DF1\u8865";
462
+ readonly "env.unit.failed": "\u8FD9\u4E2A\u6A21\u5757\u8D77\u4E0D\u6765";
463
+ readonly "env.unit.failedHint": "\u5B83\u81EA\u5DF1\u88C5\u914D\u65F6\u62A5\u4E86\u9519\uFF0C\u522B\u7684\u6A21\u5757\u4E0D\u53D7\u5F71\u54CD\u3002";
441
464
  readonly "env.unit.missingPlugin": "\u8FD9\u4E2A\u6A21\u5757\u8FD8\u6CA1\u88C5\u597D";
442
465
  readonly "env.unit.missingCommandsHint": "\u66F4\u65B0\u4E4B\u540E\u5C31\u80FD\u7528\u4E86\u3002";
443
466
  readonly "env.unit.unchecked": "\u68C0\u6D4B\u4E0D\u4E86\uFF1A\u62FF\u4E0D\u5230\u6267\u884C\u901A\u9053";
@@ -460,9 +483,10 @@ export declare const kit: {
460
483
  readonly "panel.conversation": "\u5BF9\u8BDD";
461
484
  readonly "panels.label": "\u5168\u5C40\u9762\u677F";
462
485
  };
463
- en: Record<"time.now" | "time.minutes" | "time.hours" | "time.days" | "blocker.retry" | "blocker.copy" | "blocker.unknown.title" | "blocker.login.go" | "blocker.login.titleGeneric" | "blocker.login.title" | "blocker.login.manual" | "blocker.login.hint" | "blocker.forbidden.open" | "blocker.forbidden.titleGeneric" | "blocker.forbidden.title" | "blocker.forbidden.hint" | "blocker.timeout.hint" | "blocker.exec.hint" | "blocker.fix.install" | "blocker.fix.update" | "blocker.market.open" | "env.unit.missingPlugin" | "env.unit.hint" | "env.unit.missingCommands" | "env.unit.missingCommandsHint" | "env.unit.unchecked" | "env.unit.uncheckedHint" | "brand.name" | "toggle.open" | "toggle.collapse" | "project.label" | "workspace.section" | "project.none" | "project.empty" | "project.add" | "session.new" | "session.new.label" | "session.empty" | "session.noProject" | "session.pinned" | "session.actions" | "status.idle" | "status.running" | "status.waitingApproval" | "status.planReview" | "status.waitingAnswer" | "status.completed" | "status.subagentsRunning.one" | "status.subagentsRunning.other" | "panels.title" | "panels.reset" | "panels.enabled" | "panels.disabled" | "panels.choose" | "panels.failed" | "panels.hintEffect" | "panels.dragHint" | "panels.unknownStep" | "panels.labelWithHint" | "panels.dep.missingPlugin" | "panels.dep.missingCommands" | "panels.dep.unchecked" | "panels.tab.modules" | "panels.tab.market" | "panels.browseMarket" | "panels.noneInstalled" | "panels.noneInstalledHint" | "panels.market.installed" | "panels.market.outdated" | "panels.market.hasNew" | "panels.market.missing" | "panels.market.unchecked" | "panels.market.checking" | "panels.market.sectionInstalled" | "panels.market.sectionPending" | "panels.market.sectionShared" | "panels.market.sharedUsedBy" | "panels.market.listSeparator" | "panels.market.sharedMissing" | "panels.market.sharedOutdated" | "panels.market.sharedUnsatisfied" | "panels.market.sharedOk" | "panels.market.versionArrow" | "panels.market.lead" | "panels.market.install" | "panels.market.update" | "panels.market.uninstall" | "panels.market.uninstallLabel" | "panels.market.installing" | "panels.market.updating" | "panels.market.uninstalling" | "panels.market.confirmUninstallTitle" | "panels.market.confirmUninstallDetail" | "panels.market.confirmUninstallAck" | "panels.market.confirmYes" | "panels.market.confirmNo" | "panels.market.failed" | "panels.market.needEnv" | "panels.market.noSource" | "panels.market.badSource" | "panels.market.empty" | "panels.market.installedSection" | "panels.market.moduleOutdated" | "panels.market.moduleRestartHint" | "panels.market.restartNeeded" | "panels.market.foot" | "panels.market.recheck" | "panels.market.checkUpdates" | "panels.market.checkedAt" | "panels.market.justNow" | "panels.market.minutesAgo" | "panels.market.hoursAgo" | "panels.market.add.description" | "panels.market.add.specPlaceholder" | "panels.market.add.guideToggle" | "panels.market.add.guideHide" | "panels.market.add.guideIdTitle" | "panels.market.add.guideIdExample" | "panels.market.add.guideIdHint" | "panels.market.add.guideGitTitle" | "panels.market.add.guideGitExample" | "panels.market.add.guideGitHint" | "panels.market.add.guidePathTitle" | "panels.market.add.guidePathExample" | "panels.market.add.guidePathHint" | "panels.market.add.guideExampleLabel" | "panels.market.add.guideFill" | "panels.market.add.guideSafety" | "panels.market.add.registryLegend" | "panels.market.add.registryOfficial" | "panels.market.add.registryMirror" | "panels.market.add.registryWithHost" | "panels.market.add.registryToggle" | "panels.market.add.installVersion" | "panels.market.add.registryDefault" | "panels.market.add.registryCustom" | "panels.market.add.registryCustomPlaceholder" | "panels.market.add.registryCustomHint" | "panels.market.add.registryCustomInvalid" | "panels.market.add.run" | "panels.market.add.edit" | "panels.market.add.changeRegistry" | "panels.market.add.installingTitle" | "panels.market.add.installedTitle" | "panels.market.add.failedTitle" | "panels.market.add.cancelledTitle" | "panels.market.add.failureNetworkHost" | "panels.market.add.problemInvalid" | "panels.market.add.problemInstalled" | "panels.market.add.problemNotFound" | "panels.market.add.problemNotPackage" | "panels.market.add.problemNotBundle" | "panels.market.add.problemNetwork" | "panels.market.add.problemUnknown" | "panels.market.add.failureNetwork" | "panels.market.add.failureNotFound" | "panels.market.add.failureNoMatchingVersion" | "panels.market.add.failureDiskFull" | "panels.market.add.failurePermission" | "panels.market.add.failureBuildBlocked" | "panels.market.add.failureIntegrity" | "panels.market.add.failureTimeout" | "panels.market.add.failurePnpmMissing" | "panels.market.add.failureGeneric" | "panels.market.add.approveTitle" | "panels.market.add.approveCaution" | "panels.market.add.approveRun" | "panels.market.add.restart" | "panels.market.add.tookEffect" | "panels.market.add.details" | "panels.market.add.open" | "panels.market.add.title" | "panels.market.add.intro" | "panels.market.add.specLabel" | "panels.market.add.specHint" | "panels.market.add.exampleTitle" | "panels.market.add.exampleFill" | "panels.market.add.registryLabel" | "panels.market.add.registryProfile" | "panels.market.add.registryPnpm" | "panels.market.add.check" | "panels.market.add.checking" | "panels.market.add.change" | "panels.market.add.previewTitle" | "panels.market.add.fieldName" | "panels.market.add.fieldVersion" | "panels.market.add.fieldDescription" | "panels.market.add.fieldSource" | "panels.market.add.install" | "panels.market.add.installing" | "panels.market.add.cancel" | "panels.market.add.close" | "panels.market.add.retry" | "panels.market.add.changeSource" | "panels.market.add.approveBuilds" | "panels.market.add.approveHint" | "panels.market.add.doneApplied" | "panels.market.add.doneRestart" | "panels.market.add.cancelled" | "panels.market.add.failed" | "panels.market.add.removed" | "panels.market.add.supplyPending" | "panels.market.add.supplyFailed" | "panels.market.add.notModule" | "panels.market.add.removedRestart" | "panels.market.add.remove" | "panels.market.add.problem.invalidSpec" | "panels.market.add.problem.alreadyInstalled" | "panels.market.add.problem.notFound" | "panels.market.add.problem.notAPackage" | "panels.market.add.problem.notABundle" | "panels.market.add.problem.network" | "panels.market.add.problem.unknown" | "panels.market.add.reason.invalidSpec" | "panels.market.add.reason.incompatible" | "panels.market.add.reason.notBundle" | "panels.market.add.reason.notRemovable" | "panels.market.add.reason.bundleInUse" | "panels.market.add.reason.stopProfile" | "panels.market.add.reason.staleApproval" | "panels.market.add.reason.operationError" | "panels.market.add.reason.buildBlocked" | "panels.market.add.reason.pnpmMissing" | "panels.market.add.reason.noMatchingVersion" | "panels.market.add.reason.diskFull" | "panels.market.add.reason.permission" | "panels.market.add.reason.integrity" | "panels.market.add.reason.timeout" | "panels.market.add.reason.network" | "panels.market.add.reason.notFound" | "panels.market.add.reason.unknown" | "blocker.fix.running" | "blocker.fix.failed" | "blocker.retry.running" | "panels.reading" | "panels.empty" | "panels.emptyHint" | "env.title" | "env.checking" | "env.installing" | "env.failed" | "env.elapsed" | "env.stepFailed.install" | "env.stepFailed.path" | "env.stepFailed.shell" | "env.bridge.ok" | "env.bridge.short" | "env.bridge.why" | "env.bridge.daemon" | "env.bridge.extension" | "env.bridge.extensionLink" | "env.bridge.profile" | "env.bridge.stale" | "env.bridge.unknown" | "env.fix.title" | "env.fix.why" | "env.fix.whyPath" | "env.fix.whyShell" | "env.fix.step" | "env.fix.stepPath" | "env.fix.stepShell" | "env.fix.permission" | "env.fix.network" | "env.fix.details" | "env.retry" | "env.copyCommand" | "env.copied" | "env.step.opencli" | "env.step.codingPlugin" | "env.step.bridge" | "env.step.warm" | "env.warm.done" | "env.warm.short" | "rightbar.label" | "rightbar.expand" | "rightbar.collapse" | "rightbar.column.label" | "rightbar.column.workbench" | "rightbar.column.dsh" | "rightbar.refresh" | "rightbar.refreshing" | "rightbar.updatedAt" | "rightbar.noProject" | "coding.notARepo.title" | "error.unknown" | "board.title" | "panel.conversation" | "panels.label", string>;
486
+ en: Record<"time.now" | "time.minutes" | "time.hours" | "time.days" | "blocker.retry" | "blocker.copy" | "blocker.unknown.title" | "blocker.login.go" | "blocker.login.titleGeneric" | "blocker.login.title" | "blocker.login.manual" | "blocker.login.hint" | "blocker.forbidden.open" | "blocker.forbidden.titleGeneric" | "blocker.forbidden.title" | "blocker.forbidden.hint" | "blocker.timeout.hint" | "blocker.exec.hint" | "blocker.fix.install" | "blocker.fix.update" | "blocker.market.open" | "env.unit.failed" | "env.unit.failedHint" | "env.unit.missingPlugin" | "env.unit.hint" | "env.unit.missingCommands" | "env.unit.missingCommandsHint" | "env.unit.unchecked" | "env.unit.uncheckedHint" | "brand.name" | "toggle.open" | "toggle.collapse" | "project.label" | "workspace.section" | "project.none" | "project.empty" | "project.add" | "project.search.label" | "project.search.placeholder" | "project.search.empty" | "project.rename.row" | "project.rename.current" | "project.rename.title" | "project.rename.description" | "project.rename.field" | "project.rename.placeholder" | "project.rename.hint" | "project.rename.save" | "project.rename.saving" | "project.rename.cancel" | "project.rename.failed" | "session.new" | "session.new.label" | "session.empty" | "session.noProject" | "session.pinned" | "session.actions" | "status.idle" | "status.running" | "status.waitingApproval" | "status.planReview" | "status.waitingAnswer" | "status.completed" | "status.subagentsRunning.one" | "status.subagentsRunning.other" | "panels.title" | "panels.reset" | "panels.enabled" | "panels.disabled" | "panels.choose" | "panels.failed" | "panels.hintEffect" | "panels.dragHint" | "panels.unknownStep" | "panels.labelWithHint" | "panels.dep.failed" | "panels.dep.missingPlugin" | "panels.dep.missingCommands" | "panels.dep.unchecked" | "panels.tab.modules" | "panels.tab.market" | "panels.browseMarket" | "panels.noneInstalled" | "panels.noneInstalledHint" | "panels.market.installed" | "panels.market.outdated" | "panels.market.hasNew" | "panels.market.missing" | "panels.market.unchecked" | "panels.market.checking" | "panels.market.sectionInstalled" | "panels.market.sectionPending" | "panels.market.sectionShared" | "panels.market.sharedUsedBy" | "panels.market.listSeparator" | "panels.market.sharedMissing" | "panels.market.sharedOutdated" | "panels.market.sharedUnsatisfied" | "panels.market.sharedOk" | "panels.market.versionArrow" | "panels.market.lead" | "panels.market.install" | "panels.market.update" | "panels.market.uninstall" | "panels.market.uninstallLabel" | "panels.market.installing" | "panels.market.updating" | "panels.market.uninstalling" | "panels.market.confirmUninstallTitle" | "panels.market.confirmUninstallDetail" | "panels.market.confirmUninstallAck" | "panels.market.confirmYes" | "panels.market.confirmNo" | "panels.market.failed" | "panels.market.needEnv" | "panels.market.noSource" | "panels.market.badSource" | "panels.market.empty" | "panels.market.installedSection" | "panels.market.moduleOutdated" | "panels.market.moduleRestartHint" | "panels.market.restartNeeded" | "panels.market.foot" | "panels.market.recheck" | "panels.market.checkUpdates" | "panels.market.checkedAt" | "panels.market.justNow" | "panels.market.minutesAgo" | "panels.market.hoursAgo" | "panels.market.add.description" | "panels.market.add.specPlaceholder" | "panels.market.add.guideToggle" | "panels.market.add.guideHide" | "panels.market.add.guideIdTitle" | "panels.market.add.guideIdExample" | "panels.market.add.guideIdHint" | "panels.market.add.guideGitTitle" | "panels.market.add.guideGitExample" | "panels.market.add.guideGitHint" | "panels.market.add.guidePathTitle" | "panels.market.add.guidePathExample" | "panels.market.add.guidePathHint" | "panels.market.add.guideExampleLabel" | "panels.market.add.guideFill" | "panels.market.add.guideSafety" | "panels.market.add.registryLegend" | "panels.market.add.registryOfficial" | "panels.market.add.registryMirror" | "panels.market.add.registryWithHost" | "panels.market.add.registryToggle" | "panels.market.add.installVersion" | "panels.market.add.registryDefault" | "panels.market.add.registryCustom" | "panels.market.add.registryCustomPlaceholder" | "panels.market.add.registryCustomHint" | "panels.market.add.registryCustomInvalid" | "panels.market.add.run" | "panels.market.add.edit" | "panels.market.add.changeRegistry" | "panels.market.add.installingTitle" | "panels.market.add.installedTitle" | "panels.market.add.failedTitle" | "panels.market.add.cancelledTitle" | "panels.market.add.failureNetworkHost" | "panels.market.add.problemInvalid" | "panels.market.add.problemInstalled" | "panels.market.add.problemNotFound" | "panels.market.add.problemNotPackage" | "panels.market.add.problemNotBundle" | "panels.market.add.problemNetwork" | "panels.market.add.problemUnknown" | "panels.market.add.failureNetwork" | "panels.market.add.failureNotFound" | "panels.market.add.failureNoMatchingVersion" | "panels.market.add.failureDiskFull" | "panels.market.add.failurePermission" | "panels.market.add.failureBuildBlocked" | "panels.market.add.failureIntegrity" | "panels.market.add.failureTimeout" | "panels.market.add.failurePnpmMissing" | "panels.market.add.failureGeneric" | "panels.market.add.approveTitle" | "panels.market.add.approveCaution" | "panels.market.add.approveRun" | "panels.market.add.restart" | "panels.market.add.tookEffect" | "panels.market.add.details" | "panels.market.add.open" | "panels.market.add.title" | "panels.market.add.intro" | "panels.market.add.specLabel" | "panels.market.add.specHint" | "panels.market.add.exampleTitle" | "panels.market.add.exampleFill" | "panels.market.add.registryLabel" | "panels.market.add.registryProfile" | "panels.market.add.registryPnpm" | "panels.market.add.check" | "panels.market.add.checking" | "panels.market.add.change" | "panels.market.add.previewTitle" | "panels.market.add.fieldName" | "panels.market.add.fieldVersion" | "panels.market.add.fieldDescription" | "panels.market.add.fieldSource" | "panels.market.add.install" | "panels.market.add.installing" | "panels.market.add.cancel" | "panels.market.add.close" | "panels.market.add.retry" | "panels.market.add.changeSource" | "panels.market.add.approveBuilds" | "panels.market.add.approveHint" | "panels.market.add.doneApplied" | "panels.market.add.doneRestart" | "panels.market.add.cancelled" | "panels.market.add.failed" | "panels.market.add.removed" | "panels.market.add.supplyPending" | "panels.market.add.supplyFailed" | "panels.market.add.notModule" | "panels.market.add.removedRestart" | "panels.market.add.remove" | "panels.market.add.problem.invalidSpec" | "panels.market.add.problem.alreadyInstalled" | "panels.market.add.problem.notFound" | "panels.market.add.problem.notAPackage" | "panels.market.add.problem.notABundle" | "panels.market.add.problem.network" | "panels.market.add.problem.unknown" | "panels.market.add.reason.invalidSpec" | "panels.market.add.reason.incompatible" | "panels.market.add.reason.notBundle" | "panels.market.add.reason.notRemovable" | "panels.market.add.reason.bundleInUse" | "panels.market.add.reason.stopProfile" | "panels.market.add.reason.staleApproval" | "panels.market.add.reason.operationError" | "panels.market.add.reason.buildBlocked" | "panels.market.add.reason.pnpmMissing" | "panels.market.add.reason.noMatchingVersion" | "panels.market.add.reason.diskFull" | "panels.market.add.reason.permission" | "panels.market.add.reason.integrity" | "panels.market.add.reason.timeout" | "panels.market.add.reason.network" | "panels.market.add.reason.notFound" | "panels.market.add.reason.unknown" | "blocker.fix.running" | "blocker.fix.failed" | "blocker.retry.running" | "panels.reading" | "panels.cardBroken" | "panels.cardRetry" | "panels.empty" | "panels.emptyHint" | "env.title" | "env.checking" | "env.installing" | "env.failed" | "env.elapsed" | "env.stepFailed.install" | "env.stepFailed.path" | "env.stepFailed.shell" | "env.bridge.ok" | "env.bridge.short" | "env.bridge.why" | "env.bridge.daemon" | "env.bridge.extension" | "env.bridge.extensionLink" | "env.bridge.profile" | "env.bridge.stale" | "env.bridge.unknown" | "env.fix.title" | "env.fix.why" | "env.fix.whyPath" | "env.fix.whyShell" | "env.fix.step" | "env.fix.stepPath" | "env.fix.stepShell" | "env.fix.permission" | "env.fix.network" | "env.fix.details" | "env.retry" | "env.copyCommand" | "env.copied" | "env.step.opencli" | "env.step.codingPlugin" | "env.step.bridge" | "env.step.warm" | "env.warm.done" | "env.warm.short" | "rightbar.label" | "rightbar.expand" | "rightbar.collapse" | "rightbar.column.label" | "rightbar.column.workbench" | "rightbar.column.dsh" | "rightbar.refresh" | "rightbar.refreshing" | "rightbar.updatedAt" | "rightbar.noProject" | "coding.notARepo.title" | "error.unknown" | "board.title" | "panel.conversation" | "panels.label", string>;
464
487
  };
465
- mergeMessages(base: apiModule.Dictionaries, contributions: readonly apiModule.MessagesContribution[]): apiModule.Dictionaries;
488
+ mergeMessages(base: apiModule.Dictionaries, contributions: readonly MessagesContribution[]): apiModule.Dictionaries;
489
+ mergeMessagesSkipping(base: apiModule.Dictionaries, contributions: readonly MessagesContribution[]): apiModule.MessagesMerge;
466
490
  zh: {
467
491
  readonly "brand.name": "\u5DE5\u4F5C\u53F0";
468
492
  readonly "toggle.open": "\u6253\u5F00\u4FA7\u8FB9\u680F";
@@ -472,6 +496,20 @@ export declare const kit: {
472
496
  readonly "project.none": "\u672A\u9009\u62E9\u9879\u76EE";
473
497
  readonly "project.empty": "\u8FD8\u6CA1\u6709\u9879\u76EE\u3002\u7528\u4E0B\u9762\u7684\u300C\u6DFB\u52A0\u9879\u76EE\u300D\u9009\u4E00\u4E2A\u76EE\u5F55\u3002";
474
498
  readonly "project.add": "\u6DFB\u52A0\u9879\u76EE\u2026";
499
+ readonly "project.search.label": "\u641C\u7D22\u5DE5\u4F5C\u533A";
500
+ readonly "project.search.placeholder": "\u641C\u7D22\u5DE5\u4F5C\u533A\uFF08\u76EE\u5F55\u540D / \u4E2D\u6587\u540D / \u8DEF\u5F84\uFF09";
501
+ readonly "project.search.empty": "\u6CA1\u6709\u5339\u914D\u300C{query}\u300D\u7684\u5DE5\u4F5C\u533A\u3002";
502
+ readonly "project.rename.row": "\u6539\u300C{name}\u300D\u7684\u4E2D\u6587\u540D";
503
+ readonly "project.rename.current": "\u6539\u5F53\u524D\u5DE5\u4F5C\u533A\u7684\u4E2D\u6587\u540D\u2026";
504
+ readonly "project.rename.title": "\u7ED9\u300C{name}\u300D\u914D\u4E00\u4E2A\u4E2D\u6587\u540D";
505
+ readonly "project.rename.description": "\u663E\u793A\u5728\u76EE\u5F55\u540D\u540E\u9762\u3002\u6539\u7684\u662F\u5DE5\u4F5C\u533A\u672C\u8EAB\u7684\u540D\u5B57\u3002";
506
+ readonly "project.rename.field": "\u4E2D\u6587\u540D";
507
+ readonly "project.rename.placeholder": "\u4F8B\u5982\uFF1A\u5DE5\u4F5C\u53F0\u5916\u58F3";
508
+ readonly "project.rename.hint": "\u7559\u7A7A = \u53EA\u663E\u793A\u76EE\u5F55\u540D";
509
+ readonly "project.rename.save": "\u4FDD\u5B58";
510
+ readonly "project.rename.saving": "\u4FDD\u5B58\u4E2D\u2026";
511
+ readonly "project.rename.cancel": "\u53D6\u6D88";
512
+ readonly "project.rename.failed": "\u6539\u540D\u5931\u8D25\u4E86\uFF0C\u518D\u8BD5\u4E00\u6B21\u3002";
475
513
  readonly "session.new": "\u65B0\u4F1A\u8BDD";
476
514
  readonly "session.new.label": "\u5728\u5F53\u524D\u9879\u76EE\u65B0\u5EFA\u4F1A\u8BDD";
477
515
  readonly "session.empty": "\u8FD9\u4E2A\u9879\u76EE\u8FD8\u6CA1\u6709\u4F1A\u8BDD\u3002";
@@ -500,6 +538,7 @@ export declare const kit: {
500
538
  readonly "panels.dragHint": "\u62D6\u52A8\u8C03\u6574\u987A\u5E8F";
501
539
  readonly "panels.unknownStep": "\u8FD9\u4E00\u5C42\u6CA1\u6709\u5957\u4EF6\u63D0\u4F9B";
502
540
  readonly "panels.labelWithHint": "{label}\uFF08{hint}\uFF09";
541
+ readonly "panels.dep.failed": "\u26A0 \u8D77\u4E0D\u6765";
503
542
  readonly "panels.dep.missingPlugin": "\u26A0 \u8FD8\u6CA1\u88C5\u597D";
504
543
  readonly "panels.dep.missingCommands": "\u26A0 \u9700\u8981\u66F4\u65B0";
505
544
  readonly "panels.dep.unchecked": "\u26A0 \u68C0\u6D4B\u4E0D\u4E86";
@@ -693,6 +732,8 @@ export declare const kit: {
693
732
  readonly "blocker.exec.hint": "\u786E\u8BA4 opencli \u5DF2\u5B89\u88C5\u4E14\u5728 PATH \u91CC\uFF08which opencli\uFF09\u3002";
694
733
  readonly "blocker.unknown.title": "\u51FA\u4E86\u70B9\u95EE\u9898";
695
734
  readonly "panels.reading": "\u6B63\u5728\u8BFB\u53D6\u9762\u677F\u914D\u7F6E\u2026";
735
+ readonly "panels.cardBroken": "\u8FD9\u4E2A\u6A21\u5757\u8D77\u4E0D\u6765\uFF1A{unit}\uFF08{reason}\uFF09";
736
+ readonly "panels.cardRetry": "\u91CD\u8BD5";
696
737
  readonly "panels.empty": "\u9762\u677F\u91CC\u8FD8\u6CA1\u6709\u6A21\u5757";
697
738
  readonly "panels.emptyHint": "\u4E5F\u53EF\u4EE5\u76F4\u63A5\u8DDF agent \u8BF4\uFF1A\u300C\u628A\u67D0\u4E2A\u6A21\u5757\u52A0\u5230\u9762\u677F\u300D\u3002";
698
739
  readonly "env.title": "\u51C6\u5907\u5DE5\u4F5C\u53F0";
@@ -731,6 +772,8 @@ export declare const kit: {
731
772
  readonly "env.step.warm": "\u9884\u70ED\u7AD9\u70B9\u767B\u5F55\u6001";
732
773
  readonly "env.warm.done": "\u5DF2\u9884\u70ED {n} \u4E2A\u7AD9\u70B9";
733
774
  readonly "env.warm.short": "\u8FD9\u6B21\u6CA1\u70ED\u4E0A \u2014\u2014 \u4E0D\u5F71\u54CD\u7528\uFF0C\u9762\u677F\u7B2C\u4E00\u6B21\u8BFB\u53D6\u4F1A\u81EA\u5DF1\u8865";
775
+ readonly "env.unit.failed": "\u8FD9\u4E2A\u6A21\u5757\u8D77\u4E0D\u6765";
776
+ readonly "env.unit.failedHint": "\u5B83\u81EA\u5DF1\u88C5\u914D\u65F6\u62A5\u4E86\u9519\uFF0C\u522B\u7684\u6A21\u5757\u4E0D\u53D7\u5F71\u54CD\u3002";
734
777
  readonly "env.unit.missingPlugin": "\u8FD9\u4E2A\u6A21\u5757\u8FD8\u6CA1\u88C5\u597D";
735
778
  readonly "env.unit.missingCommandsHint": "\u66F4\u65B0\u4E4B\u540E\u5C31\u80FD\u7528\u4E86\u3002";
736
779
  readonly "env.unit.unchecked": "\u68C0\u6D4B\u4E0D\u4E86\uFF1A\u62FF\u4E0D\u5230\u6267\u884C\u901A\u9053";
@@ -758,6 +801,7 @@ export declare const kit: {
758
801
  holdBusy(since: number | null, now: number, floorMs: number): apiModule.BusyHold;
759
802
  h: typeof import("react").createElement;
760
803
  Fragment: import("react").ExoticComponent<import("react").FragmentProps>;
804
+ Component: typeof import("react").Component;
761
805
  useState: typeof import("react").useState;
762
806
  useEffect: typeof import("react").useEffect;
763
807
  useLayoutEffect: typeof import("react").useLayoutEffect;
@@ -822,6 +866,8 @@ export declare const kit: {
822
866
  ApprovalDetail(props: apiModule.ApprovalDetailProps): JSX.Element | null;
823
867
  ApprovalPlan({ rows, hint, warn, children }: apiModule.ApprovalPlanProps): JSX.Element;
824
868
  Card({ t, title, refreshing, onRefresh, meta, head, children }: apiModule.CardProps): JSX.Element;
869
+ errorReasonOf(error: unknown): string;
870
+ CardBoundary: typeof apiModule.CardBoundary;
825
871
  CardHead({ t, title, meta, refreshing, onRefresh, gear, gearOpen, onToggleGear, platformHref, platform, platformTitle, }: apiModule.CardHeadProps): JSX.Element;
826
872
  ChoiceGroup({ label, name, value, options, disabled, onChange }: apiModule.ChoiceGroupProps): JSX.Element;
827
873
  LongTaskRow(props: apiModule.LongTaskRowProps): JSX.Element;
@@ -904,6 +950,20 @@ export declare const kit: {
904
950
  readonly "project.none": "\u672A\u9009\u62E9\u9879\u76EE";
905
951
  readonly "project.empty": "\u8FD8\u6CA1\u6709\u9879\u76EE\u3002\u7528\u4E0B\u9762\u7684\u300C\u6DFB\u52A0\u9879\u76EE\u300D\u9009\u4E00\u4E2A\u76EE\u5F55\u3002";
906
952
  readonly "project.add": "\u6DFB\u52A0\u9879\u76EE\u2026";
953
+ readonly "project.search.label": "\u641C\u7D22\u5DE5\u4F5C\u533A";
954
+ readonly "project.search.placeholder": "\u641C\u7D22\u5DE5\u4F5C\u533A\uFF08\u76EE\u5F55\u540D / \u4E2D\u6587\u540D / \u8DEF\u5F84\uFF09";
955
+ readonly "project.search.empty": "\u6CA1\u6709\u5339\u914D\u300C{query}\u300D\u7684\u5DE5\u4F5C\u533A\u3002";
956
+ readonly "project.rename.row": "\u6539\u300C{name}\u300D\u7684\u4E2D\u6587\u540D";
957
+ readonly "project.rename.current": "\u6539\u5F53\u524D\u5DE5\u4F5C\u533A\u7684\u4E2D\u6587\u540D\u2026";
958
+ readonly "project.rename.title": "\u7ED9\u300C{name}\u300D\u914D\u4E00\u4E2A\u4E2D\u6587\u540D";
959
+ readonly "project.rename.description": "\u663E\u793A\u5728\u76EE\u5F55\u540D\u540E\u9762\u3002\u6539\u7684\u662F\u5DE5\u4F5C\u533A\u672C\u8EAB\u7684\u540D\u5B57\u3002";
960
+ readonly "project.rename.field": "\u4E2D\u6587\u540D";
961
+ readonly "project.rename.placeholder": "\u4F8B\u5982\uFF1A\u5DE5\u4F5C\u53F0\u5916\u58F3";
962
+ readonly "project.rename.hint": "\u7559\u7A7A = \u53EA\u663E\u793A\u76EE\u5F55\u540D";
963
+ readonly "project.rename.save": "\u4FDD\u5B58";
964
+ readonly "project.rename.saving": "\u4FDD\u5B58\u4E2D\u2026";
965
+ readonly "project.rename.cancel": "\u53D6\u6D88";
966
+ readonly "project.rename.failed": "\u6539\u540D\u5931\u8D25\u4E86\uFF0C\u518D\u8BD5\u4E00\u6B21\u3002";
907
967
  readonly "session.new": "\u65B0\u4F1A\u8BDD";
908
968
  readonly "session.new.label": "\u5728\u5F53\u524D\u9879\u76EE\u65B0\u5EFA\u4F1A\u8BDD";
909
969
  readonly "session.empty": "\u8FD9\u4E2A\u9879\u76EE\u8FD8\u6CA1\u6709\u4F1A\u8BDD\u3002";
@@ -932,6 +992,7 @@ export declare const kit: {
932
992
  readonly "panels.dragHint": "\u62D6\u52A8\u8C03\u6574\u987A\u5E8F";
933
993
  readonly "panels.unknownStep": "\u8FD9\u4E00\u5C42\u6CA1\u6709\u5957\u4EF6\u63D0\u4F9B";
934
994
  readonly "panels.labelWithHint": "{label}\uFF08{hint}\uFF09";
995
+ readonly "panels.dep.failed": "\u26A0 \u8D77\u4E0D\u6765";
935
996
  readonly "panels.dep.missingPlugin": "\u26A0 \u8FD8\u6CA1\u88C5\u597D";
936
997
  readonly "panels.dep.missingCommands": "\u26A0 \u9700\u8981\u66F4\u65B0";
937
998
  readonly "panels.dep.unchecked": "\u26A0 \u68C0\u6D4B\u4E0D\u4E86";
@@ -1125,6 +1186,8 @@ export declare const kit: {
1125
1186
  readonly "blocker.exec.hint": "\u786E\u8BA4 opencli \u5DF2\u5B89\u88C5\u4E14\u5728 PATH \u91CC\uFF08which opencli\uFF09\u3002";
1126
1187
  readonly "blocker.unknown.title": "\u51FA\u4E86\u70B9\u95EE\u9898";
1127
1188
  readonly "panels.reading": "\u6B63\u5728\u8BFB\u53D6\u9762\u677F\u914D\u7F6E\u2026";
1189
+ readonly "panels.cardBroken": "\u8FD9\u4E2A\u6A21\u5757\u8D77\u4E0D\u6765\uFF1A{unit}\uFF08{reason}\uFF09";
1190
+ readonly "panels.cardRetry": "\u91CD\u8BD5";
1128
1191
  readonly "panels.empty": "\u9762\u677F\u91CC\u8FD8\u6CA1\u6709\u6A21\u5757";
1129
1192
  readonly "panels.emptyHint": "\u4E5F\u53EF\u4EE5\u76F4\u63A5\u8DDF agent \u8BF4\uFF1A\u300C\u628A\u67D0\u4E2A\u6A21\u5757\u52A0\u5230\u9762\u677F\u300D\u3002";
1130
1193
  readonly "env.title": "\u51C6\u5907\u5DE5\u4F5C\u53F0";
@@ -1163,6 +1226,8 @@ export declare const kit: {
1163
1226
  readonly "env.step.warm": "\u9884\u70ED\u7AD9\u70B9\u767B\u5F55\u6001";
1164
1227
  readonly "env.warm.done": "\u5DF2\u9884\u70ED {n} \u4E2A\u7AD9\u70B9";
1165
1228
  readonly "env.warm.short": "\u8FD9\u6B21\u6CA1\u70ED\u4E0A \u2014\u2014 \u4E0D\u5F71\u54CD\u7528\uFF0C\u9762\u677F\u7B2C\u4E00\u6B21\u8BFB\u53D6\u4F1A\u81EA\u5DF1\u8865";
1229
+ readonly "env.unit.failed": "\u8FD9\u4E2A\u6A21\u5757\u8D77\u4E0D\u6765";
1230
+ readonly "env.unit.failedHint": "\u5B83\u81EA\u5DF1\u88C5\u914D\u65F6\u62A5\u4E86\u9519\uFF0C\u522B\u7684\u6A21\u5757\u4E0D\u53D7\u5F71\u54CD\u3002";
1166
1231
  readonly "env.unit.missingPlugin": "\u8FD9\u4E2A\u6A21\u5757\u8FD8\u6CA1\u88C5\u597D";
1167
1232
  readonly "env.unit.missingCommandsHint": "\u66F4\u65B0\u4E4B\u540E\u5C31\u80FD\u7528\u4E86\u3002";
1168
1233
  readonly "env.unit.unchecked": "\u68C0\u6D4B\u4E0D\u4E86\uFF1A\u62FF\u4E0D\u5230\u6267\u884C\u901A\u9053";
@@ -1185,9 +1250,10 @@ export declare const kit: {
1185
1250
  readonly "panel.conversation": "\u5BF9\u8BDD";
1186
1251
  readonly "panels.label": "\u5168\u5C40\u9762\u677F";
1187
1252
  };
1188
- en: Record<"time.now" | "time.minutes" | "time.hours" | "time.days" | "blocker.retry" | "blocker.copy" | "blocker.unknown.title" | "blocker.login.go" | "blocker.login.titleGeneric" | "blocker.login.title" | "blocker.login.manual" | "blocker.login.hint" | "blocker.forbidden.open" | "blocker.forbidden.titleGeneric" | "blocker.forbidden.title" | "blocker.forbidden.hint" | "blocker.timeout.hint" | "blocker.exec.hint" | "blocker.fix.install" | "blocker.fix.update" | "blocker.market.open" | "env.unit.missingPlugin" | "env.unit.hint" | "env.unit.missingCommands" | "env.unit.missingCommandsHint" | "env.unit.unchecked" | "env.unit.uncheckedHint" | "brand.name" | "toggle.open" | "toggle.collapse" | "project.label" | "workspace.section" | "project.none" | "project.empty" | "project.add" | "session.new" | "session.new.label" | "session.empty" | "session.noProject" | "session.pinned" | "session.actions" | "status.idle" | "status.running" | "status.waitingApproval" | "status.planReview" | "status.waitingAnswer" | "status.completed" | "status.subagentsRunning.one" | "status.subagentsRunning.other" | "panels.title" | "panels.reset" | "panels.enabled" | "panels.disabled" | "panels.choose" | "panels.failed" | "panels.hintEffect" | "panels.dragHint" | "panels.unknownStep" | "panels.labelWithHint" | "panels.dep.missingPlugin" | "panels.dep.missingCommands" | "panels.dep.unchecked" | "panels.tab.modules" | "panels.tab.market" | "panels.browseMarket" | "panels.noneInstalled" | "panels.noneInstalledHint" | "panels.market.installed" | "panels.market.outdated" | "panels.market.hasNew" | "panels.market.missing" | "panels.market.unchecked" | "panels.market.checking" | "panels.market.sectionInstalled" | "panels.market.sectionPending" | "panels.market.sectionShared" | "panels.market.sharedUsedBy" | "panels.market.listSeparator" | "panels.market.sharedMissing" | "panels.market.sharedOutdated" | "panels.market.sharedUnsatisfied" | "panels.market.sharedOk" | "panels.market.versionArrow" | "panels.market.lead" | "panels.market.install" | "panels.market.update" | "panels.market.uninstall" | "panels.market.uninstallLabel" | "panels.market.installing" | "panels.market.updating" | "panels.market.uninstalling" | "panels.market.confirmUninstallTitle" | "panels.market.confirmUninstallDetail" | "panels.market.confirmUninstallAck" | "panels.market.confirmYes" | "panels.market.confirmNo" | "panels.market.failed" | "panels.market.needEnv" | "panels.market.noSource" | "panels.market.badSource" | "panels.market.empty" | "panels.market.installedSection" | "panels.market.moduleOutdated" | "panels.market.moduleRestartHint" | "panels.market.restartNeeded" | "panels.market.foot" | "panels.market.recheck" | "panels.market.checkUpdates" | "panels.market.checkedAt" | "panels.market.justNow" | "panels.market.minutesAgo" | "panels.market.hoursAgo" | "panels.market.add.description" | "panels.market.add.specPlaceholder" | "panels.market.add.guideToggle" | "panels.market.add.guideHide" | "panels.market.add.guideIdTitle" | "panels.market.add.guideIdExample" | "panels.market.add.guideIdHint" | "panels.market.add.guideGitTitle" | "panels.market.add.guideGitExample" | "panels.market.add.guideGitHint" | "panels.market.add.guidePathTitle" | "panels.market.add.guidePathExample" | "panels.market.add.guidePathHint" | "panels.market.add.guideExampleLabel" | "panels.market.add.guideFill" | "panels.market.add.guideSafety" | "panels.market.add.registryLegend" | "panels.market.add.registryOfficial" | "panels.market.add.registryMirror" | "panels.market.add.registryWithHost" | "panels.market.add.registryToggle" | "panels.market.add.installVersion" | "panels.market.add.registryDefault" | "panels.market.add.registryCustom" | "panels.market.add.registryCustomPlaceholder" | "panels.market.add.registryCustomHint" | "panels.market.add.registryCustomInvalid" | "panels.market.add.run" | "panels.market.add.edit" | "panels.market.add.changeRegistry" | "panels.market.add.installingTitle" | "panels.market.add.installedTitle" | "panels.market.add.failedTitle" | "panels.market.add.cancelledTitle" | "panels.market.add.failureNetworkHost" | "panels.market.add.problemInvalid" | "panels.market.add.problemInstalled" | "panels.market.add.problemNotFound" | "panels.market.add.problemNotPackage" | "panels.market.add.problemNotBundle" | "panels.market.add.problemNetwork" | "panels.market.add.problemUnknown" | "panels.market.add.failureNetwork" | "panels.market.add.failureNotFound" | "panels.market.add.failureNoMatchingVersion" | "panels.market.add.failureDiskFull" | "panels.market.add.failurePermission" | "panels.market.add.failureBuildBlocked" | "panels.market.add.failureIntegrity" | "panels.market.add.failureTimeout" | "panels.market.add.failurePnpmMissing" | "panels.market.add.failureGeneric" | "panels.market.add.approveTitle" | "panels.market.add.approveCaution" | "panels.market.add.approveRun" | "panels.market.add.restart" | "panels.market.add.tookEffect" | "panels.market.add.details" | "panels.market.add.open" | "panels.market.add.title" | "panels.market.add.intro" | "panels.market.add.specLabel" | "panels.market.add.specHint" | "panels.market.add.exampleTitle" | "panels.market.add.exampleFill" | "panels.market.add.registryLabel" | "panels.market.add.registryProfile" | "panels.market.add.registryPnpm" | "panels.market.add.check" | "panels.market.add.checking" | "panels.market.add.change" | "panels.market.add.previewTitle" | "panels.market.add.fieldName" | "panels.market.add.fieldVersion" | "panels.market.add.fieldDescription" | "panels.market.add.fieldSource" | "panels.market.add.install" | "panels.market.add.installing" | "panels.market.add.cancel" | "panels.market.add.close" | "panels.market.add.retry" | "panels.market.add.changeSource" | "panels.market.add.approveBuilds" | "panels.market.add.approveHint" | "panels.market.add.doneApplied" | "panels.market.add.doneRestart" | "panels.market.add.cancelled" | "panels.market.add.failed" | "panels.market.add.removed" | "panels.market.add.supplyPending" | "panels.market.add.supplyFailed" | "panels.market.add.notModule" | "panels.market.add.removedRestart" | "panels.market.add.remove" | "panels.market.add.problem.invalidSpec" | "panels.market.add.problem.alreadyInstalled" | "panels.market.add.problem.notFound" | "panels.market.add.problem.notAPackage" | "panels.market.add.problem.notABundle" | "panels.market.add.problem.network" | "panels.market.add.problem.unknown" | "panels.market.add.reason.invalidSpec" | "panels.market.add.reason.incompatible" | "panels.market.add.reason.notBundle" | "panels.market.add.reason.notRemovable" | "panels.market.add.reason.bundleInUse" | "panels.market.add.reason.stopProfile" | "panels.market.add.reason.staleApproval" | "panels.market.add.reason.operationError" | "panels.market.add.reason.buildBlocked" | "panels.market.add.reason.pnpmMissing" | "panels.market.add.reason.noMatchingVersion" | "panels.market.add.reason.diskFull" | "panels.market.add.reason.permission" | "panels.market.add.reason.integrity" | "panels.market.add.reason.timeout" | "panels.market.add.reason.network" | "panels.market.add.reason.notFound" | "panels.market.add.reason.unknown" | "blocker.fix.running" | "blocker.fix.failed" | "blocker.retry.running" | "panels.reading" | "panels.empty" | "panels.emptyHint" | "env.title" | "env.checking" | "env.installing" | "env.failed" | "env.elapsed" | "env.stepFailed.install" | "env.stepFailed.path" | "env.stepFailed.shell" | "env.bridge.ok" | "env.bridge.short" | "env.bridge.why" | "env.bridge.daemon" | "env.bridge.extension" | "env.bridge.extensionLink" | "env.bridge.profile" | "env.bridge.stale" | "env.bridge.unknown" | "env.fix.title" | "env.fix.why" | "env.fix.whyPath" | "env.fix.whyShell" | "env.fix.step" | "env.fix.stepPath" | "env.fix.stepShell" | "env.fix.permission" | "env.fix.network" | "env.fix.details" | "env.retry" | "env.copyCommand" | "env.copied" | "env.step.opencli" | "env.step.codingPlugin" | "env.step.bridge" | "env.step.warm" | "env.warm.done" | "env.warm.short" | "rightbar.label" | "rightbar.expand" | "rightbar.collapse" | "rightbar.column.label" | "rightbar.column.workbench" | "rightbar.column.dsh" | "rightbar.refresh" | "rightbar.refreshing" | "rightbar.updatedAt" | "rightbar.noProject" | "coding.notARepo.title" | "error.unknown" | "board.title" | "panel.conversation" | "panels.label", string>;
1253
+ en: Record<"time.now" | "time.minutes" | "time.hours" | "time.days" | "blocker.retry" | "blocker.copy" | "blocker.unknown.title" | "blocker.login.go" | "blocker.login.titleGeneric" | "blocker.login.title" | "blocker.login.manual" | "blocker.login.hint" | "blocker.forbidden.open" | "blocker.forbidden.titleGeneric" | "blocker.forbidden.title" | "blocker.forbidden.hint" | "blocker.timeout.hint" | "blocker.exec.hint" | "blocker.fix.install" | "blocker.fix.update" | "blocker.market.open" | "env.unit.failed" | "env.unit.failedHint" | "env.unit.missingPlugin" | "env.unit.hint" | "env.unit.missingCommands" | "env.unit.missingCommandsHint" | "env.unit.unchecked" | "env.unit.uncheckedHint" | "brand.name" | "toggle.open" | "toggle.collapse" | "project.label" | "workspace.section" | "project.none" | "project.empty" | "project.add" | "project.search.label" | "project.search.placeholder" | "project.search.empty" | "project.rename.row" | "project.rename.current" | "project.rename.title" | "project.rename.description" | "project.rename.field" | "project.rename.placeholder" | "project.rename.hint" | "project.rename.save" | "project.rename.saving" | "project.rename.cancel" | "project.rename.failed" | "session.new" | "session.new.label" | "session.empty" | "session.noProject" | "session.pinned" | "session.actions" | "status.idle" | "status.running" | "status.waitingApproval" | "status.planReview" | "status.waitingAnswer" | "status.completed" | "status.subagentsRunning.one" | "status.subagentsRunning.other" | "panels.title" | "panels.reset" | "panels.enabled" | "panels.disabled" | "panels.choose" | "panels.failed" | "panels.hintEffect" | "panels.dragHint" | "panels.unknownStep" | "panels.labelWithHint" | "panels.dep.failed" | "panels.dep.missingPlugin" | "panels.dep.missingCommands" | "panels.dep.unchecked" | "panels.tab.modules" | "panels.tab.market" | "panels.browseMarket" | "panels.noneInstalled" | "panels.noneInstalledHint" | "panels.market.installed" | "panels.market.outdated" | "panels.market.hasNew" | "panels.market.missing" | "panels.market.unchecked" | "panels.market.checking" | "panels.market.sectionInstalled" | "panels.market.sectionPending" | "panels.market.sectionShared" | "panels.market.sharedUsedBy" | "panels.market.listSeparator" | "panels.market.sharedMissing" | "panels.market.sharedOutdated" | "panels.market.sharedUnsatisfied" | "panels.market.sharedOk" | "panels.market.versionArrow" | "panels.market.lead" | "panels.market.install" | "panels.market.update" | "panels.market.uninstall" | "panels.market.uninstallLabel" | "panels.market.installing" | "panels.market.updating" | "panels.market.uninstalling" | "panels.market.confirmUninstallTitle" | "panels.market.confirmUninstallDetail" | "panels.market.confirmUninstallAck" | "panels.market.confirmYes" | "panels.market.confirmNo" | "panels.market.failed" | "panels.market.needEnv" | "panels.market.noSource" | "panels.market.badSource" | "panels.market.empty" | "panels.market.installedSection" | "panels.market.moduleOutdated" | "panels.market.moduleRestartHint" | "panels.market.restartNeeded" | "panels.market.foot" | "panels.market.recheck" | "panels.market.checkUpdates" | "panels.market.checkedAt" | "panels.market.justNow" | "panels.market.minutesAgo" | "panels.market.hoursAgo" | "panels.market.add.description" | "panels.market.add.specPlaceholder" | "panels.market.add.guideToggle" | "panels.market.add.guideHide" | "panels.market.add.guideIdTitle" | "panels.market.add.guideIdExample" | "panels.market.add.guideIdHint" | "panels.market.add.guideGitTitle" | "panels.market.add.guideGitExample" | "panels.market.add.guideGitHint" | "panels.market.add.guidePathTitle" | "panels.market.add.guidePathExample" | "panels.market.add.guidePathHint" | "panels.market.add.guideExampleLabel" | "panels.market.add.guideFill" | "panels.market.add.guideSafety" | "panels.market.add.registryLegend" | "panels.market.add.registryOfficial" | "panels.market.add.registryMirror" | "panels.market.add.registryWithHost" | "panels.market.add.registryToggle" | "panels.market.add.installVersion" | "panels.market.add.registryDefault" | "panels.market.add.registryCustom" | "panels.market.add.registryCustomPlaceholder" | "panels.market.add.registryCustomHint" | "panels.market.add.registryCustomInvalid" | "panels.market.add.run" | "panels.market.add.edit" | "panels.market.add.changeRegistry" | "panels.market.add.installingTitle" | "panels.market.add.installedTitle" | "panels.market.add.failedTitle" | "panels.market.add.cancelledTitle" | "panels.market.add.failureNetworkHost" | "panels.market.add.problemInvalid" | "panels.market.add.problemInstalled" | "panels.market.add.problemNotFound" | "panels.market.add.problemNotPackage" | "panels.market.add.problemNotBundle" | "panels.market.add.problemNetwork" | "panels.market.add.problemUnknown" | "panels.market.add.failureNetwork" | "panels.market.add.failureNotFound" | "panels.market.add.failureNoMatchingVersion" | "panels.market.add.failureDiskFull" | "panels.market.add.failurePermission" | "panels.market.add.failureBuildBlocked" | "panels.market.add.failureIntegrity" | "panels.market.add.failureTimeout" | "panels.market.add.failurePnpmMissing" | "panels.market.add.failureGeneric" | "panels.market.add.approveTitle" | "panels.market.add.approveCaution" | "panels.market.add.approveRun" | "panels.market.add.restart" | "panels.market.add.tookEffect" | "panels.market.add.details" | "panels.market.add.open" | "panels.market.add.title" | "panels.market.add.intro" | "panels.market.add.specLabel" | "panels.market.add.specHint" | "panels.market.add.exampleTitle" | "panels.market.add.exampleFill" | "panels.market.add.registryLabel" | "panels.market.add.registryProfile" | "panels.market.add.registryPnpm" | "panels.market.add.check" | "panels.market.add.checking" | "panels.market.add.change" | "panels.market.add.previewTitle" | "panels.market.add.fieldName" | "panels.market.add.fieldVersion" | "panels.market.add.fieldDescription" | "panels.market.add.fieldSource" | "panels.market.add.install" | "panels.market.add.installing" | "panels.market.add.cancel" | "panels.market.add.close" | "panels.market.add.retry" | "panels.market.add.changeSource" | "panels.market.add.approveBuilds" | "panels.market.add.approveHint" | "panels.market.add.doneApplied" | "panels.market.add.doneRestart" | "panels.market.add.cancelled" | "panels.market.add.failed" | "panels.market.add.removed" | "panels.market.add.supplyPending" | "panels.market.add.supplyFailed" | "panels.market.add.notModule" | "panels.market.add.removedRestart" | "panels.market.add.remove" | "panels.market.add.problem.invalidSpec" | "panels.market.add.problem.alreadyInstalled" | "panels.market.add.problem.notFound" | "panels.market.add.problem.notAPackage" | "panels.market.add.problem.notABundle" | "panels.market.add.problem.network" | "panels.market.add.problem.unknown" | "panels.market.add.reason.invalidSpec" | "panels.market.add.reason.incompatible" | "panels.market.add.reason.notBundle" | "panels.market.add.reason.notRemovable" | "panels.market.add.reason.bundleInUse" | "panels.market.add.reason.stopProfile" | "panels.market.add.reason.staleApproval" | "panels.market.add.reason.operationError" | "panels.market.add.reason.buildBlocked" | "panels.market.add.reason.pnpmMissing" | "panels.market.add.reason.noMatchingVersion" | "panels.market.add.reason.diskFull" | "panels.market.add.reason.permission" | "panels.market.add.reason.integrity" | "panels.market.add.reason.timeout" | "panels.market.add.reason.network" | "panels.market.add.reason.notFound" | "panels.market.add.reason.unknown" | "blocker.fix.running" | "blocker.fix.failed" | "blocker.retry.running" | "panels.reading" | "panels.cardBroken" | "panels.cardRetry" | "panels.empty" | "panels.emptyHint" | "env.title" | "env.checking" | "env.installing" | "env.failed" | "env.elapsed" | "env.stepFailed.install" | "env.stepFailed.path" | "env.stepFailed.shell" | "env.bridge.ok" | "env.bridge.short" | "env.bridge.why" | "env.bridge.daemon" | "env.bridge.extension" | "env.bridge.extensionLink" | "env.bridge.profile" | "env.bridge.stale" | "env.bridge.unknown" | "env.fix.title" | "env.fix.why" | "env.fix.whyPath" | "env.fix.whyShell" | "env.fix.step" | "env.fix.stepPath" | "env.fix.stepShell" | "env.fix.permission" | "env.fix.network" | "env.fix.details" | "env.retry" | "env.copyCommand" | "env.copied" | "env.step.opencli" | "env.step.codingPlugin" | "env.step.bridge" | "env.step.warm" | "env.warm.done" | "env.warm.short" | "rightbar.label" | "rightbar.expand" | "rightbar.collapse" | "rightbar.column.label" | "rightbar.column.workbench" | "rightbar.column.dsh" | "rightbar.refresh" | "rightbar.refreshing" | "rightbar.updatedAt" | "rightbar.noProject" | "coding.notARepo.title" | "error.unknown" | "board.title" | "panel.conversation" | "panels.label", string>;
1189
1254
  };
1190
- mergeMessages(base: apiModule.Dictionaries, contributions: readonly apiModule.MessagesContribution[]): apiModule.Dictionaries;
1255
+ mergeMessages(base: apiModule.Dictionaries, contributions: readonly MessagesContribution[]): apiModule.Dictionaries;
1256
+ mergeMessagesSkipping(base: apiModule.Dictionaries, contributions: readonly MessagesContribution[]): apiModule.MessagesMerge;
1191
1257
  zh: {
1192
1258
  readonly "brand.name": "\u5DE5\u4F5C\u53F0";
1193
1259
  readonly "toggle.open": "\u6253\u5F00\u4FA7\u8FB9\u680F";
@@ -1197,6 +1263,20 @@ export declare const kit: {
1197
1263
  readonly "project.none": "\u672A\u9009\u62E9\u9879\u76EE";
1198
1264
  readonly "project.empty": "\u8FD8\u6CA1\u6709\u9879\u76EE\u3002\u7528\u4E0B\u9762\u7684\u300C\u6DFB\u52A0\u9879\u76EE\u300D\u9009\u4E00\u4E2A\u76EE\u5F55\u3002";
1199
1265
  readonly "project.add": "\u6DFB\u52A0\u9879\u76EE\u2026";
1266
+ readonly "project.search.label": "\u641C\u7D22\u5DE5\u4F5C\u533A";
1267
+ readonly "project.search.placeholder": "\u641C\u7D22\u5DE5\u4F5C\u533A\uFF08\u76EE\u5F55\u540D / \u4E2D\u6587\u540D / \u8DEF\u5F84\uFF09";
1268
+ readonly "project.search.empty": "\u6CA1\u6709\u5339\u914D\u300C{query}\u300D\u7684\u5DE5\u4F5C\u533A\u3002";
1269
+ readonly "project.rename.row": "\u6539\u300C{name}\u300D\u7684\u4E2D\u6587\u540D";
1270
+ readonly "project.rename.current": "\u6539\u5F53\u524D\u5DE5\u4F5C\u533A\u7684\u4E2D\u6587\u540D\u2026";
1271
+ readonly "project.rename.title": "\u7ED9\u300C{name}\u300D\u914D\u4E00\u4E2A\u4E2D\u6587\u540D";
1272
+ readonly "project.rename.description": "\u663E\u793A\u5728\u76EE\u5F55\u540D\u540E\u9762\u3002\u6539\u7684\u662F\u5DE5\u4F5C\u533A\u672C\u8EAB\u7684\u540D\u5B57\u3002";
1273
+ readonly "project.rename.field": "\u4E2D\u6587\u540D";
1274
+ readonly "project.rename.placeholder": "\u4F8B\u5982\uFF1A\u5DE5\u4F5C\u53F0\u5916\u58F3";
1275
+ readonly "project.rename.hint": "\u7559\u7A7A = \u53EA\u663E\u793A\u76EE\u5F55\u540D";
1276
+ readonly "project.rename.save": "\u4FDD\u5B58";
1277
+ readonly "project.rename.saving": "\u4FDD\u5B58\u4E2D\u2026";
1278
+ readonly "project.rename.cancel": "\u53D6\u6D88";
1279
+ readonly "project.rename.failed": "\u6539\u540D\u5931\u8D25\u4E86\uFF0C\u518D\u8BD5\u4E00\u6B21\u3002";
1200
1280
  readonly "session.new": "\u65B0\u4F1A\u8BDD";
1201
1281
  readonly "session.new.label": "\u5728\u5F53\u524D\u9879\u76EE\u65B0\u5EFA\u4F1A\u8BDD";
1202
1282
  readonly "session.empty": "\u8FD9\u4E2A\u9879\u76EE\u8FD8\u6CA1\u6709\u4F1A\u8BDD\u3002";
@@ -1225,6 +1305,7 @@ export declare const kit: {
1225
1305
  readonly "panels.dragHint": "\u62D6\u52A8\u8C03\u6574\u987A\u5E8F";
1226
1306
  readonly "panels.unknownStep": "\u8FD9\u4E00\u5C42\u6CA1\u6709\u5957\u4EF6\u63D0\u4F9B";
1227
1307
  readonly "panels.labelWithHint": "{label}\uFF08{hint}\uFF09";
1308
+ readonly "panels.dep.failed": "\u26A0 \u8D77\u4E0D\u6765";
1228
1309
  readonly "panels.dep.missingPlugin": "\u26A0 \u8FD8\u6CA1\u88C5\u597D";
1229
1310
  readonly "panels.dep.missingCommands": "\u26A0 \u9700\u8981\u66F4\u65B0";
1230
1311
  readonly "panels.dep.unchecked": "\u26A0 \u68C0\u6D4B\u4E0D\u4E86";
@@ -1418,6 +1499,8 @@ export declare const kit: {
1418
1499
  readonly "blocker.exec.hint": "\u786E\u8BA4 opencli \u5DF2\u5B89\u88C5\u4E14\u5728 PATH \u91CC\uFF08which opencli\uFF09\u3002";
1419
1500
  readonly "blocker.unknown.title": "\u51FA\u4E86\u70B9\u95EE\u9898";
1420
1501
  readonly "panels.reading": "\u6B63\u5728\u8BFB\u53D6\u9762\u677F\u914D\u7F6E\u2026";
1502
+ readonly "panels.cardBroken": "\u8FD9\u4E2A\u6A21\u5757\u8D77\u4E0D\u6765\uFF1A{unit}\uFF08{reason}\uFF09";
1503
+ readonly "panels.cardRetry": "\u91CD\u8BD5";
1421
1504
  readonly "panels.empty": "\u9762\u677F\u91CC\u8FD8\u6CA1\u6709\u6A21\u5757";
1422
1505
  readonly "panels.emptyHint": "\u4E5F\u53EF\u4EE5\u76F4\u63A5\u8DDF agent \u8BF4\uFF1A\u300C\u628A\u67D0\u4E2A\u6A21\u5757\u52A0\u5230\u9762\u677F\u300D\u3002";
1423
1506
  readonly "env.title": "\u51C6\u5907\u5DE5\u4F5C\u53F0";
@@ -1456,6 +1539,8 @@ export declare const kit: {
1456
1539
  readonly "env.step.warm": "\u9884\u70ED\u7AD9\u70B9\u767B\u5F55\u6001";
1457
1540
  readonly "env.warm.done": "\u5DF2\u9884\u70ED {n} \u4E2A\u7AD9\u70B9";
1458
1541
  readonly "env.warm.short": "\u8FD9\u6B21\u6CA1\u70ED\u4E0A \u2014\u2014 \u4E0D\u5F71\u54CD\u7528\uFF0C\u9762\u677F\u7B2C\u4E00\u6B21\u8BFB\u53D6\u4F1A\u81EA\u5DF1\u8865";
1542
+ readonly "env.unit.failed": "\u8FD9\u4E2A\u6A21\u5757\u8D77\u4E0D\u6765";
1543
+ readonly "env.unit.failedHint": "\u5B83\u81EA\u5DF1\u88C5\u914D\u65F6\u62A5\u4E86\u9519\uFF0C\u522B\u7684\u6A21\u5757\u4E0D\u53D7\u5F71\u54CD\u3002";
1459
1544
  readonly "env.unit.missingPlugin": "\u8FD9\u4E2A\u6A21\u5757\u8FD8\u6CA1\u88C5\u597D";
1460
1545
  readonly "env.unit.missingCommandsHint": "\u66F4\u65B0\u4E4B\u540E\u5C31\u80FD\u7528\u4E86\u3002";
1461
1546
  readonly "env.unit.unchecked": "\u68C0\u6D4B\u4E0D\u4E86\uFF1A\u62FF\u4E0D\u5230\u6267\u884C\u901A\u9053";
@@ -1483,6 +1568,7 @@ export declare const kit: {
1483
1568
  holdBusy(since: number | null, now: number, floorMs: number): apiModule.BusyHold;
1484
1569
  h: typeof import("react").createElement;
1485
1570
  Fragment: import("react").ExoticComponent<import("react").FragmentProps>;
1571
+ Component: typeof import("react").Component;
1486
1572
  useState: typeof import("react").useState;
1487
1573
  useEffect: typeof import("react").useEffect;
1488
1574
  useLayoutEffect: typeof import("react").useLayoutEffect;
@@ -1542,6 +1628,8 @@ export declare const kit: {
1542
1628
  ApprovalDetail(props: apiModule.ApprovalDetailProps): JSX.Element | null;
1543
1629
  ApprovalPlan({ rows, hint, warn, children }: apiModule.ApprovalPlanProps): JSX.Element;
1544
1630
  Card({ t, title, refreshing, onRefresh, meta, head, children }: apiModule.CardProps): JSX.Element;
1631
+ errorReasonOf(error: unknown): string;
1632
+ CardBoundary: typeof apiModule.CardBoundary;
1545
1633
  CardHead({ t, title, meta, refreshing, onRefresh, gear, gearOpen, onToggleGear, platformHref, platform, platformTitle, }: apiModule.CardHeadProps): JSX.Element;
1546
1634
  ChoiceGroup({ label, name, value, options, disabled, onChange }: apiModule.ChoiceGroupProps): JSX.Element;
1547
1635
  LongTaskRow(props: apiModule.LongTaskRowProps): JSX.Element;
@@ -1624,6 +1712,20 @@ export declare const kit: {
1624
1712
  readonly "project.none": "\u672A\u9009\u62E9\u9879\u76EE";
1625
1713
  readonly "project.empty": "\u8FD8\u6CA1\u6709\u9879\u76EE\u3002\u7528\u4E0B\u9762\u7684\u300C\u6DFB\u52A0\u9879\u76EE\u300D\u9009\u4E00\u4E2A\u76EE\u5F55\u3002";
1626
1714
  readonly "project.add": "\u6DFB\u52A0\u9879\u76EE\u2026";
1715
+ readonly "project.search.label": "\u641C\u7D22\u5DE5\u4F5C\u533A";
1716
+ readonly "project.search.placeholder": "\u641C\u7D22\u5DE5\u4F5C\u533A\uFF08\u76EE\u5F55\u540D / \u4E2D\u6587\u540D / \u8DEF\u5F84\uFF09";
1717
+ readonly "project.search.empty": "\u6CA1\u6709\u5339\u914D\u300C{query}\u300D\u7684\u5DE5\u4F5C\u533A\u3002";
1718
+ readonly "project.rename.row": "\u6539\u300C{name}\u300D\u7684\u4E2D\u6587\u540D";
1719
+ readonly "project.rename.current": "\u6539\u5F53\u524D\u5DE5\u4F5C\u533A\u7684\u4E2D\u6587\u540D\u2026";
1720
+ readonly "project.rename.title": "\u7ED9\u300C{name}\u300D\u914D\u4E00\u4E2A\u4E2D\u6587\u540D";
1721
+ readonly "project.rename.description": "\u663E\u793A\u5728\u76EE\u5F55\u540D\u540E\u9762\u3002\u6539\u7684\u662F\u5DE5\u4F5C\u533A\u672C\u8EAB\u7684\u540D\u5B57\u3002";
1722
+ readonly "project.rename.field": "\u4E2D\u6587\u540D";
1723
+ readonly "project.rename.placeholder": "\u4F8B\u5982\uFF1A\u5DE5\u4F5C\u53F0\u5916\u58F3";
1724
+ readonly "project.rename.hint": "\u7559\u7A7A = \u53EA\u663E\u793A\u76EE\u5F55\u540D";
1725
+ readonly "project.rename.save": "\u4FDD\u5B58";
1726
+ readonly "project.rename.saving": "\u4FDD\u5B58\u4E2D\u2026";
1727
+ readonly "project.rename.cancel": "\u53D6\u6D88";
1728
+ readonly "project.rename.failed": "\u6539\u540D\u5931\u8D25\u4E86\uFF0C\u518D\u8BD5\u4E00\u6B21\u3002";
1627
1729
  readonly "session.new": "\u65B0\u4F1A\u8BDD";
1628
1730
  readonly "session.new.label": "\u5728\u5F53\u524D\u9879\u76EE\u65B0\u5EFA\u4F1A\u8BDD";
1629
1731
  readonly "session.empty": "\u8FD9\u4E2A\u9879\u76EE\u8FD8\u6CA1\u6709\u4F1A\u8BDD\u3002";
@@ -1652,6 +1754,7 @@ export declare const kit: {
1652
1754
  readonly "panels.dragHint": "\u62D6\u52A8\u8C03\u6574\u987A\u5E8F";
1653
1755
  readonly "panels.unknownStep": "\u8FD9\u4E00\u5C42\u6CA1\u6709\u5957\u4EF6\u63D0\u4F9B";
1654
1756
  readonly "panels.labelWithHint": "{label}\uFF08{hint}\uFF09";
1757
+ readonly "panels.dep.failed": "\u26A0 \u8D77\u4E0D\u6765";
1655
1758
  readonly "panels.dep.missingPlugin": "\u26A0 \u8FD8\u6CA1\u88C5\u597D";
1656
1759
  readonly "panels.dep.missingCommands": "\u26A0 \u9700\u8981\u66F4\u65B0";
1657
1760
  readonly "panels.dep.unchecked": "\u26A0 \u68C0\u6D4B\u4E0D\u4E86";
@@ -1845,6 +1948,8 @@ export declare const kit: {
1845
1948
  readonly "blocker.exec.hint": "\u786E\u8BA4 opencli \u5DF2\u5B89\u88C5\u4E14\u5728 PATH \u91CC\uFF08which opencli\uFF09\u3002";
1846
1949
  readonly "blocker.unknown.title": "\u51FA\u4E86\u70B9\u95EE\u9898";
1847
1950
  readonly "panels.reading": "\u6B63\u5728\u8BFB\u53D6\u9762\u677F\u914D\u7F6E\u2026";
1951
+ readonly "panels.cardBroken": "\u8FD9\u4E2A\u6A21\u5757\u8D77\u4E0D\u6765\uFF1A{unit}\uFF08{reason}\uFF09";
1952
+ readonly "panels.cardRetry": "\u91CD\u8BD5";
1848
1953
  readonly "panels.empty": "\u9762\u677F\u91CC\u8FD8\u6CA1\u6709\u6A21\u5757";
1849
1954
  readonly "panels.emptyHint": "\u4E5F\u53EF\u4EE5\u76F4\u63A5\u8DDF agent \u8BF4\uFF1A\u300C\u628A\u67D0\u4E2A\u6A21\u5757\u52A0\u5230\u9762\u677F\u300D\u3002";
1850
1955
  readonly "env.title": "\u51C6\u5907\u5DE5\u4F5C\u53F0";
@@ -1883,6 +1988,8 @@ export declare const kit: {
1883
1988
  readonly "env.step.warm": "\u9884\u70ED\u7AD9\u70B9\u767B\u5F55\u6001";
1884
1989
  readonly "env.warm.done": "\u5DF2\u9884\u70ED {n} \u4E2A\u7AD9\u70B9";
1885
1990
  readonly "env.warm.short": "\u8FD9\u6B21\u6CA1\u70ED\u4E0A \u2014\u2014 \u4E0D\u5F71\u54CD\u7528\uFF0C\u9762\u677F\u7B2C\u4E00\u6B21\u8BFB\u53D6\u4F1A\u81EA\u5DF1\u8865";
1991
+ readonly "env.unit.failed": "\u8FD9\u4E2A\u6A21\u5757\u8D77\u4E0D\u6765";
1992
+ readonly "env.unit.failedHint": "\u5B83\u81EA\u5DF1\u88C5\u914D\u65F6\u62A5\u4E86\u9519\uFF0C\u522B\u7684\u6A21\u5757\u4E0D\u53D7\u5F71\u54CD\u3002";
1886
1993
  readonly "env.unit.missingPlugin": "\u8FD9\u4E2A\u6A21\u5757\u8FD8\u6CA1\u88C5\u597D";
1887
1994
  readonly "env.unit.missingCommandsHint": "\u66F4\u65B0\u4E4B\u540E\u5C31\u80FD\u7528\u4E86\u3002";
1888
1995
  readonly "env.unit.unchecked": "\u68C0\u6D4B\u4E0D\u4E86\uFF1A\u62FF\u4E0D\u5230\u6267\u884C\u901A\u9053";
@@ -1905,9 +2012,10 @@ export declare const kit: {
1905
2012
  readonly "panel.conversation": "\u5BF9\u8BDD";
1906
2013
  readonly "panels.label": "\u5168\u5C40\u9762\u677F";
1907
2014
  };
1908
- en: Record<"time.now" | "time.minutes" | "time.hours" | "time.days" | "blocker.retry" | "blocker.copy" | "blocker.unknown.title" | "blocker.login.go" | "blocker.login.titleGeneric" | "blocker.login.title" | "blocker.login.manual" | "blocker.login.hint" | "blocker.forbidden.open" | "blocker.forbidden.titleGeneric" | "blocker.forbidden.title" | "blocker.forbidden.hint" | "blocker.timeout.hint" | "blocker.exec.hint" | "blocker.fix.install" | "blocker.fix.update" | "blocker.market.open" | "env.unit.missingPlugin" | "env.unit.hint" | "env.unit.missingCommands" | "env.unit.missingCommandsHint" | "env.unit.unchecked" | "env.unit.uncheckedHint" | "brand.name" | "toggle.open" | "toggle.collapse" | "project.label" | "workspace.section" | "project.none" | "project.empty" | "project.add" | "session.new" | "session.new.label" | "session.empty" | "session.noProject" | "session.pinned" | "session.actions" | "status.idle" | "status.running" | "status.waitingApproval" | "status.planReview" | "status.waitingAnswer" | "status.completed" | "status.subagentsRunning.one" | "status.subagentsRunning.other" | "panels.title" | "panels.reset" | "panels.enabled" | "panels.disabled" | "panels.choose" | "panels.failed" | "panels.hintEffect" | "panels.dragHint" | "panels.unknownStep" | "panels.labelWithHint" | "panels.dep.missingPlugin" | "panels.dep.missingCommands" | "panels.dep.unchecked" | "panels.tab.modules" | "panels.tab.market" | "panels.browseMarket" | "panels.noneInstalled" | "panels.noneInstalledHint" | "panels.market.installed" | "panels.market.outdated" | "panels.market.hasNew" | "panels.market.missing" | "panels.market.unchecked" | "panels.market.checking" | "panels.market.sectionInstalled" | "panels.market.sectionPending" | "panels.market.sectionShared" | "panels.market.sharedUsedBy" | "panels.market.listSeparator" | "panels.market.sharedMissing" | "panels.market.sharedOutdated" | "panels.market.sharedUnsatisfied" | "panels.market.sharedOk" | "panels.market.versionArrow" | "panels.market.lead" | "panels.market.install" | "panels.market.update" | "panels.market.uninstall" | "panels.market.uninstallLabel" | "panels.market.installing" | "panels.market.updating" | "panels.market.uninstalling" | "panels.market.confirmUninstallTitle" | "panels.market.confirmUninstallDetail" | "panels.market.confirmUninstallAck" | "panels.market.confirmYes" | "panels.market.confirmNo" | "panels.market.failed" | "panels.market.needEnv" | "panels.market.noSource" | "panels.market.badSource" | "panels.market.empty" | "panels.market.installedSection" | "panels.market.moduleOutdated" | "panels.market.moduleRestartHint" | "panels.market.restartNeeded" | "panels.market.foot" | "panels.market.recheck" | "panels.market.checkUpdates" | "panels.market.checkedAt" | "panels.market.justNow" | "panels.market.minutesAgo" | "panels.market.hoursAgo" | "panels.market.add.description" | "panels.market.add.specPlaceholder" | "panels.market.add.guideToggle" | "panels.market.add.guideHide" | "panels.market.add.guideIdTitle" | "panels.market.add.guideIdExample" | "panels.market.add.guideIdHint" | "panels.market.add.guideGitTitle" | "panels.market.add.guideGitExample" | "panels.market.add.guideGitHint" | "panels.market.add.guidePathTitle" | "panels.market.add.guidePathExample" | "panels.market.add.guidePathHint" | "panels.market.add.guideExampleLabel" | "panels.market.add.guideFill" | "panels.market.add.guideSafety" | "panels.market.add.registryLegend" | "panels.market.add.registryOfficial" | "panels.market.add.registryMirror" | "panels.market.add.registryWithHost" | "panels.market.add.registryToggle" | "panels.market.add.installVersion" | "panels.market.add.registryDefault" | "panels.market.add.registryCustom" | "panels.market.add.registryCustomPlaceholder" | "panels.market.add.registryCustomHint" | "panels.market.add.registryCustomInvalid" | "panels.market.add.run" | "panels.market.add.edit" | "panels.market.add.changeRegistry" | "panels.market.add.installingTitle" | "panels.market.add.installedTitle" | "panels.market.add.failedTitle" | "panels.market.add.cancelledTitle" | "panels.market.add.failureNetworkHost" | "panels.market.add.problemInvalid" | "panels.market.add.problemInstalled" | "panels.market.add.problemNotFound" | "panels.market.add.problemNotPackage" | "panels.market.add.problemNotBundle" | "panels.market.add.problemNetwork" | "panels.market.add.problemUnknown" | "panels.market.add.failureNetwork" | "panels.market.add.failureNotFound" | "panels.market.add.failureNoMatchingVersion" | "panels.market.add.failureDiskFull" | "panels.market.add.failurePermission" | "panels.market.add.failureBuildBlocked" | "panels.market.add.failureIntegrity" | "panels.market.add.failureTimeout" | "panels.market.add.failurePnpmMissing" | "panels.market.add.failureGeneric" | "panels.market.add.approveTitle" | "panels.market.add.approveCaution" | "panels.market.add.approveRun" | "panels.market.add.restart" | "panels.market.add.tookEffect" | "panels.market.add.details" | "panels.market.add.open" | "panels.market.add.title" | "panels.market.add.intro" | "panels.market.add.specLabel" | "panels.market.add.specHint" | "panels.market.add.exampleTitle" | "panels.market.add.exampleFill" | "panels.market.add.registryLabel" | "panels.market.add.registryProfile" | "panels.market.add.registryPnpm" | "panels.market.add.check" | "panels.market.add.checking" | "panels.market.add.change" | "panels.market.add.previewTitle" | "panels.market.add.fieldName" | "panels.market.add.fieldVersion" | "panels.market.add.fieldDescription" | "panels.market.add.fieldSource" | "panels.market.add.install" | "panels.market.add.installing" | "panels.market.add.cancel" | "panels.market.add.close" | "panels.market.add.retry" | "panels.market.add.changeSource" | "panels.market.add.approveBuilds" | "panels.market.add.approveHint" | "panels.market.add.doneApplied" | "panels.market.add.doneRestart" | "panels.market.add.cancelled" | "panels.market.add.failed" | "panels.market.add.removed" | "panels.market.add.supplyPending" | "panels.market.add.supplyFailed" | "panels.market.add.notModule" | "panels.market.add.removedRestart" | "panels.market.add.remove" | "panels.market.add.problem.invalidSpec" | "panels.market.add.problem.alreadyInstalled" | "panels.market.add.problem.notFound" | "panels.market.add.problem.notAPackage" | "panels.market.add.problem.notABundle" | "panels.market.add.problem.network" | "panels.market.add.problem.unknown" | "panels.market.add.reason.invalidSpec" | "panels.market.add.reason.incompatible" | "panels.market.add.reason.notBundle" | "panels.market.add.reason.notRemovable" | "panels.market.add.reason.bundleInUse" | "panels.market.add.reason.stopProfile" | "panels.market.add.reason.staleApproval" | "panels.market.add.reason.operationError" | "panels.market.add.reason.buildBlocked" | "panels.market.add.reason.pnpmMissing" | "panels.market.add.reason.noMatchingVersion" | "panels.market.add.reason.diskFull" | "panels.market.add.reason.permission" | "panels.market.add.reason.integrity" | "panels.market.add.reason.timeout" | "panels.market.add.reason.network" | "panels.market.add.reason.notFound" | "panels.market.add.reason.unknown" | "blocker.fix.running" | "blocker.fix.failed" | "blocker.retry.running" | "panels.reading" | "panels.empty" | "panels.emptyHint" | "env.title" | "env.checking" | "env.installing" | "env.failed" | "env.elapsed" | "env.stepFailed.install" | "env.stepFailed.path" | "env.stepFailed.shell" | "env.bridge.ok" | "env.bridge.short" | "env.bridge.why" | "env.bridge.daemon" | "env.bridge.extension" | "env.bridge.extensionLink" | "env.bridge.profile" | "env.bridge.stale" | "env.bridge.unknown" | "env.fix.title" | "env.fix.why" | "env.fix.whyPath" | "env.fix.whyShell" | "env.fix.step" | "env.fix.stepPath" | "env.fix.stepShell" | "env.fix.permission" | "env.fix.network" | "env.fix.details" | "env.retry" | "env.copyCommand" | "env.copied" | "env.step.opencli" | "env.step.codingPlugin" | "env.step.bridge" | "env.step.warm" | "env.warm.done" | "env.warm.short" | "rightbar.label" | "rightbar.expand" | "rightbar.collapse" | "rightbar.column.label" | "rightbar.column.workbench" | "rightbar.column.dsh" | "rightbar.refresh" | "rightbar.refreshing" | "rightbar.updatedAt" | "rightbar.noProject" | "coding.notARepo.title" | "error.unknown" | "board.title" | "panel.conversation" | "panels.label", string>;
2015
+ en: Record<"time.now" | "time.minutes" | "time.hours" | "time.days" | "blocker.retry" | "blocker.copy" | "blocker.unknown.title" | "blocker.login.go" | "blocker.login.titleGeneric" | "blocker.login.title" | "blocker.login.manual" | "blocker.login.hint" | "blocker.forbidden.open" | "blocker.forbidden.titleGeneric" | "blocker.forbidden.title" | "blocker.forbidden.hint" | "blocker.timeout.hint" | "blocker.exec.hint" | "blocker.fix.install" | "blocker.fix.update" | "blocker.market.open" | "env.unit.failed" | "env.unit.failedHint" | "env.unit.missingPlugin" | "env.unit.hint" | "env.unit.missingCommands" | "env.unit.missingCommandsHint" | "env.unit.unchecked" | "env.unit.uncheckedHint" | "brand.name" | "toggle.open" | "toggle.collapse" | "project.label" | "workspace.section" | "project.none" | "project.empty" | "project.add" | "project.search.label" | "project.search.placeholder" | "project.search.empty" | "project.rename.row" | "project.rename.current" | "project.rename.title" | "project.rename.description" | "project.rename.field" | "project.rename.placeholder" | "project.rename.hint" | "project.rename.save" | "project.rename.saving" | "project.rename.cancel" | "project.rename.failed" | "session.new" | "session.new.label" | "session.empty" | "session.noProject" | "session.pinned" | "session.actions" | "status.idle" | "status.running" | "status.waitingApproval" | "status.planReview" | "status.waitingAnswer" | "status.completed" | "status.subagentsRunning.one" | "status.subagentsRunning.other" | "panels.title" | "panels.reset" | "panels.enabled" | "panels.disabled" | "panels.choose" | "panels.failed" | "panels.hintEffect" | "panels.dragHint" | "panels.unknownStep" | "panels.labelWithHint" | "panels.dep.failed" | "panels.dep.missingPlugin" | "panels.dep.missingCommands" | "panels.dep.unchecked" | "panels.tab.modules" | "panels.tab.market" | "panels.browseMarket" | "panels.noneInstalled" | "panels.noneInstalledHint" | "panels.market.installed" | "panels.market.outdated" | "panels.market.hasNew" | "panels.market.missing" | "panels.market.unchecked" | "panels.market.checking" | "panels.market.sectionInstalled" | "panels.market.sectionPending" | "panels.market.sectionShared" | "panels.market.sharedUsedBy" | "panels.market.listSeparator" | "panels.market.sharedMissing" | "panels.market.sharedOutdated" | "panels.market.sharedUnsatisfied" | "panels.market.sharedOk" | "panels.market.versionArrow" | "panels.market.lead" | "panels.market.install" | "panels.market.update" | "panels.market.uninstall" | "panels.market.uninstallLabel" | "panels.market.installing" | "panels.market.updating" | "panels.market.uninstalling" | "panels.market.confirmUninstallTitle" | "panels.market.confirmUninstallDetail" | "panels.market.confirmUninstallAck" | "panels.market.confirmYes" | "panels.market.confirmNo" | "panels.market.failed" | "panels.market.needEnv" | "panels.market.noSource" | "panels.market.badSource" | "panels.market.empty" | "panels.market.installedSection" | "panels.market.moduleOutdated" | "panels.market.moduleRestartHint" | "panels.market.restartNeeded" | "panels.market.foot" | "panels.market.recheck" | "panels.market.checkUpdates" | "panels.market.checkedAt" | "panels.market.justNow" | "panels.market.minutesAgo" | "panels.market.hoursAgo" | "panels.market.add.description" | "panels.market.add.specPlaceholder" | "panels.market.add.guideToggle" | "panels.market.add.guideHide" | "panels.market.add.guideIdTitle" | "panels.market.add.guideIdExample" | "panels.market.add.guideIdHint" | "panels.market.add.guideGitTitle" | "panels.market.add.guideGitExample" | "panels.market.add.guideGitHint" | "panels.market.add.guidePathTitle" | "panels.market.add.guidePathExample" | "panels.market.add.guidePathHint" | "panels.market.add.guideExampleLabel" | "panels.market.add.guideFill" | "panels.market.add.guideSafety" | "panels.market.add.registryLegend" | "panels.market.add.registryOfficial" | "panels.market.add.registryMirror" | "panels.market.add.registryWithHost" | "panels.market.add.registryToggle" | "panels.market.add.installVersion" | "panels.market.add.registryDefault" | "panels.market.add.registryCustom" | "panels.market.add.registryCustomPlaceholder" | "panels.market.add.registryCustomHint" | "panels.market.add.registryCustomInvalid" | "panels.market.add.run" | "panels.market.add.edit" | "panels.market.add.changeRegistry" | "panels.market.add.installingTitle" | "panels.market.add.installedTitle" | "panels.market.add.failedTitle" | "panels.market.add.cancelledTitle" | "panels.market.add.failureNetworkHost" | "panels.market.add.problemInvalid" | "panels.market.add.problemInstalled" | "panels.market.add.problemNotFound" | "panels.market.add.problemNotPackage" | "panels.market.add.problemNotBundle" | "panels.market.add.problemNetwork" | "panels.market.add.problemUnknown" | "panels.market.add.failureNetwork" | "panels.market.add.failureNotFound" | "panels.market.add.failureNoMatchingVersion" | "panels.market.add.failureDiskFull" | "panels.market.add.failurePermission" | "panels.market.add.failureBuildBlocked" | "panels.market.add.failureIntegrity" | "panels.market.add.failureTimeout" | "panels.market.add.failurePnpmMissing" | "panels.market.add.failureGeneric" | "panels.market.add.approveTitle" | "panels.market.add.approveCaution" | "panels.market.add.approveRun" | "panels.market.add.restart" | "panels.market.add.tookEffect" | "panels.market.add.details" | "panels.market.add.open" | "panels.market.add.title" | "panels.market.add.intro" | "panels.market.add.specLabel" | "panels.market.add.specHint" | "panels.market.add.exampleTitle" | "panels.market.add.exampleFill" | "panels.market.add.registryLabel" | "panels.market.add.registryProfile" | "panels.market.add.registryPnpm" | "panels.market.add.check" | "panels.market.add.checking" | "panels.market.add.change" | "panels.market.add.previewTitle" | "panels.market.add.fieldName" | "panels.market.add.fieldVersion" | "panels.market.add.fieldDescription" | "panels.market.add.fieldSource" | "panels.market.add.install" | "panels.market.add.installing" | "panels.market.add.cancel" | "panels.market.add.close" | "panels.market.add.retry" | "panels.market.add.changeSource" | "panels.market.add.approveBuilds" | "panels.market.add.approveHint" | "panels.market.add.doneApplied" | "panels.market.add.doneRestart" | "panels.market.add.cancelled" | "panels.market.add.failed" | "panels.market.add.removed" | "panels.market.add.supplyPending" | "panels.market.add.supplyFailed" | "panels.market.add.notModule" | "panels.market.add.removedRestart" | "panels.market.add.remove" | "panels.market.add.problem.invalidSpec" | "panels.market.add.problem.alreadyInstalled" | "panels.market.add.problem.notFound" | "panels.market.add.problem.notAPackage" | "panels.market.add.problem.notABundle" | "panels.market.add.problem.network" | "panels.market.add.problem.unknown" | "panels.market.add.reason.invalidSpec" | "panels.market.add.reason.incompatible" | "panels.market.add.reason.notBundle" | "panels.market.add.reason.notRemovable" | "panels.market.add.reason.bundleInUse" | "panels.market.add.reason.stopProfile" | "panels.market.add.reason.staleApproval" | "panels.market.add.reason.operationError" | "panels.market.add.reason.buildBlocked" | "panels.market.add.reason.pnpmMissing" | "panels.market.add.reason.noMatchingVersion" | "panels.market.add.reason.diskFull" | "panels.market.add.reason.permission" | "panels.market.add.reason.integrity" | "panels.market.add.reason.timeout" | "panels.market.add.reason.network" | "panels.market.add.reason.notFound" | "panels.market.add.reason.unknown" | "blocker.fix.running" | "blocker.fix.failed" | "blocker.retry.running" | "panels.reading" | "panels.cardBroken" | "panels.cardRetry" | "panels.empty" | "panels.emptyHint" | "env.title" | "env.checking" | "env.installing" | "env.failed" | "env.elapsed" | "env.stepFailed.install" | "env.stepFailed.path" | "env.stepFailed.shell" | "env.bridge.ok" | "env.bridge.short" | "env.bridge.why" | "env.bridge.daemon" | "env.bridge.extension" | "env.bridge.extensionLink" | "env.bridge.profile" | "env.bridge.stale" | "env.bridge.unknown" | "env.fix.title" | "env.fix.why" | "env.fix.whyPath" | "env.fix.whyShell" | "env.fix.step" | "env.fix.stepPath" | "env.fix.stepShell" | "env.fix.permission" | "env.fix.network" | "env.fix.details" | "env.retry" | "env.copyCommand" | "env.copied" | "env.step.opencli" | "env.step.codingPlugin" | "env.step.bridge" | "env.step.warm" | "env.warm.done" | "env.warm.short" | "rightbar.label" | "rightbar.expand" | "rightbar.collapse" | "rightbar.column.label" | "rightbar.column.workbench" | "rightbar.column.dsh" | "rightbar.refresh" | "rightbar.refreshing" | "rightbar.updatedAt" | "rightbar.noProject" | "coding.notARepo.title" | "error.unknown" | "board.title" | "panel.conversation" | "panels.label", string>;
1909
2016
  };
1910
- mergeMessages(base: apiModule.Dictionaries, contributions: readonly apiModule.MessagesContribution[]): apiModule.Dictionaries;
2017
+ mergeMessages(base: apiModule.Dictionaries, contributions: readonly MessagesContribution[]): apiModule.Dictionaries;
2018
+ mergeMessagesSkipping(base: apiModule.Dictionaries, contributions: readonly MessagesContribution[]): apiModule.MessagesMerge;
1911
2019
  zh: {
1912
2020
  readonly "brand.name": "\u5DE5\u4F5C\u53F0";
1913
2021
  readonly "toggle.open": "\u6253\u5F00\u4FA7\u8FB9\u680F";
@@ -1917,6 +2025,20 @@ export declare const kit: {
1917
2025
  readonly "project.none": "\u672A\u9009\u62E9\u9879\u76EE";
1918
2026
  readonly "project.empty": "\u8FD8\u6CA1\u6709\u9879\u76EE\u3002\u7528\u4E0B\u9762\u7684\u300C\u6DFB\u52A0\u9879\u76EE\u300D\u9009\u4E00\u4E2A\u76EE\u5F55\u3002";
1919
2027
  readonly "project.add": "\u6DFB\u52A0\u9879\u76EE\u2026";
2028
+ readonly "project.search.label": "\u641C\u7D22\u5DE5\u4F5C\u533A";
2029
+ readonly "project.search.placeholder": "\u641C\u7D22\u5DE5\u4F5C\u533A\uFF08\u76EE\u5F55\u540D / \u4E2D\u6587\u540D / \u8DEF\u5F84\uFF09";
2030
+ readonly "project.search.empty": "\u6CA1\u6709\u5339\u914D\u300C{query}\u300D\u7684\u5DE5\u4F5C\u533A\u3002";
2031
+ readonly "project.rename.row": "\u6539\u300C{name}\u300D\u7684\u4E2D\u6587\u540D";
2032
+ readonly "project.rename.current": "\u6539\u5F53\u524D\u5DE5\u4F5C\u533A\u7684\u4E2D\u6587\u540D\u2026";
2033
+ readonly "project.rename.title": "\u7ED9\u300C{name}\u300D\u914D\u4E00\u4E2A\u4E2D\u6587\u540D";
2034
+ readonly "project.rename.description": "\u663E\u793A\u5728\u76EE\u5F55\u540D\u540E\u9762\u3002\u6539\u7684\u662F\u5DE5\u4F5C\u533A\u672C\u8EAB\u7684\u540D\u5B57\u3002";
2035
+ readonly "project.rename.field": "\u4E2D\u6587\u540D";
2036
+ readonly "project.rename.placeholder": "\u4F8B\u5982\uFF1A\u5DE5\u4F5C\u53F0\u5916\u58F3";
2037
+ readonly "project.rename.hint": "\u7559\u7A7A = \u53EA\u663E\u793A\u76EE\u5F55\u540D";
2038
+ readonly "project.rename.save": "\u4FDD\u5B58";
2039
+ readonly "project.rename.saving": "\u4FDD\u5B58\u4E2D\u2026";
2040
+ readonly "project.rename.cancel": "\u53D6\u6D88";
2041
+ readonly "project.rename.failed": "\u6539\u540D\u5931\u8D25\u4E86\uFF0C\u518D\u8BD5\u4E00\u6B21\u3002";
1920
2042
  readonly "session.new": "\u65B0\u4F1A\u8BDD";
1921
2043
  readonly "session.new.label": "\u5728\u5F53\u524D\u9879\u76EE\u65B0\u5EFA\u4F1A\u8BDD";
1922
2044
  readonly "session.empty": "\u8FD9\u4E2A\u9879\u76EE\u8FD8\u6CA1\u6709\u4F1A\u8BDD\u3002";
@@ -1945,6 +2067,7 @@ export declare const kit: {
1945
2067
  readonly "panels.dragHint": "\u62D6\u52A8\u8C03\u6574\u987A\u5E8F";
1946
2068
  readonly "panels.unknownStep": "\u8FD9\u4E00\u5C42\u6CA1\u6709\u5957\u4EF6\u63D0\u4F9B";
1947
2069
  readonly "panels.labelWithHint": "{label}\uFF08{hint}\uFF09";
2070
+ readonly "panels.dep.failed": "\u26A0 \u8D77\u4E0D\u6765";
1948
2071
  readonly "panels.dep.missingPlugin": "\u26A0 \u8FD8\u6CA1\u88C5\u597D";
1949
2072
  readonly "panels.dep.missingCommands": "\u26A0 \u9700\u8981\u66F4\u65B0";
1950
2073
  readonly "panels.dep.unchecked": "\u26A0 \u68C0\u6D4B\u4E0D\u4E86";
@@ -2138,6 +2261,8 @@ export declare const kit: {
2138
2261
  readonly "blocker.exec.hint": "\u786E\u8BA4 opencli \u5DF2\u5B89\u88C5\u4E14\u5728 PATH \u91CC\uFF08which opencli\uFF09\u3002";
2139
2262
  readonly "blocker.unknown.title": "\u51FA\u4E86\u70B9\u95EE\u9898";
2140
2263
  readonly "panels.reading": "\u6B63\u5728\u8BFB\u53D6\u9762\u677F\u914D\u7F6E\u2026";
2264
+ readonly "panels.cardBroken": "\u8FD9\u4E2A\u6A21\u5757\u8D77\u4E0D\u6765\uFF1A{unit}\uFF08{reason}\uFF09";
2265
+ readonly "panels.cardRetry": "\u91CD\u8BD5";
2141
2266
  readonly "panels.empty": "\u9762\u677F\u91CC\u8FD8\u6CA1\u6709\u6A21\u5757";
2142
2267
  readonly "panels.emptyHint": "\u4E5F\u53EF\u4EE5\u76F4\u63A5\u8DDF agent \u8BF4\uFF1A\u300C\u628A\u67D0\u4E2A\u6A21\u5757\u52A0\u5230\u9762\u677F\u300D\u3002";
2143
2268
  readonly "env.title": "\u51C6\u5907\u5DE5\u4F5C\u53F0";
@@ -2176,6 +2301,8 @@ export declare const kit: {
2176
2301
  readonly "env.step.warm": "\u9884\u70ED\u7AD9\u70B9\u767B\u5F55\u6001";
2177
2302
  readonly "env.warm.done": "\u5DF2\u9884\u70ED {n} \u4E2A\u7AD9\u70B9";
2178
2303
  readonly "env.warm.short": "\u8FD9\u6B21\u6CA1\u70ED\u4E0A \u2014\u2014 \u4E0D\u5F71\u54CD\u7528\uFF0C\u9762\u677F\u7B2C\u4E00\u6B21\u8BFB\u53D6\u4F1A\u81EA\u5DF1\u8865";
2304
+ readonly "env.unit.failed": "\u8FD9\u4E2A\u6A21\u5757\u8D77\u4E0D\u6765";
2305
+ readonly "env.unit.failedHint": "\u5B83\u81EA\u5DF1\u88C5\u914D\u65F6\u62A5\u4E86\u9519\uFF0C\u522B\u7684\u6A21\u5757\u4E0D\u53D7\u5F71\u54CD\u3002";
2179
2306
  readonly "env.unit.missingPlugin": "\u8FD9\u4E2A\u6A21\u5757\u8FD8\u6CA1\u88C5\u597D";
2180
2307
  readonly "env.unit.missingCommandsHint": "\u66F4\u65B0\u4E4B\u540E\u5C31\u80FD\u7528\u4E86\u3002";
2181
2308
  readonly "env.unit.unchecked": "\u68C0\u6D4B\u4E0D\u4E86\uFF1A\u62FF\u4E0D\u5230\u6267\u884C\u901A\u9053";
@@ -2203,6 +2330,7 @@ export declare const kit: {
2203
2330
  holdBusy(since: number | null, now: number, floorMs: number): apiModule.BusyHold;
2204
2331
  h: typeof import("react").createElement;
2205
2332
  Fragment: import("react").ExoticComponent<import("react").FragmentProps>;
2333
+ Component: typeof import("react").Component;
2206
2334
  useState: typeof import("react").useState;
2207
2335
  useEffect: typeof import("react").useEffect;
2208
2336
  useLayoutEffect: typeof import("react").useLayoutEffect;
@@ -5,6 +5,8 @@ export type BoardShape = {
5
5
  readonly kind: 'empty';
6
6
  } | {
7
7
  readonly kind: 'unread';
8
+ } | {
9
+ readonly kind: 'all';
8
10
  } | {
9
11
  readonly kind: 'copies';
10
12
  readonly count: number;
@@ -2,9 +2,9 @@ import type { Translate, WorkspaceView } from '@dsh-workbench/shared';
2
2
  export interface ProjectSwitcherProps {
3
3
  items: readonly WorkspaceView[];
4
4
  current: WorkspaceView | null;
5
- workspaceTitle: (title: string) => string;
6
5
  onPick: (workspaceId: string) => void;
7
6
  onAdd: () => void;
7
+ onRename: (workspaceId: string, title: string) => Promise<boolean>;
8
8
  t: Translate;
9
9
  }
10
- export declare function ProjectSwitcher({ items, current, workspaceTitle, onPick, onAdd, t, }: ProjectSwitcherProps): JSX.Element;
10
+ export declare function ProjectSwitcher({ items, current, onPick, onAdd, onRename, t }: ProjectSwitcherProps): JSX.Element;
@@ -2,7 +2,7 @@ import type { PanelEntry, PanelInfo, RenderSlot, SessionStatusSnapshot, Sessions
2
2
  export interface SidebarActions {
3
3
  listPanels: () => PanelEntry[];
4
4
  subscribePanels: (callback: () => void) => () => void;
5
- workspaceDisplayTitle: (title: string) => string;
5
+ renameWorkspace: (workspaceId: string, title: string) => Promise<boolean>;
6
6
  openWorkspace: (workspaceId: string) => void;
7
7
  createWorkspace: (path: string) => Promise<{
8
8
  workspaceId?: string;
@@ -0,0 +1,8 @@
1
+ import type { Translate, WorkspaceView } from '@dsh-workbench/shared';
2
+ export interface WorkspaceRenameDialogProps {
3
+ readonly workspace: WorkspaceView;
4
+ readonly t: Translate;
5
+ readonly onClose: () => void;
6
+ readonly onSubmit: (title: string) => Promise<boolean>;
7
+ }
8
+ export declare function WorkspaceRenameDialog({ workspace, t, onClose, onSubmit }: WorkspaceRenameDialogProps): JSX.Element;
@@ -0,0 +1,7 @@
1
+ import type { Translate, WorkspaceView } from '@dsh-workbench/shared';
2
+ export interface WorkspaceRowActionProps {
3
+ readonly workspace: WorkspaceView;
4
+ readonly t: Translate;
5
+ readonly onEdit: () => void;
6
+ }
7
+ export declare function WorkspaceRowAction({ workspace, t, onEdit }: WorkspaceRowActionProps): JSX.Element;
@@ -0,0 +1,8 @@
1
+ import type { ReactNode, WorkspaceView } from '@dsh-workbench/shared';
2
+ export interface WorkspaceRowLabelProps {
3
+ readonly workspace: WorkspaceView;
4
+ readonly current: boolean;
5
+ readonly action?: ReactNode;
6
+ readonly onHover?: (hovering: boolean) => void;
7
+ }
8
+ export declare function WorkspaceRowLabel({ workspace, current, action, onHover }: WorkspaceRowLabelProps): JSX.Element;