背景
plugins/plugin-marketplace/src/protocol.ts 已经有 PROTECTED_PLUGIN_IDS、PROTECTED_PLUGIN_PACKAGES、PROTECTED_PLUGIN_REPOSITORIES 和 isProtectedMarketplacePlugin(),事务层也会拒绝修改内置插件。但当前 UI 仍会把它们作为普通卡片展示在“可用插件”列表里,只是显示 managed 徽标和“打开仓库”按钮,容易让用户误以为可以安装/升级。
目标
- 内置/受保护插件不再出现在默认“可用插件”列表中;要么归入新的 “Built-in / 内置” 分类,要么默认隐藏并提供一个“显示内置插件”开关。
- 对内置插件不能出现 install / update / uninstall 等自动安装入口(当前已由事务层兜底,UI 也要明确)。
- 保持 Desktop / Web / TUI 三端行为一致。
建议改动点
plugins/plugin-marketplace/src/catalog.ts:归一化时给 protected 插件打上 builtin / 分类标记。
plugins/plugin-marketplace/src/client/plugin.tsx:分类筛选、状态筛选和搜索逻辑。
plugins/tui-marketplace/src/marketplace.tsx 或 marketplace-controller.ts:TUI 列表同步。
tests/plugin-marketplace.test.ts:补充解析与 UI/控制器测试。
验收标准
- 默认视图不展示内置插件;开启“显示内置”后展示在独立分类,且无安装类操作。
- 直接构造 install / prepare 命令仍被拒绝(现有保护不回归)。
- 中英文文案同步更新。
背景
plugins/plugin-marketplace/src/protocol.ts已经有PROTECTED_PLUGIN_IDS、PROTECTED_PLUGIN_PACKAGES、PROTECTED_PLUGIN_REPOSITORIES和isProtectedMarketplacePlugin(),事务层也会拒绝修改内置插件。但当前 UI 仍会把它们作为普通卡片展示在“可用插件”列表里,只是显示 managed 徽标和“打开仓库”按钮,容易让用户误以为可以安装/升级。目标
建议改动点
plugins/plugin-marketplace/src/catalog.ts:归一化时给protected插件打上builtin/ 分类标记。plugins/plugin-marketplace/src/client/plugin.tsx:分类筛选、状态筛选和搜索逻辑。plugins/tui-marketplace/src/marketplace.tsx或marketplace-controller.ts:TUI 列表同步。tests/plugin-marketplace.test.ts:补充解析与 UI/控制器测试。验收标准