wpops 0.4.0 → 0.4.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 CHANGED
@@ -23,13 +23,15 @@ WordPress REST 操作工具。只依赖 Node 内置能力(无第三方包),用
23
23
  **最快:一条命令装好(含 skill)**
24
24
 
25
25
  ```powershell
26
- npm i -g wpops # 装 CLI(无 postinstall,不会被 pnpm 等的「构建脚本确认」拦住)
27
- wpops setup # 配置站点 + 自动装好内置 skill(写到 ~/.agents/skills/wpops)
26
+ npm i -g wpops # 装 CLI;postinstall 会把内置 skill 复制到 ~/.agents/skills/wpops
27
+ wpops setup # 配置站点(问 URL/用户名/应用密码)并体检
28
28
  ```
29
29
 
30
30
  第二条是配置站点(密码必须你亲自输入,不回显)。之后即可 `wpops posts list` 等。
31
31
  不想安装、只想用一次:`npx wpops doctor`。
32
32
 
33
+ > **pnpm 用户**:pnpm 10+ 默认拦截依赖的 `postinstall`,会提示待批准。**非交互批准**:`pnpm approve-builds -g wpops`(若该脚本已被跳过,再 `pnpm rebuild -g wpops`)。不批准也行——`wpops setup` 或首次运行任意 `wpops` 命令也会把 skill 装好;`wpops install-skill` 可手动装。
34
+
33
35
  **从 Git / 开发者**
34
36
 
35
37
  ```powershell
@@ -62,7 +64,7 @@ npm publish
62
64
 
63
65
  > 凭据不进仓库 / 包:配置默认写在**用户目录**(见「1. 配置」),`package.json` 的 `files`
64
66
  > 白名单也不含它。每台机器各自 `wpops setup`,工具与 skill 都不携带密钥。
65
- > `WPOPS_SKIP_SKILL=1` 可跳过装 skill;`wpops install-skill` 可手动装/刷新。安装不再用 postinstall,免得被 pnpm 等包管理器的脚本确认拦住。
67
+ > `WPOPS_SKIP_SKILL=1` 可跳过装 skill;`wpops install-skill` 可手动装/刷新。
66
68
 
67
69
  ### 本机(开发) vs 其他机器(使用)
68
70
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wpops",
3
- "version": "0.4.0",
3
+ "version": "0.4.1",
4
4
  "description": "WordPress REST operations toolkit — manage posts, pages, media, menus, comments, users, custom types, revisions, blocks, templates, widgets, settings and plugins from the CLI. Multi-site, safety-first, zero dependencies.",
5
5
  "license": "MIT",
6
6
  "author": "qnnp",
@@ -11,6 +11,7 @@
11
11
  "files": [
12
12
  "bin",
13
13
  "lib",
14
+ "scripts",
14
15
  "skills",
15
16
  ".env.example",
16
17
  "README.md"
@@ -38,6 +39,7 @@
38
39
  "setup": "node bin/wpops.js setup",
39
40
  "doctor": "node bin/wpops.js doctor",
40
41
  "help": "node bin/wpops.js help",
42
+ "postinstall": "node scripts/postinstall.mjs",
41
43
  "test": "node --test"
42
44
  },
43
45
  "engines": {
@@ -0,0 +1,14 @@
1
+ // postinstall:把内置 skill 装到 agent 的发现目录(装完即复制)。
2
+ // 任何失败都不应中断安装本身。
3
+ import { installSkill } from '../lib/skill.js';
4
+
5
+ try {
6
+ const installed = installSkill();
7
+ if (installed.length) {
8
+ for (const dir of installed) console.log(`wpops: skill 已安装到 ${dir}`);
9
+ } else {
10
+ console.log('wpops: 未自动安装 skill(可运行 `wpops install-skill` 手动安装)');
11
+ }
12
+ } catch {
13
+ // 静默:postinstall 出错不影响安装
14
+ }
@@ -11,7 +11,7 @@ license: MIT
11
11
  本 skill 自洽,不依赖其他 skill;需要精确细节时**现查现用**(见下)。
12
12
 
13
13
  ## 安装与位置
14
- - 全局命令 `wpops`(`npm i -g wpops` 安装)。内置 skill 由 `wpops setup` 安装,首次运行也会按需自动刷新。
14
+ - 全局命令 `wpops`(`npm i -g wpops` 安装;postinstall 会把本 skill 复制到发现目录;pnpm 10+ 需 `pnpm approve-builds -g wpops`)。`wpops setup` 也会装,首次运行按需刷新。
15
15
  - 未安装时也可:`npx wpops ...`。
16
16
  - 配置目录:默认在用户级稳定目录(Windows `%APPDATA%\wpops`,其他 `~/.config/wpops`),升级不丢;`WPOPS_HOME` 可覆盖。旧版放在包目录的配置会在首次运行时自动迁移。
17
17
  - 凭据:`sites/<名字>.env`。**不要读取、不要打印其中的应用密码。**