功能
- 交互式 TUI — 使用
dodo启动完整的交互界面,包含命令面板、历史记录和实时通知,无需参数。 - 内置 AI 助手 — 使用
/ai用简单的英语提问或执行操作。无需额外设置,本地运行dodopayments-mcp。 - 默认安全 — API 密钥存储在您的操作系统秘密存储中(macOS 钥匙串、Windows 凭证库、Linux libsecret)。磁盘上没有明文配置。
- 自动更新 — CLI 在启动时检查新版本,并在应用内通知您。运行
/update以就地升级。 - Webhook 工具 — 监听实时 webhooks 或在本地开发时离线触发有效负载。
安装
在 macOS 或 Linux 上一行安装 CLI:使用 npm 或 Bun 安装
如果您已经有 Node 或 Bun,包管理器的安装始终拉取最新版本:npm
Bun
手动安装(无需 Node / Bun)
如果您不想将远程脚本传递给sh,请自己下载二进制文件。
从最新的 GitHub Release 下载适用于您平台的二进制文件。
Linux / macOS
Windows
Linux / macOS
Windows
C:\Windows\System32 需要管理员权限。
每个版本都会发布 SHA256SUMS.txt。验证您的下载:
认证
在使用认证命令之前,请使用您的 API 密钥登录:- 打开您的浏览器访问 Dodo Payments API 密钥页面。
- 提示您粘贴您的 API 密钥。
- 要求您选择一个环境——测试模式 或 实时模式。
- 将凭据存储在您的操作系统秘密存储中(macOS 上的钥匙串,Windows 上的凭证库,Linux 上的 libsecret)。
切换模式和注销
您可以同时保持一个测试模式和一个实时模式密钥进行认证。要清除凭据:Direct
TUI
使用方法
您可以以两种模式使用 CLI。1. 交互式 TUI(推荐)
不带参数运行dodo 启动完整的交互界面:
/ 打开命令面板,或者直接开始输入——任何不是斜杠命令的内容都会发送给 AI 助手。
2. 直接子命令
不进入 TUI 直接运行命令:/ 为前缀;在直接模式中,去掉 /。
AI 助手
以自然语言提问或采取行动。助手使用本地运行的dodopayments-mcp——无需额外设置或 OAuth 流程,您的 AI 流量不会离开您的机器,除非与模型提供商通信。
示例:
项目脚手架
dodo init 将 Dodo Payments 计费路由直接生成到现有项目中。它生成样板路由文件,安装匹配的 @dodopayments/* 适配器包,并安全地将 DODO_PAYMENTS_* 环境变量写入您的 .env(仅附加未出现的变量)。此命令无需登录即可运行。
对于 Better-Auth 脚手架,您可以传递以逗号分隔的插件列表以生成(默认为所有):
checkout,portal,usage,webhooks。
src/ 目录并相应调整输出路径,并自动检测您的包管理器(bun,pnpm,yarn,或 npm)以运行正确的安装命令。
命令参考
产品
管理您的产品目录。支付
查看支付交易。客户
管理您的客户群。折扣
管理优惠券和折扣。许可证
管理软件许可证。附加组件
管理产品附加组件。退款
查看退款信息。结账
创建托管结账会话。Webhooks
CLI 包含两个用于开发期间测试 webhook 的强大工具:一个监听器,将实时测试 webhooks 转发到您的本地服务器,以及一个触发器,将模拟 webhook 有效负载发送到任何端点。监听 webhooks
将来自 Dodo Payments 的 webhooks 实时转发到您的本地开发服务器。http://localhost:3000/webhook)。
CLI 会自动在您的 Dodo Payments 帐户上创建一个 webhook 端点(如果还不存在),然后打开一个 WebSocket 连接以实时接收事件。
当有 webhook 事件触发(来自测试支付、订阅更改等)时,CLI 会接收并记录活动类型,并将完整请求与头和主体一同转发到您的本地端点。您的端点的响应将被记录并发送回去。
dodo wh listen 需要一个测试模式 API 密钥。监听流程不支持实时模式密钥。
监听器在转发到您的本地端点时保留了原始 webhook 标头(webhook-id、webhook-signature、webhook-timestamp),以便您测试签名验证逻辑。
触发测试 webhooks
将模拟的 webhook 有效负载发送到任何端点进行快速测试,无需创建真实交易。/wh trigger 流程将引导您完成:
- 设置目标端点 URL
- 从交互式菜单中选择一个特定的事件以触发
dodo wh trigger 不需要登录。它可以作为本地/离线 webhook 有效负载生成器。
触发的事件没有签名。在测试时,请禁用端点上的 webhook 签名验证——例如,在测试期间,使用 unsafe_unwrap() 而不是 unwrap() 编写 webhook 处理程序。
支持的 webhook 事件
环境变量
更新
CLI 在启动时检查是否存在新版本,并在状态栏中提供通知。当一个可用版本出现时,您会收到通知。要升级:install.sh
npm
Bun
资源
查看源代码和发布 查看 npm 注册表支持
- Discord: 加入我们的社区服务器
- GitHub: 在仓库上打开一个问题
- Email: 发邮件至 support@dodopayments.com