ワンクリックで
app-shell
// Work on settings, command palette, sidebar, shortcuts, modals, dockable panels, favorites, global navigation, persistence, and visual shell tests
// Work on settings, command palette, sidebar, shortcuts, modals, dockable panels, favorites, global navigation, persistence, and visual shell tests
Add support for a Kubernetes resource type by choosing the required catalog, refresh, detail, object-map, permission, frontend, docs, and test surfaces
Work on Luxury Yacht object-panel details, YAML, actions, logs, shell/debug tabs, docked panels, related objects, and tests
Work on Luxury Yacht RBAC permission checks, capability descriptors, permission-denied diagnostics, object action availability, YAML/edit/delete/scale/restart gating, and capability tests
Work on Luxury Yacht canonical Kubernetes resource identity, status presentation, facts, ResourceLink relationships, DTO projection, table/detail/object-map parity, and shared resource model tests
Guide for safely modifying the refresh/streaming subsystem — covers the full domain lifecycle, registration points, and known fragility areas
Work on Luxury Yacht kubeconfig selection, multi-cluster client lifecycle, auth failure/recovery, selected/background clusters, cluster tabs, refresh subsystem rebuilds, and object catalog lifecycle
| name | app-shell |
| description | Work on settings, command palette, sidebar, shortcuts, modals, dockable panels, favorites, global navigation, persistence, and visual shell tests |
Use this when touching settings, preferences, command palette, sidebar, shortcuts, global navigation, modals, overlays, dockable panels, favorites, saved views, app-shell persistence, or visual shell tests.
Read:
AGENTS.mdfrontend/AGENTS.mddocs/frontend/component-structure.mddocs/frontend/keyboard.mddocs/frontend/modals.mddocs/frontend/tabs.mddocs/frontend/dockable-panels.mddocs/architecture/data-access.md for app state and persisted readsSettings-specific contract:
readAppSettingsSchema.frontend/src/core/settings/appPreferences.ts owns the frontend schema
metadata cache and typed metadata helpers. Settings UI sections should consume
defaults, bounds, enum values, validation hints, and runtime flags through
those helpers instead of duplicating backend constants.appPreferences.ts for first paint,
Wails-unavailable tests, or schema-load failure; it is not a second settings
contract.core/settings when UI needs preference metadata.UpdateAppPreferences, then roll back cache, emitted events, and any
appearance localStorage mirrors on failure.UpdateAppPreferences returns normalized settings and changed keys. Do not
change that response shape unless a workflow genuinely needs schema metadata
in the mutation response.frontend/src/ui/settingsfrontend/src/core/settingsfrontend/src/core/app-state-accessbackend/app_settings.gofrontend/src/ui/command-palettefrontend/src/ui/shortcutsfrontend/src/ui/navigationfrontend/src/ui/layoutfrontend/src/ui/dockablefrontend/src/ui/modalsfrontend/src/ui/favoritesfrontend/src/shared/components/modalsfrontend/src/shared/components/tabscore/settings; keep fallback constants local
to the metadata layer only.UpdateAppPreferences, without adding non-preference settings like
selected kubeconfigs or saved themes to the preference schema.UpdateAppPreferences semantics: atomic
validation, persistence before runtime side effects, and rollback on
failure.mage qc:prerelease.Use focused checks while iterating:
npm run typecheck --prefix frontend
npm run test --prefix frontend -- settings command-palette shortcuts modals dockable favorites
Use browser or Storybook validation for visual behavior, then run
mage qc:prerelease for non-documentation changes.