【特性需求/RFC】引入类似 Steam 创意工坊的开放模块挂载系统,支持用户自主扩展独立 UI 组件与全局功能

未关闭
#631 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
5/5
预计耗时
一周以上
新手友好度
25/100
Issue 类型
功能
描述清晰度
基本清楚
活跃度
冷清
技术栈
electron, next.js, typescript

调研方向

The issue names no files, tests, or entry points. Start by reading the requirements and locating the app’s UI, module-loading, and sandbox entry points; the work is done when a concrete, scoped design covers manifest-based mounting, independent interaction, and resource isolation.

由索引模型根据 Issue 内容生成。

描述

具体功能需求 (Requirements)

我们期望 CodePilot 能够向平台化演进,引入类似 Steam 创意工坊(Workshop) 的开放挂载能力,将功能的定义权和追加权交还给用户:

1. 界面与主菜单级挂载槽位 (UI & Menu Slots)

允许第三方组件在 CodePilot 的主界面(如 Workspace 侧边栏、主功能菜单、或独立全屏 Tab 标签页)中注册、追加并渲染自己完整的、有状态的 UI 界面。该界面在应用生命周期中全局常驻,不依赖聊天会话。

2. 标准配置清单驱动 (Manifest-Driven)

提供标准的清单配置文件(如 module.json)。开发者只需通过声明式配置,即可指定组件的挂载位置(如 sidebar-tab)、图标、名称以及所需的底层基础权限(如访问当前工作目录)。

3. 独立于 AI 的直接交互能力

挂载的独立组件拥有自己完整的生命周期。用户可以直接点击 Dashboard 上的按钮或图表直接触发后端的本地工具或脚本,实现人机界面的直接反向控制,无需每次都通过 AI 聊天框进行中转。

4. 安全与性能沙箱保护 (Sandbox)

必须建立完备的运行沙箱机制(如隔离的 Webview 进程通道),对社区挂载的组件进行内存与 CPU 开销限额,确保复杂的第三方图表和看板绝对不会阻塞主编辑器的核心线程,避免造成界面卡顿。

主要语言
TypeScript
星标
6.5k
派生
697
PR 合并指标
30 天内没有已合并 PR

环境准备

  • 没有 Dockerfile 或 Docker Compose 文件
  • 有 Pull Request 模板
  • 没有贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

op7418/CodePilot 的其他 Issue

查看 op7418/CodePilot 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。