@deployxai/dxc 0.1.13 → 0.2.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 +6 -5
- package/dist/chunks/chunk-7DMYDQPR.js +1324 -0
- package/dist/chunks/{knowledge-MNDWLVLM.js → knowledge-MHD76CG4.js} +2 -4
- package/dist/index.js +28494 -30586
- package/package.json +1 -1
- package/skills/dxc-article-outline/SKILL.md +14 -57
- package/skills/dxc-article-outline/agents/openai.yaml +2 -2
- package/skills/dxc-article-outline/references/outline-methods.md +1 -2
- package/skills/dxc-article-write/SKILL.md +15 -91
- package/skills/dxc-article-write/agents/openai.yaml +2 -2
- package/skills/dxc-article-write/references/writing-methods.md +2 -2
- package/skills/dxc-content-brief/SKILL.md +17 -56
- package/skills/dxc-content-brief/agents/openai.yaml +2 -2
- package/skills/dxc-content-brief/references/brief-method.md +3 -3
- package/skills/dxc-content-review/SKILL.md +15 -62
- package/skills/dxc-content-review/agents/openai.yaml +2 -2
- package/skills/dxc-content-review/references/review-checklist.md +3 -4
- package/skills/dxc-content-workflow/SKILL.md +92 -243
- package/skills/dxc-content-workflow/agents/openai.yaml +2 -2
- package/skills/dxc-content-workflow/references/onboarding-questions.md +2 -7
- package/skills/dxc-content-workflow/references/stages.md +79 -0
- package/skills/dxc-knowledge/SKILL.md +2 -2
- package/skills/dxc-memory/SKILL.md +2 -2
- package/skills/dxc-profile/SKILL.md +4 -4
- package/skills/dxc-project-overview/SKILL.md +26 -0
- package/skills/dxc-project-overview/agents/openai.yaml +6 -0
- package/skills/dxc-quote-curator/SKILL.md +4 -6
- package/skills/dxc-research/SKILL.md +21 -116
- package/skills/dxc-research/agents/openai.yaml +2 -2
- package/skills/dxc-research/references/research-method.md +11 -14
- package/skills/dxc-title-write/SKILL.md +16 -86
- package/skills/dxc-title-write/agents/openai.yaml +2 -2
- package/skills/dxc-title-write/references/title-methods.md +3 -3
- package/skills/dxc-visual-plan/SKILL.md +16 -195
- package/skills/dxc-visual-plan/agents/openai.yaml +2 -2
- package/skills/dxc-visual-plan/references/visual-methods.md +7 -7
- package/skills/dxc-wechat-publisher/SKILL.md +23 -210
- package/skills/dxc-wechat-publisher/agents/openai.yaml +2 -2
- package/dist/chunks/chunk-DDKUG5EV.js +0 -2126
- package/dist/chunks/chunk-RONRJJBC.js +0 -2379
- package/dist/chunks/chunk-ZKJQWR2J.js +0 -37
- package/dist/chunks/monitor-ACOHQYOE.js +0 -694
- package/skills/dxc-content-workflow/references/catalog.json +0 -137
- package/skills/dxc-content-workflow/references/stage-contract.md +0 -121
|
@@ -1,226 +1,39 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: dxc-wechat-publisher
|
|
3
|
-
description:
|
|
3
|
+
description: 把 DxC 项目中已经准备好的文章、封面和正文图片预览并创建到微信公众号草稿箱。用户要求预览、选择公众号、创建微信草稿,或 dxc-content-workflow 返回 delivery 阶段时使用;可以从已有完整项目直接进入交付阶段。
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# DxC 微信草稿交付
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
内部固定使用 `@deployxai/dxc@0.2.1`;Windows 通过 `npm.cmd exec`,macOS/Linux 通过 `npm exec`
|
|
9
|
+
运行,不切换到 PATH 中的其他版本。
|
|
9
10
|
|
|
10
|
-
|
|
11
|
+
本 Skill 只负责最后的微信交付,不生成正文,不正式发布,不群发。
|
|
11
12
|
|
|
12
|
-
|
|
13
|
-
和回读核验。它不生成正文,不正式发布,不群发。
|
|
13
|
+
## 进入交付
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
- 总控返回 `step: delivery` 时直接使用该项目。
|
|
16
|
+
- 已有完整项目需要直接进入交付时调用:
|
|
16
17
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
立即改用不带 `--no-open` 的 `dxc setup --server <https-url>`,让 CLI 调用 Windows 或 macOS
|
|
21
|
-
的系统默认浏览器;系统浏览器也失败时,把 CLI 返回的短时 URL 呈现为“继续扫码”的可点击
|
|
22
|
-
链接。前两级不向用户展示 URL,第三级不展示任何命令、参数或技术解释。该流程最多出现两次
|
|
23
|
-
不同语义的扫码:
|
|
24
|
-
- 个人微信登录或明确注册 DxC 用户;
|
|
25
|
-
- 公众号管理员授权第三方平台的草稿能力。
|
|
26
|
-
页面打开后保持 CLI 轮询继续运行;链接过期时自动重新执行当前扫码步骤并打开新链接,
|
|
27
|
-
不要求用户重新输入命令。
|
|
28
|
-
3. 运行 `dxc wechat accounts`。没有可用账号时停止;多个账号时向用户展示名称和
|
|
29
|
-
`accountId`,要求明确选择,不能使用“上一次账号”。
|
|
30
|
-
4. 运行 `dxc project status --directory <project> --json`,读取实际产物路径。要求正文
|
|
31
|
-
就绪、标题已确认,且视觉阶段已经在 `assets/visuals` 生产或选择内容相关的
|
|
32
|
-
`cover.png`/`cover.jpg`。缺封面时返回视觉阶段处理;不得生成纯色占位图。
|
|
33
|
-
5. 把 `delivery` 检查点写为 `running`:
|
|
34
|
-
|
|
35
|
-
```bash
|
|
36
|
-
dxc project checkpoint delivery \
|
|
37
|
-
--status running \
|
|
38
|
-
--summary "正在为已确认文章生成微信公众号预览" \
|
|
39
|
-
--execution-location local-device \
|
|
40
|
-
--data-transit dxc-cloud \
|
|
41
|
-
--json
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
CLI 自动绑定正文、标题,以及已经就绪的视觉计划和审校报告;不要手抄发布副本、路径或
|
|
45
|
-
哈希,也不要记录没有读取的占位产物。
|
|
46
|
-
|
|
47
|
-
## 生成不可变云端预览
|
|
48
|
-
|
|
49
|
-
运行:
|
|
50
|
-
|
|
51
|
-
```bash
|
|
52
|
-
dxc wechat draft preview \
|
|
53
|
-
--article <article.md> \
|
|
54
|
-
--assets-directory <project>/assets/visuals \
|
|
55
|
-
--visual-plan <visual-plan.md> \
|
|
56
|
-
--cover <cover.png-or-jpeg-or-auto> \
|
|
57
|
-
--account <account-id> \
|
|
58
|
-
--title "<已确认标题>" \
|
|
59
|
-
--browser system \
|
|
60
|
-
--json
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
若 Agent 已根据文章类型给出建议,可在文章 frontmatter 写入目录中的
|
|
64
|
-
`dxc_wechat_template_hint`;它只决定首次预览,用户始终在预览页选择最终模板。CLI 会显式上传
|
|
65
|
-
Markdown、封面和正文图片,由云端使用建议或默认固定模板权威渲染,并返回
|
|
66
|
-
`snapshot.id`、`snapshot.snapshotHash`、`preview.url`、目标账号和预检结果。
|
|
67
|
-
返回还包含 `preview.createdAt`、`preview.expiresAt`、`preview.expiresInSeconds` 和
|
|
68
|
-
`snapshot.inlineAssets`;正文图片哈希属于不可变快照。`auto` 只从文章声明或显式素材
|
|
69
|
-
目录解析已经存在的 `cover.*`,不会生成占位封面。
|
|
70
|
-
|
|
71
|
-
CLI 只在上传字节中移除本地工作流专用的 `dxc`、`goldenLinesPath` 和
|
|
72
|
-
`goldenLinesSha256` frontmatter,原始正文产物保持不变。Agent 不得另外创建
|
|
73
|
-
`04-article.publish.md` 之类的发布副本来规避云端校验。
|
|
74
|
-
|
|
75
|
-
CLI 默认用系统浏览器实际打开页面。只有当前宿主已证明会实时消费
|
|
76
|
-
`kind=wechat-draft-preview` 的 `DXC_BROWSER_EVENT`、导航最终 URL 并跟随模板切换跳转时,才显式
|
|
77
|
-
改用 `--browser agent`。仅收到事件或显示空面板不算用户已查看;此时必须对同一快照运行
|
|
78
|
-
`preview-refresh ... --browser system --json`,由 CLI 打开系统默认浏览器。系统浏览器也无法打开时,
|
|
79
|
-
把 CLI 返回的短时 URL 仅渲染为“查看预览”的可点击链接;不展示原始 URL、命令或技术说明,
|
|
80
|
-
也不把链接写进日志或项目产物。
|
|
81
|
-
|
|
82
|
-
正文图片是交付必需品,不是可静默降级项。视觉计划或 Markdown 声明了正文图片时,必须核对
|
|
83
|
-
`snapshot.inlineAssets` 数量和逻辑路径全部一致;任一图片缺失、无法读取、上传失败或未进入
|
|
84
|
-
快照时停止并修复,不得只保留封面继续创建草稿。项目产物统一保存 `/` 分隔的便携相对路径;
|
|
85
|
-
CLI 同时接受 Windows `\` 分隔符和 URL 编码文件名,并在上传前归一化为同一逻辑路径。
|
|
86
|
-
|
|
87
|
-
页面首次实际打开,以及用户每次切换模板并等待新预览页面实际打开后,都运行:
|
|
88
|
-
|
|
89
|
-
```text
|
|
90
|
-
dxc wechat draft preview-status \
|
|
91
|
-
--snapshot <rootSnapshotId> \
|
|
92
|
-
--snapshot-hash <rootSnapshotHash> \
|
|
93
|
-
--json
|
|
94
|
-
```
|
|
95
|
-
|
|
96
|
-
只有最后一次返回的 `viewed=true`,并且该回执的 `templateId`、`selectedSnapshotId`、
|
|
97
|
-
`selectedSnapshotHash` 和 `selectionRevision` 已写入 delivery,才允许展示最终模板并询问确认。
|
|
98
|
-
这份服务端回执是模板真值;不能根据下拉框曾经显示的值、Agent 记忆或第一次选择推断最终模板。
|
|
99
|
-
用户连续选择 A、B、C 时,以最后一次成功提交、生成并实际打开的 C 修订为准;如果 C 提交失败,
|
|
100
|
-
`preview-status` 仍会明确显示旧修订,必须重新切换或打开,不能静默拿 A/B 创建草稿。
|
|
101
|
-
|
|
102
|
-
把以下内容写入项目清单指定的 `delivery` 产物;默认是
|
|
103
|
-
`artifacts/08-delivery.md`:
|
|
104
|
-
|
|
105
|
-
```markdown
|
|
106
|
-
---
|
|
107
|
-
state: previewed
|
|
108
|
-
accountId: <uuid>
|
|
109
|
-
rootSnapshotId: <最初渲染快照 uuid>
|
|
110
|
-
rootSnapshotHash: <最初渲染快照 sha256>
|
|
111
|
-
selectedSnapshotId: <当前最终选中快照 uuid,首次预览时与 root 相同>
|
|
112
|
-
selectedSnapshotHash: <当前最终选中快照 sha256,首次预览时与 root 相同>
|
|
113
|
-
templateId: <当前最终模板 ID>
|
|
114
|
-
previewSelectionRevision: <preview-status 返回的非负选择修订号>
|
|
115
|
-
previewExpiresAt: <ISO 8601>
|
|
116
|
-
intentId: null
|
|
117
|
-
---
|
|
118
|
-
|
|
119
|
-
# 微信草稿交付
|
|
120
|
-
|
|
121
|
-
- 公众号:<名称和 AppID 脱敏标识>
|
|
122
|
-
- 标题:<已确认标题>
|
|
123
|
-
- 模板:<用户在预览页最终选择的 templateId>
|
|
124
|
-
- 预览:已在右侧内置浏览器或系统默认浏览器展示
|
|
125
|
-
- 预检:<通过,或逐项列出问题>
|
|
126
|
-
```
|
|
127
|
-
|
|
128
|
-
使用与进入步骤相同的输入和执行参数把检查点写为 `awaiting-user`,并增加:
|
|
129
|
-
|
|
130
|
-
```text
|
|
131
|
-
--summary "不可变预览已经生成并绑定目标公众号"
|
|
132
|
-
--waiting-for "是否确认把这个快照创建到这个公众号的草稿箱?"
|
|
133
|
-
--confirmation-snapshot <selectedSnapshotHash>
|
|
134
|
-
```
|
|
135
|
-
|
|
136
|
-
只向用户展示公众号名称、标题、封面、正文图片数和预检结果,并提醒查看已经打开的预览。
|
|
137
|
-
不要展示 `accountId`、`snapshotId`、`snapshotHash`、幂等键、短时 URL、剩余秒数或内部命令。
|
|
138
|
-
最终预览页面成功加载后,不等待用户再次追问,立即在 WorkBuddy 对话中呈现一次“确认创建草稿”
|
|
139
|
-
和“返回修改”两个动作;宿主支持可点击选项时使用可点击选项,否则只询问一次:“确认创建草稿,
|
|
140
|
-
还是返回修改?”预览页只显示“返回 WorkBuddy 确认”的只读提示,不得在短时预览链接中加入
|
|
141
|
-
创建草稿的按钮或其他写操作。用户最初提出“放进草稿箱”是任务意图,不能替代看到最终预览
|
|
142
|
-
后的这一次确认;不得再增加第二次同义确认。
|
|
143
|
-
|
|
144
|
-
模板切换会使切换前的确认失效;浏览器回退到旧预览也不能恢复旧确认。若创建命令返回
|
|
145
|
-
`PUBLISHING_PREVIEW_REQUIRED`,说明最终预览尚未成功打开,应重新打开当前预览后再询问;若
|
|
146
|
-
返回 `PUBLISHING_APPROVAL_STALE`,说明确认后预览选择又发生变化,应展示当前最终预览并重新
|
|
147
|
-
取得一次确认。不得把这两类错误改成自动确认或直接创建草稿。
|
|
148
|
-
恢复时先比较当前时间与 `previewExpiresAt`:链接已过期则运行:
|
|
149
|
-
|
|
150
|
-
```bash
|
|
151
|
-
dxc wechat draft preview-refresh \
|
|
152
|
-
--snapshot <rootSnapshotId> \
|
|
153
|
-
--snapshot-hash <rootSnapshotHash> \
|
|
154
|
-
--browser system \
|
|
155
|
-
--json
|
|
156
|
-
```
|
|
157
|
-
|
|
158
|
-
这只为原始快照(以及已记录的最终模板选择)重建短时链接,不得重跑正文、素材或草稿意图。
|
|
159
|
-
把新的 `previewExpiresAt` 写回交付产物;刷新和创建请求仍以交付产物中的 root 快照发起,
|
|
160
|
-
服务端会解析为用户最后选择的不可变 selected 快照。默认在系统浏览器打开;仅已验证宿主才
|
|
161
|
-
可改用 `--browser agent`。仅刷新同一个最终预览不会改变预览选择版本;若模板、
|
|
162
|
-
正文或素材发生变化,仍必须重新打开最终预览并取得明确确认。
|
|
163
|
-
|
|
164
|
-
若 `preview-status` 或其他读取命令返回 `DXC_API_REQUEST_FAILED`,记录 CLI 返回的 HTTP 状态码,
|
|
165
|
-
并先核对 CLI 与服务端是否部署同一发布版本。该错误没有证明远端未处理任何写操作:不得跳过
|
|
166
|
-
预览门、不得改用新幂等键、不得把它归类为可安全重试;仅可读取已有 intent 状态,必要时进入
|
|
167
|
-
“需要人工核对”。
|
|
168
|
-
|
|
169
|
-
## 创建与核验
|
|
170
|
-
|
|
171
|
-
只有用户在看到上述信息后明确确认,才运行:
|
|
172
|
-
|
|
173
|
-
```bash
|
|
174
|
-
dxc wechat draft create \
|
|
175
|
-
--account <account-id> \
|
|
176
|
-
--snapshot <rootSnapshotId> \
|
|
177
|
-
--snapshot-hash <rootSnapshotHash> \
|
|
178
|
-
--delivery artifacts/08-delivery.md \
|
|
179
|
-
--confirm \
|
|
180
|
-
--json
|
|
181
|
-
```
|
|
182
|
-
|
|
183
|
-
CLI 会根据项目与 root 快照生成并落盘幂等键;创建时从 `--delivery` 读取并复用该值,不需要
|
|
184
|
-
Agent 手抄。若同时显式传键,必须与 delivery 完全一致;公众号或 root 快照不一致也会在任何
|
|
185
|
-
服务端请求前停止。批准响应必须与 delivery 中的 `selectedSnapshotId`、
|
|
186
|
-
`selectedSnapshotHash`、`templateId` 和 `previewSelectionRevision` 全部一致,CLI 才会继续
|
|
187
|
-
创建意图并写入 `intent.id` 与 `processing` 状态。任一字段不一致说明用户确认后模板又变化,
|
|
188
|
-
CLI 必须在创建意图前停止。
|
|
189
|
-
再用
|
|
190
|
-
`dxc wechat draft status <intent-id> --json` 查询进度:
|
|
18
|
+
```text
|
|
19
|
+
dxc workflow start --from delivery --directory "<项目目录>" --json
|
|
20
|
+
```
|
|
191
21
|
|
|
192
|
-
-
|
|
193
|
-
明显超出服务端建议或用户主动询问时才展示 `progress.label`、`progress.message` 和
|
|
194
|
-
`progress.nextAction`。不要展示内部处理阶段或 Worker 信息,也不要再次创建。
|
|
195
|
-
- `progress.terminal` 为 `true`,且存在微信 `mediaId`,标题、作者、摘要和正文的
|
|
196
|
-
`verification` 全部匹配时:把 `state`、`intentId`、`mediaId` 和核验结果写回交付
|
|
197
|
-
产物,然后写下列检查点;CLI 自动更新 `dxc.artifactStatus`:
|
|
198
|
-
`completed --confirm --confirmed-by <稳定身份标识>
|
|
199
|
-
--confirmation-snapshot <selectedSnapshotHash>
|
|
200
|
-
--summary "微信草稿创建并回读核验成功"` 检查点。
|
|
201
|
-
- `progress.label` 为“需要人工核对”时:记录诊断并停止,禁止盲目重试微信副作用,
|
|
202
|
-
等待人工核对。
|
|
22
|
+
- 只使用本页列出的 workflow 领域命令。
|
|
203
23
|
|
|
204
|
-
|
|
205
|
-
`CREATED_UNVERIFIED`/“需要人工核对”。标题、作者和摘要匹配不能替代正文核验,也不能完成
|
|
206
|
-
delivery checkpoint;应先保存比对哈希和诊断,再由人工确认或后续改进微信 HTML 规范化规则。
|
|
24
|
+
## 预览与创建草稿
|
|
207
25
|
|
|
208
|
-
|
|
209
|
-
|
|
26
|
+
1. 调用 `dxc workflow preview --directory "<项目目录>" --json`。CLI 在内部准备图片、创建云端预览并
|
|
27
|
+
打开浏览器。
|
|
28
|
+
2. 多个公众号时,只展示名称让用户选择,再用 `--account <ID>` 重新预览;不要猜测账号。
|
|
29
|
+
3. 预览打开后只询问一次:“确认创建草稿,还是返回修改?”
|
|
30
|
+
4. 用户明确确认后调用:
|
|
210
31
|
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
--delivery artifacts/08-delivery.md \
|
|
215
|
-
--confirm \
|
|
216
|
-
--json
|
|
217
|
-
```
|
|
32
|
+
```text
|
|
33
|
+
dxc workflow deliver --directory "<项目目录>" --confirm --json
|
|
34
|
+
```
|
|
218
35
|
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
图片上传或草稿创建已经开始后的 `FAILED`、`CREATED_UNVERIFIED`、
|
|
222
|
-
`ASSET_UPLOAD_UNVERIFIED`、仍在处理、已成功或“需要人工核对”的意图一律拒绝重试;不得改用
|
|
223
|
-
新的手写幂等键绕过。新的重试意图如果再次明确 `FAILED`,仍须服务端重新证明安全,并由用户
|
|
224
|
-
再次确认当前失败意图作为下一条链的来源。
|
|
36
|
+
5. `completed` 时告知草稿已创建;`preview-required` 时重新展示当前预览;`needs-attention` 时说明
|
|
37
|
+
CLI 返回的问题并停止,不拼装底层命令或再次创建草稿。
|
|
225
38
|
|
|
226
|
-
|
|
39
|
+
用户最初提出“放进草稿箱”不能替代查看最终预览后的这一次确认。
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
interface:
|
|
2
2
|
display_name: "DxC 微信草稿交付"
|
|
3
|
-
short_description: "
|
|
4
|
-
default_prompt: "使用 $dxc-wechat-publisher
|
|
3
|
+
short_description: "打开微信公众号最终预览,只确认一次后创建完整图文草稿"
|
|
4
|
+
default_prompt: "使用 $dxc-wechat-publisher 打开文章预览,并在我确认一次后创建微信公众号草稿。"
|
|
5
5
|
policy:
|
|
6
6
|
allow_implicit_invocation: false
|