@dsh-workbench/core 0.2.2 → 0.2.4

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.
@@ -204,6 +204,8 @@ export declare const kit: {
204
204
  readonly "project.search.label": "\u641C\u7D22\u5DE5\u4F5C\u533A";
205
205
  readonly "project.search.placeholder": "\u641C\u7D22\u5DE5\u4F5C\u533A\uFF08\u76EE\u5F55\u540D / \u4E2D\u6587\u540D / \u8DEF\u5F84\uFF09";
206
206
  readonly "project.search.empty": "\u6CA1\u6709\u5339\u914D\u300C{query}\u300D\u7684\u5DE5\u4F5C\u533A\u3002";
207
+ readonly "project.group.workspaces": "\u5DE5\u4F5C\u533A";
208
+ readonly "project.group.workshop": "\u5DE5\u574A";
207
209
  readonly "project.rename.row": "\u6539\u300C{name}\u300D\u7684\u4E2D\u6587\u540D";
208
210
  readonly "project.rename.current": "\u6539\u5F53\u524D\u5DE5\u4F5C\u533A\u7684\u4E2D\u6587\u540D\u2026";
209
211
  readonly "project.rename.title": "\u7ED9\u300C{name}\u300D\u914D\u4E00\u4E2A\u4E2D\u6587\u540D";
@@ -378,6 +380,7 @@ export declare const kit: {
378
380
  readonly "panels.market.add.failureIntegrity": "\u4E0B\u8F7D\u7684\u5B89\u88C5\u5305\u6821\u9A8C\u5931\u8D25";
379
381
  readonly "panels.market.add.failureTimeout": "\u5B89\u88C5\u8D85\u65F6";
380
382
  readonly "panels.market.add.failurePnpmMissing": "\u6CA1\u6709\u627E\u5230 pnpm\uFF0C\u65E0\u6CD5\u5B89\u88C5";
383
+ readonly "panels.market.add.failureInstalled": "\u5B83\u5DF2\u7ECF\u5728\u8FD9\u4EFD profile \u91CC\u4E86\uFF1A\u8FD9\u4E00\u7248 dsh \u5F00\u7740\u70ED\u66F4\u65B0\uFF0C\u540C\u4E00\u4E2A\u5305\u4E0D\u8BB8\u5C31\u5730\u8986\u76D6\u88C5\uFF08\u5F97\u5148\u5378\u8F7D\u518D\u88C5\uFF09\uFF0C\u800C\u8FD9\u6B21\u4E5F\u6CA1\u80FD\u628A\u5B83\u5378\u4E0B\u6765";
381
384
  readonly "panels.market.add.failureGeneric": "\u5B89\u88C5\u8FC7\u7A0B\u4E2D\u51FA\u9519\uFF0C\u539F\u56E0\u89C1\u5B89\u88C5\u8BE6\u60C5";
382
385
  readonly "panels.market.add.approveTitle": "\u9700\u8981\u4F60\u5141\u8BB8\u5B89\u88C5\u811A\u672C";
383
386
  readonly "panels.market.add.approveCaution": "\u53EA\u5141\u8BB8\u4F60\u4FE1\u5F97\u8FC7\u7684\u5305\uFF1A\u5B89\u88C5\u811A\u672C\u4F1A\u4EE5\u4F60\u7684\u6743\u9650\u5728\u8FD9\u53F0\u673A\u5668\u4E0A\u8FD0\u884C\u3002";
@@ -533,7 +536,7 @@ export declare const kit: {
533
536
  readonly "panel.conversation": "\u5BF9\u8BDD";
534
537
  readonly "panels.label": "\u5168\u5C40\u9762\u677F";
535
538
  };
536
- 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.add.busy" | "project.add.failed" | "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.groupBoardless" | "panels.groupPlugins" | "panels.market.defaultHint" | "panels.market.defaultLabel" | "panels.market.defaultLocked" | "panels.followAll" | "panels.followAllConfirmTitle" | "panels.followAllConfirmDetail" | "panels.followAllConfirmAck" | "panels.followAllConfirmYes" | "panels.followAllConfirmNo" | "panels.enabled" | "panels.disabled" | "panels.choose" | "panels.buildModule" | "panels.failed" | "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.notActive" | "panels.market.notUsable" | "panels.market.broken" | "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.needCommands" | "panels.market.localMark" | "panels.market.localHint" | "panels.market.noSource" | "panels.market.badSource" | "panels.market.empty" | "panels.market.sectionPlugins" | "panels.market.moduleOutdated" | "panels.market.moduleRefused" | "panels.market.moduleRefusedDetail" | "panels.market.moduleRestartHint" | "panels.market.workbenchName" | "panels.market.workbenchLocal" | "panels.market.pluginKeptInUse" | "panels.market.pluginKeptUnsure" | "panels.market.pluginKeptHeld" | "panels.market.pluginKeptUnnamed" | "panels.market.pluginBroken" | "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.problemNotWorkbenchModule" | "panels.market.add.problemNotModuleOrPlugin" | "panels.market.add.failureNotModuleOrPlugin" | "panels.market.add.installedPlugin" | "panels.market.add.pluginPreview" | "panels.market.add.pluginAlias" | "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.classifying" | "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" | "rightbar.openPlatform" | "coding.notARepo.title" | "error.unknown" | "board.title" | "panel.conversation" | "panels.label", string>;
539
+ 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.add.busy" | "project.add.failed" | "project.search.label" | "project.search.placeholder" | "project.search.empty" | "project.group.workspaces" | "project.group.workshop" | "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.groupBoardless" | "panels.groupPlugins" | "panels.market.defaultHint" | "panels.market.defaultLabel" | "panels.market.defaultLocked" | "panels.followAll" | "panels.followAllConfirmTitle" | "panels.followAllConfirmDetail" | "panels.followAllConfirmAck" | "panels.followAllConfirmYes" | "panels.followAllConfirmNo" | "panels.enabled" | "panels.disabled" | "panels.choose" | "panels.buildModule" | "panels.failed" | "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.notActive" | "panels.market.notUsable" | "panels.market.broken" | "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.needCommands" | "panels.market.localMark" | "panels.market.localHint" | "panels.market.noSource" | "panels.market.badSource" | "panels.market.empty" | "panels.market.sectionPlugins" | "panels.market.moduleOutdated" | "panels.market.moduleRefused" | "panels.market.moduleRefusedDetail" | "panels.market.moduleRestartHint" | "panels.market.workbenchName" | "panels.market.workbenchLocal" | "panels.market.pluginKeptInUse" | "panels.market.pluginKeptUnsure" | "panels.market.pluginKeptHeld" | "panels.market.pluginKeptUnnamed" | "panels.market.pluginBroken" | "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.problemNotWorkbenchModule" | "panels.market.add.problemNotModuleOrPlugin" | "panels.market.add.failureNotModuleOrPlugin" | "panels.market.add.installedPlugin" | "panels.market.add.pluginPreview" | "panels.market.add.pluginAlias" | "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.failureInstalled" | "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.classifying" | "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" | "rightbar.openPlatform" | "coding.notARepo.title" | "error.unknown" | "board.title" | "panel.conversation" | "panels.label", string>;
537
540
  };
538
541
  mergeMessages(base: apiModule.Dictionaries, contributions: readonly MessagesContribution[]): apiModule.Dictionaries;
539
542
  mergeMessagesSkipping(base: apiModule.Dictionaries, contributions: readonly MessagesContribution[]): apiModule.MessagesMerge;
@@ -551,6 +554,8 @@ export declare const kit: {
551
554
  readonly "project.search.label": "\u641C\u7D22\u5DE5\u4F5C\u533A";
552
555
  readonly "project.search.placeholder": "\u641C\u7D22\u5DE5\u4F5C\u533A\uFF08\u76EE\u5F55\u540D / \u4E2D\u6587\u540D / \u8DEF\u5F84\uFF09";
553
556
  readonly "project.search.empty": "\u6CA1\u6709\u5339\u914D\u300C{query}\u300D\u7684\u5DE5\u4F5C\u533A\u3002";
557
+ readonly "project.group.workspaces": "\u5DE5\u4F5C\u533A";
558
+ readonly "project.group.workshop": "\u5DE5\u574A";
554
559
  readonly "project.rename.row": "\u6539\u300C{name}\u300D\u7684\u4E2D\u6587\u540D";
555
560
  readonly "project.rename.current": "\u6539\u5F53\u524D\u5DE5\u4F5C\u533A\u7684\u4E2D\u6587\u540D\u2026";
556
561
  readonly "project.rename.title": "\u7ED9\u300C{name}\u300D\u914D\u4E00\u4E2A\u4E2D\u6587\u540D";
@@ -725,6 +730,7 @@ export declare const kit: {
725
730
  readonly "panels.market.add.failureIntegrity": "\u4E0B\u8F7D\u7684\u5B89\u88C5\u5305\u6821\u9A8C\u5931\u8D25";
726
731
  readonly "panels.market.add.failureTimeout": "\u5B89\u88C5\u8D85\u65F6";
727
732
  readonly "panels.market.add.failurePnpmMissing": "\u6CA1\u6709\u627E\u5230 pnpm\uFF0C\u65E0\u6CD5\u5B89\u88C5";
733
+ readonly "panels.market.add.failureInstalled": "\u5B83\u5DF2\u7ECF\u5728\u8FD9\u4EFD profile \u91CC\u4E86\uFF1A\u8FD9\u4E00\u7248 dsh \u5F00\u7740\u70ED\u66F4\u65B0\uFF0C\u540C\u4E00\u4E2A\u5305\u4E0D\u8BB8\u5C31\u5730\u8986\u76D6\u88C5\uFF08\u5F97\u5148\u5378\u8F7D\u518D\u88C5\uFF09\uFF0C\u800C\u8FD9\u6B21\u4E5F\u6CA1\u80FD\u628A\u5B83\u5378\u4E0B\u6765";
728
734
  readonly "panels.market.add.failureGeneric": "\u5B89\u88C5\u8FC7\u7A0B\u4E2D\u51FA\u9519\uFF0C\u539F\u56E0\u89C1\u5B89\u88C5\u8BE6\u60C5";
729
735
  readonly "panels.market.add.approveTitle": "\u9700\u8981\u4F60\u5141\u8BB8\u5B89\u88C5\u811A\u672C";
730
736
  readonly "panels.market.add.approveCaution": "\u53EA\u5141\u8BB8\u4F60\u4FE1\u5F97\u8FC7\u7684\u5305\uFF1A\u5B89\u88C5\u811A\u672C\u4F1A\u4EE5\u4F60\u7684\u6743\u9650\u5728\u8FD9\u53F0\u673A\u5668\u4E0A\u8FD0\u884C\u3002";
@@ -1062,6 +1068,8 @@ export declare const kit: {
1062
1068
  readonly "project.search.label": "\u641C\u7D22\u5DE5\u4F5C\u533A";
1063
1069
  readonly "project.search.placeholder": "\u641C\u7D22\u5DE5\u4F5C\u533A\uFF08\u76EE\u5F55\u540D / \u4E2D\u6587\u540D / \u8DEF\u5F84\uFF09";
1064
1070
  readonly "project.search.empty": "\u6CA1\u6709\u5339\u914D\u300C{query}\u300D\u7684\u5DE5\u4F5C\u533A\u3002";
1071
+ readonly "project.group.workspaces": "\u5DE5\u4F5C\u533A";
1072
+ readonly "project.group.workshop": "\u5DE5\u574A";
1065
1073
  readonly "project.rename.row": "\u6539\u300C{name}\u300D\u7684\u4E2D\u6587\u540D";
1066
1074
  readonly "project.rename.current": "\u6539\u5F53\u524D\u5DE5\u4F5C\u533A\u7684\u4E2D\u6587\u540D\u2026";
1067
1075
  readonly "project.rename.title": "\u7ED9\u300C{name}\u300D\u914D\u4E00\u4E2A\u4E2D\u6587\u540D";
@@ -1236,6 +1244,7 @@ export declare const kit: {
1236
1244
  readonly "panels.market.add.failureIntegrity": "\u4E0B\u8F7D\u7684\u5B89\u88C5\u5305\u6821\u9A8C\u5931\u8D25";
1237
1245
  readonly "panels.market.add.failureTimeout": "\u5B89\u88C5\u8D85\u65F6";
1238
1246
  readonly "panels.market.add.failurePnpmMissing": "\u6CA1\u6709\u627E\u5230 pnpm\uFF0C\u65E0\u6CD5\u5B89\u88C5";
1247
+ readonly "panels.market.add.failureInstalled": "\u5B83\u5DF2\u7ECF\u5728\u8FD9\u4EFD profile \u91CC\u4E86\uFF1A\u8FD9\u4E00\u7248 dsh \u5F00\u7740\u70ED\u66F4\u65B0\uFF0C\u540C\u4E00\u4E2A\u5305\u4E0D\u8BB8\u5C31\u5730\u8986\u76D6\u88C5\uFF08\u5F97\u5148\u5378\u8F7D\u518D\u88C5\uFF09\uFF0C\u800C\u8FD9\u6B21\u4E5F\u6CA1\u80FD\u628A\u5B83\u5378\u4E0B\u6765";
1239
1248
  readonly "panels.market.add.failureGeneric": "\u5B89\u88C5\u8FC7\u7A0B\u4E2D\u51FA\u9519\uFF0C\u539F\u56E0\u89C1\u5B89\u88C5\u8BE6\u60C5";
1240
1249
  readonly "panels.market.add.approveTitle": "\u9700\u8981\u4F60\u5141\u8BB8\u5B89\u88C5\u811A\u672C";
1241
1250
  readonly "panels.market.add.approveCaution": "\u53EA\u5141\u8BB8\u4F60\u4FE1\u5F97\u8FC7\u7684\u5305\uFF1A\u5B89\u88C5\u811A\u672C\u4F1A\u4EE5\u4F60\u7684\u6743\u9650\u5728\u8FD9\u53F0\u673A\u5668\u4E0A\u8FD0\u884C\u3002";
@@ -1391,7 +1400,7 @@ export declare const kit: {
1391
1400
  readonly "panel.conversation": "\u5BF9\u8BDD";
1392
1401
  readonly "panels.label": "\u5168\u5C40\u9762\u677F";
1393
1402
  };
1394
- 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.add.busy" | "project.add.failed" | "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.groupBoardless" | "panels.groupPlugins" | "panels.market.defaultHint" | "panels.market.defaultLabel" | "panels.market.defaultLocked" | "panels.followAll" | "panels.followAllConfirmTitle" | "panels.followAllConfirmDetail" | "panels.followAllConfirmAck" | "panels.followAllConfirmYes" | "panels.followAllConfirmNo" | "panels.enabled" | "panels.disabled" | "panels.choose" | "panels.buildModule" | "panels.failed" | "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.notActive" | "panels.market.notUsable" | "panels.market.broken" | "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.needCommands" | "panels.market.localMark" | "panels.market.localHint" | "panels.market.noSource" | "panels.market.badSource" | "panels.market.empty" | "panels.market.sectionPlugins" | "panels.market.moduleOutdated" | "panels.market.moduleRefused" | "panels.market.moduleRefusedDetail" | "panels.market.moduleRestartHint" | "panels.market.workbenchName" | "panels.market.workbenchLocal" | "panels.market.pluginKeptInUse" | "panels.market.pluginKeptUnsure" | "panels.market.pluginKeptHeld" | "panels.market.pluginKeptUnnamed" | "panels.market.pluginBroken" | "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.problemNotWorkbenchModule" | "panels.market.add.problemNotModuleOrPlugin" | "panels.market.add.failureNotModuleOrPlugin" | "panels.market.add.installedPlugin" | "panels.market.add.pluginPreview" | "panels.market.add.pluginAlias" | "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.classifying" | "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" | "rightbar.openPlatform" | "coding.notARepo.title" | "error.unknown" | "board.title" | "panel.conversation" | "panels.label", string>;
1403
+ 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.add.busy" | "project.add.failed" | "project.search.label" | "project.search.placeholder" | "project.search.empty" | "project.group.workspaces" | "project.group.workshop" | "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.groupBoardless" | "panels.groupPlugins" | "panels.market.defaultHint" | "panels.market.defaultLabel" | "panels.market.defaultLocked" | "panels.followAll" | "panels.followAllConfirmTitle" | "panels.followAllConfirmDetail" | "panels.followAllConfirmAck" | "panels.followAllConfirmYes" | "panels.followAllConfirmNo" | "panels.enabled" | "panels.disabled" | "panels.choose" | "panels.buildModule" | "panels.failed" | "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.notActive" | "panels.market.notUsable" | "panels.market.broken" | "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.needCommands" | "panels.market.localMark" | "panels.market.localHint" | "panels.market.noSource" | "panels.market.badSource" | "panels.market.empty" | "panels.market.sectionPlugins" | "panels.market.moduleOutdated" | "panels.market.moduleRefused" | "panels.market.moduleRefusedDetail" | "panels.market.moduleRestartHint" | "panels.market.workbenchName" | "panels.market.workbenchLocal" | "panels.market.pluginKeptInUse" | "panels.market.pluginKeptUnsure" | "panels.market.pluginKeptHeld" | "panels.market.pluginKeptUnnamed" | "panels.market.pluginBroken" | "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.problemNotWorkbenchModule" | "panels.market.add.problemNotModuleOrPlugin" | "panels.market.add.failureNotModuleOrPlugin" | "panels.market.add.installedPlugin" | "panels.market.add.pluginPreview" | "panels.market.add.pluginAlias" | "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.failureInstalled" | "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.classifying" | "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" | "rightbar.openPlatform" | "coding.notARepo.title" | "error.unknown" | "board.title" | "panel.conversation" | "panels.label", string>;
1395
1404
  };
1396
1405
  mergeMessages(base: apiModule.Dictionaries, contributions: readonly MessagesContribution[]): apiModule.Dictionaries;
1397
1406
  mergeMessagesSkipping(base: apiModule.Dictionaries, contributions: readonly MessagesContribution[]): apiModule.MessagesMerge;
@@ -1409,6 +1418,8 @@ export declare const kit: {
1409
1418
  readonly "project.search.label": "\u641C\u7D22\u5DE5\u4F5C\u533A";
1410
1419
  readonly "project.search.placeholder": "\u641C\u7D22\u5DE5\u4F5C\u533A\uFF08\u76EE\u5F55\u540D / \u4E2D\u6587\u540D / \u8DEF\u5F84\uFF09";
1411
1420
  readonly "project.search.empty": "\u6CA1\u6709\u5339\u914D\u300C{query}\u300D\u7684\u5DE5\u4F5C\u533A\u3002";
1421
+ readonly "project.group.workspaces": "\u5DE5\u4F5C\u533A";
1422
+ readonly "project.group.workshop": "\u5DE5\u574A";
1412
1423
  readonly "project.rename.row": "\u6539\u300C{name}\u300D\u7684\u4E2D\u6587\u540D";
1413
1424
  readonly "project.rename.current": "\u6539\u5F53\u524D\u5DE5\u4F5C\u533A\u7684\u4E2D\u6587\u540D\u2026";
1414
1425
  readonly "project.rename.title": "\u7ED9\u300C{name}\u300D\u914D\u4E00\u4E2A\u4E2D\u6587\u540D";
@@ -1583,6 +1594,7 @@ export declare const kit: {
1583
1594
  readonly "panels.market.add.failureIntegrity": "\u4E0B\u8F7D\u7684\u5B89\u88C5\u5305\u6821\u9A8C\u5931\u8D25";
1584
1595
  readonly "panels.market.add.failureTimeout": "\u5B89\u88C5\u8D85\u65F6";
1585
1596
  readonly "panels.market.add.failurePnpmMissing": "\u6CA1\u6709\u627E\u5230 pnpm\uFF0C\u65E0\u6CD5\u5B89\u88C5";
1597
+ readonly "panels.market.add.failureInstalled": "\u5B83\u5DF2\u7ECF\u5728\u8FD9\u4EFD profile \u91CC\u4E86\uFF1A\u8FD9\u4E00\u7248 dsh \u5F00\u7740\u70ED\u66F4\u65B0\uFF0C\u540C\u4E00\u4E2A\u5305\u4E0D\u8BB8\u5C31\u5730\u8986\u76D6\u88C5\uFF08\u5F97\u5148\u5378\u8F7D\u518D\u88C5\uFF09\uFF0C\u800C\u8FD9\u6B21\u4E5F\u6CA1\u80FD\u628A\u5B83\u5378\u4E0B\u6765";
1586
1598
  readonly "panels.market.add.failureGeneric": "\u5B89\u88C5\u8FC7\u7A0B\u4E2D\u51FA\u9519\uFF0C\u539F\u56E0\u89C1\u5B89\u88C5\u8BE6\u60C5";
1587
1599
  readonly "panels.market.add.approveTitle": "\u9700\u8981\u4F60\u5141\u8BB8\u5B89\u88C5\u811A\u672C";
1588
1600
  readonly "panels.market.add.approveCaution": "\u53EA\u5141\u8BB8\u4F60\u4FE1\u5F97\u8FC7\u7684\u5305\uFF1A\u5B89\u88C5\u811A\u672C\u4F1A\u4EE5\u4F60\u7684\u6743\u9650\u5728\u8FD9\u53F0\u673A\u5668\u4E0A\u8FD0\u884C\u3002";
@@ -1915,6 +1927,8 @@ export declare const kit: {
1915
1927
  readonly "project.search.label": "\u641C\u7D22\u5DE5\u4F5C\u533A";
1916
1928
  readonly "project.search.placeholder": "\u641C\u7D22\u5DE5\u4F5C\u533A\uFF08\u76EE\u5F55\u540D / \u4E2D\u6587\u540D / \u8DEF\u5F84\uFF09";
1917
1929
  readonly "project.search.empty": "\u6CA1\u6709\u5339\u914D\u300C{query}\u300D\u7684\u5DE5\u4F5C\u533A\u3002";
1930
+ readonly "project.group.workspaces": "\u5DE5\u4F5C\u533A";
1931
+ readonly "project.group.workshop": "\u5DE5\u574A";
1918
1932
  readonly "project.rename.row": "\u6539\u300C{name}\u300D\u7684\u4E2D\u6587\u540D";
1919
1933
  readonly "project.rename.current": "\u6539\u5F53\u524D\u5DE5\u4F5C\u533A\u7684\u4E2D\u6587\u540D\u2026";
1920
1934
  readonly "project.rename.title": "\u7ED9\u300C{name}\u300D\u914D\u4E00\u4E2A\u4E2D\u6587\u540D";
@@ -2089,6 +2103,7 @@ export declare const kit: {
2089
2103
  readonly "panels.market.add.failureIntegrity": "\u4E0B\u8F7D\u7684\u5B89\u88C5\u5305\u6821\u9A8C\u5931\u8D25";
2090
2104
  readonly "panels.market.add.failureTimeout": "\u5B89\u88C5\u8D85\u65F6";
2091
2105
  readonly "panels.market.add.failurePnpmMissing": "\u6CA1\u6709\u627E\u5230 pnpm\uFF0C\u65E0\u6CD5\u5B89\u88C5";
2106
+ readonly "panels.market.add.failureInstalled": "\u5B83\u5DF2\u7ECF\u5728\u8FD9\u4EFD profile \u91CC\u4E86\uFF1A\u8FD9\u4E00\u7248 dsh \u5F00\u7740\u70ED\u66F4\u65B0\uFF0C\u540C\u4E00\u4E2A\u5305\u4E0D\u8BB8\u5C31\u5730\u8986\u76D6\u88C5\uFF08\u5F97\u5148\u5378\u8F7D\u518D\u88C5\uFF09\uFF0C\u800C\u8FD9\u6B21\u4E5F\u6CA1\u80FD\u628A\u5B83\u5378\u4E0B\u6765";
2092
2107
  readonly "panels.market.add.failureGeneric": "\u5B89\u88C5\u8FC7\u7A0B\u4E2D\u51FA\u9519\uFF0C\u539F\u56E0\u89C1\u5B89\u88C5\u8BE6\u60C5";
2093
2108
  readonly "panels.market.add.approveTitle": "\u9700\u8981\u4F60\u5141\u8BB8\u5B89\u88C5\u811A\u672C";
2094
2109
  readonly "panels.market.add.approveCaution": "\u53EA\u5141\u8BB8\u4F60\u4FE1\u5F97\u8FC7\u7684\u5305\uFF1A\u5B89\u88C5\u811A\u672C\u4F1A\u4EE5\u4F60\u7684\u6743\u9650\u5728\u8FD9\u53F0\u673A\u5668\u4E0A\u8FD0\u884C\u3002";
@@ -2244,7 +2259,7 @@ export declare const kit: {
2244
2259
  readonly "panel.conversation": "\u5BF9\u8BDD";
2245
2260
  readonly "panels.label": "\u5168\u5C40\u9762\u677F";
2246
2261
  };
2247
- 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.add.busy" | "project.add.failed" | "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.groupBoardless" | "panels.groupPlugins" | "panels.market.defaultHint" | "panels.market.defaultLabel" | "panels.market.defaultLocked" | "panels.followAll" | "panels.followAllConfirmTitle" | "panels.followAllConfirmDetail" | "panels.followAllConfirmAck" | "panels.followAllConfirmYes" | "panels.followAllConfirmNo" | "panels.enabled" | "panels.disabled" | "panels.choose" | "panels.buildModule" | "panels.failed" | "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.notActive" | "panels.market.notUsable" | "panels.market.broken" | "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.needCommands" | "panels.market.localMark" | "panels.market.localHint" | "panels.market.noSource" | "panels.market.badSource" | "panels.market.empty" | "panels.market.sectionPlugins" | "panels.market.moduleOutdated" | "panels.market.moduleRefused" | "panels.market.moduleRefusedDetail" | "panels.market.moduleRestartHint" | "panels.market.workbenchName" | "panels.market.workbenchLocal" | "panels.market.pluginKeptInUse" | "panels.market.pluginKeptUnsure" | "panels.market.pluginKeptHeld" | "panels.market.pluginKeptUnnamed" | "panels.market.pluginBroken" | "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.problemNotWorkbenchModule" | "panels.market.add.problemNotModuleOrPlugin" | "panels.market.add.failureNotModuleOrPlugin" | "panels.market.add.installedPlugin" | "panels.market.add.pluginPreview" | "panels.market.add.pluginAlias" | "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.classifying" | "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" | "rightbar.openPlatform" | "coding.notARepo.title" | "error.unknown" | "board.title" | "panel.conversation" | "panels.label", string>;
2262
+ 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.add.busy" | "project.add.failed" | "project.search.label" | "project.search.placeholder" | "project.search.empty" | "project.group.workspaces" | "project.group.workshop" | "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.groupBoardless" | "panels.groupPlugins" | "panels.market.defaultHint" | "panels.market.defaultLabel" | "panels.market.defaultLocked" | "panels.followAll" | "panels.followAllConfirmTitle" | "panels.followAllConfirmDetail" | "panels.followAllConfirmAck" | "panels.followAllConfirmYes" | "panels.followAllConfirmNo" | "panels.enabled" | "panels.disabled" | "panels.choose" | "panels.buildModule" | "panels.failed" | "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.notActive" | "panels.market.notUsable" | "panels.market.broken" | "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.needCommands" | "panels.market.localMark" | "panels.market.localHint" | "panels.market.noSource" | "panels.market.badSource" | "panels.market.empty" | "panels.market.sectionPlugins" | "panels.market.moduleOutdated" | "panels.market.moduleRefused" | "panels.market.moduleRefusedDetail" | "panels.market.moduleRestartHint" | "panels.market.workbenchName" | "panels.market.workbenchLocal" | "panels.market.pluginKeptInUse" | "panels.market.pluginKeptUnsure" | "panels.market.pluginKeptHeld" | "panels.market.pluginKeptUnnamed" | "panels.market.pluginBroken" | "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.problemNotWorkbenchModule" | "panels.market.add.problemNotModuleOrPlugin" | "panels.market.add.failureNotModuleOrPlugin" | "panels.market.add.installedPlugin" | "panels.market.add.pluginPreview" | "panels.market.add.pluginAlias" | "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.failureInstalled" | "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.classifying" | "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" | "rightbar.openPlatform" | "coding.notARepo.title" | "error.unknown" | "board.title" | "panel.conversation" | "panels.label", string>;
2248
2263
  };
2249
2264
  mergeMessages(base: apiModule.Dictionaries, contributions: readonly MessagesContribution[]): apiModule.Dictionaries;
2250
2265
  mergeMessagesSkipping(base: apiModule.Dictionaries, contributions: readonly MessagesContribution[]): apiModule.MessagesMerge;
@@ -2262,6 +2277,8 @@ export declare const kit: {
2262
2277
  readonly "project.search.label": "\u641C\u7D22\u5DE5\u4F5C\u533A";
2263
2278
  readonly "project.search.placeholder": "\u641C\u7D22\u5DE5\u4F5C\u533A\uFF08\u76EE\u5F55\u540D / \u4E2D\u6587\u540D / \u8DEF\u5F84\uFF09";
2264
2279
  readonly "project.search.empty": "\u6CA1\u6709\u5339\u914D\u300C{query}\u300D\u7684\u5DE5\u4F5C\u533A\u3002";
2280
+ readonly "project.group.workspaces": "\u5DE5\u4F5C\u533A";
2281
+ readonly "project.group.workshop": "\u5DE5\u574A";
2265
2282
  readonly "project.rename.row": "\u6539\u300C{name}\u300D\u7684\u4E2D\u6587\u540D";
2266
2283
  readonly "project.rename.current": "\u6539\u5F53\u524D\u5DE5\u4F5C\u533A\u7684\u4E2D\u6587\u540D\u2026";
2267
2284
  readonly "project.rename.title": "\u7ED9\u300C{name}\u300D\u914D\u4E00\u4E2A\u4E2D\u6587\u540D";
@@ -2436,6 +2453,7 @@ export declare const kit: {
2436
2453
  readonly "panels.market.add.failureIntegrity": "\u4E0B\u8F7D\u7684\u5B89\u88C5\u5305\u6821\u9A8C\u5931\u8D25";
2437
2454
  readonly "panels.market.add.failureTimeout": "\u5B89\u88C5\u8D85\u65F6";
2438
2455
  readonly "panels.market.add.failurePnpmMissing": "\u6CA1\u6709\u627E\u5230 pnpm\uFF0C\u65E0\u6CD5\u5B89\u88C5";
2456
+ readonly "panels.market.add.failureInstalled": "\u5B83\u5DF2\u7ECF\u5728\u8FD9\u4EFD profile \u91CC\u4E86\uFF1A\u8FD9\u4E00\u7248 dsh \u5F00\u7740\u70ED\u66F4\u65B0\uFF0C\u540C\u4E00\u4E2A\u5305\u4E0D\u8BB8\u5C31\u5730\u8986\u76D6\u88C5\uFF08\u5F97\u5148\u5378\u8F7D\u518D\u88C5\uFF09\uFF0C\u800C\u8FD9\u6B21\u4E5F\u6CA1\u80FD\u628A\u5B83\u5378\u4E0B\u6765";
2439
2457
  readonly "panels.market.add.failureGeneric": "\u5B89\u88C5\u8FC7\u7A0B\u4E2D\u51FA\u9519\uFF0C\u539F\u56E0\u89C1\u5B89\u88C5\u8BE6\u60C5";
2440
2458
  readonly "panels.market.add.approveTitle": "\u9700\u8981\u4F60\u5141\u8BB8\u5B89\u88C5\u811A\u672C";
2441
2459
  readonly "panels.market.add.approveCaution": "\u53EA\u5141\u8BB8\u4F60\u4FE1\u5F97\u8FC7\u7684\u5305\uFF1A\u5B89\u88C5\u811A\u672C\u4F1A\u4EE5\u4F60\u7684\u6743\u9650\u5728\u8FD9\u53F0\u673A\u5668\u4E0A\u8FD0\u884C\u3002";
@@ -0,0 +1,13 @@
1
+ export interface WorkspaceHeadings {
2
+ readonly workspaces: string;
3
+ readonly workshop: string;
4
+ }
5
+ export interface WorkspaceSectionPlan<T> {
6
+ readonly id: 'workspaces' | 'workshop';
7
+ readonly heading: string | null;
8
+ readonly items: readonly T[];
9
+ }
10
+ export declare function workspaceSections<T extends {
11
+ readonly path: string;
12
+ }>(items: readonly T[], headings: WorkspaceHeadings): readonly WorkspaceSectionPlan<T>[];
13
+ export declare function flattenSections<T>(sections: readonly WorkspaceSectionPlan<T>[]): readonly T[];
@@ -1,7 +1,8 @@
1
1
  import type { Translate, WorkspaceView } from '@dsh-workbench/shared';
2
2
  import type { MenuEntry } from '@deepseek-ai/dsh-client-ui-primitives';
3
+ import type { WorkspaceSectionPlan } from './workspace-groups';
3
4
  export interface WorkspaceItemsOptions {
4
- readonly results: readonly WorkspaceView[];
5
+ readonly sections: readonly WorkspaceSectionPlan<WorkspaceView>[];
5
6
  readonly currentId: string | null;
6
7
  readonly hoverId: string | null;
7
8
  readonly t: Translate;
@@ -0,0 +1,69 @@
1
+ import type { DshToolDefinition } from '@dsh-workbench/shared';
2
+ import { type WorkspaceStore } from '@dsh-workbench/shared/host';
3
+ import { createPluginUnits } from '../../../shared/api/host/plugin-units';
4
+ import { type UnitRegistry } from '../../../shared/api/host/unit-registry';
5
+ import type { PluginLedger } from '../model/plugin-ledger';
6
+ import { type PanelsService } from '../model/service';
7
+ export declare const COMMANDS: ({
8
+ site: string;
9
+ name: string;
10
+ description: string;
11
+ access: string;
12
+ browser: boolean;
13
+ siteSession: string;
14
+ domain: string;
15
+ args: {
16
+ name: string;
17
+ type: string;
18
+ required: boolean;
19
+ help: string;
20
+ }[];
21
+ } | {
22
+ site: string;
23
+ name: string;
24
+ description: string;
25
+ access: string;
26
+ browser: boolean;
27
+ args: {
28
+ name: string;
29
+ type: string;
30
+ required: boolean;
31
+ help: string;
32
+ }[];
33
+ siteSession?: undefined;
34
+ domain?: undefined;
35
+ })[];
36
+ export interface Harness {
37
+ readonly registry: UnitRegistry;
38
+ readonly panels: PanelsService;
39
+ readonly tools: Map<string, DshToolDefinition>;
40
+ readonly gate: {
41
+ deniedTools(workspace: string | null): readonly string[];
42
+ };
43
+ readonly manager: ReturnType<typeof createPluginUnits>;
44
+ readonly problems: string[];
45
+ readonly definitions: () => DshToolDefinition[];
46
+ readonly commands: () => readonly string[];
47
+ readonly opencliCalls: () => readonly {
48
+ readonly args: readonly string[];
49
+ readonly workdir?: string;
50
+ readonly session?: string;
51
+ }[];
52
+ readonly toolOf: (name: string) => DshToolDefinition | undefined;
53
+ readonly ownerOf: (name: string) => {
54
+ readonly needsApproval?: unknown;
55
+ readonly manifest: unknown;
56
+ } | undefined;
57
+ readonly units: () => readonly string[];
58
+ }
59
+ export declare function deny(h: Harness, workspace: string): string[];
60
+ export declare function harnessOf(options: {
61
+ readonly store: WorkspaceStore;
62
+ readonly ledger: PluginLedger;
63
+ readonly pluginRows: () => unknown;
64
+ readonly commands?: unknown;
65
+ readonly declared?: ReadonlyMap<string, ReadonlySet<string>>;
66
+ readonly moduleTools?: readonly string[];
67
+ readonly opencliReplies?: readonly unknown[];
68
+ readonly failTools?: readonly string[];
69
+ }): Harness;
@@ -21,6 +21,11 @@ export interface BundleInstallDeps {
21
21
  readonly runAll: (commands: readonly PluginSourceCommand[]) => Promise<void>;
22
22
  readonly supplyAfter: (module: InstalledModule, change: BundleChange) => Promise<BundleSupply>;
23
23
  readonly rememberSource: (manager: BundleManager, pkg: string, registry: string | undefined) => Promise<void>;
24
+ readonly remove?: ((pkg: string) => Promise<BundleChange>) | undefined;
24
25
  }
25
26
  export declare function installDshBundle(deps: Omit<BundleInstallDeps, 'spec' | 'options'>, spec: string, options?: BundleInstallOptions): Promise<BundleInstallOutcome>;
27
+ export type ReplaceBundleDeps = Omit<BundleInstallDeps, 'spec' | 'options' | 'remove'> & {
28
+ readonly remove: (pkg: string) => Promise<BundleChange>;
29
+ };
30
+ export declare function replaceDshBundle(deps: ReplaceBundleDeps, spec: string, options?: BundleInstallOptions): Promise<BundleInstallOutcome>;
26
31
  export declare function installRouted(deps: BundleInstallDeps): Promise<BundleInstallOutcome>;
@@ -1,3 +1,5 @@
1
1
  export declare const DIY_PRESET_ID = "workbench-diy";
2
+ export declare const WORKSHOP_RELATIVE = "workbench/diy";
2
3
  export declare const WORKSHOP_TITLE = "\u5DE5\u4F5C\u53F0DIY";
3
4
  export declare const WORKSHOP_PAST_TITLES: readonly string[];
5
+ export declare function isWorkshopPath(path: string): boolean;
@@ -1,3 +1,2 @@
1
1
  import type { DshHostContext } from '@dsh-workbench/shared';
2
- export declare const WORKSHOP_RELATIVE = "workbench/diy";
3
2
  export declare function workshopPathOf(ctx: DshHostContext): string | null;
@@ -14,6 +14,8 @@ export interface PluginCommand {
14
14
  readonly name: string;
15
15
  readonly description: string;
16
16
  readonly access: string;
17
+ readonly browser: boolean;
18
+ readonly siteSession: string;
17
19
  readonly domain?: string;
18
20
  readonly args: readonly PluginCommandArg[];
19
21
  }
@@ -32,6 +34,9 @@ export interface CommandRow {
32
34
  readonly name: string;
33
35
  readonly description: string;
34
36
  readonly access: string;
37
+ readonly browser: boolean;
38
+ readonly siteSession: string;
39
+ readonly domain?: string;
35
40
  readonly args: readonly PluginCommandArg[];
36
41
  }
37
42
  export interface PluginCatalogSnapshot {
@@ -1,9 +1,13 @@
1
- import type { ApprovalDetail, ApprovalPolicy } from '@dsh-workbench/shared/host';
1
+ import type { ApprovalDetail, ApprovalPolicy, OpencliSession } from '@dsh-workbench/shared/host';
2
2
  import type { PluginCommand } from './plugin-catalog';
3
+ export declare const RUN_CODE_TOOL = "run_code";
4
+ export declare const PLUGIN_PROMPT_BUDGET = 4000;
3
5
  export declare function pluginToolName(plugin: string, command: string): string;
6
+ export declare function pluginPromptChars(command: PluginCommand): number;
4
7
  export declare function pluginToolParameters(command: PluginCommand): Record<string, unknown>;
5
8
  export declare function pluginToolDescription(command: PluginCommand): string;
6
9
  export declare function pluginToolWrites(command: PluginCommand): boolean;
10
+ export declare function pluginToolSession(command: PluginCommand): OpencliSession;
7
11
  export declare function pluginToolArgv(command: PluginCommand, raw: unknown): string[];
8
12
  export declare function pluginKeyArgs(command: PluginCommand, raw: unknown): string;
9
13
  export declare function pluginApprovalQuestion(command: PluginCommand, raw: unknown): ApprovalDetail;
@@ -16,6 +16,7 @@ export interface PluginUnitRow {
16
16
  readonly version: string;
17
17
  readonly commands: number;
18
18
  readonly synthesized: number;
19
+ readonly chars: number;
19
20
  readonly tools: readonly string[];
20
21
  }
21
22
  export interface PluginUnitReport {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dsh-workbench/core",
3
- "version": "0.2.2",
3
+ "version": "0.2.4",
4
4
  "description": "个人工作台:Agent 工作台外壳(左栏 + 常驻对话 + 自研右侧数据面板)。",
5
5
  "type": "module",
6
6
  "icon": "./icon.svg",
@@ -87,7 +87,7 @@
87
87
  "access": "public"
88
88
  },
89
89
  "dependencies": {
90
- "@dsh-workbench/shared": "0.2.2"
90
+ "@dsh-workbench/shared": "0.2.4"
91
91
  },
92
92
  "scripts": {
93
93
  "build": "node scripts/build.mjs && node scripts/build-types.mjs",