@microi.net/cli 4.8.9 → 4.9.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.
@@ -1,13 +1,13 @@
1
1
  {
2
- "builtAt": "2026-08-10T15:49:58.570Z",
2
+ "builtAt": "2026-08-11T01:07:42.259Z",
3
3
  "source": "../microi.skills",
4
4
  "extension": {
5
5
  "name": "v8-engine",
6
- "version": "4.8.9",
6
+ "version": "4.9.1",
7
7
  "publisher": "Microi"
8
8
  },
9
9
  "skills": {
10
- "version": "4.8.9",
10
+ "version": "4.9.1",
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,10 +15,10 @@
15
15
  "dir": "dist/microi.skills",
16
16
  "files": 108,
17
17
  "skills": 60,
18
- "bytes": 1697905
18
+ "bytes": 1708480
19
19
  },
20
20
  "fileHashes": {
21
- ".microi-skills-version.json": "1e5b5ee3a0c49fd80d6cd53dacf806e177a1182bc5b8569d48086a912b37f2f0",
21
+ ".microi-skills-version.json": "00d7b33d0165e4a7ef4c72afebc462ec5c7b8271a415d80026adb21383f1b781",
22
22
  "README.md": "020086cc87e3f1c02cdaac86fe1a0ae58f16f0b1bb854d7a52f3e8f966f58bd7",
23
23
  "ai-engine/SKILL.md": "be814942df611fa72fbd86ad67ac2cd0aa519cd348bcc085dd03e8ac81b7ec4b",
24
24
  "ai-engine/agents/openai.yaml": "40deb07801006a46b9a7f0020d13251955eeadd04c8e591160210479936f8b5b",
@@ -39,7 +39,7 @@
39
39
  "microi-ai-application/SKILL.md": "ae4f7768b4f70038ee67fd5844b6e4f9ca3243516cd0aaf795f40ffe3add9505",
40
40
  "microi-ai-application/agents/openai.yaml": "d3dfc4d0f2fda3391e90e661ca9d8d051cb43824b011d1a88e99db135870454f",
41
41
  "microi-ai-application/references/frontend-baseline.md": "c21a2d38292fd8d445a7538afb45d609881f624f32d39c0fc4bbbb3c2fa64a74",
42
- "microi-client-frontend/SKILL.md": "8e9f3392bb94c74d43b252cc9238b6ea38742a3ee8403d241643e738edcac899",
42
+ "microi-client-frontend/SKILL.md": "35e17e23abeab6784c0e04d3d41a1617e055edaf4db0113120c43fd53ca13faa",
43
43
  "microi-codex-installer/SKILL.md": "ae7ab91948227a165094e5f88380e264c19c51d42f22ec2a92bd13507f8fce36",
44
44
  "microi-codex-installer/agents/openai.yaml": "e531219b74a70204893a156b1c22c69013a4c9d24b132ead912746b1b312cf80",
45
45
  "microi-datasource-mapping/SKILL.md": "1626bdf242038838028aa1235c5a6262e22680984583c47a8fc4e5fffb24b7df",
@@ -52,27 +52,27 @@
52
52
  "microi-db-schema/references/table-catalog.md": "ea0ef573d0e112c335e3ab66035bce4e5c3039c7bf25c6e3743f086913b46b97",
53
53
  "microi-deployment/SKILL.md": "b85107988a0744b11c47dcb7a5c65a89faefe046b6400f3e7a7a4afa1cdcea80",
54
54
  "microi-deployment/references/deployment-matrix.md": "32d9d1424bf19eae0d2cee2b1667203c830ea7610c71a806e7ddf785a0083009",
55
- "microi-docs-coverage/SKILL.md": "8e5d94920a9375e532cb3d42cbcd18d7bc52f9a598919e16845bc98d3f974bc0",
55
+ "microi-docs-coverage/SKILL.md": "36cefec16edc68f52682a93a1179b6c7d20f55ea8d217a7708136440be768ac2",
56
56
  "microi-docs-coverage/references/capability-map.md": "2cfc6a10ca017519b1b6ba9d4a33c2055f6793162a36b511ba319945f08972e1",
57
57
  "microi-docs-coverage/scripts/audit-doc-skill-coverage.mjs": "ebd57f17f2ebae499bfa59ad17830db458590feb76f7f0f20219ff0987b33af3",
58
- "microi-form-engine/SKILL.md": "e2bff491312643b16383c91280d81e3985cf81a70c10c5c366623601df7325ed",
58
+ "microi-form-engine/SKILL.md": "6daa341083974bdb09f85a3615e3a9ccb985f66878e6d4737cc6f9635ff9cc7f",
59
59
  "microi-form-engine/references/component-catalog.md": "68963c2d5211a4610c09fab1fa127a349339abbb7427509b183d4be72e977c7b",
60
60
  "microi-form-engine/references/data-source-events.md": "59a95a36624476b12cdc84e4c23975d074b1f115df19992fd0fd075bb982e7cb",
61
61
  "microi-form-layout/SKILL.md": "48814c2c138e2c0fb6a11d39cf458df6a1cc28a3156c7540db1fa482a2ce6aec",
62
62
  "microi-frontend-sdk/SKILL.md": "06f5d51605c6cceef35b986062dcfae76a8fe4efce28a93f267ec1fd2dc28372",
63
63
  "microi-left-right-layout/SKILL.md": "d8c482224846477b6c3068bdf94930cca6d699570f59b09f946601b0a65715f6",
64
- "microi-microservice/SKILL.md": "5f73a351d7ed17395c631524defab72155c7fe2db576785a2926d639453b659a",
65
- "microi-microservice/references/runtime-delivery.md": "f6f90258a8be86e5d10837c68de70cbad4d2efb4333966891105da7ddc0c5ca5",
64
+ "microi-microservice/SKILL.md": "475f9bb41c2ad7c1fd90cadc7cd9e7ffe3e5d2c6cd2ea99f242fd0705da49388",
65
+ "microi-microservice/references/runtime-delivery.md": "d21e759aee023dd3a1e9a3dd3bba26a38a5be6c2342d5aecf27901cd97a8ab6d",
66
66
  "microi-mobile-app-quality/SKILL.md": "3d7c4e89a5abe98658ebce0a31f3db05ff5e38b3f1ac5957aa44ebef9ae282ee",
67
67
  "microi-solution-quotation/SKILL.md": "1bd47bd019a62bdc904612a7d8e2501c76df66eed9ef247544dd7fe38eba02e4",
68
68
  "microi-solution-quotation/agents/openai.yaml": "9e3f994cc842c927ca25e23216f6ce5e8f8313fc39b1c7142d9b652ca73e7dd1",
69
69
  "microi-solution-quotation/scripts/build_solution_quote.py": "2a8a90ed95308b900da3db433402d857f838b594df624f5a83b62307471a31e7",
70
- "microi-system-delivery/SKILL.md": "1b54fa69f9469a177076cefac46e17a4e867a81d77d8b7379185fa1ce70cb3f2",
70
+ "microi-system-delivery/SKILL.md": "e82f269d81b8a0775baa66dd894a37787e9735b341b8db84ab07c035b69da1de",
71
71
  "microi-ui/SKILL.md": "606a9cfc2e9cbcb41e9e26ef9c09bb2ca31c4edc24af00058aa059b54a01f2fe",
72
72
  "microi-uniapp-frontend/SKILL.md": "546dff148306ab94beb57e12f303770eeb6959475d3005954e0314c11271fac2",
73
73
  "microi.v8.js": "25ff9e9aca3ff5167a1f3f06e262e3389a6d732cb12b9a3ddb4f218fb331ef53",
74
- "module-engine/SKILL.md": "1dff1029df854cddc39d721cd2b91723d4c919662f493de7efbf9d0361f5424c",
75
- "module-engine/references/module-config.md": "3d88cf18f97d08279bc73f2f9a16d23cdce657b171e58dcc2ab277d617bb53fc",
74
+ "module-engine/SKILL.md": "6c74925a8d7597266b0e7c01e78972a4afa9ef5a294c7f2cb4bff78dd91ef513",
75
+ "module-engine/references/module-config.md": "900f3baf7ae8d1311b1e1b8553aeae2ece4d8260fea29a1bd4237f3f9f35fe7d",
76
76
  "ocr-engine/SKILL.md": "16f7ee8d3485f47d2cb524f0c3fdea609f7de5581ba46da9f34d32772422c050",
77
77
  "ocr-engine/agents/openai.yaml": "3a6cc9984a246c41332c5f53d1badef31b78f81324333ea0d6337cb20c7fc898",
78
78
  "page-engine/SKILL.md": "8e8dfd456c8925db9ed6a483e2f4e3a8c7317194ec81b75195385ad267e7961b",
@@ -87,7 +87,7 @@
87
87
  "spider-engine/SKILL.md": "09e9e164dc09c35bb4bebfbe77e3ba18164c89503313b28a1b4f1061e0de5e30",
88
88
  "translate-engine/SKILL.md": "384ab8a4c064f1ded98ef3890d5f65daee0001c784cd42d8560623ae64469203",
89
89
  "translate-engine/agents/openai.yaml": "8eb47e08a691219bbe22a797ddbdf73234ec77f86e5724bc735fb0738d899112",
90
- "ui-design/SKILL.md": "13583022e694dd8ad930d10b98c46d692a15de62e6a4d5f5fb32da547eeb2050",
90
+ "ui-design/SKILL.md": "71a53ed6fb097dd3715556268b72d2347aee907dbaa057798b2fe463fcccedbc",
91
91
  "ui-design/assets/pattern-showcase/app.js": "68a8d404c30096da853c6edbc7cb27f336982147ddfebccd66c03ba3d99427cd",
92
92
  "ui-design/assets/pattern-showcase/index.html": "242f94772a5f14e38296f1e925f30a9a5fef2103975831cbd47861a3fc14d5bc",
93
93
  "ui-design/assets/pattern-showcase/styles.css": "77c34ddae0dd9c665c8774dc6def4bd8f4f5ed02470d4343d116ed141c87eccb",
@@ -112,7 +112,7 @@
112
112
  "v8-image-processing/SKILL.md": "69fc700953ceec455604666e15a46a5d665cfc1e7c5134d0d47f2b0f938197cb",
113
113
  "v8-image-processing/agents/openai.yaml": "009d8b643bea6203a8056c7323b68fbe6a92c594809415cf657868074e52a576",
114
114
  "v8-image-processing/references/api-reference.md": "f8f293f64749d9681a1d4d5c25d5ef85ae1cfb7523487c43d08a03e9ebe36fb6",
115
- "v8-menu-buttons/SKILL.md": "fc933bf7685db029517f05df5e75560118ceb90a4a9d52922f046d34334a3082",
115
+ "v8-menu-buttons/SKILL.md": "ee1485e85b967c5b51e43d90d37aa17097d20b2d40cda49fe24f4de12a8e5ebd",
116
116
  "v8-mongodb/SKILL.md": "7da703b5dc9fb9613cca1929fd854e3d333ad7d86200b839bb78ccdc8e0cc6cf",
117
117
  "v8-mq-mqtt/SKILL.md": "3894fc353a3e9896b16b54b9e12758f0aea950968f80b7f3ec86c6652040341c",
118
118
  "v8-saas-multi-tenant/SKILL.md": "92663c00834d0070e145a84da15519d1d5c6aa77d733df09b51bdd221a262bdf",
@@ -128,114 +128,114 @@
128
128
  "workspace-conventions/SKILL.md": "a8bb98c6abc109394208af83052b5cf646ce4c91c969a8358a1265c5e61b314b"
129
129
  },
130
130
  "fileVersions": {
131
- ".microi-skills-version.json": "4.8.9",
132
- "README.md": "4.8.9",
133
- "ai-engine/SKILL.md": "4.8.9",
134
- "ai-engine/agents/openai.yaml": "4.8.9",
135
- "ai-platform-governance/SKILL.md": "4.8.9",
136
- "app-store/SKILL.md": "4.8.9",
137
- "app-store/agents/openai.yaml": "4.8.9",
138
- "business-blueprint/SKILL.md": "4.8.9",
139
- "datasource-engine/SKILL.md": "4.8.9",
140
- "datasource-engine/agents/openai.yaml": "4.8.9",
141
- "dos-orm/SKILL.md": "4.8.9",
142
- "dos-orm/references/api-reference.md": "4.8.9",
143
- "job-engine/SKILL.md": "4.8.9",
144
- "job-engine/agents/openai.yaml": "4.8.9",
145
- "message-notification/SKILL.md": "4.8.9",
146
- "message-notification/agents/openai.yaml": "4.8.9",
147
- "message-notification/references/contracts.md": "4.8.9",
148
- "microi-ai-app-auth.js": "4.8.9",
149
- "microi-ai-application/SKILL.md": "4.8.9",
150
- "microi-ai-application/agents/openai.yaml": "4.8.9",
151
- "microi-ai-application/references/frontend-baseline.md": "4.8.9",
152
- "microi-client-frontend/SKILL.md": "4.8.9",
153
- "microi-codex-installer/SKILL.md": "4.8.9",
154
- "microi-codex-installer/agents/openai.yaml": "4.8.9",
155
- "microi-datasource-mapping/SKILL.md": "4.8.9",
156
- "microi-db-schema/SKILL.md": "4.8.9",
157
- "microi-db-schema/agents/openai.yaml": "4.8.9",
158
- "microi-db-schema/references/core-tables.md": "4.8.9",
159
- "microi-db-schema/references/form-component-options.md": "4.8.9",
160
- "microi-db-schema/references/schema-overview.md": "4.8.9",
161
- "microi-db-schema/references/schema.md": "4.8.9",
162
- "microi-db-schema/references/table-catalog.md": "4.8.9",
163
- "microi-deployment/SKILL.md": "4.8.9",
164
- "microi-deployment/references/deployment-matrix.md": "4.8.9",
165
- "microi-docs-coverage/SKILL.md": "4.8.9",
166
- "microi-docs-coverage/references/capability-map.md": "4.8.9",
167
- "microi-docs-coverage/scripts/audit-doc-skill-coverage.mjs": "4.8.9",
168
- "microi-form-engine/SKILL.md": "4.8.9",
169
- "microi-form-engine/references/component-catalog.md": "4.8.9",
170
- "microi-form-engine/references/data-source-events.md": "4.8.9",
171
- "microi-form-layout/SKILL.md": "4.8.9",
172
- "microi-frontend-sdk/SKILL.md": "4.8.9",
173
- "microi-left-right-layout/SKILL.md": "4.8.9",
174
- "microi-microservice/SKILL.md": "4.8.9",
175
- "microi-microservice/references/runtime-delivery.md": "4.8.9",
176
- "microi-mobile-app-quality/SKILL.md": "4.8.9",
177
- "microi-solution-quotation/SKILL.md": "4.8.9",
178
- "microi-solution-quotation/agents/openai.yaml": "4.8.9",
179
- "microi-solution-quotation/scripts/build_solution_quote.py": "4.8.9",
180
- "microi-system-delivery/SKILL.md": "4.8.9",
181
- "microi-ui/SKILL.md": "4.8.9",
182
- "microi-uniapp-frontend/SKILL.md": "4.8.9",
183
- "microi.v8.js": "4.8.9",
184
- "module-engine/SKILL.md": "4.8.9",
185
- "module-engine/references/module-config.md": "4.8.9",
186
- "ocr-engine/SKILL.md": "4.8.9",
187
- "ocr-engine/agents/openai.yaml": "4.8.9",
188
- "page-engine/SKILL.md": "4.8.9",
189
- "performance-testing/SKILL.md": "4.8.9",
190
- "playwright-e2e/SKILL.md": "4.8.9",
191
- "print-engine/SKILL.md": "4.8.9",
192
- "production-readonly-audit/SKILL.md": "4.8.9",
193
- "report-engine/SKILL.md": "4.8.9",
194
- "report-engine/agents/openai.yaml": "4.8.9",
195
- "search-engine/SKILL.md": "4.8.9",
196
- "search-engine/agents/openai.yaml": "4.8.9",
197
- "spider-engine/SKILL.md": "4.8.9",
198
- "translate-engine/SKILL.md": "4.8.9",
199
- "translate-engine/agents/openai.yaml": "4.8.9",
200
- "ui-design/SKILL.md": "4.8.9",
201
- "ui-design/assets/pattern-showcase/app.js": "4.8.9",
202
- "ui-design/assets/pattern-showcase/index.html": "4.8.9",
203
- "ui-design/assets/pattern-showcase/styles.css": "4.8.9",
204
- "ui-design/assets/templates/MCI-DESIGN.md": "4.8.9",
205
- "ui-design/references/design-pattern-library.md": "4.8.9",
206
- "ui-design/references/mci-design-contract.md": "4.8.9",
207
- "ui-design/references/motion-and-media.md": "4.8.9",
208
- "ui-design/references/product-flow-recipes.md": "4.8.9",
209
- "uniapp-mall-assets/SKILL.md": "4.8.9",
210
- "v8-api-config/SKILL.md": "4.8.9",
211
- "v8-cache-pattern/SKILL.md": "4.8.9",
212
- "v8-crud-api/SKILL.md": "4.8.9",
213
- "v8-debugging/SKILL.md": "4.8.9",
214
- "v8-explorer-tree/SKILL.md": "4.8.9",
215
- "v8-export-import/SKILL.md": "4.8.9",
216
- "v8-file-upload/SKILL.md": "4.8.9",
217
- "v8-formengine-http/SKILL.md": "4.8.9",
218
- "v8-frontend-events/SKILL.md": "4.8.9",
219
- "v8-frontend-events/references/bluetooth-print-api.md": "4.8.9",
220
- "v8-frontend-events/references/bluetooth-print.md": "4.8.9",
221
- "v8-http-integration/SKILL.md": "4.8.9",
222
- "v8-image-processing/SKILL.md": "4.8.9",
223
- "v8-image-processing/agents/openai.yaml": "4.8.9",
224
- "v8-image-processing/references/api-reference.md": "4.8.9",
225
- "v8-menu-buttons/SKILL.md": "4.8.9",
226
- "v8-mongodb/SKILL.md": "4.8.9",
227
- "v8-mq-mqtt/SKILL.md": "4.8.9",
228
- "v8-saas-multi-tenant/SKILL.md": "4.8.9",
229
- "v8-security/SKILL.md": "4.8.9",
230
- "v8-sql-query/SKILL.md": "4.8.9",
231
- "v8-table-event/SKILL.md": "4.8.9",
232
- "v8-template-engine/SKILL.md": "4.8.9",
233
- "v8-utilities/SKILL.md": "4.8.9",
234
- "v8-utilities/references/client-api-index.md": "4.8.9",
235
- "v8-utilities/references/platform-http-routes.md": "4.8.9",
236
- "v8-utilities/references/server-api-index.md": "4.8.9",
237
- "v8-workflow/SKILL.md": "4.8.9",
238
- "workspace-conventions/SKILL.md": "4.8.9"
131
+ ".microi-skills-version.json": "4.9.1",
132
+ "README.md": "4.9.1",
133
+ "ai-engine/SKILL.md": "4.9.1",
134
+ "ai-engine/agents/openai.yaml": "4.9.1",
135
+ "ai-platform-governance/SKILL.md": "4.9.1",
136
+ "app-store/SKILL.md": "4.9.1",
137
+ "app-store/agents/openai.yaml": "4.9.1",
138
+ "business-blueprint/SKILL.md": "4.9.1",
139
+ "datasource-engine/SKILL.md": "4.9.1",
140
+ "datasource-engine/agents/openai.yaml": "4.9.1",
141
+ "dos-orm/SKILL.md": "4.9.1",
142
+ "dos-orm/references/api-reference.md": "4.9.1",
143
+ "job-engine/SKILL.md": "4.9.1",
144
+ "job-engine/agents/openai.yaml": "4.9.1",
145
+ "message-notification/SKILL.md": "4.9.1",
146
+ "message-notification/agents/openai.yaml": "4.9.1",
147
+ "message-notification/references/contracts.md": "4.9.1",
148
+ "microi-ai-app-auth.js": "4.9.1",
149
+ "microi-ai-application/SKILL.md": "4.9.1",
150
+ "microi-ai-application/agents/openai.yaml": "4.9.1",
151
+ "microi-ai-application/references/frontend-baseline.md": "4.9.1",
152
+ "microi-client-frontend/SKILL.md": "4.9.1",
153
+ "microi-codex-installer/SKILL.md": "4.9.1",
154
+ "microi-codex-installer/agents/openai.yaml": "4.9.1",
155
+ "microi-datasource-mapping/SKILL.md": "4.9.1",
156
+ "microi-db-schema/SKILL.md": "4.9.1",
157
+ "microi-db-schema/agents/openai.yaml": "4.9.1",
158
+ "microi-db-schema/references/core-tables.md": "4.9.1",
159
+ "microi-db-schema/references/form-component-options.md": "4.9.1",
160
+ "microi-db-schema/references/schema-overview.md": "4.9.1",
161
+ "microi-db-schema/references/schema.md": "4.9.1",
162
+ "microi-db-schema/references/table-catalog.md": "4.9.1",
163
+ "microi-deployment/SKILL.md": "4.9.1",
164
+ "microi-deployment/references/deployment-matrix.md": "4.9.1",
165
+ "microi-docs-coverage/SKILL.md": "4.9.1",
166
+ "microi-docs-coverage/references/capability-map.md": "4.9.1",
167
+ "microi-docs-coverage/scripts/audit-doc-skill-coverage.mjs": "4.9.1",
168
+ "microi-form-engine/SKILL.md": "4.9.1",
169
+ "microi-form-engine/references/component-catalog.md": "4.9.1",
170
+ "microi-form-engine/references/data-source-events.md": "4.9.1",
171
+ "microi-form-layout/SKILL.md": "4.9.1",
172
+ "microi-frontend-sdk/SKILL.md": "4.9.1",
173
+ "microi-left-right-layout/SKILL.md": "4.9.1",
174
+ "microi-microservice/SKILL.md": "4.9.1",
175
+ "microi-microservice/references/runtime-delivery.md": "4.9.1",
176
+ "microi-mobile-app-quality/SKILL.md": "4.9.1",
177
+ "microi-solution-quotation/SKILL.md": "4.9.1",
178
+ "microi-solution-quotation/agents/openai.yaml": "4.9.1",
179
+ "microi-solution-quotation/scripts/build_solution_quote.py": "4.9.1",
180
+ "microi-system-delivery/SKILL.md": "4.9.1",
181
+ "microi-ui/SKILL.md": "4.9.1",
182
+ "microi-uniapp-frontend/SKILL.md": "4.9.1",
183
+ "microi.v8.js": "4.9.1",
184
+ "module-engine/SKILL.md": "4.9.1",
185
+ "module-engine/references/module-config.md": "4.9.1",
186
+ "ocr-engine/SKILL.md": "4.9.1",
187
+ "ocr-engine/agents/openai.yaml": "4.9.1",
188
+ "page-engine/SKILL.md": "4.9.1",
189
+ "performance-testing/SKILL.md": "4.9.1",
190
+ "playwright-e2e/SKILL.md": "4.9.1",
191
+ "print-engine/SKILL.md": "4.9.1",
192
+ "production-readonly-audit/SKILL.md": "4.9.1",
193
+ "report-engine/SKILL.md": "4.9.1",
194
+ "report-engine/agents/openai.yaml": "4.9.1",
195
+ "search-engine/SKILL.md": "4.9.1",
196
+ "search-engine/agents/openai.yaml": "4.9.1",
197
+ "spider-engine/SKILL.md": "4.9.1",
198
+ "translate-engine/SKILL.md": "4.9.1",
199
+ "translate-engine/agents/openai.yaml": "4.9.1",
200
+ "ui-design/SKILL.md": "4.9.1",
201
+ "ui-design/assets/pattern-showcase/app.js": "4.9.1",
202
+ "ui-design/assets/pattern-showcase/index.html": "4.9.1",
203
+ "ui-design/assets/pattern-showcase/styles.css": "4.9.1",
204
+ "ui-design/assets/templates/MCI-DESIGN.md": "4.9.1",
205
+ "ui-design/references/design-pattern-library.md": "4.9.1",
206
+ "ui-design/references/mci-design-contract.md": "4.9.1",
207
+ "ui-design/references/motion-and-media.md": "4.9.1",
208
+ "ui-design/references/product-flow-recipes.md": "4.9.1",
209
+ "uniapp-mall-assets/SKILL.md": "4.9.1",
210
+ "v8-api-config/SKILL.md": "4.9.1",
211
+ "v8-cache-pattern/SKILL.md": "4.9.1",
212
+ "v8-crud-api/SKILL.md": "4.9.1",
213
+ "v8-debugging/SKILL.md": "4.9.1",
214
+ "v8-explorer-tree/SKILL.md": "4.9.1",
215
+ "v8-export-import/SKILL.md": "4.9.1",
216
+ "v8-file-upload/SKILL.md": "4.9.1",
217
+ "v8-formengine-http/SKILL.md": "4.9.1",
218
+ "v8-frontend-events/SKILL.md": "4.9.1",
219
+ "v8-frontend-events/references/bluetooth-print-api.md": "4.9.1",
220
+ "v8-frontend-events/references/bluetooth-print.md": "4.9.1",
221
+ "v8-http-integration/SKILL.md": "4.9.1",
222
+ "v8-image-processing/SKILL.md": "4.9.1",
223
+ "v8-image-processing/agents/openai.yaml": "4.9.1",
224
+ "v8-image-processing/references/api-reference.md": "4.9.1",
225
+ "v8-menu-buttons/SKILL.md": "4.9.1",
226
+ "v8-mongodb/SKILL.md": "4.9.1",
227
+ "v8-mq-mqtt/SKILL.md": "4.9.1",
228
+ "v8-saas-multi-tenant/SKILL.md": "4.9.1",
229
+ "v8-security/SKILL.md": "4.9.1",
230
+ "v8-sql-query/SKILL.md": "4.9.1",
231
+ "v8-table-event/SKILL.md": "4.9.1",
232
+ "v8-template-engine/SKILL.md": "4.9.1",
233
+ "v8-utilities/SKILL.md": "4.9.1",
234
+ "v8-utilities/references/client-api-index.md": "4.9.1",
235
+ "v8-utilities/references/platform-http-routes.md": "4.9.1",
236
+ "v8-utilities/references/server-api-index.md": "4.9.1",
237
+ "v8-workflow/SKILL.md": "4.9.1",
238
+ "workspace-conventions/SKILL.md": "4.9.1"
239
239
  },
240
240
  "files": [
241
241
  ".microi-skills-version.json",
@@ -1,6 +1,6 @@
1
1
  {
2
- "version": "4.8.9",
2
+ "version": "4.9.1",
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-10T15:49:42.588Z"
5
+ "updatedAt": "2026-08-11T01:07:26.871Z"
6
6
  }
@@ -43,6 +43,8 @@ description: Microi.Client 源码架构指南。用于修改 Microi.Client Vue
43
43
 
44
44
  - Detail/Edit/List/Card 视图属于 `sys_menu`,使用物理字段 `EnableViewSchema`、`ViewSchemaVersion`、`ViewConfigVersion`、`ViewSchema`。其中 `EnableViewSchema` 只控制 Detail/Edit 自定义表单视图,List/Card 有有效配置时始终生效;两个版本字段可空,默认按 `1.0/1` 处理。
45
45
  - 顶层 PC `diy-table` 即使没有 List ViewSchema,也默认显示约 40 至 52px 的紧凑模块标题。`selectModuleView()` 只能对 List/Card 绕过 `EnableViewSchema`;Detail/Edit 必须继续显式启用,不能被列表 fallback 误接管。
46
+ - 存量模块没有 Hero 配置时,PC/移动端从真实 `StatisticsFields`、`DataCount/PageCount`、当前页数值求和或当前页真实状态分布生成兜底指标;当前页口径必须写进标签,严禁随机值或伪造全表汇总。
47
+ - `Layout.List.Columns[].MinWidth` 优先于普通 `diy_field.TableWidth` 和末列自适应;缺少持久宽度时按标题/地址、日期/编码、数值、状态等字段语义稳定推断。
46
48
  - `diy_table.DiyConfig`、`diy_field.DiyConfig`、`sys_menu.DiyConfig` 均为废弃兼容字段;禁止向其中写入任何新功能配置。
47
49
  - Text、Select、ImgUpload、Map 等数据控件继续放在 `diy-field-component`。
48
50
  - EntityHero、MetricStrip、ActionGrid、ResponsiveSection 是独立展示区块,放在 `form-view-blocks`,禁止用虚拟字段或 DevComponent 模拟。
@@ -372,7 +374,7 @@ DiyCommon.FormEngine.AddFormData("table_name", { Field: "value" }, function (res
372
374
  - 官方文档:`microi.doc/docs/doc/v8-engine/v8-client.md`。
373
375
  - Skills:`v8-frontend-events`、`v8-table-event`、`v8-menu-buttons`、`v8-template-engine`、`v8-formengine-http` 和本 Skill。
374
376
 
375
- `sys_menu.ViewSchema` 使用 `DiyModulePresentationDesigner` 作为配置入口,聚合 `EnableViewSchema / ViewSchemaVersion / ViewConfigVersion / ViewSchema`。设计器可视化编辑默认 List-PC 与 Card-Mobile 视图,以独立的自定义表单视图 JSON 编辑 Detail/Edit,并由高级 JSON 保留完整协议、角色视图和未知字段;运行时的 EntityHero/MetricStrip 等仍是独立展示区块,不由 DevComponent 参与渲染。
377
+ `sys_menu.ViewSchema` 使用 `DiyModulePresentationDesigner` 作为配置入口,聚合 `EnableViewSchema / ViewSchemaVersion / ViewConfigVersion / ViewSchema`。设计器固定提供“模块标题与统计 / PC 复合列 / 移动端卡片 / 自定义表单 / 高级 JSON”五个 Tab;可视化编辑默认 List-PC 与 Card-Mobile 视图,以独立的“自定义表单”JSON 编辑 Detail/Edit,并由高级 JSON 保留完整协议、角色视图和未知字段;运行时的 EntityHero/MetricStrip 等仍是独立展示区块,不由 DevComponent 参与渲染。
376
378
 
377
379
  固定高度的 `diy-form-full` 弹窗只能有一个纵向滚动容器:由弹窗直属 `.el-dialog__body` 承载滚动,Element Plus 的 overlay 和表单顶层 `.el-tabs__content` 必须禁用独立滚动。禁止同时保留 overlay、dialog body、tabs content 三层纵向滚动条;切换表单 Tab 时弹窗外框高度不得变化。
378
380
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: microi-docs-coverage
3
- description: Microi 中文官网文档与 Skills 能力覆盖审计。用于全面分析 microi.doc/docs/doc、核对官方能力和 V8 函数是否已进入 microi.skills、补充或重构 Skills、维护文档到 Skill 的责任映射,以及防止后续新增中文文档造成 AI 知识漏项。
3
+ description: Microi 中文官网文档与 Skills 能力覆盖审计。用于全面分析 microi.doc/docs/doc 与 docs/case、核对官方能力和 V8 函数是否已进入 microi.skills、补充或重构 Skills、维护文档到 Skill 的责任映射,以及防止后续新增中文文档造成 AI 知识漏项。
4
4
  ---
5
5
 
6
6
  # Microi 中文官网文档与 Skills 覆盖审计
@@ -10,8 +10,12 @@ V8 函数”或新增、调整官方中文文档时,使用本 Skill。
10
10
 
11
11
  ## 范围与事实源
12
12
 
13
- - 扫描 `microi.doc/docs/doc/**/*.md`,但排除
14
- `microi.doc/docs/doc/about/update-log.md`。
13
+ - 能力映射扫描 `microi.doc/docs/doc/**/*.md`,但排除受发版规则保护的
14
+ `microi.doc/docs/doc/about/update-log.md`;视觉与可读性审计还必须包含
15
+ `microi.doc/docs/case/**/*.md`。
16
+ - `index.md`、`apps.md`、`app-detail.md`、`profile.md`、`login.md` 与
17
+ `contact/index.md` 是由专用 Vue 组件承载的站点交互页,必须单独登记并按各自
18
+ 页面契约验收,不能静默漏扫,也不能机械套用正文档排版。
15
19
  - 不扫描、不手工维护 `microi.doc/docs/en/`;英文站由中文站统一翻译。
16
20
  - `references/capability-map.md` 维护每篇中文文档的责任 Skill。
17
21
  - 文档描述能力边界,当前源码、接口定义、组件清单和 MCP Schema 决定真实签名。
@@ -41,7 +45,8 @@ V8 函数”或新增、调整官方中文文档时,使用本 Skill。
41
45
 
42
46
  ## 中文文档视觉与可读性契约(强制)
43
47
 
44
- 文档正确但密密麻麻仍属于未完成。修改 `microi.doc/docs/doc/**/*.md` 时同时遵守:
48
+ 文档正确但密密麻麻仍属于未完成。修改 `microi.doc/docs/doc/**/*.md`
49
+ `microi.doc/docs/case/**/*.md` 时同时遵守:
45
50
 
46
51
  - 正文使用清晰的 H1/H2/H3 层级和 80–90 字符左右的阅读宽度;连续长段落拆为短段、列表、对比表、步骤、流程或有语义的卡片。不要为了“丰富”把每句话都做成卡片。
47
52
  - 首屏先回答“这是什么、有什么价值、怎么选择”,再展开原理和完整参数;长篇高级细节可使用可访问的 `details/summary` 渐进披露。
@@ -55,12 +60,13 @@ V8 函数”或新增、调整官方中文文档时,使用本 Skill。
55
60
 
56
61
  自动可读性检查只能阻止缺少 H1、超长连续文字块或整站主题契约丢失,不能证明页面真正好看。最终仍要查看渲染结果,不能用构建成功替代视觉验收。
57
62
 
58
- 全站任务必须进一步执行以下闭环,禁止把“扫描到 58 个文件”等同于“58 页已完善”:
63
+ 全站任务必须进一步执行以下闭环,禁止把“扫描到若干 `/doc` 文件”等同于
64
+ “全部中文阅读页已完善”:
59
65
 
60
- 1. 在 `docs/.vitepress/theme/doc-visual-profiles.js` 为每个中文页面明确选择 `overview`、`guide`、`reference`、`policy` 或 `showcase`。新增、删除、移动文档时,页面清单与视觉档案必须同步闭环;英文路由不得进入该表。
66
+ 1. 在 `docs/.vitepress/theme/doc-visual-profiles.js` 为每个 `/doc` 与 `/case` 中文阅读页明确选择 `overview`、`guide`、`reference`、`policy` 或 `showcase`。新增、删除、移动文档时,页面清单与视觉档案必须同步闭环;专用站点交互页需显式登记为独立范围,英文路由不得进入该表。
61
67
  2. 运行 `npm run audit:visual` 查看逐页报告。强制检查应覆盖唯一 H1、首屏引导、章节密度、连续正文、页面类型对应的表格/列表/代码/图片/提示/自定义布局、图片 `alt` 和主题契约;交付前应达到 0 条阻断和 0 条密度建议。
62
68
  3. 中文样式若用 `html:lang(zh) { ... }` 包裹,根暗色选择器必须写成 `&.dark`,使 Sass 编译为 `html:lang(zh).dark`;写 `.dark` 会错误编译为后代选择器并导致暗色覆盖失效。所有自定义浅/暗背景都必须与前景、次要文字、边框成对切换,并用测试验证正文至少达到 WCAG AA 4.5:1。
63
- 4. 在浏览器遍历全部中文路由,检查页面类型类、唯一 H1、页面级横向溢出和明显低对比文字;再从五种视觉类型各选代表页,覆盖桌面/移动与亮色/暗色截图。只有全部路由冒烟通过且代表矩阵视觉通过,才可描述为“全站视觉验收完成”。
69
+ 4. 在浏览器遍历全部中文阅读路由(包括 `/doc` 与 `/case`),检查页面类型类、唯一 H1、页面级横向溢出和明显低对比文字;再从五种视觉类型各选代表页,覆盖桌面/移动与亮色/暗色截图。专用站点交互页按自身组件测试与代表截图验收。只有已登记范围全部通过,才可描述为“全站视觉验收完成”。
64
70
  5. 静态脚本、Sass 编译、单元测试、VitePress 构建和浏览器截图是不同证据层。任何一层因资源保护或环境问题跳过,最终必须明确写出,不能用其它层替代。
65
71
 
66
72
  ## 自动审计能证明什么
@@ -164,10 +164,13 @@ MCP 建模只使用:
164
164
  优先使用现有 44 类标准控件。只有标准控件无法表达交互、且该交互会长期复用时,
165
165
  才使用 `DevComponent`:
166
166
 
167
- - Vue 组件路径必须稳定并纳入 `Microi.Client` 源码/构建。
167
+ - 多租户共用且与主框架强耦合的 Vue 组件,路径必须稳定并纳入 `Microi.Client` 源码/构建。
168
168
  - 支持 Add/Edit/View、只读、必填、清空、校验、移动端和暗色主题。
169
169
  - 不在组件内绕过 FormEngine 权限直接访问任意表。
170
- - 复杂但租户独有的页面优先使用 MicroService + `V8.OpenAppDialog`,避免把客户逻辑打进主前端。
170
+ - 复杂但租户独有、需要固定嵌入表单的区域,优先使用 `DevComponent` + MicroService 路由;临时打开的复杂页面使用 `V8.OpenAppDialog`,都避免把客户逻辑打进主前端。
171
+ - MicroService 表单嵌入使用 `microi.routes.json` 页面级 `LegacyComponentPaths` 作为稳定别名,字段 `Config.DevComponentPath` 与其匹配。主前端存在同路径 Vue 文件时本地优先;不存在时平台自动加载对应 `sys_microiservice_page.RoutePath`。新别名不得与 `/src/views` 真实文件冲突。
172
+ - 组件宿主下发 `componentMode=true`、可序列化 `componentData` 与 `permissionContext`;子应用用 `dev-component:resize` 同步高度,用 `dev-component:event` 回传 `update:modelValue`、`CallbackFormValueChange`、`FormSet` 或 `ParentFormSet`。不传 Vue 实例、函数、循环引用或 `ParentV8`,不直接操作父页面 DOM。
173
+ - 表单嵌入验收必须覆盖 Add/Edit/View/只读、初始值与回写、自动高度、窄屏、暗色主题,以及当前菜单 `ModuleEngineKey` 下的有权/无权账号。
171
174
  - `DevComponent` 配置了非空字段标题时必须正常渲染 Label;只有标题本身为空时才允许隐藏,
172
175
  不能按组件类型全局吞掉业务标题。`el-form--label-top` 下的字段级 `Button` 仍保留与其它
173
176
  控件等高的不可见 Label 占位,使按钮对齐控件区而不是对齐标题行。
@@ -19,6 +19,7 @@ description: Microi 前端微服务 MicroService 开发与交付指南。用于
19
19
  | 标准单表新增/编辑/查看 | FormEngine / `V8.OpenAnyForm` |
20
20
  | 主前端已注册组件 | `V8.OpenDialog` |
21
21
  | 3 个以上字段、联动、上传、表格、Tab、步骤条、代码编辑 | MicroService + `V8.OpenAppDialog` |
22
+ | 复杂区域需要固定嵌入表单、独立发布且不进入主前端 | `DevComponent` + MicroService 路由 |
22
23
  | 独立菜单、多页面、AI 在线编辑、本地 Vite、独立发布 | MicroService |
23
24
 
24
25
  ## 默认发现顺序
@@ -101,22 +102,24 @@ AppKey 稳定且只含安全字符。`microi.routes.json` 是页面事实源,
101
102
  - 服务器暂未部署修复且产物很小时,可把 `StorageMode=db` 与内联 `ContentBase64` 作为短期恢复手段;必须明确记录为临时方案。修复部署后重新流式发布到公有 HDFS,并恢复 `StorageMode=file`,禁止长期把大 JS/CSS 放在数据库 JSON。
102
103
  - 子租户发布时,源码、版本资产、回读验签、页面与缓存全部绑定当前 Token 的 `OsClient`;禁止回退到主租户或宿主服务器默认租户。切换前必须由当前 API 节点通过该子租户 HDFS 配置读回每个版本文件并校验大小/SHA-256。
103
104
 
104
- ## 菜单与弹窗
105
+ ## 菜单、弹窗与表单嵌入
105
106
 
106
107
  菜单 `OpenType=MicroService` 时一次绑定 `MicroServiceId`、
107
108
  `MicroServicePageId`、`MicroServiceRoutePath`、`MicroServiceKey`。
108
109
  完整系统 Manifest 不得固化不同租户会变化的两个 Id;模块声明 `openType=MicroService`、`microServiceKey` 和 `microServiceRoutePath` 即可,由 `microi_generate_system` 在任何写入前回读 `sys_microiservice/sys_microiservice_page`,解析并校验当前租户的 `MicroServiceId/MicroServicePageId`。微服务或页面不存在时必须在首个写操作前失败,不能留下半套系统。
109
110
  复杂弹窗用 `V8.OpenAppDialog`,业务参数放 `Data`,回调放顶层。
110
111
 
111
- ### 独立、菜单与弹层三种入口
112
+ ### 独立、菜单、弹层与表单嵌入四种入口
112
113
 
113
- - 同一发布物必须支持:直接打开独立运行、`sys_menu` 使用 `/micro-app/{AppKey}/{RoutePath}` 打开指定路由、`V8.OpenAppDialog` 按 AppKey/RoutePath 以 Dialog 或 Drawer 打开。
114
- - 菜单路由必须同时回读并传入 `SysMenuId`、`ModuleEngineKey`、`DiyTableId`;弹层默认继承调用菜单,也允许跨模块时显式传真实授权模块。宿主统一下发 `{ sysMenuId, moduleEngineKey, diyTableId }` `permissionContext`。
114
+ - 同一发布物必须支持:直接打开独立运行、`sys_menu` 使用 `/micro-app/{AppKey}/{RoutePath}` 打开指定路由、`V8.OpenAppDialog` 按 AppKey/RoutePath 以 Dialog 或 Drawer 打开、表单 `DevComponent` 按组件路径别名嵌入指定 RoutePath。
115
+ - 表单嵌入时,在 `microi.routes.json` 的目标页面声明稳定、唯一的 `LegacyComponentPaths`;字段 `Config.DevComponentPath` 与其归一化后匹配。主前端存在同路径 Vue 文件时本地组件优先;不存在时 `DynamicComponentCache` 才交给 MicroService 组件宿主。新项目使用不与 `/src/views` 真实文件冲突的虚拟路径,历史字段无需逐租户改配置。
116
+ - 组件宿主必须下发 `componentMode=true`、可序列化的 `componentData`、当前路由和权限上下文;子应用用 `dev-component:resize` 同步 80~1600px 高度,用 `dev-component:event` 回传 `update:modelValue`、`CallbackFormValueChange`、`FormSet` 或 `ParentFormSet`。禁止依赖父页面 DOM、Vue 实例、函数或 `ParentV8` 跨 iframe 传递。
117
+ - 菜单路由必须同时回读并传入 `SysMenuId`、`ModuleEngineKey`、`DiyTableId`;弹层与表单组件默认继承调用菜单,也允许跨模块时显式传真实授权模块。宿主统一下发 `{ sysMenuId, moduleEngineKey, diyTableId }` 的 `permissionContext`。
115
118
  - `permissionContext` 只是选择正确 API 调用上下文,不是授权凭证。后端仍依据 DiyToken、OsClient、角色、菜单、表、按钮和数据范围校验;禁止删除权限参数、改成匿名接口或写死管理员 Token 来消除“没权限”。
116
119
 
117
120
  ### 独立运行的认证门
118
121
 
119
- - 嵌入菜单或 `V8.OpenAppDialog` 时直接复用宿主 Token,不显示第二套登录页;同一个 V8 SDK 实例继续处理 Token 轮换。
122
+ - 嵌入菜单、表单定制组件或 `V8.OpenAppDialog` 时直接复用宿主 Token,不显示第二套登录页;同一个 V8 SDK 实例继续处理 Token 轮换。
120
123
  - 独立访问时先配置当前 `apiBase/osClient` 并复用本地有效 Token;没有有效 Token 才显示吾码帐号密码登录。
121
124
  - 页面启动时调用 `V8.GetSysConfig(true)`,用统一 `isEnabledFlag` 解析 `EnableCaptcha`。开启时请求 `GET /api/Captcha/GetCaptcha?OsClient=...`、读取响应头 `captchaid`,登录提交 `_CaptchaId/_CaptchaValue`;关闭时不渲染、不提交验证码字段。
122
125
  - 登录使用统一 `V8.Login` 与 DiyToken,不创建第二套用户体系。Token 失效后回到认证门;禁止在 URL、日志、源码、`.env` 或业务数据中保存 Token。
@@ -177,6 +180,7 @@ AI 生成菜单微服务时,应优先封装一个 `callMicroiHost(action, data
177
180
  - 组合发布成功前,私有源码回读必须与本地源码在路径集合、文件数、字节数、逐文件 SHA-256 和规范化清单哈希上完全一致;任何缺失、多余或读取错误都要阻止运行版本切换。
178
181
  - 直接刷新友好路由与连续切换多个微应用不 404、白屏或实例名冲突。
179
182
  - Dialog/Drawer 成功、取消、错误和关闭协议正确。
183
+ - 表单 `DevComponentPath` 能匹配页面 `LegacyComponentPaths`,指定路由正常加载;Add/Edit/View/只读、字段值回写和自动高度均通过。
180
184
  - 独立地址覆盖“已有 Token 自动进入”和“无 Token 显示帐号密码”;`EnableCaptcha` 开/关各验一次,验证码响应头和登录参数正确。
181
185
  - 宿主 API 请求携带当前 Token/OsClient/`permissionContext`,普通用户用真实授权模块成功、未授权模块仍明确拒绝。
182
186
  - 至少验证桌面和窄屏;上传、表格、滚动、弹窗底部操作不被截断。
@@ -8,7 +8,7 @@
8
8
  ├─ 私有源码 -> mci_ai_app_file -> 私有 HDFS
9
9
  └─ 构建发布 -> sys_microiservice + sys_microiservice_page
10
10
  └-> 公有构建产物
11
- 后台菜单 / V8.OpenAppDialog -> 微应用宿主
11
+ 后台菜单 / 表单 DevComponent / V8.OpenAppDialog -> 微应用宿主
12
12
  ```
13
13
 
14
14
  `ApplicationType=MicroService` 表示运行类型;官方/社区来源是独立字段,不能混用。
@@ -51,7 +51,8 @@
51
51
  ```
52
52
 
53
53
  路径必须稳定并以 `/` 开头。迁移历史内置页面时可维护
54
- `LegacyMenuUrls/LegacyComponentPaths`,让新旧书签在过渡期共存。
54
+ `LegacyMenuUrls/LegacyComponentPaths`,让新旧书签在过渡期共存;
55
+ `LegacyComponentPaths` 也作为表单 `DevComponentPath` 到微服务页面 RoutePath 的稳定别名。
55
56
 
56
57
  ## MCP 读取/写入
57
58
 
@@ -124,6 +125,30 @@ V8.OpenAppDialog({
124
125
  回调函数必须在顶层,不放 `Data`。`OpenAppDialog` 只加载已发布 MicroService;
125
126
  `OpenDialog` 加载主前端注册组件。
126
127
 
128
+ ## 表单引擎定制组件
129
+
130
+ 需要把复杂区域固定嵌入表单时,字段使用 `Component=DevComponent`,并让
131
+ `Config.DevComponentPath` 匹配目标页面 `RouteMetaJson.LegacyComponentPaths`。主前端能找到
132
+ 同路径 Vue 文件时仍加载本地组件;找不到时才查询启用的 `sys_microiservice_page` 并由
133
+ `micro-app/dev-component.vue` 加载该页面 `RoutePath`。新项目应使用不会与 `/src/views` 真实文件
134
+ 冲突的虚拟路径。
135
+
136
+ 组件宿主下发 `componentMode=true`、`componentData`、`microRoute`、当前 Token/OsClient 和
137
+ `permissionContext`。`componentData` 仅包含可序列化表单上下文,不传函数、Vue 实例、循环引用或
138
+ `ParentV8`。子应用使用:
139
+
140
+ ```javascript
141
+ window.microApp.dispatch({ type: 'dev-component:resize', height: 520 });
142
+ window.microApp.dispatch({
143
+ type: 'dev-component:event',
144
+ event: 'update:modelValue',
145
+ args: [{ status: 'passed' }]
146
+ });
147
+ ```
148
+
149
+ 高度限制为 80~1600px;表单联动还可上报 `CallbackFormValueChange`、`FormSet`、
150
+ `ParentFormSet`。验收覆盖 Add/Edit/View/只读、字段值回写、窄屏/暗色以及有权/无权账号。
151
+
127
152
  ## 子应用宿主数据
128
153
 
129
154
  ```javascript
@@ -131,11 +156,12 @@ const host = window.microApp?.getData?.() || {};
131
156
  ```
132
157
 
133
158
  常见字段:`apiBase`、`osClient`、`token`、`menuId`、`moduleEngineKey`、`diyTableId`、
134
- `permissionContext`、`appKey`、`version`、`microRoute`、`dialog`、`dialogData`。只在内存中使用 Token。
159
+ `permissionContext`、`appKey`、`version`、`microRoute`、`dialog`、`dialogData`、
160
+ `componentMode`、`componentData`。只在内存中使用 Token。
135
161
 
136
162
  独立访问时没有宿主 Token:先配置清单中的 `apiBase/osClient`,读取 `V8.GetSysConfig(true)`,
137
163
  没有有效本地 Token 才显示吾码帐号密码登录;按 `EnableCaptcha` 动态请求验证码并向 `V8.Login`
138
- 提交 `_CaptchaId/_CaptchaValue`。嵌入菜单或弹层时复用宿主身份,不显示第二套登录。
164
+ 提交 `_CaptchaId/_CaptchaValue`。嵌入菜单、表单定制组件或弹层时复用宿主身份,不显示第二套登录。
139
165
 
140
166
  `permissionContext={sysMenuId,moduleEngineKey,diyTableId}` 只帮助子应用选择正确的 FormEngine
141
167
  模块上下文,不能授予权限。无权限时依次核对 Token/OsClient、模块 Key、宿主上下文和角色授权;
@@ -70,9 +70,17 @@ description: Microi 吾码从自然语言交付完整系统的总控规范。用
70
70
  - EntityHero、MetricStrip、ActionGrid、ResponsiveSection 是独立视图区块,不是 `diy_field` 数据字段,也不能用 DevComponent 或虚拟字段模拟。
71
71
  - 小程序仅执行白名单 ActionSchema 和声明式显隐/参数映射,不执行任意前端 V8。复杂业务动作调用接口引擎,重要校验进入后端表单事件。
72
72
 
73
- 绑定 `diyTableId` 创建 CRUD 菜单时,必须配置或允许 MCP/后端自动推断 `TableDiyFieldIds`、`SelectFields`、`SearchFieldIds`、`SortFieldIds`、`NotShowFields`、`StatisticsFields`、`MobileListFields`、`CardTitleTagFields`、`CardBottomTagFields`、`DefaultOrderBy`。列表列、搜索列、移动端卡片列不能为空白;`Id/XxxId/XxxIds`、系统字段、布局控件和富文本/上传/地图/子表等重字段默认不展示在列表。
74
-
75
- 搜索字段默认覆盖名称/标题/编号、状态/类型/分类、负责人/部门/客户、日期时间;金额、价格、数量、积分、余额、人数等数值字段默认进入 `StatisticsFields`。选择类、开关、部门、树、级联、地址等字段应尽量使用等值筛选。
73
+ 绑定 `diyTableId` 创建 CRUD 菜单时,必须配置或允许 MCP/后端自动推断 `TableDiyFieldIds`、`SelectFields`、`SearchFieldIds`、`SortFieldIds`、`NotShowFields`、`StatisticsFields`、`MobileListFields`、`CardTitleTagFields`、`CardBottomTagFields`、`DefaultOrderBy`。列表列、搜索列、移动端卡片列不能为空白;`Id/XxxId/XxxIds`、系统字段、布局控件和富文本/上传/地图/子表等重字段默认不展示在列表。
74
+
75
+ 搜索字段默认覆盖名称/标题/编号、状态/类型/分类、负责人/部门/客户、日期时间;金额、价格、数量、积分、余额、人数等数值字段默认进入 `StatisticsFields`。选择类、开关、部门、树、级联、地址等字段应尽量使用等值筛选。
76
+
77
+ 每个可见业务模块还必须通过视觉交付门禁:逐字段设置合理列表宽度;每个模块都有紧凑
78
+ 标题、业务副标题和 2~4 个真实动态指标;只给少量重要菜单设置行动型侧栏角标;为状态
79
+ PageTabs 和有决策价值的更多按钮设置批量统计角标;PC 至少一个合理宽度且去重普通列的
80
+ 复合主列;移动端按图片/标题/副标题/顶部/状态/右侧金额/正文/Meta/底部规划动态区域。
81
+ 自动生成只是最低兜底,AI 必须按业务表、状态机和数据口径精调。禁止用随机数、固定演示数
82
+ 或无来源值装饰指标;当前页求和必须明确标注“本页”。`EnableViewSchema` 只控制
83
+ Detail/Edit 自定义表单,不能用它关闭 List/Card 展示设计。
76
84
 
77
85
  字段较多的表单必须做视觉分组,但**优先用 `CollapseGroup` 折叠分组**,**只有大业务域(≥8 字段)才用 Tabs**。详细决策表、Config JSON 示例、字段数阈值和回读验收必须先读 `microi-form-layout/SKILL.md`,再按以下快速决策表执行:
78
86