cli-anything-pm2 是做什么的?
一个无状态的命令行界面,用于 PM2 进程管理。 通过 PM2 CLI 子进程通信。无需本地状态或会话。
安装
pip install -e .
前提条件:
- Python 3.10+
- 全局安装 PM2 (
npm install -g pm2)
使用
基本命令
# 显示帮助
cli-anything-pm2 --help
# 启动交互式 REPL 模式
cli-anything-pm2
# 以 JSON 输出运行(供代理使用)
cli-anything-pm2 --json process list
cli-anything-pm2 --json system version
REPL 模式
当未指定子命令调用时,CLI 将进入交互式 REPL 会话:
cli-anything-pm2
# 以交互方式输入命令,支持制表符补全和历史记录
命令组
process
进程检查命令。
| 命令 | 描述 |
|---|---|
list | 列出所有 PM2 进程 |
describe <name> | 获取进程的详细信息 |
metrics | 获取所有进程的指标 |
lifecycle
进程生命周期命令。
| 命令 | 描述 |
|---|---|
start <script> --name <name> | 启动新进程 |
stop <name> | 停止一个进程 |
restart <name> | 重启一个进程 |
delete <name> | 删除一个进程 |
logs
日志管理命令。
| 命令 | 描述 |
|---|---|
view <name> --lines 50 | 查看最近的日志 |
flush [name] | 清空日志 |
system
系统级命令。
| 命令 | 描述 |
|---|---|
save | 保存当前进程列表 |
startup | 生成启动脚本 |
version | 获取 PM2 版本 |
输出格式
所有命令均支持双输出模式:
- 人类可读(默认):表格、颜色、格式化文本
- 机器可读(
--json标志):结构化的 JSON 供代理使用
# 人类输出
cli-anything-pm2 process list
# 为代理生成的 JSON 输出
cli-anything-pm2 --json process list
用于 AI 代理
当程序化使用此 CLI 时:
- 始终使用
--json标志 以获得可解析的输出 - 检查返回码 - 0 表示成功,非零表示错误
- 解析 stderr 以获取失败时的错误消息
版本
1.0.0