Phase 004: remove the desktop shell, website tooling, and bundled hermes CLI
- Drop all desktop/Electron branches, scripts, and UI (title bar, pets, desktop bridge); LAN endpoint kind is now web/custom only - Replace the bundled hermes CLI with user-side installation: add GET /api/hermes/cli-status plus a HermesMissingView onboarding guide - Remove the version-management UI (snapshots handled by git) and prune dead website/mcu/claude scripts and lockfile entries
This commit is contained in:
@@ -10,7 +10,6 @@ import ModelSelector from "@/components/layout/ModelSelector.vue";
|
||||
import ProfileSelector from "@/components/layout/ProfileSelector.vue";
|
||||
import LanguageSwitch from "@/components/layout/LanguageSwitch.vue";
|
||||
import ThemeSwitch from "@/components/layout/ThemeSwitch.vue";
|
||||
import VersionManagementModal from "@/components/layout/VersionManagementModal.vue";
|
||||
import { changelog } from "@/data/changelog";
|
||||
import { getStoredUsername, isStoredSuperAdmin } from "@/api/client";
|
||||
|
||||
@@ -25,11 +24,7 @@ const selectedKey = computed(() => {
|
||||
const isSuperAdmin = computed(() => isStoredSuperAdmin());
|
||||
const currentUsername = computed(() => getStoredUsername());
|
||||
const isVersionPreview = import.meta.env.VITE_HERMES_PREVIEW === '1';
|
||||
const isDesktopShell = computed(() =>
|
||||
(window as typeof window & { hermesDesktop?: { isDesktop?: boolean } }).hermesDesktop?.isDesktop === true,
|
||||
);
|
||||
const showChangelog = ref(false);
|
||||
const showVersionManagement = ref(false);
|
||||
const showDockerUpdateTip = ref(false);
|
||||
const isDockerRuntime = computed(() => appStore.isDocker);
|
||||
|
||||
@@ -87,10 +82,6 @@ function openChangelog() {
|
||||
showChangelog.value = true;
|
||||
}
|
||||
|
||||
function openVersionManagement() {
|
||||
showVersionManagement.value = true;
|
||||
}
|
||||
|
||||
function handleDockerUpdateTip() {
|
||||
showDockerUpdateTip.value = true;
|
||||
}
|
||||
@@ -361,20 +352,6 @@ function handleUpdateClick() {
|
||||
</span>
|
||||
<ThemeSwitch />
|
||||
</div>
|
||||
<NButton
|
||||
v-if="isDesktopShell"
|
||||
type="primary"
|
||||
size="tiny"
|
||||
block
|
||||
class="update-btn version-management-btn"
|
||||
:class="{ 'has-update': appStore.updateAvailable }"
|
||||
@click="openVersionManagement"
|
||||
>
|
||||
<span class="version-management-label">
|
||||
{{ t('sidebar.versionManagement') }}
|
||||
<span class="version-update-label">{{ t('sidebar.updateAvailableLabel') }}</span>
|
||||
</span>
|
||||
</NButton>
|
||||
<NButton v-if="appStore.clientOutdated" type="warning" size="tiny" block class="update-btn" @click="handleReloadClient">
|
||||
{{ t('sidebar.reloadClientVersion', { version: appStore.serverVersion }) }}
|
||||
</NButton>
|
||||
@@ -422,7 +399,6 @@ function handleUpdateClick() {
|
||||
</div>
|
||||
</div>
|
||||
</NModal>
|
||||
<VersionManagementModal v-if="isDesktopShell" v-model:show="showVersionManagement" />
|
||||
|
||||
<NModal v-model:show="showDockerUpdateTip" preset="dialog" :title="t('sidebar.dockerUpdateTitle')" style="width: 480px;">
|
||||
<div class="docker-update-modal">
|
||||
@@ -695,28 +671,6 @@ function handleUpdateClick() {
|
||||
border-radius: $radius-sm;
|
||||
}
|
||||
|
||||
.version-management-btn {
|
||||
.version-management-label {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
gap: 6px;
|
||||
min-width: 0;
|
||||
}
|
||||
|
||||
.version-update-label {
|
||||
display: none;
|
||||
flex: 0 0 auto;
|
||||
color: inherit;
|
||||
font-size: 11px;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
&.has-update .version-update-label {
|
||||
display: inline;
|
||||
}
|
||||
}
|
||||
|
||||
.changelog-list {
|
||||
max-height: min(70vh, 640px);
|
||||
overflow-y: auto;
|
||||
|
||||
Reference in New Issue
Block a user