@wwkit/opm 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +381 -0
- package/bin/index.js +9 -0
- package/docs/managers/apt.md +45 -0
- package/docs/managers/brew.md +92 -0
- package/docs/managers/bun.md +50 -0
- package/docs/managers/cft.md +57 -0
- package/docs/managers/composer.md +96 -0
- package/docs/managers/config.md +32 -0
- package/docs/managers/dnf.md +46 -0
- package/docs/managers/node.md +49 -0
- package/docs/managers/npm.md +100 -0
- package/docs/managers/nvm.md +34 -0
- package/docs/managers/php.md +48 -0
- package/docs/managers/phpenv.md +34 -0
- package/docs/managers/pip.md +98 -0
- package/docs/managers/python.md +53 -0
- package/docs/managers/uv.md +27 -0
- package/docs/opm.html +570 -0
- package/docs/packages/opencode.md +41 -0
- package/package.json +51 -0
- package/scripts/postinstall.js +7 -0
- package/src/binaries/base.js +508 -0
- package/src/binaries/cft/index.js +35 -0
- package/src/binaries/depchecker.js +172 -0
- package/src/binaries/exefinder.js +110 -0
- package/src/binaries/platform.js +17 -0
- package/src/cli/doc.js +335 -0
- package/src/cli/groups/config.js +78 -0
- package/src/cli/groups/ensure.js +96 -0
- package/src/cli/groups/homebrew.js +73 -0
- package/src/cli/groups/nvm.js +73 -0
- package/src/cli/groups/package.js +514 -0
- package/src/cli/groups/phpenv.js +89 -0
- package/src/cli/groups/uv.js +73 -0
- package/src/cli/groups/version-manager.js +186 -0
- package/src/cli/helpers/args.js +49 -0
- package/src/cli/index.js +129 -0
- package/src/config.js +133 -0
- package/src/config.json5 +158 -0
- package/src/formatter.js +13 -0
- package/src/harnesses/base.js +205 -0
- package/src/harnesses/opencode/clear.js +239 -0
- package/src/harnesses/opencode/db.js +39 -0
- package/src/harnesses/opencode/index.js +46 -0
- package/src/harnesses/opencode/sqlite.js +200 -0
- package/src/index.js +46 -0
- package/src/managers/apt.js +377 -0
- package/src/managers/base.js +167 -0
- package/src/managers/brew.js +374 -0
- package/src/managers/bun.js +342 -0
- package/src/managers/composer.js +280 -0
- package/src/managers/dnf.js +370 -0
- package/src/managers/http.js +432 -0
- package/src/managers/node.js +150 -0
- package/src/managers/npm.js +473 -0
- package/src/managers/php.js +157 -0
- package/src/managers/pip.js +555 -0
- package/src/managers/python.js +180 -0
- package/src/managers/runtime.js +309 -0
- package/src/managers/winget.js +268 -0
- package/src/presets.js +24 -0
- package/src/proxy-presets.js +12 -0
package/README.md
ADDED
|
@@ -0,0 +1,381 @@
|
|
|
1
|
+
# opm CLI 命令
|
|
2
|
+
|
|
3
|
+
## 用户配置
|
|
4
|
+
|
|
5
|
+
安装后自动生成 `~/.config/opm/config.json5`(或 `$XDG_CONFIG_HOME/opm/config.json5`),用户可直接编辑:
|
|
6
|
+
|
|
7
|
+
- 合并读取:内置默认(`src/config.json5`)→ 用户文件 → `OPM_CONFIG_CONTENT` 环境变量注入层(最高优先级);字符串中 `{env:XXX}` 占位符替换为环境变量
|
|
8
|
+
- `proxy` — 代理预设 + `active`(当前激活代理;默认空 = 不使用代理,可改为预设 key 或完整 URL。命令行 `-p/--proxy` 传入时优先使用传入值)
|
|
9
|
+
- `npm` / `pip` / `dnf` / `apt` / `brew` / `composer` / `bun` / `nvm` / `node` / `phpenv` / `php` / `python` 的 `registry` — 镜像预设 + `active`(当前激活镜像)
|
|
10
|
+
|
|
11
|
+
`active` 可以是预设 key(如 `"taobao"`),也可以是完整 URL:
|
|
12
|
+
|
|
13
|
+
```json5
|
|
14
|
+
{
|
|
15
|
+
npm: {
|
|
16
|
+
registry: {
|
|
17
|
+
official: "https://registry.npmjs.org/",
|
|
18
|
+
taobao: "https://registry.npmmirror.com/",
|
|
19
|
+
active: "taobao", // 预设 key,或直接写 URL
|
|
20
|
+
},
|
|
21
|
+
},
|
|
22
|
+
}
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
- `opm config` 显示合并后的配置文件(不读系统配置;可用段名由配置动态生成,`opm config <段>` 可查看任意段)
|
|
26
|
+
- `opm <manager> registry set <key|url>` 更新配置文件中的 `active`
|
|
27
|
+
- `install` / `upgrade` 默认使用配置中的 active 镜像(npm 传 `--registry`,pip 传 `--index-url`;dnf/apt 通过 `registry set` 同步写入系统 repo 文件;brew 传 `HOMEBREW_API_DOMAIN` / `HOMEBREW_BOTTLE_DOMAIN`,不改系统配置;node 传 `NVM_NODEJS_ORG_MIRROR`;php 传 `PHP_BUILD_MIRROR_URL`;python 传 `UV_PYTHON_INSTALL_MIRROR`;bun 传 `BUN_CONFIG_REGISTRY`)
|
|
28
|
+
|
|
29
|
+
## 用法
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
# 开发阶段(项目内直接运行)
|
|
33
|
+
node bin <command> [args] [options]
|
|
34
|
+
node bin config [section]
|
|
35
|
+
|
|
36
|
+
# 全局安装后
|
|
37
|
+
opm <command> [args] [options]
|
|
38
|
+
|
|
39
|
+
# 从 monorepo 根目录
|
|
40
|
+
pnpm opm <command> [args] [options]
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Commands
|
|
44
|
+
|
|
45
|
+
| Command | 说明 |
|
|
46
|
+
|---------|------|
|
|
47
|
+
| `npm <action>` | npm 包管理器 |
|
|
48
|
+
| `pip <action>` | pip 包管理器 |
|
|
49
|
+
| `dnf <action>` | dnf 包管理器(Fedora / RHEL / EulerOS 等 rpm 系) |
|
|
50
|
+
| `apt <action>` | apt 包管理器(Debian / Ubuntu 等 dpkg 系) |
|
|
51
|
+
| `brew <action>` | brew 包管理器(macOS / Homebrew) |
|
|
52
|
+
| `composer <action>` | composer 包管理器(PHP) |
|
|
53
|
+
| `bun <action>` | bun 包管理器(Bun runtime,npm 兼容源) |
|
|
54
|
+
| `nvm <action>` | nvm 自身管理(安装/升级/卸载 nvm) |
|
|
55
|
+
| `node <action>` | node 版本管理(基于 nvm 安装/切换/卸载 Node.js 版本) |
|
|
56
|
+
| `phpenv <action>` | phpenv 自身管理(安装/升级/卸载 phpenv) |
|
|
57
|
+
| `php <action>` | php 版本管理(基于 phpenv 安装/切换/卸载 PHP 版本) |
|
|
58
|
+
| `uv <action>` | uv 自身管理(安装/升级/卸载 uv) |
|
|
59
|
+
| `python <action>` | python 版本管理(基于 uv 安装/切换/卸载 Python 版本) |
|
|
60
|
+
| `config [section]` | 查看常用配置(proxy + 各 registry 段,段名动态生成) |
|
|
61
|
+
| `opencode <action>` | opencode 运维命令(clear 清理过期会话) |
|
|
62
|
+
|
|
63
|
+
## Managers
|
|
64
|
+
|
|
65
|
+
| Manager | 说明 |
|
|
66
|
+
|---------|------|
|
|
67
|
+
| `npm` | npm 包管理器(registry 镜像,global/local 概念) |
|
|
68
|
+
| `pip` | pip 包管理器(index-url 镜像,global 为系统 Python) |
|
|
69
|
+
| `dnf` | dnf 包管理器(系统级,所有操作作用于系统,无全局/local 概念) |
|
|
70
|
+
| `apt` | apt 包管理器(系统级,所有操作作用于系统,无全局/local 概念) |
|
|
71
|
+
| `brew` | brew 包管理器(macOS,系统级,所有操作作用于系统,无全局/local 概念) |
|
|
72
|
+
| `composer` | composer 包管理器(PHP,项目级,install/upgrade 作用于当前项目 composer.json) |
|
|
73
|
+
| `bun` | bun 包管理器(Bun runtime,使用 npm 兼容 registry,global/local 概念) |
|
|
74
|
+
| `nvm` | nvm 自身管理(安装/升级/卸载 nvm,git clone + shell profile) |
|
|
75
|
+
| `node` | node 版本管理(基于 nvm,install/use/uninstall Node.js 版本,镜像 via `NVM_NODEJS_ORG_MIRROR`) |
|
|
76
|
+
| `phpenv` | phpenv 自身管理(安装/升级/卸载 phpenv + php-build 插件,git clone + shell profile) |
|
|
77
|
+
| `php` | php 版本管理(基于 phpenv,install/global 切换 PHP 版本,镜像 via `PHP_BUILD_MIRROR_URL`) |
|
|
78
|
+
| `uv` | uv 自身管理(安装/升级/卸载 uv,curl 安装 + `uv self update`) |
|
|
79
|
+
| `python` | python 版本管理(基于 uv,install/pin/uninstall Python 版本,镜像 via `UV_PYTHON_INSTALL_MIRROR`) |
|
|
80
|
+
|
|
81
|
+
## Actions
|
|
82
|
+
|
|
83
|
+
| Action | 说明 |
|
|
84
|
+
|--------|------|
|
|
85
|
+
| `version` | 查看管理器本身版本 |
|
|
86
|
+
| `registry` | 查询当前镜像地址 |
|
|
87
|
+
| `registry set <url\|preset>` | 设置镜像地址(支持预设名) |
|
|
88
|
+
| `registry presets` | 列出可用镜像预设 |
|
|
89
|
+
| `search <name> [version]` | 查询包在源是否可用 |
|
|
90
|
+
| `view <name>` | 查询包是否已安装 |
|
|
91
|
+
| `info <name>` | 查询包详情 |
|
|
92
|
+
| `versions <name>` | 列出所有可用版本 |
|
|
93
|
+
| `list` | 列出所有已安装包 |
|
|
94
|
+
| `outdated` | 列出过期包 |
|
|
95
|
+
| `install <name> [version]` | 安装包 |
|
|
96
|
+
| `uninstall <name>` | 卸载包 |
|
|
97
|
+
| `upgrade <name>` | 升级包 |
|
|
98
|
+
| `cache clean` | 清理缓存 |
|
|
99
|
+
|
|
100
|
+
## Opencode 运维
|
|
101
|
+
|
|
102
|
+
| 命令 | 说明 |
|
|
103
|
+
|------|------|
|
|
104
|
+
| `opencode clear` | 清理过期会话并 VACUUM 压缩数据库(缺省 `-d 1`,只保留今天) |
|
|
105
|
+
| `opencode clear -d, --days <n>` | 保留最近 n 天(对齐本地零点,含今天) |
|
|
106
|
+
| `opencode clear -h, --hours <n>` | 保留最近 n 小时(滚动窗口) |
|
|
107
|
+
| `opencode clear -n, --num <n>` | 保留最新 n 个会话 |
|
|
108
|
+
| `opencode clear --dry-run` | 仅预览,不修改任何数据 |
|
|
109
|
+
| `opencode clear -y` | 跳过确认提示 |
|
|
110
|
+
|
|
111
|
+
保留策略参数(`--days` / `--hours` / `--num`)三选一,互斥。
|
|
112
|
+
|
|
113
|
+
## 选项
|
|
114
|
+
|
|
115
|
+
| 选项 | 说明 |
|
|
116
|
+
|------|------|
|
|
117
|
+
| `-g, --global` | 全局操作(npm: global node_modules; pip: system Python) |
|
|
118
|
+
| `-p, --proxy <url>` | 代理地址(search/info/versions/outdated/install/upgrade);未传时默认使用配置 `proxy.active`(为空则不启用代理) |
|
|
119
|
+
| `-h, --help` | 显示帮助 |
|
|
120
|
+
|
|
121
|
+
> 所有命令默认以 JSON 格式输出。
|
|
122
|
+
|
|
123
|
+
## 示例
|
|
124
|
+
|
|
125
|
+
### npm
|
|
126
|
+
|
|
127
|
+
```bash
|
|
128
|
+
opm npm registry # 查看配置中的激活 registry
|
|
129
|
+
opm npm registry set taobao # 设置激活镜像为 taobao(写入 opm 配置)
|
|
130
|
+
opm npm registry presets # 列出可用镜像预设
|
|
131
|
+
opm npm search axios # 查询 axios 是否可用
|
|
132
|
+
opm npm search axios 1.7.9 # 查询指定版本
|
|
133
|
+
opm npm view axios # 查询是否已安装
|
|
134
|
+
opm npm info axios # 包详情
|
|
135
|
+
opm npm versions axios # 所有版本
|
|
136
|
+
opm npm list # 已安装列表
|
|
137
|
+
opm npm outdated # 过期包
|
|
138
|
+
opm npm install axios # 安装
|
|
139
|
+
opm npm install axios 1.7.9 # 安装指定版本
|
|
140
|
+
opm npm install -g typescript # 全局安装
|
|
141
|
+
opm npm uninstall axios # 卸载
|
|
142
|
+
opm npm upgrade axios # 升级
|
|
143
|
+
opm npm cache clean # 清理缓存
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
### pip
|
|
147
|
+
|
|
148
|
+
```bash
|
|
149
|
+
opm pip registry # 查看当前 index-url
|
|
150
|
+
opm pip registry set tsinghua # 设置为清华镜像
|
|
151
|
+
opm pip search requests # 查询 requests 是否可用
|
|
152
|
+
opm pip view requests # 查询是否已安装
|
|
153
|
+
opm pip info requests # 包详情
|
|
154
|
+
opm pip versions requests # 所有版本
|
|
155
|
+
opm pip list # 已安装列表
|
|
156
|
+
opm pip install requests # 安装
|
|
157
|
+
opm pip install requests 2.31.0 # 安装指定版本
|
|
158
|
+
opm pip uninstall requests # 卸载
|
|
159
|
+
opm pip upgrade requests # 升级
|
|
160
|
+
opm pip cache clean # 清理缓存
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
### dnf
|
|
164
|
+
|
|
165
|
+
```bash
|
|
166
|
+
opm dnf version # 查看 dnf 版本
|
|
167
|
+
opm dnf registry # 查看当前启用仓库
|
|
168
|
+
opm dnf registry set hce-updates # 写入 opm.repo 指向 hce-updates 镜像
|
|
169
|
+
opm dnf registry presets # 列出可用镜像预设
|
|
170
|
+
opm dnf search vim-enhanced # 查询包在源是否可用
|
|
171
|
+
opm dnf view vim-enhanced # 查询是否已安装
|
|
172
|
+
opm dnf info vim-enhanced # 包详情
|
|
173
|
+
opm dnf versions vim-enhanced # 所有可用版本
|
|
174
|
+
opm dnf list # 已安装包列表
|
|
175
|
+
opm dnf outdated # 过期包
|
|
176
|
+
opm dnf install htop # 安装
|
|
177
|
+
opm dnf install vim-enhanced 9.0 # 安装指定版本
|
|
178
|
+
opm dnf uninstall htop # 卸载
|
|
179
|
+
opm dnf upgrade htop # 升级
|
|
180
|
+
opm dnf cache clean # 清理缓存
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
### apt
|
|
184
|
+
|
|
185
|
+
```bash
|
|
186
|
+
opm apt version # 查看 apt 版本
|
|
187
|
+
opm apt registry # 查看当前启用源
|
|
188
|
+
opm apt registry set ubuntu-tsinghua # 写入 /etc/apt/sources.list.d/opm.list
|
|
189
|
+
opm apt registry presets # 列出可用镜像预设
|
|
190
|
+
opm apt search curl # 查询包在源是否可用
|
|
191
|
+
opm apt view curl # 查询是否已安装
|
|
192
|
+
opm apt info curl # 包详情
|
|
193
|
+
opm apt versions curl # 所有可用版本
|
|
194
|
+
opm apt list # 已安装包列表
|
|
195
|
+
opm apt outdated # 过期包
|
|
196
|
+
opm apt install htop # 安装
|
|
197
|
+
opm apt install curl 7.68.0-1ubuntu2.7 # 安装指定版本
|
|
198
|
+
opm apt uninstall htop # 卸载
|
|
199
|
+
opm apt upgrade htop # 升级
|
|
200
|
+
opm apt cache clean # 清理缓存
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
### brew
|
|
204
|
+
|
|
205
|
+
```bash
|
|
206
|
+
opm brew version # 查看 brew 版本
|
|
207
|
+
opm brew registry # 查看配置中的激活镜像
|
|
208
|
+
opm brew registry set tsinghua # 设置为清华镜像(install/upgrade 传 HOMEBREW_*_DOMAIN)
|
|
209
|
+
opm brew registry presets # 列出可用镜像预设
|
|
210
|
+
opm brew search wget # 查询 wget 是否可用
|
|
211
|
+
opm brew view wget # 查询是否已安装
|
|
212
|
+
opm brew info wget # 包详情
|
|
213
|
+
opm brew versions wget # 所有可用版本
|
|
214
|
+
opm brew list # 已安装列表
|
|
215
|
+
opm brew outdated # 过期包
|
|
216
|
+
opm brew install wget # 安装
|
|
217
|
+
opm brew install python 3.12 # 安装指定版本(versioned formula)
|
|
218
|
+
opm brew uninstall wget # 卸载
|
|
219
|
+
opm brew upgrade wget # 升级
|
|
220
|
+
opm brew cache clean # 清理缓存
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
### composer
|
|
224
|
+
|
|
225
|
+
```bash
|
|
226
|
+
opm composer version # 查看 composer 版本
|
|
227
|
+
opm composer registry # 查看配置中的激活镜像
|
|
228
|
+
opm composer registry set aliyun # 设置为阿里云镜像
|
|
229
|
+
opm composer registry presets # 列出可用镜像预设
|
|
230
|
+
opm composer search monolog/monolog # 查询包是否可用
|
|
231
|
+
opm composer search monolog/monolog 3.9.0 # 查询指定版本
|
|
232
|
+
opm composer view monolog/monolog # 查询是否已安装
|
|
233
|
+
opm composer info monolog/monolog # 包详情
|
|
234
|
+
opm composer versions monolog/monolog # 所有可用版本
|
|
235
|
+
opm composer list # 已安装列表
|
|
236
|
+
opm composer outdated # 过期包
|
|
237
|
+
opm composer install monolog/monolog # 安装(composer require)
|
|
238
|
+
opm composer install monolog/monolog ^3.0 # 安装指定版本约束
|
|
239
|
+
opm composer uninstall monolog/monolog # 卸载(composer remove)
|
|
240
|
+
opm composer upgrade monolog/monolog # 升级(composer update)
|
|
241
|
+
opm composer cache clean # 清理缓存
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
### bun
|
|
245
|
+
|
|
246
|
+
```bash
|
|
247
|
+
opm bun version # 查看 bun 版本
|
|
248
|
+
opm bun registry # 查看配置中的激活 registry
|
|
249
|
+
opm bun registry set taobao # 设置为 taobao 镜像(传 BUN_CONFIG_REGISTRY)
|
|
250
|
+
opm bun search axios # 查询 axios 是否可用
|
|
251
|
+
opm bun view axios # 查询是否已安装
|
|
252
|
+
opm bun info axios # 包详情
|
|
253
|
+
opm bun versions axios # 所有可用版本
|
|
254
|
+
opm bun list # 已安装列表
|
|
255
|
+
opm bun outdated # 过期包
|
|
256
|
+
opm bun install axios # 安装(bun add)
|
|
257
|
+
opm bun uninstall axios # 卸载(bun remove)
|
|
258
|
+
opm bun upgrade axios # 升级(bun update)
|
|
259
|
+
opm bun cache clean # 清理缓存(bun pm cache rm)
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
### nvm
|
|
263
|
+
|
|
264
|
+
```bash
|
|
265
|
+
opm nvm version # 查看 nvm 版本
|
|
266
|
+
opm nvm registry set gitee # 设置 nvm git 镜像为 gitee
|
|
267
|
+
opm nvm install # 安装 nvm(git clone + shell profile)
|
|
268
|
+
opm nvm upgrade # 更新 nvm(git pull)
|
|
269
|
+
opm nvm view # 检查 nvm 是否已安装
|
|
270
|
+
opm nvm uninstall # 卸载 nvm
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
### node
|
|
274
|
+
|
|
275
|
+
```bash
|
|
276
|
+
opm node current # 当前 Node.js 版本
|
|
277
|
+
opm node version # 同上
|
|
278
|
+
opm node list # 已安装版本列表
|
|
279
|
+
opm node versions # 所有可用版本
|
|
280
|
+
opm node install 20 # 安装 Node.js 20
|
|
281
|
+
opm node install --lts # 安装最新 LTS
|
|
282
|
+
opm node use 20 # 切换到 Node.js 20
|
|
283
|
+
opm node default 20 # 设置默认版本
|
|
284
|
+
opm node search v20.20.2 # 查询版本是否可下载
|
|
285
|
+
opm node view v20.20.2 # 查询版本是否已安装
|
|
286
|
+
opm node uninstall 18 # 卸载 Node.js 18
|
|
287
|
+
opm node upgrade # 安装最新 LTS
|
|
288
|
+
```
|
|
289
|
+
|
|
290
|
+
### phpenv
|
|
291
|
+
|
|
292
|
+
```bash
|
|
293
|
+
opm phpenv version # 查看 phpenv 版本
|
|
294
|
+
opm phpenv registry set gitee # 设置 phpenv git 镜像为 gitee
|
|
295
|
+
opm phpenv install # 安装 phpenv(git clone + php-build 插件 + shell profile)
|
|
296
|
+
opm phpenv upgrade # 更新 phpenv + php-build 插件
|
|
297
|
+
opm phpenv view # 检查 phpenv 是否已安装
|
|
298
|
+
opm phpenv uninstall # 卸载 phpenv
|
|
299
|
+
```
|
|
300
|
+
|
|
301
|
+
### php
|
|
302
|
+
|
|
303
|
+
```bash
|
|
304
|
+
opm php current # 当前 PHP 版本
|
|
305
|
+
opm php list # 已安装版本列表
|
|
306
|
+
opm php versions # 所有可用版本
|
|
307
|
+
opm php install 8.3 # 安装 PHP 8.3
|
|
308
|
+
opm php use 8.3 # 切换全局版本(phpenv global)
|
|
309
|
+
opm php default 8.3 # 设置默认版本
|
|
310
|
+
opm php search 8.3.13 # 查询版本是否可下载
|
|
311
|
+
opm php view 8.3.13 # 查询版本是否已安装
|
|
312
|
+
opm php uninstall 8.2 # 卸载 PHP 8.2
|
|
313
|
+
opm php upgrade # 安装最新版本
|
|
314
|
+
```
|
|
315
|
+
|
|
316
|
+
### uv
|
|
317
|
+
|
|
318
|
+
```bash
|
|
319
|
+
opm uv version # 查看 uv 版本
|
|
320
|
+
opm uv install # 安装 uv(curl 安装脚本)
|
|
321
|
+
opm uv upgrade # 更新 uv(uv self update)
|
|
322
|
+
opm uv view # 检查 uv 是否已安装
|
|
323
|
+
opm uv uninstall # 卸载 uv
|
|
324
|
+
```
|
|
325
|
+
|
|
326
|
+
### python
|
|
327
|
+
|
|
328
|
+
```bash
|
|
329
|
+
opm python current # 当前 Python 版本
|
|
330
|
+
opm python list # 已安装版本列表
|
|
331
|
+
opm python versions # 所有可用版本
|
|
332
|
+
opm python install 3.12 # 安装 Python 3.12
|
|
333
|
+
opm python use 3.12 # 固定当前目录版本(uv python pin)
|
|
334
|
+
opm python default 3.12 # 设置默认版本(写 ~/.python-version)
|
|
335
|
+
opm python search 3.12.4 # 查询版本是否可下载
|
|
336
|
+
opm python view 3.12.4 # 查询版本是否已安装
|
|
337
|
+
opm python uninstall 3.11 # 卸载 Python 3.11
|
|
338
|
+
opm python upgrade # 安装最新版本
|
|
339
|
+
```
|
|
340
|
+
|
|
341
|
+
> `pip` 与 `python` 互不干扰:`opm pip` 直接调用 pip CLI;`opm python` 通过 uv 管版本;如需更快的 pip 替代,可直用 `uv pip`。
|
|
342
|
+
|
|
343
|
+
### config
|
|
344
|
+
|
|
345
|
+
```bash
|
|
346
|
+
opm config # 查看合并后的用户配置(proxy + registries)
|
|
347
|
+
opm config proxy # 查看代理预设 + active(空 = 不使用代理)
|
|
348
|
+
opm config npm.registry # 查看 npm registry 预设 + active
|
|
349
|
+
opm config pip.registry # 查看 pip registry 预设 + active
|
|
350
|
+
opm config dnf.registry # 查看 dnf registry 预设 + active
|
|
351
|
+
opm config apt.registry # 查看 apt registry 预设 + active
|
|
352
|
+
opm config brew.registry # 查看 brew registry 预设 + active
|
|
353
|
+
opm config composer.registry # 查看 composer registry 预设 + active
|
|
354
|
+
opm config bun.registry # 查看 bun registry 预设 + active
|
|
355
|
+
opm config nvm.registry # 查看 nvm registry 预设 + active
|
|
356
|
+
opm config node.registry # 查看 node registry 预设 + active
|
|
357
|
+
opm config phpenv.registry # 查看 phpenv registry 预设 + active
|
|
358
|
+
opm config php.registry # 查看 php registry 预设 + active
|
|
359
|
+
opm config python.registry # 查看 python registry 预设 + active
|
|
360
|
+
```
|
|
361
|
+
|
|
362
|
+
> `opm config [section]` 的可用段名由合并配置动态生成(每个 top-level 段 + 含 `registry` 的 `.registry` 子段),`opm config <未知段>` 会列出全部可用段。
|
|
363
|
+
|
|
364
|
+
### opencode
|
|
365
|
+
|
|
366
|
+
```bash
|
|
367
|
+
opm opencode clear # 只保留今天创建的会话
|
|
368
|
+
opm opencode clear -d 7 # 保留最近 7 天会话
|
|
369
|
+
opm opencode clear -h 24 # 保留最近 24 小时会话
|
|
370
|
+
opm opencode clear -n 10 # 保留最新 10 个会话
|
|
371
|
+
opm opencode clear --dry-run # 仅预览
|
|
372
|
+
opm opencode clear -y # 跳过确认直接执行
|
|
373
|
+
```
|
|
374
|
+
|
|
375
|
+
## npm scripts
|
|
376
|
+
|
|
377
|
+
| 命令 | 说明 |
|
|
378
|
+
|------|------|
|
|
379
|
+
| `npm run check` | 语法检查(`node --check bin/index.js`) |
|
|
380
|
+
| `npm run test` | 运行测试 |
|
|
381
|
+
| `npm run release` | 发布(复用 @wwkit/shared 的单包发布) |
|
package/bin/index.js
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# apt 命令对照表
|
|
2
|
+
|
|
3
|
+
`@wwkit/opm` 统一命令管理 apt 包(Debian / Ubuntu 等 dpkg 系,系统级)。
|
|
4
|
+
|
|
5
|
+
## 命令对照
|
|
6
|
+
|
|
7
|
+
| 统一命令 | 原始命令 | 说明 |
|
|
8
|
+
|---------|---------|------|
|
|
9
|
+
| `opm apt version` | `apt --version` | 查看 apt 版本 |
|
|
10
|
+
| `opm apt registry` | 读 `/etc/apt/sources.list.d/opm.list` | 查询当前启用源 |
|
|
11
|
+
| `opm apt registry set <url\|preset>` | 写 `/etc/apt/sources.list.d/opm.list` + `apt update` | 设置镜像源 |
|
|
12
|
+
| `opm apt registry presets` | — | 列出可用镜像预设 |
|
|
13
|
+
| `opm apt search <name>` | `apt-cache search` | 查询包在源是否可用 |
|
|
14
|
+
| `opm apt view <name>` | `dpkg -l` / `apt list --installed` | 查询包是否已安装 |
|
|
15
|
+
| `opm apt info <name>` | `apt-cache show` | 包详情 |
|
|
16
|
+
| `opm apt versions <name>` | `apt-cache madison` / `policy` | 所有可用版本 |
|
|
17
|
+
| `opm apt list` | `apt list --installed` | 已安装包列表 |
|
|
18
|
+
| `opm apt outdated` | `apt list --upgradable` | 过期包 |
|
|
19
|
+
| `opm apt install <name>` | `apt install` | 安装 |
|
|
20
|
+
| `opm apt uninstall <name>` | `apt remove` | 卸载 |
|
|
21
|
+
| `opm apt upgrade <name>` | `apt upgrade` | 升级 |
|
|
22
|
+
| `opm apt cache clean` | `apt clean` | 清理缓存 |
|
|
23
|
+
|
|
24
|
+
## 镜像预设
|
|
25
|
+
|
|
26
|
+
| 预设名 | 地址 |
|
|
27
|
+
|--------|------|
|
|
28
|
+
| `ubuntu-tsinghua` | `deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse` |
|
|
29
|
+
| `ubuntu-huawei` | `deb https://mirrors.huaweicloud.com/ubuntu/ focal main restricted universe multiverse` |
|
|
30
|
+
| `ubuntu-aliyun` | `deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse` |
|
|
31
|
+
| `debian-official` | `deb http://deb.debian.org/debian/ bookworm main` |
|
|
32
|
+
| `debian-tsinghua` | `deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm main` |
|
|
33
|
+
|
|
34
|
+
## 示例
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
opm apt version
|
|
38
|
+
opm apt registry set ubuntu-tsinghua
|
|
39
|
+
opm apt search curl
|
|
40
|
+
opm apt info curl
|
|
41
|
+
opm apt install htop
|
|
42
|
+
opm apt uninstall htop
|
|
43
|
+
opm apt upgrade htop
|
|
44
|
+
opm apt cache clean
|
|
45
|
+
```
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
# brew 命令对照表
|
|
2
|
+
|
|
3
|
+
`@wwkit/opm` 统一命令与 Homebrew 原始命令的映射关系(macOS)。
|
|
4
|
+
|
|
5
|
+
## 命令对照
|
|
6
|
+
|
|
7
|
+
| 统一命令 | 原始命令 | 说明 |
|
|
8
|
+
|---------|---------|------|
|
|
9
|
+
| `opm brew version` | `brew --version` | 查看 brew 本身版本 |
|
|
10
|
+
| `opm brew registry` | 读 `~/.config/opm/config.json5` 的 `brew.registry.active` | 查询配置中的激活镜像(不读系统配置) |
|
|
11
|
+
| `opm brew registry set <url\|preset>` | 写 `~/.config/opm/config.json5` 的 `brew.registry.active` | 设置激活镜像(支持预设名,install/upgrade 自动传 `HOMEBREW_API_DOMAIN` / `HOMEBREW_BOTTLE_DOMAIN`;仅作用于本工具发起的命令,不改系统 brew 配置) |
|
|
12
|
+
| `opm brew registry presets` | — | 列出可用镜像预设 |
|
|
13
|
+
| `opm brew search <name>` | `brew info --json=v2 <name>` | 查询包在源是否可用(返回最新版本 + 版本列表) |
|
|
14
|
+
| `opm brew search <name> <version>` | `brew info --json=v2 <name>` | 查询指定版本是否可用 |
|
|
15
|
+
| `opm brew view <name>` | `brew list --versions <name>` | 查询包是否已安装 |
|
|
16
|
+
| `opm brew info <name>` | `brew info --json=v2 <name>` | 查询包详情(描述/主页/许可证/仓库等) |
|
|
17
|
+
| `opm brew versions <name>` | `brew info --json=v2 <name>` | 列出所有可用版本 |
|
|
18
|
+
| `opm brew list` | `brew list --versions` | 列出所有已安装包(formulae + casks) |
|
|
19
|
+
| `opm brew outdated` | `brew outdated --json=v2` | 列出过期包 |
|
|
20
|
+
| `opm brew install <name>` | `brew install <name>` | 安装包(formula / cask 均可) |
|
|
21
|
+
| `opm brew install <name> <version>` | `brew install <name>@<version>` | 安装指定版本(versioned formula) |
|
|
22
|
+
| `opm brew uninstall <name>` | `brew uninstall <name>` | 卸载包 |
|
|
23
|
+
| `opm brew upgrade <name>` | `brew upgrade <name>` | 升级包到最新版本 |
|
|
24
|
+
| `opm brew cache clean` | `brew cleanup -s --prune=all` | 清理缓存 |
|
|
25
|
+
| `opm brew help` | — | 显示 brew 命令清单 |
|
|
26
|
+
|
|
27
|
+
## 镜像预设
|
|
28
|
+
|
|
29
|
+
| 预设名 | 地址 |
|
|
30
|
+
|--------|------|
|
|
31
|
+
| `official` | `https://ghcr.io/v2/homebrew` |
|
|
32
|
+
| `tsinghua` | `https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles` |
|
|
33
|
+
| `ustc` | `https://mirrors.ustc.edu.cn/homebrew-bottles` |
|
|
34
|
+
|
|
35
|
+
> 镜像预设记录的是 bottle 域名;使用非 official 镜像时,`HOMEBREW_API_DOMAIN` 取 `${bottle}/api`,`HOMEBREW_BOTTLE_DOMAIN` 取 bottle 域名本身。
|
|
36
|
+
|
|
37
|
+
## 选项
|
|
38
|
+
|
|
39
|
+
| 选项 | 说明 |
|
|
40
|
+
|------|------|
|
|
41
|
+
| `-h, --help` | 显示帮助 |
|
|
42
|
+
|
|
43
|
+
> 所有命令默认以 JSON 格式输出。
|
|
44
|
+
|
|
45
|
+
## 示例
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
# 查看 brew 版本
|
|
49
|
+
opm brew version
|
|
50
|
+
|
|
51
|
+
# 查询当前镜像
|
|
52
|
+
opm brew registry
|
|
53
|
+
|
|
54
|
+
# 切换到清华镜像
|
|
55
|
+
opm brew registry set tsinghua
|
|
56
|
+
|
|
57
|
+
# 查询 wget 是否在源中可用
|
|
58
|
+
opm brew search wget
|
|
59
|
+
|
|
60
|
+
# 查看 wget 是否已安装
|
|
61
|
+
opm brew view wget
|
|
62
|
+
|
|
63
|
+
# 查看 wget 详情
|
|
64
|
+
opm brew info wget
|
|
65
|
+
|
|
66
|
+
# 列出 wget 所有可用版本
|
|
67
|
+
opm brew versions wget
|
|
68
|
+
|
|
69
|
+
# 列出所有已安装包
|
|
70
|
+
opm brew list
|
|
71
|
+
|
|
72
|
+
# 列出过期包
|
|
73
|
+
opm brew outdated
|
|
74
|
+
|
|
75
|
+
# 安装 wget
|
|
76
|
+
opm brew install wget
|
|
77
|
+
|
|
78
|
+
# 安装指定版本(versioned formula,如 python@3.12)
|
|
79
|
+
opm brew install python 3.12
|
|
80
|
+
|
|
81
|
+
# 卸载 wget
|
|
82
|
+
opm brew uninstall wget
|
|
83
|
+
|
|
84
|
+
# 升级 wget
|
|
85
|
+
opm brew upgrade wget
|
|
86
|
+
|
|
87
|
+
# 清理缓存
|
|
88
|
+
opm brew cache clean
|
|
89
|
+
|
|
90
|
+
# 显示帮助
|
|
91
|
+
opm brew help
|
|
92
|
+
```
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# bun 命令对照表
|
|
2
|
+
|
|
3
|
+
`@wwkit/opm` 统一命令管理 Bun 包。
|
|
4
|
+
|
|
5
|
+
Bun 是全栈 JS 工具链(runtime + 包管理器 + 打包器),包管理与 npm 兼容。
|
|
6
|
+
|
|
7
|
+
## 命令对照
|
|
8
|
+
|
|
9
|
+
| 统一命令 | 原始命令 | 说明 |
|
|
10
|
+
|---------|---------|------|
|
|
11
|
+
| `opm bun version` | `bun --version` | 查看 bun 版本 |
|
|
12
|
+
| `opm bun registry` | 读 `~/.config/opm/config.json5` 的 `bun.registry.active` | 查询 bun registry 镜像 |
|
|
13
|
+
| `opm bun registry set <url\|preset>` | 写 `~/.config/opm/config.json5` | 设置 bun registry 镜像(传给 `BUN_CONFIG_REGISTRY`) |
|
|
14
|
+
| `opm bun registry presets` | — | 列出可用镜像预设 |
|
|
15
|
+
| `opm bun search <name> [version]` | HTTP 查 npm registry | 查询包是否可用 |
|
|
16
|
+
| `opm bun view <name> [-g]` | 查 `node_modules/<name>/package.json` | 查询包是否已安装 |
|
|
17
|
+
| `opm bun info <name>` | HTTP 查 npm registry | 显示包详情 |
|
|
18
|
+
| `opm bun versions <name>` | HTTP 查 npm registry | 列出所有可用版本 |
|
|
19
|
+
| `opm bun list [-g]` | `bun pm ls` | 列出已安装包 |
|
|
20
|
+
| `opm bun outdated [-g]` | `bun outdated` | 列出过期包 |
|
|
21
|
+
| `opm bun install <name> [version]` | `bun add <name>@<version>` | 安装包 |
|
|
22
|
+
| `opm bun uninstall <name>` | `bun remove <name>` | 卸载包 |
|
|
23
|
+
| `opm bun upgrade <name>` | `bun update <name>` | 升级包 |
|
|
24
|
+
| `opm bun cache clean` | `bun pm cache rm` | 清理缓存 |
|
|
25
|
+
|
|
26
|
+
## 镜像预设
|
|
27
|
+
|
|
28
|
+
| 预设名 | 地址 |
|
|
29
|
+
|--------|------|
|
|
30
|
+
| `official` | `https://registry.npmjs.org/` |
|
|
31
|
+
| `taobao` | `https://registry.npmmirror.com/` |
|
|
32
|
+
| `huawei` | `https://cmc.centralrepo.rnd.huawei.com/artifactory/api/npm/npm-central-repo/` |
|
|
33
|
+
|
|
34
|
+
> 镜像通过 `BUN_CONFIG_REGISTRY` 环境变量传递给 bun 命令。
|
|
35
|
+
|
|
36
|
+
## 示例
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
opm bun version
|
|
40
|
+
opm bun registry set taobao
|
|
41
|
+
opm bun search axios
|
|
42
|
+
opm bun info react
|
|
43
|
+
opm bun list
|
|
44
|
+
opm bun outdated
|
|
45
|
+
opm bun install axios
|
|
46
|
+
opm bun install react@18
|
|
47
|
+
opm bun upgrade axios
|
|
48
|
+
opm bun uninstall axios
|
|
49
|
+
opm bun cache clean
|
|
50
|
+
```
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# cft 命令对照表
|
|
2
|
+
|
|
3
|
+
`@wwkit/opm` 统一命令管理 Chrome for Testing 二进制工具(chrome + chromedriver)的下载、解压、多版本安装。
|
|
4
|
+
|
|
5
|
+
## 命令对照
|
|
6
|
+
|
|
7
|
+
| 统一命令 | 说明 |
|
|
8
|
+
|---------|------|
|
|
9
|
+
| `opm cft version` | 查看当前激活版本 |
|
|
10
|
+
| `opm cft installed` | 查看是否已安装(列出本地版本) |
|
|
11
|
+
| `opm cft dir` | 查看激活版本安装目录 + chrome/chromedriver 路径(供外部消费) |
|
|
12
|
+
| `opm cft versions` | 列出远程可用版本(known-good-versions-with-downloads.json) |
|
|
13
|
+
| `opm cft list` | 列出本地已安装版本 |
|
|
14
|
+
| `opm cft install [version]` | 安装指定版本(缺省 = `config.cft.version`);同版本已装跳过;设为 active |
|
|
15
|
+
| `opm cft status [version]` | 查看版本安装状态/二进制文件校验(缺省 = 全部) |
|
|
16
|
+
| `opm cft clear [version]` | 删除指定版本安装产物;不传 = 清理所有版本 |
|
|
17
|
+
| `opm cft registry` | 查询激活镜像(读 `~/.config/opm/config.json5` 的 `cft.registry.active`) |
|
|
18
|
+
| `opm cft registry set <url\|preset>` | 设置激活镜像 |
|
|
19
|
+
| `opm cft registry presets` | 列出可用镜像预设 |
|
|
20
|
+
|
|
21
|
+
## 镜像预设
|
|
22
|
+
|
|
23
|
+
| 预设名 | 地址 |
|
|
24
|
+
|--------|------|
|
|
25
|
+
| `official` | `https://googlechromelabs.github.io/chrome-for-testing` |
|
|
26
|
+
| `npmmirror` | `https://npmmirror.com/mirrors/chrome-for-testing` |
|
|
27
|
+
|
|
28
|
+
默认 `active` = `npmmirror`(镜像,非 official)。
|
|
29
|
+
|
|
30
|
+
## 安装目录
|
|
31
|
+
|
|
32
|
+
`~/.config/opm/cft/<version>/`(尊重 `OPM_CONFIG_DIR`)
|
|
33
|
+
|
|
34
|
+
```
|
|
35
|
+
~/.config/opm/cft/
|
|
36
|
+
manifest.json { active: "141.0.7390.54" }
|
|
37
|
+
<version>/
|
|
38
|
+
chrome-<os>/
|
|
39
|
+
chromedriver-<os>/
|
|
40
|
+
installed.json
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## 示例
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
opm cft version
|
|
47
|
+
opm cft dir
|
|
48
|
+
opm cft list
|
|
49
|
+
opm cft versions
|
|
50
|
+
opm cft install
|
|
51
|
+
opm cft install 141.0.7390.54
|
|
52
|
+
opm cft status
|
|
53
|
+
opm cft status 141.0.7390.54
|
|
54
|
+
opm cft clear 141.0.7390.54
|
|
55
|
+
opm cft clear
|
|
56
|
+
opm cft registry set official
|
|
57
|
+
```
|