feat: 插件检验器 plugin:check + L6/L7 教程 + 模板接入组件库——性能与样式标准成为机器关卡
This commit is contained in:
@@ -7,7 +7,8 @@
|
||||
```
|
||||
manifest.json 清单(id/name/version/minContract 必改)
|
||||
main.mjs 主进程侧:Agent 能力 + 设置声明 + 日志埋点(范例齐备)
|
||||
src/renderer.tsx 宿主内 React 组件源码(JSX)
|
||||
src/renderer.tsx 宿主内 React 组件源码(JSX;公共组件库 + 三态示范)
|
||||
renderer.mjs 预构建产物(开箱即用;改了源码需重新构建)
|
||||
shims/ 构建期把 react 别名到宿主单例(勿改)
|
||||
```
|
||||
|
||||
@@ -16,11 +17,14 @@ shims/ 构建期把 react 别名到宿主单例(勿改)
|
||||
```sh
|
||||
esbuild src/renderer.tsx --bundle --format=esm --outfile=renderer.mjs \
|
||||
--jsx=automatic \
|
||||
--alias:react=./shims/react.js --alias:react/jsx-runtime=./shims/jsx-runtime.js
|
||||
--alias:react=./shims/react.js --alias:react/jsx-runtime=./shims/jsx-runtime.js \
|
||||
--alias:@aso/plugin-sdk=../../packages/plugin-sdk/src/index.ts \
|
||||
--alias:@aso/plugin-sdk/ui=../../packages/plugin-sdk/src/ui.tsx
|
||||
```
|
||||
|
||||
(esbuild 可用 `pnpm dlx esbuild@<版本>` 或任意 ≥0.17 版本;`--alias` 需 ≥0.17。)
|
||||
不需要 UI 时:删除 `entry.renderer` 与 `src/`、`shims/`,只保留 main.mjs。
|
||||
(esbuild 可用 `pnpm dlx esbuild@<版本>` 或任意 ≥0.17 版本;`--alias` 需 ≥0.17。
|
||||
两条 sdk alias 指向仓库内源码——本目录复制到别处后,改成 sdk 源码的实际路径即可。)
|
||||
不需要 UI 时:删除 `entry.renderer` 与 `src/`、`shims/`、`renderer.mjs`,只保留 main.mjs。
|
||||
|
||||
## 放置位置(三选一,按优先级)
|
||||
|
||||
@@ -32,13 +36,16 @@ esbuild src/renderer.tsx --bundle --format=esm --outfile=renderer.mjs \
|
||||
|
||||
## 验证
|
||||
|
||||
1. 重启或开关重载 → 设置 → 插件 → 对应作用域出现插件
|
||||
2. 日志 `userData/logs/main-*.log` 有 `plugin activated pluginId=my-plugin`
|
||||
3. 对 Agent 说"ping 一下我的插件" → 触发 `my_plugin_ping`
|
||||
4. 面板/侧栏出现 React 组件,点击 +1 正常(hooks 生效)
|
||||
1. `pnpm plugin:check <本目录>` → 0 error(性能与样式机器关卡,见 L7)
|
||||
2. 重启或开关重载 → 设置 → 插件 → 对应作用域出现插件
|
||||
3. 日志 `userData/logs/main-*.log` 有 `plugin activated pluginId=my-plugin`
|
||||
4. 对 Agent 说"ping 一下我的插件" → 触发 `my_plugin_ping`
|
||||
5. 面板/侧栏出现 React 组件:等待/数据/开关/重载齐全(三态示范,hooks 生效)
|
||||
|
||||
## 下一步
|
||||
|
||||
- 教程索引:`docs/plugins/README.md`(L0→L5)
|
||||
- 教程索引:`docs/plugins/README.md`(L0→L7)
|
||||
- 公共组件库与三态铁律:`docs/plugins/07-ui-components.md`(renderer.tsx 即示范)
|
||||
- 性能与检验器:`docs/plugins/08-performance.md`
|
||||
- 视觉规范:`docs/plugins/DESIGN.md`(提发布前过一遍自检清单)
|
||||
- 契约全集:`docs/plugins.md`
|
||||
|
||||
Reference in New Issue
Block a user