mirror of
https://github.com/openclaw/openclaw.git
synced 2026-03-30 02:40:18 +00:00
fix(plugins): ship Feishu bundled runtime dependency (#39990)
* fix: ship feishu bundled runtime dependency * test: align feishu bundled dependency specs
This commit is contained in:
@@ -12,20 +12,18 @@ Feishu (Lark) is a team chat platform used by companies for messaging and collab
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Plugin required
|
## Bundled plugin
|
||||||
|
|
||||||
Install the Feishu plugin:
|
Feishu ships bundled with current OpenClaw releases, so no separate plugin install
|
||||||
|
is required.
|
||||||
|
|
||||||
|
If you are using an older build or a custom install that does not include bundled
|
||||||
|
Feishu, install it manually:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
openclaw plugins install @openclaw/feishu
|
openclaw plugins install @openclaw/feishu
|
||||||
```
|
```
|
||||||
|
|
||||||
Local checkout (when running from a git repo):
|
|
||||||
|
|
||||||
```bash
|
|
||||||
openclaw plugins install ./extensions/feishu
|
|
||||||
```
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Quickstart
|
## Quickstart
|
||||||
|
|||||||
@@ -12,20 +12,16 @@ title: 飞书
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 需要插件
|
## 内置插件
|
||||||
|
|
||||||
安装 Feishu 插件:
|
当前版本的 OpenClaw 已内置 Feishu 插件,因此通常不需要单独安装。
|
||||||
|
|
||||||
|
如果你使用的是较旧版本,或是没有内置 Feishu 的自定义安装,可手动安装:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
openclaw plugins install @openclaw/feishu
|
openclaw plugins install @openclaw/feishu
|
||||||
```
|
```
|
||||||
|
|
||||||
本地 checkout(在 git 仓库内运行):
|
|
||||||
|
|
||||||
```bash
|
|
||||||
openclaw plugins install ./extensions/feishu
|
|
||||||
```
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 快速开始
|
## 快速开始
|
||||||
|
|||||||
25
src/plugins/bundled-runtime-deps.test.ts
Normal file
25
src/plugins/bundled-runtime-deps.test.ts
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
import fs from "node:fs";
|
||||||
|
import path from "node:path";
|
||||||
|
import { describe, expect, it } from "vitest";
|
||||||
|
|
||||||
|
type PackageManifest = {
|
||||||
|
dependencies?: Record<string, string>;
|
||||||
|
};
|
||||||
|
|
||||||
|
function readJson<T>(relativePath: string): T {
|
||||||
|
const absolutePath = path.resolve(process.cwd(), relativePath);
|
||||||
|
return JSON.parse(fs.readFileSync(absolutePath, "utf8")) as T;
|
||||||
|
}
|
||||||
|
|
||||||
|
describe("bundled plugin runtime dependencies", () => {
|
||||||
|
it("keeps bundled Feishu runtime deps available from the published root package", () => {
|
||||||
|
const rootManifest = readJson<PackageManifest>("package.json");
|
||||||
|
const feishuManifest = readJson<PackageManifest>("extensions/feishu/package.json");
|
||||||
|
const feishuSpec = feishuManifest.dependencies?.["@larksuiteoapi/node-sdk"];
|
||||||
|
const rootSpec = rootManifest.dependencies?.["@larksuiteoapi/node-sdk"];
|
||||||
|
|
||||||
|
expect(feishuSpec).toBeTruthy();
|
||||||
|
expect(rootSpec).toBeTruthy();
|
||||||
|
expect(rootSpec).toBe(feishuSpec);
|
||||||
|
});
|
||||||
|
});
|
||||||
Reference in New Issue
Block a user