关于 pp-digitalocean
pp-digitalocean 是供 Agent 管理 DigitalOcean 资源的 Printing Press 命令行技能,涵盖资源操作及本地归档、搜索、分析和变更推送。
主要功能
- 01将资源归档到本地 SQLite
- 02搜索本地同步数据或实时数据
- 03按条件汇总资源数据
- 04以 NDJSON 推送资源变更
- 05管理 DigitalOcean 账户资源
适用场景
- 01云端变更前建立离线资源清单
- 02查找匹配关键词的资源
- 03按区域汇总 Droplet
- 04持续监测资源变化
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ mvanhorn/ printing-press-library --skill pp-digitalocean安装后在 Claude Code 中输入/pp-digitalocean确认已加载。
详细介绍
Digitalocean — Printing Press CLI
前提条件:安装 CLI
此技能使用 digitalocean-pp-cli 二进制文件。**调用此技能中的任何命令前,必须确认 CLI 已安装。**如果尚未安装,请先安装:
- 通过 Printing Press 安装程序安装。在 macOS/Linux 上,二进制文件默认安装到
$HOME/.local/bin;在 Windows 上,默认安装到%LOCALAPPDATA%\Programs\PrintingPress\bin:npx -y @mvanhorn/printing-press-library install digitalocean --cli-only - 验证:
digitalocean-pp-cli --version - 确保报告的安装目录位于将调用此技能的 Agent/运行时的
$PATH中。
如果 npx 安装失败(例如,没有 Node、处于离线状态等),请改用直接通过 Go 安装的方式(要求 Go 1.26.6 或更高版本):
go install github.com/mvanhorn/printing-press-library/library/cloud/digitalocean/cmd/digitalocean-pp-cli@latest
如果安装后 --version 报告“command not found”,则运行时无法在 $PATH 中找到该二进制文件目录。验证成功前,请勿运行此技能的命令。
独特功能
其他用于此 API 的工具都不具备这些功能。
可累积的本地状态
-
workflow archive— 将 DigitalOcean 资源同步到本地 SQLite 存储,以便离线检查并构建可重复的 Agent 工作流。让 Agent 在规划云端变更前,先获取持久化的本地资源清单。
digitalocean-pp-cli workflow archive --full --json -
search— 在本地搜索已同步的 DigitalOcean 数据,并可选择实时或本地数据源,方便 Agent 检索。帮助 Agent 在选择更精确的命令前,先找到相关资源。
digitalocean-pp-cli search "production" --data-source local --json --limit 20
运维摘要
-
analytics— 通过计数和分组操作汇总本地同步的资源数据。将资源列表转换为 Agent 可以据此进行判断的运维摘要。
digitalocean-pp-cli analytics --type droplets --group-by region --json -
tail— 轮询选定的资源,并以 NDJSON 格式输出变更事件,供 shell 和 Agent 流水线使用。无需编写专用脚本,即可安全地获取一次性或持续变更流。
digitalocean-pp-cli tail --resource droplets --interval 30s --json
命令参考
1-clicks — 管理 1-clicks
digitalocean-pp-cli 1-clicks create— 创建digitalocean-pp-cli 1-clicks list— 列出
account — 提供有关当前账户的信息。
digitalocean-pp-cli account create— 创建digitalocean-pp-cli account delete— 删除digitalocean-pp-cli account get— 获取digitalocean-pp-cli account list— 列出digitalocean-pp-cli account list-keys— 列出密钥digitalocean-pp-cli account update— 更新
actions — 操作是账户资源上已发生事件的记录。 例如,重启 Droplet 或将镜像转移到新的区域。
每次发起此类操作时,都会创建一个操作对象。该操作 对象包含操作的当前状态、开始和完成时间戳,以及相关资源类型和 ID 的信息。
所有会创建操作对象的操作,都可以通过此端点查询。已完成的操作不会从此列表中移除,始终可以查询。
**注意:**可以在请求中传递以下 HTTP 标头,让 API 返回
reserved_ips 字段,而不是 floating_ips 字段:
-
Accept: application/vnd.digitalocean.reserveip+json -
digitalocean-pp-cli actions get— 获取 -
digitalocean-pp-cli actions list— 列出
add-ons — Add-on 是可添加到 DigitalOcean 账户的第三方应用程序。 可通过 DigitalOcean Marketplace 获取。 Add-on 可用于增强现有资源的功能,或提供 其他服务。
Add-Ons API 允许你管理这些资源,包括创建、列出和获取特定 add-on 资源的详细信息。
digitalocean-pp-cli add-ons create— 创建digitalocean-pp-cli add-ons delete— 删除digitalocean-pp-cli add-ons get— 获取digitalocean-pp-cli add-ons get-addons— 获取附加组件digitalocean-pp-cli add-ons list— 列出digitalocean-pp-cli add-ons list-addons— 列出附加组件digitalocean-pp-cli add-ons update— 更新digitalocean-pp-cli add-ons update-addons— 更新附加组件
apps — App Platform 是 DigitalOcean 提供的平台即服务(PaaS),开发者无需担心底层基础设施,即可直接将代码发布到 DigitalOcean 服务器。
大多数 API 操作都围绕几种核心对象类型展开。以下是这些类型的定义。针对具体操作的文档中不会重复列出这些定义。
有关应用规格(AppSpec 对象)的文档,请参阅产品文档)。
digitalocean-pp-cli apps create— 创建digitalocean-pp-cli apps create-metrics— 创建指标digitalocean-pp-cli apps create-propose— 创建提案digitalocean-pp-cli apps delete— 删除digitalocean-pp-cli apps get— 获取digitalocean-pp-cli apps get-tiers— 获取层级digitalocean-pp-cli apps list— 列出digitalocean-pp-cli apps list-regions— 列出区域digitalocean-pp-cli apps list-tiers— 列出层级digitalocean-pp-cli apps update— 更新
async-invoke — 管理异步调用
digitalocean-pp-cli async-invoke— 创建
batches — 管理批次
digitalocean-pp-cli batches create— 创建digitalocean-pp-cli batches create-files— 创建文件digitalocean-pp-cli batches get— 获取digitalocean-pp-cli batches list— 列出
billing — 计费端点允许你查询账户余额、发票、计费历史记录和洞察。
余额: 向 /v2/customers/my/balance 端点发送请求,即可查询所请求客户账户的余额信息。
发票: 每月 1 日,DigitalOcean 会为每位客户生成发票。每天都会生成发票预览,可使用 preview 关键字代替 $INVOICE_UUID 访问。通常,你可以向发票端点 /v2/customers/my/invoices 发送请求来操作发票。
计费历史记录: 计费历史记录用于记录账户的计费事件。例如,条目可能包含已完成的付款、已开具的发票或已发放的额度。通常,你可以向 /v2/customers/my/billing_history 发票端点发送请求来查询发票。
计费洞察: 根据每晚的发票项目,查看计费资源用量的逐日变化,包括指定日期范围内的总金额、区域、SKU 和描述。请注意,对于给定月份,每日资源用量的汇总结果可能无法反映月末的计费总额,因为每晚的发票项目不一定包含整个月的所有计费因素。
v2/billing/{account_urn}/insights/{start_date}/{end_date} 中的 account_urn 是客户账户的 URN,可以是团队(do:team:uuid)或组织(do:teamgroup:uuid)。指定的 start_date 和 end_date 必须采用 YYYY-MM-DD 格式。
byoip-prefixes — 自带 IP(BYOIP)允许你为账户配置自己的 IPv4 网络前缀,然后将这些 IP 分配给 DigitalOcean 资源。 BYOIP 支持以下功能:
- IPv4 地址
- 网络大小从
/24(256 个地址)到/18(16,384 个地址)不等 - 使用与现有保留 IP 功能相同的 API 和管理界面
- 仅可分配给 Droplet
digitalocean-pp-cli byoip-prefixes create— 创建digitalocean-pp-cli byoip-prefixes delete— 删除digitalocean-pp-cli byoip-prefixes get— 获取digitalocean-pp-cli byoip-prefixes list— 列出digitalocean-pp-cli byoip-prefixes update— 更新
cdn — 管理 cdn
digitalocean-pp-cli cdn create— 创建digitalocean-pp-cli cdn delete— 删除digitalocean-pp-cli cdn delete-endpoints— 删除端点digitalocean-pp-cli cdn get— 获取digitalocean-pp-cli cdn list— 列出digitalocean-pp-cli cdn update— 更新
certificates — 为了在负载均衡器上进行 SSL 终止,DigitalOcean 提供两种 SSL 证书管理方式:
-
Custom:用户生成的证书可以上传到 DigitalOcean,并存储在完全加密且隔离的存储系统中。
-
Let's Encrypt:DigitalOcean 可通过集成免费、开放的证书颁发机构 Let's Encrypt 自动生成证书。这些证书也会在需要时自动续期。
digitalocean-pp-cli certificates create— 创建digitalocean-pp-cli certificates delete— 删除digitalocean-pp-cli certificates get— 获取digitalocean-pp-cli certificates list— 列出
chat — 管理 chat
digitalocean-pp-cli chat create— 创建digitalocean-pp-cli chat create-completions— 创建补全
customers — 管理客户
digitalocean-pp-cli customers get— 获取digitalocean-pp-cli customers get-my— 获取我的信息digitalocean-pp-cli customers get-my-2— 获取我的信息 2digitalocean-pp-cli customers get-my-3— 获取我的信息 3digitalocean-pp-cli customers list— 列出digitalocean-pp-cli customers list-my— 列出我的信息digitalocean-pp-cli customers list-my-2— 列出我的信息 2
databases — DigitalOcean 的托管数据库服务简化了高可用数据库集群的创建和管理。目前,该服务支持 PostgreSQL、Caching、Valkey、MySQL、MongoDB 和 OpenSearch。
向 /v2/databases 端点发送请求,可以列出、创建或删除数据库集群,还可以扩展集群规模、添加或移除只读副本,以及管理其他配置详情。
数据库集群可以采用多节点高可用配置进行部署。如果您的机器类型高于基础节点、节点方案高于最小选项,或者您运行的是 MongoDB,还可以在集群中额外加入最多两个备用节点。
数据库集群中各个节点的规格以易读的 slug 表示,部分后续请求会用到这些 slug。每个 slug 依次表示节点标识符、CPU 数量和 RAM 容量。
如需查看当前可用的数据库 slug 和选项,请使用 /v2/databases/options 端点,或使用 doctl databases options 命令。
-
digitalocean-pp-cli databases create— 创建 -
digitalocean-pp-cli databases delete— 删除 -
digitalocean-pp-cli databases get— 获取 -
digitalocean-pp-cli databases list— 列出 -
digitalocean-pp-cli databases list-metrics— 列出指标 -
digitalocean-pp-cli databases list-options— 列出选项 -
digitalocean-pp-cli databases update— 更新 dedicated-inferences — Dedicated Inference 在 DigitalOcean 上提供可扩展、适用于生产环境的大模型托管服务。创建、列出、获取、更新和删除 Dedicated Inference 实例;管理加速器、CA 证书、规格、GPU 模型配置和访问令牌。 -
digitalocean-pp-cli dedicated-inferences create— 创建 -
digitalocean-pp-cli dedicated-inferences delete— 删除 -
digitalocean-pp-cli dedicated-inferences get— 获取 -
digitalocean-pp-cli dedicated-inferences list— 列出 -
digitalocean-pp-cli dedicated-inferences list-dedicatedinferences— 列出 dedicatedinferences -
digitalocean-pp-cli dedicated-inferences list-dedicatedinferences-2— 列出 dedicatedinferences 2 -
digitalocean-pp-cli dedicated-inferences update— 更新
domains — 域名资源是指你从域名注册商处购买,并通过 DigitalOcean DNS 界面管理的域名。
此资源负责对每个域名进行顶层控制。影响单个域名记录的操作应通过 域名记录资源执行。
digitalocean-pp-cli domains create— 创建digitalocean-pp-cli domains delete— 删除digitalocean-pp-cli domains get— 获取digitalocean-pp-cli domains list— 列出
droplets — Droplet 是 DigitalOcean 虚拟机。向 Droplet 端点发送请求,即可列出、创建或删除 Droplet。
部分属性的值为对象。region 和 image
对象都包含其对应类型的标准属性。请参阅各自的部分,了解有关这些对象的更多信息。
digitalocean-pp-cli droplets create— 创建digitalocean-pp-cli droplets create-actions— 创建操作digitalocean-pp-cli droplets create-autoscale— 创建自动扩缩digitalocean-pp-cli droplets delete— 删除digitalocean-pp-cli droplets delete-autoscale— 删除自动扩缩digitalocean-pp-cli droplets delete-autoscale-2— 删除自动扩缩 2digitalocean-pp-cli droplets delete-dropletid— 删除 dropletiddigitalocean-pp-cli droplets get— 获取digitalocean-pp-cli droplets get-autoscale— 获取自动扩缩digitalocean-pp-cli droplets get-autoscale-2— 获取自动扩缩 2digitalocean-pp-cli droplets get-autoscale-3— 获取自动扩缩 3digitalocean-pp-cli droplets list— 列出digitalocean-pp-cli droplets list-autoscale— 列出自动扩缩digitalocean-pp-cli droplets list-backups— 列出备份digitalocean-pp-cli droplets list-backups-2— 列出备份 2digitalocean-pp-cli droplets update— 更新
embeddings — 通过
Serverless Inference 基础 URL
https://inference.do-ai.run 上的 POST /v1/embeddings 获取文本嵌入向量(使用 bearer 模型访问密钥)。
digitalocean-pp-cli embeddings— 创建
firewalls — DigitalOcean Cloud Firewalls
可限制 Droplet 的网络访问,允许你定义哪些端口接受入站或出站
连接。向 /v2/firewalls 端点发送请求,即可列出、创建或删除防火墙,以及修改访问规则。
digitalocean-pp-cli firewalls create— 创建digitalocean-pp-cli firewalls delete— 删除digitalocean-pp-cli firewalls get— 获取digitalocean-pp-cli firewalls list— 列出digitalocean-pp-cli firewalls update— 更新 floating-ips — 截至 2022 年 6 月 16 日,我们已将 Floating IP 产品更名为 Reserved IPs。 Reserved IP 产品的端点与 Floating IP 的端点功能完全相同。 唯一的区别是 URL 和字段中的名称发生了变化。 例如,floating_ips字段现在是reserved_ips字段。 Floating IP 端点将继续保持有效,直到 2023 年秋季,之后将被永久弃用。
除了 Projects API 之外,我们会在 API 中所有使用 floating_ip 字段的响应中,将此更改体现为一个附加字段。例如,Droplet 元数据响应将包含 reserved_ips 字段,以及 floating_ips 字段。
通过 Projects API 获取的 Floating IP 将保留原来的名称。
DigitalOcean Floating IPs 是可公开访问的静态 IP 地址,可映射到你的某个 Droplet。它们可用于创建高可用配置或其他需要可移动地址的配置。
Floating IP 绑定到特定区域。
digitalocean-pp-cli floating-ips create— 创建digitalocean-pp-cli floating-ips delete— 删除digitalocean-pp-cli floating-ips get— 获取digitalocean-pp-cli floating-ips list— 列出
functions — Serverless functions 是按需运行的代码块,无需管理任何基础设施。
你可以在本地计算机上开发函数,然后使用 doctl(DigitalOcean 官方 CLI 工具)将其部署到命名空间。
Serverless Functions API 目前仅支持创建和管理命名空间。
digitalocean-pp-cli functions create— 创建digitalocean-pp-cli functions create-namespaces— 创建命名空间digitalocean-pp-cli functions create-namespaces-2— 创建命名空间 2digitalocean-pp-cli functions delete— 删除digitalocean-pp-cli functions delete-namespaces— 删除命名空间digitalocean-pp-cli functions delete-namespaces-2— 删除命名空间 2digitalocean-pp-cli functions get— 获取digitalocean-pp-cli functions get-namespaces— 获取命名空间digitalocean-pp-cli functions get-namespaces-2— 获取命名空间 2digitalocean-pp-cli functions get-namespaces-3— 获取命名空间 3digitalocean-pp-cli functions list— 列出digitalocean-pp-cli functions update— 更新digitalocean-pp-cli functions update-namespaces— 更新命名空间
gen-ai — 管理 gen ai
digitalocean-pp-cli gen-ai create— Createdigitalocean-pp-cli gen-ai create-genai— Create genaidigitalocean-pp-cli gen-ai create-genai-10— Create genai 10digitalocean-pp-cli gen-ai create-genai-11— Create genai 11digitalocean-pp-cli gen-ai create-genai-12— Create genai 12digitalocean-pp-cli gen-ai create-genai-13— Create genai 13digitalocean-pp-cli gen-ai create-genai-14— Create genai 14digitalocean-pp-cli gen-ai create-genai-15— Create genai 15digitalocean-pp-cli gen-ai create-genai-16— Create genai 16digitalocean-pp-cli gen-ai create-genai-17— Create genai 17digitalocean-pp-cli gen-ai create-genai-18— Create genai 18digitalocean-pp-cli gen-ai create-genai-19— Create genai 19digitalocean-pp-cli gen-ai create-genai-2— Create genai 2digitalocean-pp-cli gen-ai create-genai-20— Create genai 20digitalocean-pp-cli gen-ai create-genai-21— Create genai 21digitalocean-pp-cli gen-ai create-genai-22— Create genai 22digitalocean-pp-cli gen-ai create-genai-23— Create genai 23digitalocean-pp-cli gen-ai create-genai-24— Create genai 24digitalocean-pp-cli gen-ai create-genai-3— Create genai 3digitalocean-pp-cli gen-ai create-genai-4— Create genai 4digitalocean-pp-cli gen-ai create-genai-5— Create genai 5digitalocean-pp-cli gen-ai create-genai-6— Create genai 6digitalocean-pp-cli gen-ai create-genai-7— Create genai 7digitalocean-pp-cli gen-ai create-genai-8— Create genai 8digitalocean-pp-cli gen-ai create-genai-9— Create genai 9digitalocean-pp-cli gen-ai delete— Deletedigitalocean-pp-cli gen-ai delete-genai— Delete genaidigitalocean-pp-cli gen-ai delete-genai-10— Delete genai 10digitalocean-pp-cli gen-ai delete-genai-11— Delete genai 11digitalocean-pp-cli gen-ai delete-genai-12— Delete genai 12digitalocean-pp-cli gen-ai delete-genai-13— Delete genai 13digitalocean-pp-cli gen-ai delete-genai-2— Delete genai 2digitalocean-pp-cli gen-ai delete-genai-3— Delete genai 3digitalocean-pp-cli gen-ai delete-genai-4— Delete genai 4digitalocean-pp-cli gen-ai delete-genai-5— Delete genai 5digitalocean-pp-cli gen-ai delete-genai-6— Delete genai 6digitalocean-pp-cli gen-ai delete-genai-7— Delete genai 7digitalocean-pp-cli gen-ai delete-genai-8— Delete genai 8digitalocean-pp-cli gen-ai delete-genai-9— Delete genai 9digitalocean-pp-cli gen-ai get— Getdigitalocean-pp-cli gen-ai get-genai— Get genaidigitalocean-pp-cli gen-ai get-genai-10— Get genai 10digitalocean-pp-cli gen-ai get-genai-11— Get genai 11digitalocean-pp-cli gen-ai get-genai-12— Get genai 12digitalocean-pp-cli gen-ai get-genai-13— Get genai 13digitalocean-pp-cli gen-ai get-genai-14— Get genai 14digitalocean-pp-cli gen-ai get-genai-15— Get genai 15digitalocean-pp-cli gen-ai get-genai-16— Get genai 16digitalocean-pp-cli gen-ai get-genai-17— Get genai 17digitalocean-pp-cli gen-ai get-genai-18— Get genai 18digitalocean-pp-cli gen-ai get-genai-19— Get genai 19digitalocean-pp-cli gen-ai get-genai-2— Get genai 2digitalocean-pp-cli gen-ai get-genai-20— Get genai 20digitalocean-pp-cli gen-ai get-genai-21— Get genai 21digitalocean-pp-cli gen-ai get-genai-22— Get genai 22digitalocean-pp-cli gen-ai get-genai-23— Get genai 23digitalocean-pp-cli gen-ai get-genai-24— Get genai 24digitalocean-pp-cli gen-ai get-genai-25— Get genai 25digitalocean-pp-cli gen-ai get-genai-26— Get genai 26digitalocean-pp-cli gen-ai get-genai-3— Get genai 3digitalocean-pp-cli gen-ai get-genai-4— Get genai 4digitalocean-pp-cli gen-ai get-genai-5— Get genai 5digitalocean-pp-cli gen-ai get-genai-6— Get genai 6digitalocean-pp-cli gen-ai get-genai-7— Get genai 7digitalocean-pp-cli gen-ai get-genai-8— Get genai 8digitalocean-pp-cli gen-ai get-genai-9— Get genai 9digitalocean-pp-cli gen-ai list— Listdigitalocean-pp-cli gen-ai list-genai— List genaidigitalocean-pp-cli gen-ai list-genai-10— List genai 10digitalocean-pp-cli gen-ai list-genai-11— List genai 11digitalocean-pp-cli gen-ai list-genai-12— List genai 12digitalocean-pp-cli gen-ai list-genai-13— List genai 13digitalocean-pp-cli gen-ai list-genai-14— List genai 14digitalocean-pp-cli gen-ai list-genai-15— List genai 15digitalocean-pp-cli gen-ai list-genai-16— List genai 16digitalocean-pp-cli gen-ai list-genai-17— List genai 17digitalocean-pp-cli gen-ai list-genai-2— List genai 2digitalocean-pp-cli gen-ai list-genai-3— List genai 3digitalocean-pp-cli gen-ai list-genai-4— List genai 4digitalocean-pp-cli gen-ai list-genai-5— List genai 5digitalocean-pp-cli gen-ai list-genai-6— List genai 6digitalocean-pp-cli gen-ai list-genai-7— List genai 7digitalocean-pp-cli gen-ai list-genai-8— List genai 8digitalocean-pp-cli gen-ai list-genai-9— List genai 9digitalocean-pp-cli gen-ai update— Updatedigitalocean-pp-cli gen-ai update-genai— Update genaidigitalocean-pp-cli gen-ai update-genai-10— Update genai 10digitalocean-pp-cli gen-ai update-genai-11— Update genai 11digitalocean-pp-cli gen-ai update-genai-12— Update genai 12digitalocean-pp-cli gen-ai update-genai-13— Update genai 13digitalocean-pp-cli gen-ai update-genai-14— Update genai 14digitalocean-pp-cli gen-ai update-genai-15— Update genai 15digitalocean-pp-cli gen-ai update-genai-2— Update genai 2digitalocean-pp-cli gen-ai update-genai-3— Update genai 3digitalocean-pp-cli gen-ai update-genai-4— Update genai 4digitalocean-pp-cli gen-ai update-genai-5— Update genai 5digitalocean-pp-cli gen-ai update-genai-6— Update genai 6digitalocean-pp-cli gen-ai update-genai-7— Update genai 7digitalocean-pp-cli gen-ai update-genai-8— Update genai 8digitalocean-pp-cli gen-ai update-genai-9— Update genai 9
images — DigitalOcean 镜像 可用于创建 Droplet,并且有多种类型。目前共有五种镜像:快照、备份、应用、发行版和自定义镜像。
-
快照 是按需创建的现有 Droplet 实例的完整副本。
-
备份 与快照类似,但在为 Droplet 启用后,会定期自动创建。
-
自定义镜像 是基于 Linux 的虚拟机镜像(支持 raw、qcow2、vhdx、vdi 和 vmdk 格式),你可以上传这些镜像以便在 DigitalOcean 上使用。
-
发行版是可用作创建 Droplet 基础的公共 Linux 发行版。
-
应用,也称为 1-Click Apps,是预先配置了额外软件的发行版。
通常,若要与镜像交互,你需要向 /v2/images 端点发送请求。
digitalocean-pp-cli images create— 创建digitalocean-pp-cli images create-generations— 创建世代digitalocean-pp-cli images delete— 删除digitalocean-pp-cli images get— 获取digitalocean-pp-cli images list— 列出digitalocean-pp-cli images update— 更新
kubernetes — DigitalOcean Kubernetes 可帮助你快速部署可扩展且安全的 Kubernetes 集群。向 /v2/kubernetes/clusters 端点发送请求,即可列出、创建或删除集群,也可以扩展或缩减节点池、回收单个节点,以及获取用于集群的 kubeconfig 文件。
-
digitalocean-pp-cli kubernetes create— 创建 -
digitalocean-pp-cli kubernetes create-clusters— 创建集群 -
digitalocean-pp-cli kubernetes create-clusters-2— 创建集群 2 -
digitalocean-pp-cli kubernetes create-clusters-3— 创建集群 3 -
digitalocean-pp-cli kubernetes create-clusters-4— 创建集群 4 -
digitalocean-pp-cli kubernetes create-registries— 创建注册表 -
digitalocean-pp-cli kubernetes create-registry— 创建注册表 -
digitalocean-pp-cli kubernetes delete— 删除 -
digitalocean-pp-cli kubernetes delete-clusters— 删除集群 -
digitalocean-pp-cli kubernetes delete-clusters-2— 删除集群 2 -
digitalocean-pp-cli kubernetes delete-clusters-3— 删除集群 3 -
digitalocean-pp-cli kubernetes delete-clusters-4— 删除集群 4 -
digitalocean-pp-cli kubernetes delete-clusters-5— 删除集群 5 -
digitalocean-pp-cli kubernetes delete-registry— 删除注册表 -
digitalocean-pp-cli kubernetes get— 获取 -
digitalocean-pp-cli kubernetes get-clusters— 获取集群 -
digitalocean-pp-cli kubernetes get-clusters-2— 获取集群 2 -
digitalocean-pp-cli kubernetes get-clusters-3— 获取集群 3 -
digitalocean-pp-cli kubernetes get-clusters-4— 获取集群 4 -
digitalocean-pp-cli kubernetes get-clusters-5— 获取集群 5 -
digitalocean-pp-cli kubernetes get-clusters-6— 获取集群 6 -
digitalocean-pp-cli kubernetes get-clusters-7— 获取集群 7 -
digitalocean-pp-cli kubernetes get-clusters-8— 获取集群 8 -
digitalocean-pp-cli kubernetes get-clusters-9— 获取集群 9 -
digitalocean-pp-cli kubernetes list— 列出 -
digitalocean-pp-cli kubernetes list-options— 列出选项 -
digitalocean-pp-cli kubernetes update— 更新 -
digitalocean-pp-cli kubernetes update-clusters— 更新集群 load-balancers — DigitalOcean 负载均衡器 提供了一种在多个 Droplet 之间分发流量的方式。向/v2/load_balancers端点发送 请求,即可列出、创建或删除负载均衡器,以及添加或移除 Droplet、转发规则 和其他配置详情。 -
digitalocean-pp-cli load-balancers create— 创建 -
digitalocean-pp-cli load-balancers delete— 删除 -
digitalocean-pp-cli load-balancers get— 获取 -
digitalocean-pp-cli load-balancers list— 列出 -
digitalocean-pp-cli load-balancers update— 更新
messages — 管理消息
digitalocean-pp-cli messages— 创建
models — 管理模型
digitalocean-pp-cli models— 列出
monitoring — DigitalOcean Monitoring API 可用于以编程方式检索指标,并根据这些指标配置警报 策略。Monitoring API 可帮助你深入了解应用的运行情况 以及资源消耗情况。
digitalocean-pp-cli monitoring create— Createdigitalocean-pp-cli monitoring create-sinks— Create sinksdigitalocean-pp-cli monitoring create-sinks-2— Create sinks 2digitalocean-pp-cli monitoring create-sinks-3— Create sinks 3digitalocean-pp-cli monitoring delete— Deletedigitalocean-pp-cli monitoring delete-sinks— Delete sinksdigitalocean-pp-cli monitoring delete-sinks-2— Delete sinks 2digitalocean-pp-cli monitoring get— Getdigitalocean-pp-cli monitoring get-sinks— Get sinksdigitalocean-pp-cli monitoring get-sinks-2— Get sinks 2digitalocean-pp-cli monitoring list— Listdigitalocean-pp-cli monitoring list-metrics— List metricsdigitalocean-pp-cli monitoring list-metrics-10— List metrics 10digitalocean-pp-cli monitoring list-metrics-11— List metrics 11digitalocean-pp-cli monitoring list-metrics-12— List metrics 12digitalocean-pp-cli monitoring list-metrics-13— List metrics 13digitalocean-pp-cli monitoring list-metrics-14— List metrics 14digitalocean-pp-cli monitoring list-metrics-15— List metrics 15digitalocean-pp-cli monitoring list-metrics-16— List metrics 16digitalocean-pp-cli monitoring list-metrics-17— List metrics 17digitalocean-pp-cli monitoring list-metrics-18— List metrics 18digitalocean-pp-cli monitoring list-metrics-19— List metrics 19digitalocean-pp-cli monitoring list-metrics-2— List metrics 2digitalocean-pp-cli monitoring list-metrics-20— List metrics 20digitalocean-pp-cli monitoring list-metrics-21— List metrics 21digitalocean-pp-cli monitoring list-metrics-22— List metrics 22digitalocean-pp-cli monitoring list-metrics-23— List metrics 23digitalocean-pp-cli monitoring list-metrics-24— List metrics 24digitalocean-pp-cli monitoring list-metrics-25— List metrics 25digitalocean-pp-cli monitoring list-metrics-26— List metrics 26digitalocean-pp-cli monitoring list-metrics-27— List metrics 27digitalocean-pp-cli monitoring list-metrics-28— List metrics 28digitalocean-pp-cli monitoring list-metrics-29— List metrics 29digitalocean-pp-cli monitoring list-metrics-3— List metrics 3digitalocean-pp-cli monitoring list-metrics-30— List metrics 30digitalocean-pp-cli monitoring list-metrics-31— List metrics 31digitalocean-pp-cli monitoring list-metrics-32— List metrics 32digitalocean-pp-cli monitoring list-metrics-33— List metrics 33digitalocean-pp-cli monitoring list-metrics-34— List metrics 34digitalocean-pp-cli monitoring list-metrics-35— List metrics 35digitalocean-pp-cli monitoring list-metrics-36— List metrics 36digitalocean-pp-cli monitoring list-metrics-37— List metrics 37digitalocean-pp-cli monitoring list-metrics-38— List metrics 38digitalocean-pp-cli monitoring list-metrics-39— List metrics 39digitalocean-pp-cli monitoring list-metrics-4— List metrics 4digitalocean-pp-cli monitoring list-metrics-40— List metrics 40digitalocean-pp-cli monitoring list-metrics-41— List metrics 41digitalocean-pp-cli monitoring list-metrics-42— List metrics 42digitalocean-pp-cli monitoring list-metrics-43— List metrics 43digitalocean-pp-cli monitoring list-metrics-44— List metrics 44digitalocean-pp-cli monitoring list-metrics-45— List metrics 45digitalocean-pp-cli monitoring list-metrics-46— List metrics 46digitalocean-pp-cli monitoring list-metrics-47— List metrics 47digitalocean-pp-cli monitoring list-metrics-48— List metrics 48digitalocean-pp-cli monitoring list-metrics-49— List metrics 49digitalocean-pp-cli monitoring list-metrics-5— List metrics 5digitalocean-pp-cli monitoring list-metrics-50— List metrics 50digitalocean-pp-cli monitoring list-metrics-51— List metrics 51digitalocean-pp-cli monitoring list-metrics-52— List metrics 52digitalocean-pp-cli monitoring list-metrics-53— List metrics 53digitalocean-pp-cli monitoring list-metrics-54— List metrics 54digitalocean-pp-cli monitoring list-metrics-55— List metrics 55digitalocean-pp-cli monitoring list-metrics-56— List metrics 56digitalocean-pp-cli monitoring list-metrics-57— List metrics 57digitalocean-pp-cli monitoring list-metrics-58— List metrics 58digitalocean-pp-cli monitoring list-metrics-6— List metrics 6digitalocean-pp-cli monitoring list-metrics-7— List metrics 7digitalocean-pp-cli monitoring list-metrics-8— List metrics 8digitalocean-pp-cli monitoring list-metrics-9— List metrics 9digitalocean-pp-cli monitoring list-sinks— List sinksdigitalocean-pp-cli monitoring list-sinks-2— List sinks 2digitalocean-pp-cli monitoring update— Update
nfs — NFS 可让你创建完全托管、符合 POSIX 标准的网络文件存储,在 VPC 中直接提供安全、高性能的共享存储。这使 VPC 中的 Droplet 能够无缝共享数据。
digitalocean-pp-cli nfs create— 创建digitalocean-pp-cli nfs delete— 删除digitalocean-pp-cli nfs delete-snapshots— 删除快照digitalocean-pp-cli nfs get— 获取digitalocean-pp-cli nfs get-snapshots— 获取快照digitalocean-pp-cli nfs list— 列出digitalocean-pp-cli nfs list-snapshots— 列出快照
partner-network-connect — Partner Network Connect 可让你在 DigitalOcean VPC 网络与其他公有云提供商或本地数据中心之间直接建立高带宽、低延迟的网络连接。
digitalocean-pp-cli partner-network-connect create— 创建digitalocean-pp-cli partner-network-connect create-partnernetworkconnect— 创建 partnernetworkconnectdigitalocean-pp-cli partner-network-connect delete— 删除digitalocean-pp-cli partner-network-connect get— 获取digitalocean-pp-cli partner-network-connect get-partnernetworkconnect— 获取 partnernetworkconnectdigitalocean-pp-cli partner-network-connect get-partnernetworkconnect-2— 获取 partnernetworkconnect 2digitalocean-pp-cli partner-network-connect get-partnernetworkconnect-3— 获取 partnernetworkconnect 3digitalocean-pp-cli partner-network-connect list— 列出digitalocean-pp-cli partner-network-connect update— 更新
projects — 项目可让你将资源整理成符合工作方式的组。你可以根据在 DigitalOcean 上托管的应用,以适合的方式对资源(例如 Droplet、Spaces、负载均衡器、域名和浮动 IP)进行分组。
digitalocean-pp-cli projects create— 创建digitalocean-pp-cli projects create-default— 创建默认项目digitalocean-pp-cli projects delete— 删除digitalocean-pp-cli projects get— 获取digitalocean-pp-cli projects list— 列出digitalocean-pp-cli projects list-default— 列出默认项目digitalocean-pp-cli projects list-default-2— 列出默认项目 2digitalocean-pp-cli projects update— 更新digitalocean-pp-cli projects update-default— 更新默认项目digitalocean-pp-cli projects update-projectid— 更新 projectiddigitalocean-pp-cli projects update-projectid-2— 更新 projectid 2
regions — 提供 DigitalOcean 数据中心区域的信息。
digitalocean-pp-cli regions— 列出
registries — 管理注册表
digitalocean-pp-cli registries create— 创建digitalocean-pp-cli registries create-subscription— 创建订阅digitalocean-pp-cli registries create-validatename— 创建名称验证digitalocean-pp-cli registries delete— 删除digitalocean-pp-cli registries get— 获取digitalocean-pp-cli registries list— 列出digitalocean-pp-cli registries list-options— 列出选项digitalocean-pp-cli registries list-subscription— 列出订阅
registry — 管理注册表
digitalocean-pp-cli registry create— 创建digitalocean-pp-cli registry create-subscription— 创建订阅digitalocean-pp-cli registry create-validatename— 创建名称验证digitalocean-pp-cli registry delete— 删除digitalocean-pp-cli registry list— 列出digitalocean-pp-cli registry list-dockercredentials— 列出 Docker 凭据digitalocean-pp-cli registry list-options— 列出选项digitalocean-pp-cli registry list-subscription— 列出订阅
reports — 管理报告
digitalocean-pp-cli reports— 列出 reserved-ips — 截至 2022 年 6 月 16 日,我们已将 Floating IP 产品更名为 Reserved IPs。Reserved IP 产品的端点与 Floating IP 的工作方式完全相同。 唯一的区别是 URL 和字段中的名称变更。例如,floating_ips字段现在是reserved_ips字段。 Floating IP 端点将继续有效,直至 2023 年秋季,之后将永久弃用。
除 Projects API 外,
我们会在 API 中使用 floating_ip 字段的响应中新增一个字段,以体现此变更。
例如,Droplet 元数据响应除 floating_ips 字段外,还会包含 reserved_ips 字段。
通过 Projects API 获取的 Floating IP 将保留原名称。
DigitalOcean Reserved IP 是可公开访问的静态 IP 地址,可映射到你的某个 Droplet。 它们可用于创建高可用配置,或其他需要可移动地址的配置。
Reserved IP 绑定到特定区域。
digitalocean-pp-cli reserved-ips create— 创建digitalocean-pp-cli reserved-ips delete— 删除digitalocean-pp-cli reserved-ips get— 获取digitalocean-pp-cli reserved-ips list— 列出
reserved-ipv6 — DigitalOcean Reserved IPv6 是可公开访问的静态 IP 地址,可映射到你的某个 Droplet。 它们可用于创建高可用配置,或其他需要可移动地址的配置。
Reserved IPv6 绑定到特定区域。
digitalocean-pp-cli reserved-ipv6 create— 创建digitalocean-pp-cli reserved-ipv6 delete— 删除digitalocean-pp-cli reserved-ipv6 get— 获取digitalocean-pp-cli reserved-ipv6 list— 列出
responses — 管理响应
digitalocean-pp-cli responses— 创建
security — 用于扫描、扫描发现项和设置的 Security CSPM 端点。
digitalocean-pp-cli security create— 创建digitalocean-pp-cli security create-scans— 创建扫描digitalocean-pp-cli security create-settings— 创建设置digitalocean-pp-cli security delete— 删除digitalocean-pp-cli security get— 获取digitalocean-pp-cli security get-scans— 获取扫描digitalocean-pp-cli security list— 列出digitalocean-pp-cli security list-scans— 列出扫描digitalocean-pp-cli security list-settings— 列出设置digitalocean-pp-cli security update— 更新
sizes — sizes 对象代表可用于 Droplet 的不同硬件资源套餐。创建 Droplet 时,必须选择一个规格, 以便分配正确的资源。
每种规格代表一项套餐,其中包含特定的资源组合,包括 RAM 容量、虚拟 CPU 数量、 磁盘空间和传输量。规格对象还包含定价详情以及该规格可用的区域。
digitalocean-pp-cli sizes— 列出
snapshots — Snapshots 是 Droplet 或块存储卷的已保存
实例,这一点由 resource_type 属性体现。为避免压缩文件系统时出现问题,每个实例都定义了
min_disk_size 属性,该属性表示根据已保存快照创建新资源时,Droplet 或卷磁盘的最小
大小。
要与快照交互,通常需要向 /v2/snapshots 处的快照端点发送请求。
digitalocean-pp-cli snapshots delete— 删除digitalocean-pp-cli snapshots get— 获取digitalocean-pp-cli snapshots list— 列出
spaces — 管理 spaces
digitalocean-pp-cli spaces create— 创建digitalocean-pp-cli spaces delete— 删除digitalocean-pp-cli spaces get— 获取digitalocean-pp-cli spaces list— 列出digitalocean-pp-cli spaces update— 更新digitalocean-pp-cli spaces update-keys— 更新密钥
tags — 标签是一种可应用于资源(目前包括 Droplets、Images、Volumes、Volume Snapshots 和 Database 集群)的标记,可用于更好地整理资源,或方便查找和执行相关操作。
标签有两个属性:用户定义的 name 属性,以及包含已添加标签的资源信息的内嵌 resources 属性。
digitalocean-pp-cli tags create— 创建digitalocean-pp-cli tags delete— 删除digitalocean-pp-cli tags get— 获取digitalocean-pp-cli tags list— 列出
upload-url — 管理上传 URL
digitalocean-pp-cli upload-url— 更新
uptime — DigitalOcean Uptime Checks 可监控全球各地的端点,并在端点响应缓慢、不可用或 SSL 证书即将过期时向你发出提醒。
要与 Uptime 交互,通常需要向 /v2/uptime/ 下的 Uptime 端点发送请求。
digitalocean-pp-cli uptime create— 创建digitalocean-pp-cli uptime create-checks— 创建检查项digitalocean-pp-cli uptime delete— 删除digitalocean-pp-cli uptime delete-checks— 删除检查项digitalocean-pp-cli uptime get— 获取digitalocean-pp-cli uptime get-checks— 获取检查项digitalocean-pp-cli uptime get-checks-2— 获取检查项 2digitalocean-pp-cli uptime get-checks-3— 获取检查项 3digitalocean-pp-cli uptime list— 列出digitalocean-pp-cli uptime update— 更新digitalocean-pp-cli uptime update-checks— 更新检查项
volumes — 管理卷
digitalocean-pp-cli volumes create— 创建digitalocean-pp-cli volumes create-actions— 创建操作digitalocean-pp-cli volumes delete— 删除digitalocean-pp-cli volumes delete-snapshots— 删除快照digitalocean-pp-cli volumes delete-volumeid— 删除 volumeiddigitalocean-pp-cli volumes get— 获取digitalocean-pp-cli volumes get-snapshots— 获取快照digitalocean-pp-cli volumes list— 列出
vpc-nat-gateways — VPC NAT 网关 允许私有 VPC 中的资源访问公共互联网,同时避免其暴露于入站流量。
向 /v2/vpc_nat_gateways 端点发送请求,即可创建、配置、列出和删除 VPC NAT 网关,也可获取分配给这些网关的资源信息。
digitalocean-pp-cli vpc-nat-gateways create— 创建digitalocean-pp-cli vpc-nat-gateways delete— 删除digitalocean-pp-cli vpc-nat-gateways get— 获取digitalocean-pp-cli vpc-nat-gateways list— 列出digitalocean-pp-cli vpc-nat-gateways update— 更新
vpc-peerings — VPC 对等连接 通过安全的专用连接,将两个 VPC 网络连接起来。这样,这些网络中的资源就能像位于同一网络中一样,通过私有 IP 地址互相连接。
digitalocean-pp-cli vpc-peerings create— 创建digitalocean-pp-cli vpc-peerings delete— 删除digitalocean-pp-cli vpc-peerings get— 获取digitalocean-pp-cli vpc-peerings list— 列出digitalocean-pp-cli vpc-peerings update— 更新
vpcs — VPC(虚拟私有云) 允许你创建虚拟网络,其中的资源可使用私有 IP 地址在完全隔离的环境中相互通信。
向 /v2/vpcs 端点发送请求,即可创建、配置、列出和删除自定义 VPC,也可获取分配给这些 VPC 的资源信息。
digitalocean-pp-cli vpcs create— 创建digitalocean-pp-cli vpcs delete— 删除digitalocean-pp-cli vpcs get— 获取digitalocean-pp-cli vpcs list— 列出digitalocean-pp-cli vpcs update— 更新digitalocean-pp-cli vpcs update-vpcid— 更新 vpcid
查找合适的命令
知道要做什么,但不知道该用哪个命令时,可以直接向 CLI 询问:
digitalocean-pp-cli which "<capability in your own words>"
which 会根据自然语言功能查询,从此 CLI 精选的功能索引中匹配最合适的命令。退出代码 0 表示至少找到一个匹配项;退出代码 2 表示没有可信的匹配项——请改用 --help 或尝试更具体的查询。
身份验证设置
保存访问令牌:
digitalocean-pp-cli auth set-token YOUR_TOKEN_HERE
或者将 DIGITALOCEAN_BEARER_AUTH 设置为环境变量。
运行 digitalocean-pp-cli doctor 以验证设置。
Agent 模式
为任意命令添加 --agent。它会展开为:--json --compact --no-input --no-color --yes。
-
可通过管道传递 — JSON 输出到 stdout,错误输出到 stderr
-
可筛选 —
--select保留部分字段。带点的路径会深入嵌套结构;数组会逐项遍历。对于输出冗长的 API,这对控制上下文大小至关重要:digitalocean-pp-cli 1-clicks list --agent --select id,name,status -
可预览 —
--dry-run显示请求,但不会发送 -
适合离线使用 — 在本地 SQLite 存储可用时,同步/搜索命令可以使用它
-
非交互式 — 不会提示输入,所有输入均通过标志提供
-
显式重试 — 仅当已存在的创建应视为成功时才使用
--idempotent;仅当缺失的删除目标应视为成功时才使用--ignore-missing
响应封装
从本地存储或 API 读取数据的命令会将输出封装在来源信息中:
{
"meta": {"source": "live" | "local", "synced_at": "...", "reason": "..."},
"results": <data>
}
解析 .results 获取数据,并查看 .meta.source 以判断数据来自实时接口还是本地。只有当 stdout 连接到终端时,才会将便于人类阅读的 N results (live) 摘要打印到 stderr;通过管道传递或由 Agent 使用时,stdout 只会输出纯 JSON。
Agent 反馈
当你(或 Agent)发现此 CLI 有任何不妥之处时,请记录下来:
digitalocean-pp-cli feedback "the --since flag is inclusive but docs say exclusive"
digitalocean-pp-cli feedback --stdin < notes.txt
digitalocean-pp-cli feedback list --json --limit 10
条目会本地保存到 ~/.digitalocean-pp-cli/feedback.jsonl。除非设置了 DIGITALOCEAN_FEEDBACK_ENDPOINT,并且传入了 --send 或将 DIGITALOCEAN_FEEDBACK_AUTO_SEND 设为 true,否则绝不会发送 POST 请求。默认情况下,反馈仅保存在本地。
记录让你感到意外的地方,而不是提交错误报告。简短、具体、一行即可:这些反馈会不断累积并发挥作用。
输出传递
每个命令都接受 --deliver <sink>。输出会发送到指定的目标,同时输出到 stdout,或取代 stdout 输出,这样 Agent 就能传递命令结果,无需手动通过管道传输。支持以下三种目标:
| 目标 | 效果 |
|---|---|
stdout | 默认;仅写入 stdout |
file:<path> | 将输出原子性地写入 <path>(临时文件 + 重命名) |
webhook:<url> | 将输出正文 POST 到 URL(使用 --compact 时,内容类型为 application/json 或 application/x-ndjson) |
不支持的协议会被拒绝,并返回说明支持协议的结构化错误。Webhook 请求失败时会返回非零状态码,并在 stderr 中记录 URL 和 HTTP 状态码。
命名配置
配置是已保存的一组标志值,可在多次调用中重复使用。当定时 Agent 每次运行都以相同配置调用同一命令时,可以使用配置——这就是 HeyGen 的“Beacon”模式。
digitalocean-pp-cli profile save briefing --json
digitalocean-pp-cli --profile briefing 1-clicks list
digitalocean-pp-cli profile list --json
digitalocean-pp-cli profile show briefing
digitalocean-pp-cli profile delete briefing --yes
显式标志始终优先于配置值;配置值优先于默认值。agent-context 会在 available_profiles 下列出所有可用配置,供可在运行时进行自省的 Agent 发现。
退出代码
| 代码 | 含义 |
|---|---|
| 0 | 成功 |
| 2 | 用法错误(参数错误) |
| 3 | 未找到资源 |
| 4 | 需要身份验证 |
| 5 | API 错误(上游问题) |
| 7 | 请求过于频繁(等待后重试) |
| 10 | 配置错误 |
参数解析
解析 $ARGUMENTS:
- 为空、
help或--help→ 显示digitalocean-pp-cli --help的输出 - 以
install开头 → 以mcp结尾 → 安装 MCP;否则 → 参见上文的前置条件 - 其他任何内容 → 直接使用(作为带有
--agent的 CLI 命令执行)
MCP 服务安装
- 安装 MCP 服务:
go install github.com/mvanhorn/printing-press-library/library/cloud/digitalocean/cmd/digitalocean-pp-mcp@latest - 使用 Claude Code 注册:
claude mcp add digitalocean-pp-mcp -- digitalocean-pp-mcp - 验证:
claude mcp list
直接使用
- 检查是否已安装:
which digitalocean-pp-cli如果未找到,则提供安装选项(参见此技能开头的前置条件)。 - 将用户查询与上文「独特功能」和「命令参考」中的最佳命令匹配。
- 使用
--agent标志执行:digitalocean-pp-cli <command> [subcommand] [args] --agent - 如果存在歧义,则查看子命令帮助:
digitalocean-pp-cli <command> --help。