# @framers/agentos-ext-cloud-linode 中文文档

规范地址：https://npmcn.com/package/%40framers/agentos-ext-cloud-linode/

版本：0\.1\.5
npm 元数据更新时间：2026-11-11T07:55:00.921Z
中文译文更新时间：2026-11-15T12:37:23.741Z
软件包许可：Apache-2\.0

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40framers/agentos-ext-cloud-linode
原文对照：https://npmcn.com/package/%40framers/agentos-ext-cloud-linode/?lang=original
项目主页：https://github.com/framerslab/agentos-extensions/tree/master/registry/curated/cloud/linode#readme
源码仓库：https://github.com/framerslab/agentos-extensions

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：132 kB，40 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：\>=22
- 运行依赖：0 个
- peer 依赖：@framers/agentos \>=0\.10\.40
- 首次发布：2026-05-02T11:35:00.759Z
- 最新版本发布：2026-11-11T07:55:00.402Z
- 近 30 天下载量：20053（2026-10-16 至 2026-11-14，npm 官方下载统计）
- 已发布版本数：6（近 12 个月 6 个）

## 中文简介

Linode/Akamai 云扩展——提供例,管理 DNS,部署 StackScripts,并通过Linode API v4创建节点Balances.

## 安装

```sh
npm install @framers/agentos-ext-cloud-linode
```

也可以使用：`pnpm add @framers/agentos-ext-cloud-linode`、`yarn add @framers/agentos-ext-cloud-linode`、`bun add @framers/agentos-ext-cloud-linode`

## README

# 线性云

此包提供了代理工具,用于提供 Linode 实例,部署 StackScripts,管理 DNS,删除实例,并通过 Linode REST API 创建NodeBalances .

## 安装

```bash
npm install @framers/agentos-ext-cloud-linode
```

同伴依赖 : `@framers/agentos` `>=0.10.40`。 。 。 .

## 使用量

```ts
import { AgentOS } from '@framers/agentos';

const agentos = await AgentOS.create({
  extensionManifest: {
    packs: [
      {
        package: '@framers/agentos-ext-cloud-linode',
        options: {
          token: process.env.LINODE_TOKEN ?? process.env.LINODE_API_TOKEN,
        },
      },
    ],
  },
});
```

## 配置

| 选项 | 秘密编号 | 环境变量 | 需求 | 默认 |
| --- | --- | --- | --- | --- |
| `token` | `linode.token` | `LINODE_TOKEN`,则 `LINODE_API_TOKEN` | 对 | 空字符串 |
| `baseUrl` | 无 | 无 | 没有 | `https://api.linode.com/v4` |
| `secrets` | `linode.token` | 无 | 没有 | A. 背景情况 `secrets`空对象 |

符号解析自 `options.token`,然后是环境变量. `options.secrets` 优先于上下文 `secrets`。 。 。 .

## 工具

| 工具 | 它会做什么 |
| --- | --- |
| `linodeCreateInstance` | 创建 Linode VPS 实例,其中包含区域、计划、 OS 图像和可选的 SSH 密钥. |
| `linodeListInstances` | 列出有状态的账户实例,IP地址,规格,标记,和页码. |
| `linodeDeployStackScript` | 使用 StackScript 安装新实例, 用于在第一个启动时自动设置 . |
| `linodeManageDns` | 创建 DNS 区域并添加,列表,更新,或删除 DNS 记录. |
| `linodeDeleteInstance` | 永久删除一个实例及其相关的磁盘, IP, 和备份 . |
| `linodeCreateNodeBalancer` | 在同一区域创建带有协议,健康检查和后端节点的节点. |

### `linodeCreateInstance`

| 参数 | 类型 | 需求 | 说明 |
| --- | --- | --- | --- |
| `region` | 字符串 | 对 | 区域弹丸. |
| `plan` | 字符串 | 对 | 实例类型或计划. |
| `image` | 字符串 | 对 | OS图像ID. |
| `label` | 字符串 | 没有 | 以人类可读标签为例. |
| `rootPass` | 字符串 | 对 | 有长度和复杂度要求的根密码. |
| `tags` | 字符串数组 | 没有 | 组织实例的标记 . |
| `authorizedKeys` | 字符串数组 | 没有 | 授权的SSH公用钥匙. |
| `backupsEnabled` | 布尔 | 没有 | 启用自动备份, 默认 : `false`。 。 。 . |
| `privateIp` | 布尔 | 没有 | 指定私人IP地址, 默认 : `false`。 。 。 . |

### `linodeListInstances`

| 参数 | 类型 | 需求 | 说明 |
| --- | --- | --- | --- |
| `page` | 编号 | 没有 | 页码用于页码. |
| `pageSize` | 编号 | 没有 | 每页结果数. |

### `linodeDeployStackScript`

| 参数 | 类型 | 需求 | 说明 |
| --- | --- | --- | --- |
| `stackscriptId` | 编号 | 对 | 由Linode Cloud 管理器或API提供的 StackScript ID. |
| `region` | 字符串 | 对 | 区域弹丸. |
| `plan` | 字符串 | 对 | 实例类型或计划. |
| `image` | 字符串 | 对 | OS图像与 StackScript 兼容. |
| `rootPass` | 字符串 | 对 | 实例的根密码 . |
| `stackscriptData` | 对象 | 没有 | StackScript 用户定义的字段为密钥值对; 检查 StackScript 所需的字段 . |
| `label` | 字符串 | 没有 | 以人类可读标签为例. |
| `tags` | 字符串数组 | 没有 | 组织实例的标记 . |
| `authorizedKeys` | 字符串数组 | 没有 | 授权的SSH公用钥匙. |
| `backupsEnabled` | 布尔 | 没有 | 启用自动备份, 默认 : `false`。 。 。 . |
| `privateIp` | 布尔 | 没有 | 指定私人IP地址, 默认 : `false`。 。 。 . |

### `linodeManageDns`

| 参数 | 类型 | 需求 | 说明 |
| --- | --- | --- | --- |
| `action` | 字符串 | 对 | DNS 动作 : `createZone`, (中文(简体) ), `listZones`, (中文(简体) ), `addRecord`, (中文(简体) ), `listRecords`, (中文(简体) ), `updateRecord`,或 `deleteRecord`。 。 。 . |
| `domain` | 字符串 | 没有 | 域名 `createZone`。 。 。 . |
| `soaEmail` | 字符串 | 没有 | SOA 电子邮件地址, 需要用于 `createZone`。 。 。 . |
| `domainId` | 编号 | 没有 | 域名区名,为记录操作所需的. |
| `recordId` | 编号 | 没有 | 所需记录身份 `updateRecord` 财务报告和审定财务报表 `deleteRecord`。 。 。 . |
| `recordType` | 字符串 | 没有 | DNS 记录类型 : `A`, (中文(简体) ), `AAAA`, (中文(简体) ), `CNAME`, (中文(简体) ), `MX`, (中文(简体) ), `TXT`, (中文(简体) ), `SRV`, (中文(简体) ), `NS`, (中文(简体) ), `CAA`,或 `PTR`; 需要为 `addRecord`。 。 。 . |
| `name` | 字符串 | 没有 | 记录名或主机名. |
| `target` | 字符串 | 没有 | 记录目标或值,例如IP地址,主机名,或文本值. |
| `priority` | 编号 | 没有 | MX或SRV优先;更低的表示更高优先. |
| `weight` | 编号 | 没有 | SRV重量. |
| `port` | 编号 | 没有 | SRV端口. |
| `ttlSec` | 编号 | 没有 | TTL 以秒计;0使用区默认. |
| `tag` | 字符串 | 没有 | CAA 标签, 例如 `issue`, (中文(简体) ), `issuewild`,或 `iodef`。 。 。 . |
| `tags` | 字符串数组 | 没有 | 域名标记 . |
| `description` | 字符串 | 没有 | 域名区说明. |

### `linodeDeleteInstance`

| 参数 | 类型 | 需求 | 说明 |
| --- | --- | --- | --- |
| `instanceId` | 编号 | 对 | 要删除的 Linode 实例的数字 ID . |

### `linodeCreateNodeBalancer`

| 参数 | 类型 | 需求 | 说明 |
| --- | --- | --- | --- |
| `region` | 字符串 | 对 | 区域 sattle; 必须匹配后端实例的区域 . |
| `label` | 字符串 | 没有 | 人可读取的"NodeBalancer"标签. |
| `clientConnThrottle` | 编号 | 没有 | 每个客户端IP每秒最大新TCP连接;0指无限并是计划默认. |
| `tags` | 字符串数组 | 没有 | 组织节点屏蔽器的标记 . |
| `config` | 对象 | 没有 | 初始端口,协议,算法,健康检查,以及后端节点. |
| `config.port` | 编号 | 没有 | 开口听. |
| `config.protocol` | 字符串 | 没有 | `http`, (中文(简体) ), `https`,或 `tcp`; 默认 : `http`。 。 。 . |
| `config.algorithm` | 字符串 | 没有 | `roundrobin`, (中文(简体) ), `leastconn`,或 `source`; 默认 : `roundrobin`。 。 。 . |
| `config.check` | 字符串 | 没有 | 健康检查类型 : `none`, (中文(简体) ), `connection`, (中文(简体) ), `http`,或 `http_body`。 。 。 . |
| `config.checkInterval` | 编号 | 没有 | 健康检查间隔数秒. |
| `config.checkTimeout` | 编号 | 没有 | 健康检查暂停数秒. |
| `config.checkAttempts` | 编号 | 没有 | 标记不健康前的检查失败次数 . |
| `config.checkPath` | 字符串 | 没有 | HTTP健康检查路径. |
| `config.stickiness` | 字符串 | 没有 | 会话粘度 : `none`, (中文(简体) ), `table`,或 `http_cookie`。 。 。 . |
| `config.nodes` | 对象数组 | 没有 | 同一区域的后端 Linode 实例 . |
| `config.nodes[].address` | 字符串 | 是的,在每个节点内 | 后端地址作为私人IP和端口. |
| `config.nodes[].label` | 字符串 | 是的,在每个节点内 | 节点标签. |
| `config.nodes[].weight` | 编号 | 没有 | 负载平衡重量. |
| `config.nodes[].mode` | 字符串 | 没有 | 节点模式 : `accept`, (中文(简体) ), `reject`, (中文(简体) ), `drain`,或 `backup`。 。 。 . |

## 页:1

缺少符号时启动失败 。 它通过获取账户信息来验证认证, 如果请求失败则失败 .

实例创建, StackScript 部署, DNS 更改,和 NodeBalancer 创建修改了云资源. 实例删除是不可逆的,并去除相關磁碟,IP和备份.

对于 `linodeManageDns`中,要求的一栏遵循计划。 执行还要求 `domain` 财务报告和审定财务报表 `soaEmail` 页:1 `createZone`· ; `domainId`, (中文(简体) ), `recordType`, (中文(简体) ), `name`,以及 `target` 页:1 `addRecord`· ; `domainId` 页:1 `listRecords`; 和 : `domainId` 与 `recordId` 页:1 `updateRecord` 财务报告和审定财务报表 `deleteRecord`。 。 。 .

## 许可证

阿帕奇 - 2.0

## 常见问题

### @framers/agentos-ext-cloud-linode 是什么？

Linode/Akamai 云扩展——提供例,管理 DNS,部署 StackScripts,并通过Linode API v4创建节点Balances\.

### 如何安装 @framers/agentos-ext-cloud-linode？

在项目目录运行 npm install @framers/agentos-ext-cloud-linode，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：@framers/agentos（\>=0\.10\.40）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @framers/agentos-ext-cloud-linode 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @framers/agentos-ext-cloud-linode 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @framers/agentos-ext-cloud-linode 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=22。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @framers/agentos-ext-cloud-linode 可以商用吗？

@framers/agentos-ext-cloud-linode 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### @framers/agentos-ext-cloud-linode 的下载量有多少？

根据 npm 官方下载统计，@framers/agentos-ext-cloud-linode 在 2026/10/16 – 2026/11/14 这 30 天内被下载 20,053 次，日均约 668 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @framers/agentos-ext-cloud-linode 还在维护吗？

最新版本 0\.1\.5 发布于 2026/11/11（4 天前）；至今共发布 6 个版本，其中过去 12 个月发布了 6 个；首次发布于 2026/05/02。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

