@microi.net/cli 5.2.7 → 5.2.8
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/.codebuddy-plugin/marketplace.json +2 -2
- package/.codebuddy-plugin/plugin.json +1 -1
- package/.codex-plugin/plugin.json +1 -1
- package/.workbuddy-plugin/marketplace.json +2 -2
- package/.workbuddy-plugin/plugin.json +1 -1
- package/assets/build-meta.json +4 -4
- package/cordis.patch.yml +1 -1
- package/package.json +1 -1
- package/scripts/microi-cli.js +37 -29
- package/scripts/microi-skills.meta.json +192 -192
- package/skills/.microi-skills-version.json +2 -2
- package/skills/.progressive-disclosure-manifest.json +15 -15
- package/skills/ai-engine/SKILL.md +11 -3
- package/skills/app-store/SKILL.md +29 -12
- package/skills/message-notification/SKILL.md +8 -1
- package/skills/v8-file-upload/SKILL.md +10 -7
- package/skills/v8-mongodb/SKILL.md +58 -18
- package/skills/v8-saas-multi-tenant/SKILL.md +3 -0
- package/skills/v8-security/SKILL.md +3 -1
- package/skills/v8-utilities/references/server-api-index.md +25 -7
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
|
-
"builtAt": "2026-08-
|
|
2
|
+
"builtAt": "2026-08-25T00:14:29.656Z",
|
|
3
3
|
"source": "../microi.skills",
|
|
4
4
|
"extension": {
|
|
5
5
|
"name": "v8-engine",
|
|
6
|
-
"version": "5.2.
|
|
6
|
+
"version": "5.2.8",
|
|
7
7
|
"publisher": "Microi"
|
|
8
8
|
},
|
|
9
9
|
"skills": {
|
|
10
|
-
"version": "5.2.
|
|
10
|
+
"version": "5.2.8",
|
|
11
11
|
"versionRule": "Microi version uses three numeric parts. Each publish increments the last part; when a part exceeds 9 it carries to the previous part: 1.0.9 -> 1.1.0, 1.9.9 -> 2.0.0.",
|
|
12
12
|
"managedBy": "Microi.VSCode/bump-version.js"
|
|
13
13
|
},
|
|
@@ -15,17 +15,17 @@
|
|
|
15
15
|
"dir": "dist/microi.skills",
|
|
16
16
|
"files": 178,
|
|
17
17
|
"skills": 65,
|
|
18
|
-
"bytes":
|
|
18
|
+
"bytes": 2250096
|
|
19
19
|
},
|
|
20
20
|
"fileHashes": {
|
|
21
|
-
".microi-skills-version.json": "
|
|
22
|
-
".progressive-disclosure-manifest.json": "
|
|
21
|
+
".microi-skills-version.json": "ad39d3393432fa2341308d8b5926a7a3bb839d18a6413cad2472dab561150b12",
|
|
22
|
+
".progressive-disclosure-manifest.json": "647fb9b710b958ca64713c45bb0e8a17252ec7f2913179327a26525a2cd5a31d",
|
|
23
23
|
"README.md": "332aade05015acac5f1387829a42529f37fc203ff0fcfb2f16cc3afdbb23b1ed",
|
|
24
|
-
"ai-engine/SKILL.md": "
|
|
24
|
+
"ai-engine/SKILL.md": "df63cf56bd06027f30bd0597003c65b479049141fc0b4a31d33cbc9a5fa044cf",
|
|
25
25
|
"ai-engine/agents/openai.yaml": "40deb07801006a46b9a7f0020d13251955eeadd04c8e591160210479936f8b5b",
|
|
26
26
|
"ai-platform-governance/SKILL.md": "84ca4bcacf15deecd0c04dc1a664b23041a6a5f020d3a5288c5458b5e7da4b8e",
|
|
27
27
|
"ai-platform-governance/references/progressive-01-功能开关.md": "ea46fb02267e9e3ace3d9d72e67b02183c61e5c198f4b2f27e8196d6ee6d0bec",
|
|
28
|
-
"app-store/SKILL.md": "
|
|
28
|
+
"app-store/SKILL.md": "55f03986168fb5bac82b631e88baa1bc0b666412e34c9b7b92b3302642c2324a",
|
|
29
29
|
"app-store/agents/openai.yaml": "eda8f5cf043e7b8fb0e4fb3acf0625fef95eb49586b43187ced277cd0ae4a2c4",
|
|
30
30
|
"business-blueprint/SKILL.md": "01619a3b6d37b5b67649ee59d2701301222006d3b943882b2802b1721c58f8a9",
|
|
31
31
|
"datasource-engine/SKILL.md": "bed8352f1d43b55145e1c492d1ea0ca1ec8750b5c4d74e1e80cd71aa7b9a2e6f",
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"dos-orm/references/api-reference.md": "facc5e62cd6439a06263580dab9656271118d4bb5a91b5d9230a79136e6daa72",
|
|
35
35
|
"job-engine/SKILL.md": "5d3322f183475bdb7acfa157112bcee3b859b740caeafb57a7afaba0efb58d0d",
|
|
36
36
|
"job-engine/agents/openai.yaml": "65889ee39bc34caca9085539d8954a381aab93590c5635eea3bb6f4c001934af",
|
|
37
|
-
"message-notification/SKILL.md": "
|
|
37
|
+
"message-notification/SKILL.md": "6a74c82fa2aa4295a027c72e3cd364dc71e0836fd77d5ae207cbbfa24fcbd2ee",
|
|
38
38
|
"message-notification/agents/openai.yaml": "d0e259921410e94caaf8b376d690a529842446e3f32c9523b7dfd1bda599f58c",
|
|
39
39
|
"message-notification/references/contracts.md": "752a5acdd6481dd2386d116eaa8b59401dcef8fc07185208c5e835e17b979afe",
|
|
40
40
|
"microi-ai-app-auth.js": "8023db6ae655bc33027f389a64ef7937ac09da35eb1b8a497aaefb986834242a",
|
|
@@ -152,7 +152,7 @@
|
|
|
152
152
|
"v8-export-import/references/progressive-01-excellayout-高级自由布局.md": "71ab3c94a6034f2d0c374de594104543770cb1313a6515494a213a1ecdf5baf7",
|
|
153
153
|
"v8-export-import/references/progressive-02-powerpoint-导出.md": "5837905a195be7c38fe37e0abd40eee95a8bc26acdab1f3a9aba01c264a125ae",
|
|
154
154
|
"v8-export-import/references/progressive-03-安全-性能注意.md": "a2acc492740eb693be5a0ad275cabcba7a813aa7378c844e43b04233d03a9d0c",
|
|
155
|
-
"v8-file-upload/SKILL.md": "
|
|
155
|
+
"v8-file-upload/SKILL.md": "d05c6f18e4099ce67f3f56ded1c2934fa4a0224d5bc9fc9ff34d92a8e4df8192",
|
|
156
156
|
"v8-file-upload/references/progressive-01-公有桶-vs-私有桶.md": "bd81f9f6a07251016dd8abb7ce52b1148685c47116b0aadd3082bf8bc7587774",
|
|
157
157
|
"v8-file-upload/references/progressive-02-office-文件在线编辑版本号规则.md": "ab5a0d6f9e0f39a036d48d7f87cfac8aed5575f42dcbabc9f34ad723ade2e1be",
|
|
158
158
|
"v8-formengine-http/SKILL.md": "8338e9087e93bb41ad260863b076db387373c606e481bf49809c447083c761d1",
|
|
@@ -170,13 +170,13 @@
|
|
|
170
170
|
"v8-menu-buttons/references/progressive-01-2-按钮对象-schema.md": "d64938d7b17a77fd8a83e16baf9a34a35a79f05a96b47794cfd8401e173df6cc",
|
|
171
171
|
"v8-menu-buttons/references/progressive-02-8-模式-f-后台任务按钮-长任务.md": "7a3ab56864a0485279e53bad65ff8f3f880a3495b16a48a4bbf9b71e9e83ea2a",
|
|
172
172
|
"v8-menu-buttons/references/progressive-03-10-反模式-避免.md": "36487289e5f20ba7d0b4e4a2fba737d1ac45395ffba037b84c88a8d50ed44901",
|
|
173
|
-
"v8-mongodb/SKILL.md": "
|
|
173
|
+
"v8-mongodb/SKILL.md": "526d77b0afd20417a0c03b2a8f958a6f8c99241f3f65bc01f642824ec55127ee",
|
|
174
174
|
"v8-mq-mqtt/SKILL.md": "a96679cd2c87ade78dfe271a52d8562895c0d91b227cb28947cccbbf37a0320d",
|
|
175
175
|
"v8-mq-mqtt/references/mqtt-production.md": "fec6dd18d58c0f0fc90a295286945f6e7cb7f43c60022c4fd9d48f9baafb35b9",
|
|
176
176
|
"v8-mq-mqtt/references/progressive-01-v8-mqtt-iot-物联网.md": "842c74bd8bc30b932346e34c0d4154edffc1bf6a5a8aaafaaa344f250394762c",
|
|
177
177
|
"v8-mq-mqtt/scripts/check-mqtt-skill-coverage.mjs": "433b922578f37e95483a3d794ad0bf60ba6344fe9ea580eeb3d34b42c50d352f",
|
|
178
|
-
"v8-saas-multi-tenant/SKILL.md": "
|
|
179
|
-
"v8-security/SKILL.md": "
|
|
178
|
+
"v8-saas-multi-tenant/SKILL.md": "24754fb8fe34d5c3b0bf76925b0e82c033736135fa70aa4e314677bc23547b4d",
|
|
179
|
+
"v8-security/SKILL.md": "f7736752de7981deb6b62e468b20a2b7ca5654b6d7a93c56be1ce18a32a15e9b",
|
|
180
180
|
"v8-security/references/progressive-01-2-权限校验.md": "a7e2314b8f2f9bf413956191ffeda6d2f823760def2b06bf6b4c1565e8f71816",
|
|
181
181
|
"v8-security/references/progressive-02-7-日志记录.md": "2758de279da56e90587df8422e25a1ccfce5c3bdc1f1c363a90c666b6c3f298a",
|
|
182
182
|
"v8-sql-query/SKILL.md": "23a12c6801627890d18ff9f1d09cdd1abbd9b08ffc12ef6a12c915d504ed3255",
|
|
@@ -189,7 +189,7 @@
|
|
|
189
189
|
"v8-utilities/SKILL.md": "2cf8fc6d1a9296ea60bb89ea1b130ac5c9a1f9eb94802fed0cceaf8b61de1b30",
|
|
190
190
|
"v8-utilities/references/client-api-index.md": "3362126197bd34191640d6bd532b16f1ed446c4a8a9d805f4973be5d58b90a4a",
|
|
191
191
|
"v8-utilities/references/platform-http-routes.md": "ad07cc0c6b54a155cc22d071783ccef92cff2c295dcc09bb34da604c341d934f",
|
|
192
|
-
"v8-utilities/references/server-api-index.md": "
|
|
192
|
+
"v8-utilities/references/server-api-index.md": "8e4392ac26fcf0c2a4715d966d526cb142a077dfb68bea0a117971ffaf23bc15",
|
|
193
193
|
"v8-workflow/SKILL.md": "d068ceded6f338fece9443f354dff21dfcf744dd192dd6329b2e98692bb8181e",
|
|
194
194
|
"v8-workflow/references/progressive-01-节点开始-v8-事件.md": "9b6b01e7ac03c0a11bc837671a30107ff5c5f253029d74fd17713084104d7e99",
|
|
195
195
|
"workspace-conventions/SKILL.md": "1ba87f3812a83469dfbec33e7efa34a401d3efda5bdbccb083c9c8e0f93f0321",
|
|
@@ -198,184 +198,184 @@
|
|
|
198
198
|
"workspace-conventions/references/progressive-03-cli-与-ide-插件错版共存约定.md": "86db1f03700fd54dd824d28c553c678202e8f74b796fd0f9d91f63bf53a530b1"
|
|
199
199
|
},
|
|
200
200
|
"fileVersions": {
|
|
201
|
-
".microi-skills-version.json": "5.2.
|
|
202
|
-
".progressive-disclosure-manifest.json": "5.2.
|
|
203
|
-
"README.md": "5.2.
|
|
204
|
-
"ai-engine/SKILL.md": "5.2.
|
|
205
|
-
"ai-engine/agents/openai.yaml": "5.2.
|
|
206
|
-
"ai-platform-governance/SKILL.md": "5.2.
|
|
207
|
-
"ai-platform-governance/references/progressive-01-功能开关.md": "5.2.
|
|
208
|
-
"app-store/SKILL.md": "5.2.
|
|
209
|
-
"app-store/agents/openai.yaml": "5.2.
|
|
210
|
-
"business-blueprint/SKILL.md": "5.2.
|
|
211
|
-
"datasource-engine/SKILL.md": "5.2.
|
|
212
|
-
"datasource-engine/agents/openai.yaml": "5.2.
|
|
213
|
-
"dos-orm/SKILL.md": "5.2.
|
|
214
|
-
"dos-orm/references/api-reference.md": "5.2.
|
|
215
|
-
"job-engine/SKILL.md": "5.2.
|
|
216
|
-
"job-engine/agents/openai.yaml": "5.2.
|
|
217
|
-
"message-notification/SKILL.md": "5.2.
|
|
218
|
-
"message-notification/agents/openai.yaml": "5.2.
|
|
219
|
-
"message-notification/references/contracts.md": "5.2.
|
|
220
|
-
"microi-ai-app-auth.js": "5.2.
|
|
221
|
-
"microi-ai-application/SKILL.md": "5.2.
|
|
222
|
-
"microi-ai-application/agents/openai.yaml": "5.2.
|
|
223
|
-
"microi-ai-application/references/frontend-baseline.md": "5.2.
|
|
224
|
-
"microi-client-frontend/SKILL.md": "5.2.
|
|
225
|
-
"microi-client-frontend/references/progressive-01-3-动态按钮系统.md": "5.2.
|
|
226
|
-
"microi-client-frontend/references/progressive-02-8-运行时高频坑复盘.md": "5.2.
|
|
227
|
-
"microi-client-frontend/references/progressive-03-vue3-前端微服务宿主规则.md": "5.2.
|
|
228
|
-
"microi-codex-installer/SKILL.md": "5.2.
|
|
229
|
-
"microi-codex-installer/agents/openai.yaml": "5.2.
|
|
230
|
-
"microi-codex/SKILL.md": "5.2.
|
|
231
|
-
"microi-datasource-mapping/SKILL.md": "5.2.
|
|
232
|
-
"microi-db-schema/SKILL.md": "5.2.
|
|
233
|
-
"microi-db-schema/agents/openai.yaml": "5.2.
|
|
234
|
-
"microi-db-schema/references/core-tables.md": "5.2.
|
|
235
|
-
"microi-db-schema/references/form-component-options.md": "5.2.
|
|
236
|
-
"microi-db-schema/references/schema-overview.md": "5.2.
|
|
237
|
-
"microi-db-schema/references/schema.md": "5.2.
|
|
238
|
-
"microi-db-schema/references/table-catalog.md": "5.2.
|
|
239
|
-
"microi-deployment/SKILL.md": "5.2.
|
|
240
|
-
"microi-deployment/references/deployment-matrix.md": "5.2.
|
|
241
|
-
"microi-docs-coverage/SKILL.md": "5.2.
|
|
242
|
-
"microi-docs-coverage/references/capability-map.md": "5.2.
|
|
243
|
-
"microi-docs-coverage/scripts/audit-doc-skill-coverage.mjs": "5.2.
|
|
244
|
-
"microi-form-engine/SKILL.md": "5.2.
|
|
245
|
-
"microi-form-engine/references/component-catalog.md": "5.2.
|
|
246
|
-
"microi-form-engine/references/data-source-events.md": "5.2.
|
|
247
|
-
"microi-form-layout/SKILL.md": "5.2.
|
|
248
|
-
"microi-form-layout/references/progressive-01-3-三种分组的存储与配置.md": "5.2.
|
|
249
|
-
"microi-frontend-sdk/SKILL.md": "5.2.
|
|
250
|
-
"microi-frontend-sdk/references/progressive-01-token-当前登录用户与当前终端登录协议.md": "5.2.
|
|
251
|
-
"microi-left-right-layout/SKILL.md": "5.2.
|
|
252
|
-
"microi-microservice/SKILL.md": "5.2.
|
|
253
|
-
"microi-microservice/references/runtime-delivery.md": "5.2.
|
|
254
|
-
"microi-mobile-app-quality/SKILL.md": "5.2.
|
|
255
|
-
"microi-mobile-app-quality/references/progressive-01-4-重要按钮必须带图标.md": "5.2.
|
|
256
|
-
"microi-mobile-app-quality/references/progressive-02-9-主题切换必须真实且全局生效.md": "5.2.
|
|
257
|
-
"microi-solution-quotation/SKILL.md": "5.2.
|
|
258
|
-
"microi-solution-quotation/agents/openai.yaml": "5.2.
|
|
259
|
-
"microi-solution-quotation/scripts/build_solution_quote.py": "5.2.
|
|
260
|
-
"microi-sso/SKILL.md": "5.2.
|
|
261
|
-
"microi-sso/references/acceptance.md": "5.2.
|
|
262
|
-
"microi-sso/references/configuration-and-security.md": "5.2.
|
|
263
|
-
"microi-sso/references/inbound.md": "5.2.
|
|
264
|
-
"microi-sso/references/outbound.md": "5.2.
|
|
265
|
-
"microi-system-delivery/SKILL.md": "5.2.
|
|
266
|
-
"microi-system-delivery/references/progressive-01-标准工作流.md": "5.2.
|
|
267
|
-
"microi-system-delivery/references/progressive-02-自动化测试必须覆盖的坑.md": "5.2.
|
|
268
|
-
"microi-ui/SKILL.md": "5.2.
|
|
269
|
-
"microi-ui/references/progressive-01-移动端场景蓝图.md": "5.2.
|
|
270
|
-
"microi-uniapp-frontend/SKILL.md": "5.2.
|
|
271
|
-
"microi-uniapp-frontend/references/progressive-01-移动端分类-双栏列表独立滚动.md": "5.2.
|
|
272
|
-
"microi-uniapp-frontend/references/progressive-02-关键业务资产不得默认选中.md": "5.2.
|
|
273
|
-
"microi.v8.js": "5.2.
|
|
274
|
-
"module-engine/SKILL.md": "5.2.
|
|
275
|
-
"module-engine/references/module-config.md": "5.2.
|
|
276
|
-
"ocr-engine/SKILL.md": "5.2.
|
|
277
|
-
"ocr-engine/agents/openai.yaml": "5.2.
|
|
278
|
-
"page-engine/SKILL.md": "5.2.
|
|
279
|
-
"page-engine/references/progressive-01-所有组件类型.md": "5.2.
|
|
280
|
-
"page-engine/references/progressive-02-版本历史-并发保存与回滚.md": "5.2.
|
|
281
|
-
"performance-testing/SKILL.md": "5.2.
|
|
282
|
-
"playwright-e2e/SKILL.md": "5.2.
|
|
283
|
-
"playwright-e2e/references/progressive-01-全自动登录-免验证码-但不免密码-必读.md": "5.2.
|
|
284
|
-
"playwright-e2e/references/progressive-02-文字对比度与可读性自动化检查-必做.md": "5.2.
|
|
285
|
-
"playwright-e2e/references/progressive-03-microi-helper-模板.md": "5.2.
|
|
286
|
-
"playwright-e2e/references/progressive-04-ci-建议.md": "5.2.
|
|
287
|
-
"print-engine/SKILL.md": "5.2.
|
|
288
|
-
"production-readonly-audit/SKILL.md": "5.2.
|
|
289
|
-
"report-engine/SKILL.md": "5.2.
|
|
290
|
-
"report-engine/agents/openai.yaml": "5.2.
|
|
291
|
-
"scripts/optimize-progressive-disclosure.mjs": "5.2.
|
|
292
|
-
"scripts/refresh-progressive-disclosure.mjs": "5.2.
|
|
293
|
-
"scripts/validate-progressive-disclosure.mjs": "5.2.
|
|
294
|
-
"search-engine/SKILL.md": "5.2.
|
|
295
|
-
"search-engine/agents/openai.yaml": "5.2.
|
|
296
|
-
"spider-engine/SKILL.md": "5.2.
|
|
297
|
-
"system-observability/SKILL.md": "5.2.
|
|
298
|
-
"translate-engine/SKILL.md": "5.2.
|
|
299
|
-
"translate-engine/agents/openai.yaml": "5.2.
|
|
300
|
-
"ui-design/SKILL.md": "5.2.
|
|
301
|
-
"ui-design/assets/pattern-showcase/app.js": "5.2.
|
|
302
|
-
"ui-design/assets/pattern-showcase/index.html": "5.2.
|
|
303
|
-
"ui-design/assets/pattern-showcase/styles.css": "5.2.
|
|
304
|
-
"ui-design/assets/templates/MCI-DESIGN.md": "5.2.
|
|
305
|
-
"ui-design/references/design-pattern-library.md": "5.2.
|
|
306
|
-
"ui-design/references/mci-design-contract.md": "5.2.
|
|
307
|
-
"ui-design/references/motion-and-media.md": "5.2.
|
|
308
|
-
"ui-design/references/product-flow-recipes.md": "5.2.
|
|
309
|
-
"ui-design/references/progressive-01-颜色体系-css-variables-支持主题切换.md": "5.2.
|
|
310
|
-
"ui-design/references/progressive-02-字体.md": "5.2.
|
|
311
|
-
"ui-design/references/progressive-03-动效规范-丰富但不卡.md": "5.2.
|
|
312
|
-
"ui-design/references/progressive-04-组件风格速查.md": "5.2.
|
|
313
|
-
"ui-design/references/progressive-05-移动端专用规范.md": "5.2.
|
|
314
|
-
"ui-design/references/progressive-06-主题切换实现.md": "5.2.
|
|
315
|
-
"ui-design/references/progressive-07-速查-从头搭建一个移动端页面.md": "5.2.
|
|
316
|
-
"ui-design/references/progressive-08-表单分组规范-tabs-vs-collapsegroup-强制.md": "5.2.
|
|
317
|
-
"uniapp-mall-assets/SKILL.md": "5.2.
|
|
318
|
-
"unity-integration/SKILL.md": "5.2.
|
|
319
|
-
"unity-integration/agents/openai.yaml": "5.2.
|
|
320
|
-
"unity-integration/references/ai-app-delivery.md": "5.2.
|
|
321
|
-
"unity-integration/references/sdk-api.md": "5.2.
|
|
322
|
-
"unity-integration/references/toolbox-migration.md": "5.2.
|
|
323
|
-
"unity-integration/references/webgl-hosting.md": "5.2.
|
|
324
|
-
"v8-api-config/SKILL.md": "5.2.
|
|
325
|
-
"v8-cache-pattern/SKILL.md": "5.2.
|
|
326
|
-
"v8-crud-api/SKILL.md": "5.2.
|
|
327
|
-
"v8-crud-api/references/progressive-01-查询列表-分页.md": "5.2.
|
|
328
|
-
"v8-crud-api/references/progressive-02-where-条件语法速查.md": "5.2.
|
|
329
|
-
"v8-debugging/SKILL.md": "5.2.
|
|
330
|
-
"v8-explorer-tree/SKILL.md": "5.2.
|
|
331
|
-
"v8-export-import/SKILL.md": "5.2.
|
|
332
|
-
"v8-export-import/references/progressive-01-excellayout-高级自由布局.md": "5.2.
|
|
333
|
-
"v8-export-import/references/progressive-02-powerpoint-导出.md": "5.2.
|
|
334
|
-
"v8-export-import/references/progressive-03-安全-性能注意.md": "5.2.
|
|
335
|
-
"v8-file-upload/SKILL.md": "5.2.
|
|
336
|
-
"v8-file-upload/references/progressive-01-公有桶-vs-私有桶.md": "5.2.
|
|
337
|
-
"v8-file-upload/references/progressive-02-office-文件在线编辑版本号规则.md": "5.2.
|
|
338
|
-
"v8-formengine-http/SKILL.md": "5.2.
|
|
339
|
-
"v8-frontend-events/SKILL.md": "5.2.
|
|
340
|
-
"v8-frontend-events/references/bluetooth-print-api.md": "5.2.
|
|
341
|
-
"v8-frontend-events/references/bluetooth-print.md": "5.2.
|
|
342
|
-
"v8-frontend-events/references/progressive-01-列表事件.md": "5.2.
|
|
343
|
-
"v8-http-integration/SKILL.md": "5.2.
|
|
344
|
-
"v8-http-integration/references/progressive-01-get-请求.md": "5.2.
|
|
345
|
-
"v8-http-integration/references/progressive-02-错误处理模式.md": "5.2.
|
|
346
|
-
"v8-image-processing/SKILL.md": "5.2.
|
|
347
|
-
"v8-image-processing/agents/openai.yaml": "5.2.
|
|
348
|
-
"v8-image-processing/references/api-reference.md": "5.2.
|
|
349
|
-
"v8-menu-buttons/SKILL.md": "5.2.
|
|
350
|
-
"v8-menu-buttons/references/progressive-01-2-按钮对象-schema.md": "5.2.
|
|
351
|
-
"v8-menu-buttons/references/progressive-02-8-模式-f-后台任务按钮-长任务.md": "5.2.
|
|
352
|
-
"v8-menu-buttons/references/progressive-03-10-反模式-避免.md": "5.2.
|
|
353
|
-
"v8-mongodb/SKILL.md": "5.2.
|
|
354
|
-
"v8-mq-mqtt/SKILL.md": "5.2.
|
|
355
|
-
"v8-mq-mqtt/references/mqtt-production.md": "5.2.
|
|
356
|
-
"v8-mq-mqtt/references/progressive-01-v8-mqtt-iot-物联网.md": "5.2.
|
|
357
|
-
"v8-mq-mqtt/scripts/check-mqtt-skill-coverage.mjs": "5.2.
|
|
358
|
-
"v8-saas-multi-tenant/SKILL.md": "5.2.
|
|
359
|
-
"v8-security/SKILL.md": "5.2.
|
|
360
|
-
"v8-security/references/progressive-01-2-权限校验.md": "5.2.
|
|
361
|
-
"v8-security/references/progressive-02-7-日志记录.md": "5.2.
|
|
362
|
-
"v8-sql-query/SKILL.md": "5.2.
|
|
363
|
-
"v8-table-event/SKILL.md": "5.2.
|
|
364
|
-
"v8-table-event/references/progressive-01-informv8-js-表单打开事件.md": "5.2.
|
|
365
|
-
"v8-table-event/references/progressive-02-前端事件名-v8-eventname-可能的值.md": "5.2.
|
|
366
|
-
"v8-tcp-integration/SKILL.md": "5.2.
|
|
367
|
-
"v8-tcp-integration/agents/openai.yaml": "5.2.
|
|
368
|
-
"v8-template-engine/SKILL.md": "5.2.
|
|
369
|
-
"v8-utilities/SKILL.md": "5.2.
|
|
370
|
-
"v8-utilities/references/client-api-index.md": "5.2.
|
|
371
|
-
"v8-utilities/references/platform-http-routes.md": "5.2.
|
|
372
|
-
"v8-utilities/references/server-api-index.md": "5.2.
|
|
373
|
-
"v8-workflow/SKILL.md": "5.2.
|
|
374
|
-
"v8-workflow/references/progressive-01-节点开始-v8-事件.md": "5.2.
|
|
375
|
-
"workspace-conventions/SKILL.md": "5.2.
|
|
376
|
-
"workspace-conventions/references/progressive-01-版本更新日志保护规则-强制.md": "5.2.
|
|
377
|
-
"workspace-conventions/references/progressive-02-microi-net-api-本地启动约定.md": "5.2.
|
|
378
|
-
"workspace-conventions/references/progressive-03-cli-与-ide-插件错版共存约定.md": "5.2.
|
|
201
|
+
".microi-skills-version.json": "5.2.8",
|
|
202
|
+
".progressive-disclosure-manifest.json": "5.2.8",
|
|
203
|
+
"README.md": "5.2.8",
|
|
204
|
+
"ai-engine/SKILL.md": "5.2.8",
|
|
205
|
+
"ai-engine/agents/openai.yaml": "5.2.8",
|
|
206
|
+
"ai-platform-governance/SKILL.md": "5.2.8",
|
|
207
|
+
"ai-platform-governance/references/progressive-01-功能开关.md": "5.2.8",
|
|
208
|
+
"app-store/SKILL.md": "5.2.8",
|
|
209
|
+
"app-store/agents/openai.yaml": "5.2.8",
|
|
210
|
+
"business-blueprint/SKILL.md": "5.2.8",
|
|
211
|
+
"datasource-engine/SKILL.md": "5.2.8",
|
|
212
|
+
"datasource-engine/agents/openai.yaml": "5.2.8",
|
|
213
|
+
"dos-orm/SKILL.md": "5.2.8",
|
|
214
|
+
"dos-orm/references/api-reference.md": "5.2.8",
|
|
215
|
+
"job-engine/SKILL.md": "5.2.8",
|
|
216
|
+
"job-engine/agents/openai.yaml": "5.2.8",
|
|
217
|
+
"message-notification/SKILL.md": "5.2.8",
|
|
218
|
+
"message-notification/agents/openai.yaml": "5.2.8",
|
|
219
|
+
"message-notification/references/contracts.md": "5.2.8",
|
|
220
|
+
"microi-ai-app-auth.js": "5.2.8",
|
|
221
|
+
"microi-ai-application/SKILL.md": "5.2.8",
|
|
222
|
+
"microi-ai-application/agents/openai.yaml": "5.2.8",
|
|
223
|
+
"microi-ai-application/references/frontend-baseline.md": "5.2.8",
|
|
224
|
+
"microi-client-frontend/SKILL.md": "5.2.8",
|
|
225
|
+
"microi-client-frontend/references/progressive-01-3-动态按钮系统.md": "5.2.8",
|
|
226
|
+
"microi-client-frontend/references/progressive-02-8-运行时高频坑复盘.md": "5.2.8",
|
|
227
|
+
"microi-client-frontend/references/progressive-03-vue3-前端微服务宿主规则.md": "5.2.8",
|
|
228
|
+
"microi-codex-installer/SKILL.md": "5.2.8",
|
|
229
|
+
"microi-codex-installer/agents/openai.yaml": "5.2.8",
|
|
230
|
+
"microi-codex/SKILL.md": "5.2.8",
|
|
231
|
+
"microi-datasource-mapping/SKILL.md": "5.2.8",
|
|
232
|
+
"microi-db-schema/SKILL.md": "5.2.8",
|
|
233
|
+
"microi-db-schema/agents/openai.yaml": "5.2.8",
|
|
234
|
+
"microi-db-schema/references/core-tables.md": "5.2.8",
|
|
235
|
+
"microi-db-schema/references/form-component-options.md": "5.2.8",
|
|
236
|
+
"microi-db-schema/references/schema-overview.md": "5.2.8",
|
|
237
|
+
"microi-db-schema/references/schema.md": "5.2.8",
|
|
238
|
+
"microi-db-schema/references/table-catalog.md": "5.2.8",
|
|
239
|
+
"microi-deployment/SKILL.md": "5.2.8",
|
|
240
|
+
"microi-deployment/references/deployment-matrix.md": "5.2.8",
|
|
241
|
+
"microi-docs-coverage/SKILL.md": "5.2.8",
|
|
242
|
+
"microi-docs-coverage/references/capability-map.md": "5.2.8",
|
|
243
|
+
"microi-docs-coverage/scripts/audit-doc-skill-coverage.mjs": "5.2.8",
|
|
244
|
+
"microi-form-engine/SKILL.md": "5.2.8",
|
|
245
|
+
"microi-form-engine/references/component-catalog.md": "5.2.8",
|
|
246
|
+
"microi-form-engine/references/data-source-events.md": "5.2.8",
|
|
247
|
+
"microi-form-layout/SKILL.md": "5.2.8",
|
|
248
|
+
"microi-form-layout/references/progressive-01-3-三种分组的存储与配置.md": "5.2.8",
|
|
249
|
+
"microi-frontend-sdk/SKILL.md": "5.2.8",
|
|
250
|
+
"microi-frontend-sdk/references/progressive-01-token-当前登录用户与当前终端登录协议.md": "5.2.8",
|
|
251
|
+
"microi-left-right-layout/SKILL.md": "5.2.8",
|
|
252
|
+
"microi-microservice/SKILL.md": "5.2.8",
|
|
253
|
+
"microi-microservice/references/runtime-delivery.md": "5.2.8",
|
|
254
|
+
"microi-mobile-app-quality/SKILL.md": "5.2.8",
|
|
255
|
+
"microi-mobile-app-quality/references/progressive-01-4-重要按钮必须带图标.md": "5.2.8",
|
|
256
|
+
"microi-mobile-app-quality/references/progressive-02-9-主题切换必须真实且全局生效.md": "5.2.8",
|
|
257
|
+
"microi-solution-quotation/SKILL.md": "5.2.8",
|
|
258
|
+
"microi-solution-quotation/agents/openai.yaml": "5.2.8",
|
|
259
|
+
"microi-solution-quotation/scripts/build_solution_quote.py": "5.2.8",
|
|
260
|
+
"microi-sso/SKILL.md": "5.2.8",
|
|
261
|
+
"microi-sso/references/acceptance.md": "5.2.8",
|
|
262
|
+
"microi-sso/references/configuration-and-security.md": "5.2.8",
|
|
263
|
+
"microi-sso/references/inbound.md": "5.2.8",
|
|
264
|
+
"microi-sso/references/outbound.md": "5.2.8",
|
|
265
|
+
"microi-system-delivery/SKILL.md": "5.2.8",
|
|
266
|
+
"microi-system-delivery/references/progressive-01-标准工作流.md": "5.2.8",
|
|
267
|
+
"microi-system-delivery/references/progressive-02-自动化测试必须覆盖的坑.md": "5.2.8",
|
|
268
|
+
"microi-ui/SKILL.md": "5.2.8",
|
|
269
|
+
"microi-ui/references/progressive-01-移动端场景蓝图.md": "5.2.8",
|
|
270
|
+
"microi-uniapp-frontend/SKILL.md": "5.2.8",
|
|
271
|
+
"microi-uniapp-frontend/references/progressive-01-移动端分类-双栏列表独立滚动.md": "5.2.8",
|
|
272
|
+
"microi-uniapp-frontend/references/progressive-02-关键业务资产不得默认选中.md": "5.2.8",
|
|
273
|
+
"microi.v8.js": "5.2.8",
|
|
274
|
+
"module-engine/SKILL.md": "5.2.8",
|
|
275
|
+
"module-engine/references/module-config.md": "5.2.8",
|
|
276
|
+
"ocr-engine/SKILL.md": "5.2.8",
|
|
277
|
+
"ocr-engine/agents/openai.yaml": "5.2.8",
|
|
278
|
+
"page-engine/SKILL.md": "5.2.8",
|
|
279
|
+
"page-engine/references/progressive-01-所有组件类型.md": "5.2.8",
|
|
280
|
+
"page-engine/references/progressive-02-版本历史-并发保存与回滚.md": "5.2.8",
|
|
281
|
+
"performance-testing/SKILL.md": "5.2.8",
|
|
282
|
+
"playwright-e2e/SKILL.md": "5.2.8",
|
|
283
|
+
"playwright-e2e/references/progressive-01-全自动登录-免验证码-但不免密码-必读.md": "5.2.8",
|
|
284
|
+
"playwright-e2e/references/progressive-02-文字对比度与可读性自动化检查-必做.md": "5.2.8",
|
|
285
|
+
"playwright-e2e/references/progressive-03-microi-helper-模板.md": "5.2.8",
|
|
286
|
+
"playwright-e2e/references/progressive-04-ci-建议.md": "5.2.8",
|
|
287
|
+
"print-engine/SKILL.md": "5.2.8",
|
|
288
|
+
"production-readonly-audit/SKILL.md": "5.2.8",
|
|
289
|
+
"report-engine/SKILL.md": "5.2.8",
|
|
290
|
+
"report-engine/agents/openai.yaml": "5.2.8",
|
|
291
|
+
"scripts/optimize-progressive-disclosure.mjs": "5.2.8",
|
|
292
|
+
"scripts/refresh-progressive-disclosure.mjs": "5.2.8",
|
|
293
|
+
"scripts/validate-progressive-disclosure.mjs": "5.2.8",
|
|
294
|
+
"search-engine/SKILL.md": "5.2.8",
|
|
295
|
+
"search-engine/agents/openai.yaml": "5.2.8",
|
|
296
|
+
"spider-engine/SKILL.md": "5.2.8",
|
|
297
|
+
"system-observability/SKILL.md": "5.2.8",
|
|
298
|
+
"translate-engine/SKILL.md": "5.2.8",
|
|
299
|
+
"translate-engine/agents/openai.yaml": "5.2.8",
|
|
300
|
+
"ui-design/SKILL.md": "5.2.8",
|
|
301
|
+
"ui-design/assets/pattern-showcase/app.js": "5.2.8",
|
|
302
|
+
"ui-design/assets/pattern-showcase/index.html": "5.2.8",
|
|
303
|
+
"ui-design/assets/pattern-showcase/styles.css": "5.2.8",
|
|
304
|
+
"ui-design/assets/templates/MCI-DESIGN.md": "5.2.8",
|
|
305
|
+
"ui-design/references/design-pattern-library.md": "5.2.8",
|
|
306
|
+
"ui-design/references/mci-design-contract.md": "5.2.8",
|
|
307
|
+
"ui-design/references/motion-and-media.md": "5.2.8",
|
|
308
|
+
"ui-design/references/product-flow-recipes.md": "5.2.8",
|
|
309
|
+
"ui-design/references/progressive-01-颜色体系-css-variables-支持主题切换.md": "5.2.8",
|
|
310
|
+
"ui-design/references/progressive-02-字体.md": "5.2.8",
|
|
311
|
+
"ui-design/references/progressive-03-动效规范-丰富但不卡.md": "5.2.8",
|
|
312
|
+
"ui-design/references/progressive-04-组件风格速查.md": "5.2.8",
|
|
313
|
+
"ui-design/references/progressive-05-移动端专用规范.md": "5.2.8",
|
|
314
|
+
"ui-design/references/progressive-06-主题切换实现.md": "5.2.8",
|
|
315
|
+
"ui-design/references/progressive-07-速查-从头搭建一个移动端页面.md": "5.2.8",
|
|
316
|
+
"ui-design/references/progressive-08-表单分组规范-tabs-vs-collapsegroup-强制.md": "5.2.8",
|
|
317
|
+
"uniapp-mall-assets/SKILL.md": "5.2.8",
|
|
318
|
+
"unity-integration/SKILL.md": "5.2.8",
|
|
319
|
+
"unity-integration/agents/openai.yaml": "5.2.8",
|
|
320
|
+
"unity-integration/references/ai-app-delivery.md": "5.2.8",
|
|
321
|
+
"unity-integration/references/sdk-api.md": "5.2.8",
|
|
322
|
+
"unity-integration/references/toolbox-migration.md": "5.2.8",
|
|
323
|
+
"unity-integration/references/webgl-hosting.md": "5.2.8",
|
|
324
|
+
"v8-api-config/SKILL.md": "5.2.8",
|
|
325
|
+
"v8-cache-pattern/SKILL.md": "5.2.8",
|
|
326
|
+
"v8-crud-api/SKILL.md": "5.2.8",
|
|
327
|
+
"v8-crud-api/references/progressive-01-查询列表-分页.md": "5.2.8",
|
|
328
|
+
"v8-crud-api/references/progressive-02-where-条件语法速查.md": "5.2.8",
|
|
329
|
+
"v8-debugging/SKILL.md": "5.2.8",
|
|
330
|
+
"v8-explorer-tree/SKILL.md": "5.2.8",
|
|
331
|
+
"v8-export-import/SKILL.md": "5.2.8",
|
|
332
|
+
"v8-export-import/references/progressive-01-excellayout-高级自由布局.md": "5.2.8",
|
|
333
|
+
"v8-export-import/references/progressive-02-powerpoint-导出.md": "5.2.8",
|
|
334
|
+
"v8-export-import/references/progressive-03-安全-性能注意.md": "5.2.8",
|
|
335
|
+
"v8-file-upload/SKILL.md": "5.2.8",
|
|
336
|
+
"v8-file-upload/references/progressive-01-公有桶-vs-私有桶.md": "5.2.8",
|
|
337
|
+
"v8-file-upload/references/progressive-02-office-文件在线编辑版本号规则.md": "5.2.8",
|
|
338
|
+
"v8-formengine-http/SKILL.md": "5.2.8",
|
|
339
|
+
"v8-frontend-events/SKILL.md": "5.2.8",
|
|
340
|
+
"v8-frontend-events/references/bluetooth-print-api.md": "5.2.8",
|
|
341
|
+
"v8-frontend-events/references/bluetooth-print.md": "5.2.8",
|
|
342
|
+
"v8-frontend-events/references/progressive-01-列表事件.md": "5.2.8",
|
|
343
|
+
"v8-http-integration/SKILL.md": "5.2.8",
|
|
344
|
+
"v8-http-integration/references/progressive-01-get-请求.md": "5.2.8",
|
|
345
|
+
"v8-http-integration/references/progressive-02-错误处理模式.md": "5.2.8",
|
|
346
|
+
"v8-image-processing/SKILL.md": "5.2.8",
|
|
347
|
+
"v8-image-processing/agents/openai.yaml": "5.2.8",
|
|
348
|
+
"v8-image-processing/references/api-reference.md": "5.2.8",
|
|
349
|
+
"v8-menu-buttons/SKILL.md": "5.2.8",
|
|
350
|
+
"v8-menu-buttons/references/progressive-01-2-按钮对象-schema.md": "5.2.8",
|
|
351
|
+
"v8-menu-buttons/references/progressive-02-8-模式-f-后台任务按钮-长任务.md": "5.2.8",
|
|
352
|
+
"v8-menu-buttons/references/progressive-03-10-反模式-避免.md": "5.2.8",
|
|
353
|
+
"v8-mongodb/SKILL.md": "5.2.8",
|
|
354
|
+
"v8-mq-mqtt/SKILL.md": "5.2.8",
|
|
355
|
+
"v8-mq-mqtt/references/mqtt-production.md": "5.2.8",
|
|
356
|
+
"v8-mq-mqtt/references/progressive-01-v8-mqtt-iot-物联网.md": "5.2.8",
|
|
357
|
+
"v8-mq-mqtt/scripts/check-mqtt-skill-coverage.mjs": "5.2.8",
|
|
358
|
+
"v8-saas-multi-tenant/SKILL.md": "5.2.8",
|
|
359
|
+
"v8-security/SKILL.md": "5.2.8",
|
|
360
|
+
"v8-security/references/progressive-01-2-权限校验.md": "5.2.8",
|
|
361
|
+
"v8-security/references/progressive-02-7-日志记录.md": "5.2.8",
|
|
362
|
+
"v8-sql-query/SKILL.md": "5.2.8",
|
|
363
|
+
"v8-table-event/SKILL.md": "5.2.8",
|
|
364
|
+
"v8-table-event/references/progressive-01-informv8-js-表单打开事件.md": "5.2.8",
|
|
365
|
+
"v8-table-event/references/progressive-02-前端事件名-v8-eventname-可能的值.md": "5.2.8",
|
|
366
|
+
"v8-tcp-integration/SKILL.md": "5.2.8",
|
|
367
|
+
"v8-tcp-integration/agents/openai.yaml": "5.2.8",
|
|
368
|
+
"v8-template-engine/SKILL.md": "5.2.8",
|
|
369
|
+
"v8-utilities/SKILL.md": "5.2.8",
|
|
370
|
+
"v8-utilities/references/client-api-index.md": "5.2.8",
|
|
371
|
+
"v8-utilities/references/platform-http-routes.md": "5.2.8",
|
|
372
|
+
"v8-utilities/references/server-api-index.md": "5.2.8",
|
|
373
|
+
"v8-workflow/SKILL.md": "5.2.8",
|
|
374
|
+
"v8-workflow/references/progressive-01-节点开始-v8-事件.md": "5.2.8",
|
|
375
|
+
"workspace-conventions/SKILL.md": "5.2.8",
|
|
376
|
+
"workspace-conventions/references/progressive-01-版本更新日志保护规则-强制.md": "5.2.8",
|
|
377
|
+
"workspace-conventions/references/progressive-02-microi-net-api-本地启动约定.md": "5.2.8",
|
|
378
|
+
"workspace-conventions/references/progressive-03-cli-与-ide-插件错版共存约定.md": "5.2.8"
|
|
379
379
|
},
|
|
380
380
|
"files": [
|
|
381
381
|
".microi-skills-version.json",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "5.2.
|
|
2
|
+
"version": "5.2.8",
|
|
3
3
|
"versionRule": "Microi version uses three numeric parts. Each publish increments the last part; when a part exceeds 9 it carries to the previous part: 1.0.9 -> 1.1.0, 1.9.9 -> 2.0.0.",
|
|
4
4
|
"managedBy": "Microi.VSCode/bump-version.js",
|
|
5
|
-
"updatedAt": "2026-08-
|
|
5
|
+
"updatedAt": "2026-08-25T00:13:51.528Z"
|
|
6
6
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 1,
|
|
3
|
-
"generatedAt": "2026-08-
|
|
3
|
+
"generatedAt": "2026-08-24T23:28:15.830Z",
|
|
4
4
|
"policy": {
|
|
5
5
|
"maxEntryLines": 285,
|
|
6
6
|
"referenceBudgetLines": 245,
|
|
@@ -2221,18 +2221,18 @@
|
|
|
2221
2221
|
]
|
|
2222
2222
|
},
|
|
2223
2223
|
"v8-file-upload": {
|
|
2224
|
-
"originalSha256": "
|
|
2225
|
-
"originalLines":
|
|
2226
|
-
"prefixSha256": "
|
|
2227
|
-
"prefixBytes":
|
|
2228
|
-
"entryLines":
|
|
2224
|
+
"originalSha256": "c6a1d4ed64cc2abbd9c3bc42c4d9473535564b45277f4a563e1452006325eaeb",
|
|
2225
|
+
"originalLines": 557,
|
|
2226
|
+
"prefixSha256": "dd9e661499692931e0da053fdb6060a3ff2827eb5862d1a820f05159038ead5d",
|
|
2227
|
+
"prefixBytes": 7475,
|
|
2228
|
+
"entryLines": 219,
|
|
2229
2229
|
"chunks": [
|
|
2230
2230
|
{
|
|
2231
2231
|
"id": "v8-file-upload-000",
|
|
2232
2232
|
"ordinal": 0,
|
|
2233
2233
|
"destination": "v8-file-upload/SKILL.md",
|
|
2234
|
-
"sha256": "
|
|
2235
|
-
"lines":
|
|
2234
|
+
"sha256": "841bb634227ea21cf97abcbee5dc6220042e73139170e6a6c304bfce83274e7a",
|
|
2235
|
+
"lines": 12,
|
|
2236
2236
|
"heading": "核心 API"
|
|
2237
2237
|
},
|
|
2238
2238
|
{
|
|
@@ -2247,7 +2247,7 @@
|
|
|
2247
2247
|
"id": "v8-file-upload-002",
|
|
2248
2248
|
"ordinal": 2,
|
|
2249
2249
|
"destination": "v8-file-upload/SKILL.md",
|
|
2250
|
-
"sha256": "
|
|
2250
|
+
"sha256": "c20863b68d13b3bd41caee90a5e12878501a35b3d9f8d40a80efe3f6b46125a9",
|
|
2251
2251
|
"lines": 101,
|
|
2252
2252
|
"heading": "接收前端上传的文件"
|
|
2253
2253
|
},
|
|
@@ -2255,7 +2255,7 @@
|
|
|
2255
2255
|
"id": "v8-file-upload-003",
|
|
2256
2256
|
"ordinal": 5,
|
|
2257
2257
|
"destination": "v8-file-upload/SKILL.md",
|
|
2258
|
-
"sha256": "
|
|
2258
|
+
"sha256": "d02dfde4abd2349cd92de1daee129bc08ba42142b5f6229736588cb3e0dbf43c",
|
|
2259
2259
|
"lines": 13,
|
|
2260
2260
|
"heading": "跨平台文件同步登录会话"
|
|
2261
2261
|
},
|
|
@@ -2786,11 +2786,11 @@
|
|
|
2786
2786
|
]
|
|
2787
2787
|
},
|
|
2788
2788
|
"v8-security": {
|
|
2789
|
-
"originalSha256": "
|
|
2790
|
-
"originalLines":
|
|
2791
|
-
"prefixSha256": "
|
|
2792
|
-
"prefixBytes":
|
|
2793
|
-
"entryLines":
|
|
2789
|
+
"originalSha256": "47f1d4392b637af2b25a658e475bdcf8ee888b6e51098b888e477ce1aa1c9985",
|
|
2790
|
+
"originalLines": 497,
|
|
2791
|
+
"prefixSha256": "c3b2ae10a39461ee69fda3c7e994d072ca6d8c9dc6f2338742bc8f07e0dcffd0",
|
|
2792
|
+
"prefixBytes": 1648,
|
|
2793
|
+
"entryLines": 184,
|
|
2794
2794
|
"chunks": [
|
|
2795
2795
|
{
|
|
2796
2796
|
"id": "v8-security-000",
|
|
@@ -38,7 +38,7 @@ description: Microi AI 引擎、MiniMax 图片/音乐/视频生成与预览、
|
|
|
38
38
|
|
|
39
39
|
`Chat/ChatStream` 虽声明 GET/POST,含问题、附件和会话上下文的业务调用默认使用 POST,避免敏感内容进入 URL 日志。Controller 和 `V8.AI` 必须从可信执行上下文覆盖当前用户和 `OsClient`,并清除客户端提交的 `ApiKey/Endpoint`。所谓打字机效果必须来自真实 SSE 增量块;`microi_chat` 只返回最终结果,不能被描述成逐 token MCP 流。
|
|
40
40
|
|
|
41
|
-
|
|
41
|
+
安全数据分析的新客户端调用 `/apiengine/platform-ai-runtime` 并固定 `Action=NL2SQL`;旧 `/api/Ai/NL2SQL` 只保留兼容转发。最终都由租户/用户绑定的 `V8.AI.NL2SQL` 从当前用户权限生成表白名单;任何通用包装接口都不得接受客户端自报的表名作为授权。
|
|
42
42
|
|
|
43
43
|
## 代码分层
|
|
44
44
|
|
|
@@ -46,8 +46,13 @@ AI 业务统一实现在 `Microi.Server/Microi.AI`。`Microi.Server/Microi.net.A
|
|
|
46
46
|
|
|
47
47
|
- Controller、Hub 只调用 `IMicroiAI`、`AiProxyService`、`SubscriptionService`、`AiWorkflowService` 等 `Microi.AI` 门面,不直接查询 `mic_ai` / `mic_sub_order`,不接触上游密钥和向量基础设施。
|
|
48
48
|
- “授权 + 执行”必须由领域门面原子完成,不能让接口层先生成可伪造的 `AllowedTables` 或遗漏某一步。
|
|
49
|
-
- AI 的 Qdrant/Ollama/Embedding 配置、Schema 初始化和其它生命周期任务由 `AddMicroiAI()` 在模块内自注册;API 的 `Program.cs` 只负责调用模块注册。
|
|
50
|
-
- `Microi.Core` 只承载跨模块契约和模型。新增入口时先扩展 AI 领域服务,再添加薄 Controller/Hub 适配,禁止复制业务流程。
|
|
49
|
+
- AI 的 Qdrant/Ollama/Embedding 配置、Schema 初始化和其它生命周期任务由 `AddMicroiAI()` 在模块内自注册;API 的 `Program.cs` 只负责调用模块注册。
|
|
50
|
+
- `Microi.Core` 只承载跨模块契约和模型。新增入口时先扩展 AI 领域服务,再添加薄 Controller/Hub 适配,禁止复制业务流程。
|
|
51
|
+
- AI 账户统一入口是 Managed 接口引擎 `/apiengine/platform-ai-account`;套餐、订阅和订单由 V8 编排。支付宝回调 C# 只做可信租户选择/归一化、该租户配置验签和一次性 Managed 调用;`CompletePayment` 在同一接口引擎事务内完成订单条件认领、金额校验、订阅续期/新建与平台/供应商 API Key 分配。供应商协议、密钥隔离、分布式额度原子、任务句柄和受控媒体落盘仍由绑定原子完成。
|
|
52
|
+
- 非流式 `UpdateConversationTitle / RecognizeIntent / Chat / NL2SQL / NL2V8EngineSync` 统一进入 Managed `/apiengine/platform-ai-runtime`,旧 Controller 同名路由只做兼容转发;SSE/流式、Provider Proxy、媒体、文件和策略元数据保持原生。`platform-ai-runtime` 只调用绑定当前租户和当前用户的 `V8.AI` 原子,不接收客户端伪造的租户、用户、Endpoint、ApiKey、表白名单或管理员标记。
|
|
53
|
+
- AI 官方应用只有一个应用级租户扩展点 `platform-ai-custom-hook`,策略为 `CreateIfMissing`。`mci_ai_data_assistant` 与 `platform-ai-runtime` 只传 `Stage`、`SourceApiEngineKey`、`Action`;支付动作最多增加 `EventId`、`Provider`,账户其它动作只增加白名单资源元数据。Hook 禁止接收订单号、交易号、金额、标题、SQL、模型、附件、提示词或问题原文及其摘要、回答、供应商/平台密钥、供应商任务号、文件句柄或媒体内容。匿名发现接口不调用 Hook,`/v1/usage` 继续由 C# 凭据网关直接校验,使 `Authorization` 永不进入 V8。
|
|
54
|
+
- 9 张 `mic_sub_*` 订阅表与 `mci_ai_token_account`、`mci_ai_token_log` 由官方 `app.microi.ai-engine` 应用升级提供,必须同时声明 DDL、PhysicalColumns、DiyTables、DiyFields;`PromptPreview` 属于日志表正式字段。`mci_ai_token_recharge` 当前不在该运行时实体闭包内,禁止根据线上残留自行扩包。运行时发现缺失时失败关闭,禁止在请求路径自动建表、加列或修改业务 Schema。
|
|
55
|
+
- `Sys_User.AiApiKey` 归官方 `app.microi.sys_user`,由系统账号包同时维护建表 DDL、PhysicalColumns 和隐藏只读 DiyField;AI助手包不得重复声明 `Sys_User`。缺列错误必须提示升级系统账号应用,不能误导用户升级 AI助手。
|
|
51
56
|
|
|
52
57
|
## 模型与密钥
|
|
53
58
|
|
|
@@ -73,6 +78,9 @@ AI 业务统一实现在 `Microi.Server/Microi.AI`。`Microi.Server/Microi.net.A
|
|
|
73
78
|
## 跨端 AI 助手与商城交付
|
|
74
79
|
|
|
75
80
|
- PC 与移动端复用 `mci_ai_data_assistant`。`Bootstrap` 返回的 `Enabled`、`Models`、`AllowedDomains` 和 `Prompts` 是跨端共同事实源;快捷问题来自启用的 `mci_ai_data_domain.PromptExamples`,前端不能维护另一套固定文案。
|
|
81
|
+
- 官方 AI助手应用归 `app.microi.ai-engine`。v6.3.6 的接口引擎必须严格只有 Managed `mci_ai_data_assistant`、Managed `platform-ai-account`、Managed `platform-ai-runtime` 和 CreateIfMissing `platform-ai-custom-hook` 四项,并声明 `V8.Method.ManageAiPlatform`、`V8.Method.RequireManagedProtocolContext` 与所需 `V8.AI` 能力;后端缺少任一能力时安装预检失败关闭。
|
|
82
|
+
- `ai_app_list`、`ai_app_detail`、`ai_app_get_file`、`ai_app_save_file`、`ai_app_create`、`ai_app_build`、`ai_app_preview`、`ai_app_download_source_zip`、`ai_app_download_build_zip`、`ai_app_moveobject_probe`、`ai_app_moveobject_exec_probe`、`ai_app_publish_store` 这 12 个 `ai_app_*` 归 `app.microi.store` 维护。AI助手包移除它们的资源选择和所有权声明,但不会删除目标租户既有运行时接口记录;既有记录继续由应用商城包升级。
|
|
83
|
+
- v6.3.6 还必须保持 AI助手包的 DDL、PhysicalColumns、DiyTables、DiyFields、DataSets 全层不再包含重复的 `mci_ai_app_version`、`mci_ai_app_file`、`sys_microistore`,这些表交回 Store/SaaS 既有平台包维护;当前仅 AI助手包拥有的 `app_mic_aiapp`、`mci_ai_app` 继续保留。
|
|
76
84
|
- 普通角色必须匹配启用的 `mci_ai_role_policy`。只有后端可信的 `V8.CurrentUser.Level >= 9999` 可以在新安装租户缺少角色策略时获得安全兜底:从目标租户动态读取已启用业务域和模型,范围为 `All`,仍保持 `AllowRawSql=false`、敏感字段默认关闭。不得相信客户端提交的 Level、角色名或账号名。
|
|
77
85
|
- 当租户要求“所有角色均可使用 AI 助手”时,必须为 `sys_role` 中每个目标角色建立显式启用策略;受限角色使用 `Self`/`Department` 与最小业务域,管理角色才可使用经确认的 `All`。禁止把“人人可打开助手”实现成普通角色默认全库可读。
|
|
78
86
|
- `Sys_Config.DisableAiAssistant` 是负向开关:缺失、空值或 `0/false` 都显示 AI 助手,只有显式 `1/true` 才关闭图标。商城升级应复用旧 `IsShowAiAssistant` 的字段元数据 Id 就地改名;兼容读取可以保留旧物理列,但旧字段元数据必须在 PC 与移动端隐藏,禁止同时暴露正向、负向两个开关。关闭该开关前后都要做策略覆盖验收:回读 `sys_role` 与 `mci_ai_role_policy`,断言每个目标角色都有唯一启用策略,`AllowedDomains`、`AllowedModels` 均非空且模型仍处于启用状态;再至少用超级管理员、普通员工和客户身份分别调用 `Bootstrap`,确认 `Enabled=true` 且返回范围符合角色。仅看到入口图标不算可用。
|