Skip to content

docs(plugins): macOS 公共 API 与 SDK 文档实施计划 - #1548

Merged
xiaoyumuxi merged 2 commits into
previewfrom
codex/plugin-api-plan
Oct 28, 2026
Merged

xiaoyumuxi merged 2 commits into
previewfrom
codex/plugin-api-plan

Conversation

@xiaoyumuxi

Copy link
Copy Markdown
Collaborator

目的与范围

按本次需求,先走 macOS 插件路线,盘点现有源码并参考 OpenIDEA / VS Code,把需要开放的 API 和需要编写的开发文档拆成可执行计划。

这是 Draft 计划 PR,不是功能实现;不加入 Windows 任务或双端验收前置,不修改运行时代码、插件 schema、SDK、发版元数据或功能矩阵状态。

具体改动

新增 docs/development/macos-plugin-api-plan.md

  • 固定 Lithe preview、OpenIDEA、lithe-plugin-docs 的研究 commit,列出 19 组本地源码/决策证据入口;外部比较链接到固定源码与 VS Code 官方文档。
  • 区分现有公共能力、仅内部接口、待补接口及未合并工作:Mac 已有 Tree/List/Form、包内网页、外部 backend、私有函数与 credentials;不再将其描述成“只有静态文本窗口”。明确 backend:1 是应用级、页面入口,不是通用工作区后端。
  • 列出 API-01–39 共 39 项能力任务,逐项记录候选操作、调用方向、源码 owner、权限/作用域、阶段和验收:命令/事件、文件树/搜索、文档/选区/编辑、原生 UI/Webview、HTML/外部浏览器、设置/状态/凭据、进程/终端、语言/诊断、Build/Run/Test/Debug/VCS/Services、项目生成、自定义编辑器、依赖/远程/AI/WASM、语言包/网络/账号。
  • 明确“按钮监听”应建模为命令或语义事件;区分文本编辑器、内嵌 HTML、插件自有网页和系统浏览器,禁止任意网页继承插件 bridge。
  • 补齐版本协商、多窗口/工作区 generation、dirty 文档、UTF-16/位置转换、版本冲突/undo/IME、符号链接竞态、递归调用拒绝、取消/迟到结果、预算和清理的设计门槛;进程隔离不冒充 OS 沙盒,bundle/插件包保持只读。
  • 列出 DOC-01–17 共 17 项公开文档交付任务与统一 API 文档模板;公开指南、SDK、样例继续归 lithe-plugin-docs,本仓库只放内部执行计划。
  • 核对 Node/Java/Rust SDK 源码与 release 差异;不把 Java 写成已有 VCS/credentials,也不把 Rust 文档中的发布方案当已核实 release。契约副本 lock、SDK main、正式发布物与宿主能力分开记录。
  • 给出 M0–M4 的小 PR 切片和三个真实验收插件:选区转换器、分页文件浏览器、HTML 预览启动器。WASM 是可选后续运行时,不是 Tauri 专属或首版 API 的前置条件。
  • 标记 feat(plugins): #1495 原生 Provider 工作流与只读工程模型共享 #1517 的 Build/Run/Test/Debug 准备及只读模型输入为在途工作,按其最终版本接续,避免重复造协议;盘点时尚未合并。
  • 记录契约/Core 同改、协议变更合并前 SDK E2E、合并后按 preview commit 同步到 lithe-plugin-docs 的交付顺序。

更新已有公共扩展提案 Note

  • 更新 .agents/notes/proposed/architecture/2026-10-13-public-extension-contract-and-provider-api.md,保留“提议中”,修正第一阶段静态文本/纯领域插件限制的过时表述。
  • 记录 Mac 优先、四类扩展入口、外部执行/权限/编辑与网页隔离、WASM 非前置、兼容性和文档归属,链接到实施计划,不复制完整 API 清单。
  • 补充备选方案、Mac 验收要求和风险;Windows 适配不再是本计划前置条件。

验证

  • 76 个本地 Markdown 链接目标存在;39 个 API ID / 17 个文档 ID 唯一且连续。
  • git diff --check / git diff --cached --check
  • ./scripts/verify-agent-notes.sh:165 篇 active Notes 通过。
  • ./scripts/verify-runtime-bundle-immutability.sh
  • node scripts/verify-app-language-localization.mjs
  • node scripts/generate-i18n.mjs --check
  • ./scripts/verify-shared-contracts.sh
  • ./scripts/verify-platform-feature-matrix.sh:211 项能力通过。
  • git diff --name-only origin/preview...HEAD:仅上述两份文档。
  • ./scripts/verify-platform-feature-matrix-change.sh 2cc32e60b2a4129d4a4c19350e97a7ae62440232 HEAD:无平台实现路径改动,无需 matrix-exempt。

纯文档计划未构建/启动 Lithe,也未运行 SDK E2E 或三个未来样例;静态检查不代表运行时验收。未改正式契约,因此本 PR 不同步契约副本、不发布 SDK。

@ghfind-review ghfind-review Bot added the review: medium ghfind author score; see https://ghfind.com label Oct 28, 2026
@xiaoyumuxi
xiaoyumuxi marked this pull request as ready for review October 28, 2026 07:53
@lithe-code-review

lithe-code-review Bot commented Oct 28, 2026 •

Copy link
Copy Markdown

Lithe Review

结论: ❓ 审查未完成

任务: 386

审查状态:已由服务器取消

可以重新评论 @lithe review 召唤。维护者可通过任务编号查看服务器日志。

@xiaoyumuxi
xiaoyumuxi merged commit 9a78c66 into preview Oct 28, 2026
18 checks passed
xiaoyumuxi added a commit that referenced this pull request Oct 28, 2026
* feat(plugins): execute native build tasks in workspace providers (#1495)

* feat(plugins): discover and execute native provider tests (#1495)

* feat(plugins): prepare and persist provider application runs (#1495)

* feat(plugins): prepare native provider debug sessions (#1495)

* feat(plugins): share read-only provider model inputs (#1495)

* fix(build): isolate producer revisions and own run saves

* feat(plugins): Java Support 独立分发、迁移与按需安装 (#1483)

* feat(plugins): 支持 Java 签名安装与双架构独立发布基础

* feat(plugins): 完成 Java Support 迁移与按需分发入口

* fix(plugins): suggest Java restoration after completed removal

* docs(plugins): inventory Maven and Java migration for #1495 (#1513)

* fix(run): 统一跨平台启动环境、容错扫描与构建事件过滤 (#1543)

* fix(run): share launch environment and resilient workspace policies

* fix(run): stop shared Java enumeration at its source limit

* docs(plugins): plan macOS public APIs and SDK documentation (#1548)

---------

Co-authored-by: Lichenkang <2188718831@qq.com>
Co-authored-by: Xiaoyumuxi <23722032@bjtu.edu.cn>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

review: medium ghfind author score; see https://ghfind.com

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant