[Feature] 版本化声明式原生 UI 组件树与宿主 Renderer 接入
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 12/100
- Issue type
- Feature
- Clarity
- Needs clarification
- Activity status
- Active
- Tech stack
- swift
- Domain
- desktop, developer-experience
Research direction
The payload names no source files or tests. Start with PR #1206 and the linked design note on the public extension contract, since this issue is a follow-up to that review. The first deliverable is an agreed, versioned UI Schema, which the payload says is still open to contract review. Done means that schema and the macOS adapter plan are settled enough to split into smaller issues.
Written by the indexing model from the issue text.
Description
📦 迁移自 Lithe-IDEA/Lithe-IDEA#40
原作者arkleselect· 创建于 2026-10-13 14:57 UTC · 原状态 OPEN
本任务来自 PR #1206 的架构定位审查,属于后续阶段,不要求在 #1206 实现。当前 pluginAPIVersion=2 的字段、校验和兼容性保持不变。总跟踪 #1183、迁移 #1186,端到端验收 #1184。
设计说明:公共扩展契约与原生 Provider 接入方向。
目标
第三方插件通过 JSON UI 组件树接入原生界面;复杂内置或受信任原生内容通过宿主 Native View/Renderer Factory 注册,二者共享 #1206 的窗口管理。
工作范围与验收
- 单独版本化 UI Schema,定义 Tree/List/Form/Input/Button、数据源、事件、稳定组件 ID 与状态更新;具体字段随契约评审确定。
- macOS 使用 SwiftUI/AppKit 等原生适配器,保留宿主主题、键盘、焦点、IME、无障碍、标题与共享控件规范。
- 原生 Tree + 独立刷新命令,经授权 Provider 获取数据;不为刷新命令造空窗口。
- 组件树更新和异步事件有本地预算、取消和失效结果保护;禁用/恢复和布局持久化有端到端证据。
- Native View/Renderer Factory 面向内置或受信任原生模块,共用贡献 ID、停靠、显隐和 ModuleRuntime 生命周期。
- Windows 通过自己的宿主适配共享 JSON 与 fixtures,不复制 SwiftUI 或平台视图类型。
非目标
不引入插件 HTML/Webview/第三方前端框架,不恢复任意动态第三方 Swift Bundle;其 ABI、签名、分发及隔离另行设计。不改变 API v2 文本窗口兼容性。
- Dominant language
- TypeScript
- Stars
- 1.8k
- Forks
- 151
- Avg merge
- 12h 15m
- Merged PRs (30d)
- 270
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from 1lck/Lithe-IDEA
-
area:editor bug P0 platform:macos review: low
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
1lck/Lithe-IDEA#1118 · 2 comments ·
Maintainers usually reply within 1 day
-
[Feature] 打开项目文件功能优化Openarea:editor enhancement issue-form:feature P1 platform:macos review: low
Difficulty 3/5 1-2 days Newbie friendliness 45/100
1lck/Lithe-IDEA#1252 ·
Maintainers usually reply within 1 day
-
[Feature] Agent 历史支持当前工作区的 Codex / Claude 已归档会话查询与折叠分组展示Possibly taken @xiaoyumuxi claimed this today. Openarea:ai enhancement issue-form:feature P2 platform:cross-platform review: medium
1lck/Lithe-IDEA#1250 · 1 assignee ·
Maintainers usually reply within 1 day
-
area:ai bug issue-form:bug P0 platform:macos review: medium
Difficulty 4/5 3-5 days Newbie friendliness 15/100
1lck/Lithe-IDEA#1249 ·
Maintainers usually reply within 1 day
-
area:performance area:project area:workspace bug issue-form:bug P1 platform:macos review: medium
Difficulty 4/5 3-5 days Newbie friendliness 22/100
1lck/Lithe-IDEA#1245 ·
Maintainers usually reply within 1 day
Similar issues
-
area:ui effort:S enhancement priority:P2
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
QuantumNous/new-api#7839 ·
Maintainers usually reply within 1 day
-
good first issue maintenance
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
dark-princezz/stellar-hooks#1010 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
interledger/rhyza#352 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
Maintainers usually reply within 1 day