# 包

一个包会把 Mini App 和它的扩展、技能一起安装。这个模块让 Mini App 读取它自己所在的包，从而知道随它一起来的是哪些扩展。

## MAESTROSDK.package.get() <Badge type="warning" text="尚未发布" />

返回安装这个 Mini App 的包。Cowork 根据调用所在的标签页判断是哪个 Mini App 在调用；页面不能查询别的包。

### 参数

无。

### 返回值

`Promise<PackageInfo | null>`

| 字段 | 类型 | 说明 |
|---|---|---|
| `name` | `string` | 包名，来自它的 `package.json` |
| `version` | `string` | 包的版本 |
| `resources[].kind` | `'extension' \| 'skill' \| 'miniapp'` | 资源的类型 |
| `resources[].name` | `string` | 扩展名、技能文件夹名，或 Mini App 的 `appId` |

`resources` 只列出这个包实际加载了的资源。名字已被另行安装的副本占用的资源，或自身清单无法读取的资源，不会列出。不返回任何路径或安装来源。

### 返回 `null` 的情况

| 情况 |
|---|
| 这个 Mini App 是单独安装的，不是从包安装的 |
| 页面不是已安装的 Mini App（是内置 Mini App 或网页） |
| 包已卸载，或它的文件夹已不存在 |
| 调用失败 |

### 示例

```js
const info = await MAESTROSDK.package.get();
if (info) {
  const extensions = info.resources.filter((r) => r.kind === 'extension').map((r) => r.name);
  title.textContent = `${info.name} ${info.version}`;
  list.textContent = extensions.join(', ');
}
```

结果是只读的。它不会启动、停止或批准扩展；这些仍在 **设置 › 扩展** 里操作。

## 相关

- [Extension SDK](https://docs.micromeet.ai/zh/extension-sdk/overview.md): 这些扩展可以调用什么
- [概览](https://docs.micromeet.ai/zh/miniapp-sdk/overview.md): Mini App SDK 的所有模块
