skill-home 0.3.52 → 0.3.53

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.
Files changed (533) hide show
  1. package/dist/cli/cmd_read.d.ts +3 -0
  2. package/dist/cli/cmd_read.d.ts.map +1 -0
  3. package/dist/cli/cmd_read.js +317 -0
  4. package/dist/cli/cmd_read.js.map +1 -0
  5. package/dist/cli/config.d.ts +20 -0
  6. package/dist/cli/config.d.ts.map +1 -0
  7. package/dist/cli/config.js +100 -0
  8. package/dist/cli/config.js.map +1 -0
  9. package/dist/cli/health.d.ts +7 -0
  10. package/dist/cli/health.d.ts.map +1 -0
  11. package/dist/cli/health.js +32 -0
  12. package/dist/cli/health.js.map +1 -0
  13. package/dist/cli/keys.d.ts +4 -0
  14. package/dist/cli/keys.d.ts.map +1 -0
  15. package/dist/cli/keys.js +55 -0
  16. package/dist/cli/keys.js.map +1 -0
  17. package/dist/cli/language.d.ts +4 -0
  18. package/dist/cli/language.d.ts.map +1 -0
  19. package/dist/cli/language.js +19 -0
  20. package/dist/cli/language.js.map +1 -0
  21. package/dist/cli/registry.d.ts +4 -0
  22. package/dist/cli/registry.d.ts.map +1 -0
  23. package/dist/cli/registry.js +32 -0
  24. package/dist/cli/registry.js.map +1 -0
  25. package/dist/config.d.ts +66 -0
  26. package/dist/config.d.ts.map +1 -0
  27. package/dist/config.js +132 -0
  28. package/dist/config.js.map +1 -0
  29. package/dist/data/commands.d.ts +11 -0
  30. package/dist/data/commands.d.ts.map +1 -0
  31. package/dist/data/commands.js +7 -0
  32. package/dist/data/commands.js.map +1 -0
  33. package/dist/data/index.d.ts +3 -0
  34. package/dist/data/index.d.ts.map +1 -0
  35. package/dist/data/index.js +4 -0
  36. package/dist/data/index.js.map +1 -0
  37. package/dist/data/query.d.ts +23 -0
  38. package/dist/data/query.d.ts.map +1 -0
  39. package/dist/data/query.js +19 -0
  40. package/dist/data/query.js.map +1 -0
  41. package/dist/data/routes.d.ts +3 -0
  42. package/dist/data/routes.d.ts.map +1 -0
  43. package/dist/data/routes.js +2 -0
  44. package/dist/data/routes.js.map +1 -0
  45. package/dist/data/schema.d.ts +15 -0
  46. package/dist/data/schema.d.ts.map +1 -0
  47. package/dist/data/schema.js +18 -0
  48. package/dist/data/schema.js.map +1 -0
  49. package/dist/data/tables.d.ts +48 -0
  50. package/dist/data/tables.d.ts.map +1 -0
  51. package/dist/data/tables.js +82 -0
  52. package/dist/data/tables.js.map +1 -0
  53. package/dist/express/commands.d.ts +3 -0
  54. package/dist/express/commands.d.ts.map +1 -0
  55. package/dist/express/commands.js +6 -0
  56. package/dist/express/commands.js.map +1 -0
  57. package/dist/express/index.d.ts +3 -0
  58. package/dist/express/index.d.ts.map +1 -0
  59. package/dist/express/index.js +4 -0
  60. package/dist/express/index.js.map +1 -0
  61. package/dist/express/pages/express.d.ts +24 -0
  62. package/dist/express/pages/express.d.ts.map +1 -0
  63. package/dist/express/pages/express.js +160 -0
  64. package/dist/express/pages/express.js.map +1 -0
  65. package/dist/express/pages/list.d.ts +24 -0
  66. package/dist/express/pages/list.d.ts.map +1 -0
  67. package/dist/express/pages/list.js +167 -0
  68. package/dist/express/pages/list.js.map +1 -0
  69. package/dist/express/pages/missing.d.ts +24 -0
  70. package/dist/express/pages/missing.d.ts.map +1 -0
  71. package/dist/express/pages/missing.js +146 -0
  72. package/dist/express/pages/missing.js.map +1 -0
  73. package/dist/express/pages/stock.d.ts +24 -0
  74. package/dist/express/pages/stock.d.ts.map +1 -0
  75. package/dist/express/pages/stock.js +176 -0
  76. package/dist/express/pages/stock.js.map +1 -0
  77. package/dist/express/routes.d.ts +3 -0
  78. package/dist/express/routes.d.ts.map +1 -0
  79. package/dist/express/routes.js +8 -0
  80. package/dist/express/routes.js.map +1 -0
  81. package/dist/express/shopping.d.ts +4 -0
  82. package/dist/express/shopping.d.ts.map +1 -0
  83. package/dist/express/shopping.js +145 -0
  84. package/dist/express/shopping.js.map +1 -0
  85. package/dist/family/care.d.ts +4 -0
  86. package/dist/family/care.d.ts.map +1 -0
  87. package/dist/family/care.js +103 -0
  88. package/dist/family/care.js.map +1 -0
  89. package/dist/family/commands.d.ts +3 -0
  90. package/dist/family/commands.d.ts.map +1 -0
  91. package/dist/family/commands.js +6 -0
  92. package/dist/family/commands.js.map +1 -0
  93. package/dist/family/index.d.ts +3 -0
  94. package/dist/family/index.d.ts.map +1 -0
  95. package/dist/family/index.js +4 -0
  96. package/dist/family/index.js.map +1 -0
  97. package/dist/family/pages/family_borrow.d.ts +24 -0
  98. package/dist/family/pages/family_borrow.d.ts.map +1 -0
  99. package/dist/family/pages/family_borrow.js +267 -0
  100. package/dist/family/pages/family_borrow.js.map +1 -0
  101. package/dist/family/pages/family_members.d.ts +24 -0
  102. package/dist/family/pages/family_members.d.ts.map +1 -0
  103. package/dist/family/pages/family_members.js +171 -0
  104. package/dist/family/pages/family_members.js.map +1 -0
  105. package/dist/family/routes.d.ts +3 -0
  106. package/dist/family/routes.d.ts.map +1 -0
  107. package/dist/family/routes.js +20 -0
  108. package/dist/family/routes.js.map +1 -0
  109. package/dist/fetch/archive.d.ts +13 -0
  110. package/dist/fetch/archive.d.ts.map +1 -0
  111. package/dist/fetch/archive.js +115 -0
  112. package/dist/fetch/archive.js.map +1 -0
  113. package/dist/fetch/backup.d.ts +75 -0
  114. package/dist/fetch/backup.d.ts.map +1 -0
  115. package/dist/fetch/backup.js +285 -0
  116. package/dist/fetch/backup.js.map +1 -0
  117. package/dist/fetch/db.d.ts +107 -0
  118. package/dist/fetch/db.d.ts.map +1 -0
  119. package/dist/fetch/db.js +443 -0
  120. package/dist/fetch/db.js.map +1 -0
  121. package/dist/fetch/domains.d.ts +151 -0
  122. package/dist/fetch/domains.d.ts.map +1 -0
  123. package/dist/fetch/domains.js +354 -0
  124. package/dist/fetch/domains.js.map +1 -0
  125. package/dist/fetch/errors.d.ts +11 -0
  126. package/dist/fetch/errors.d.ts.map +1 -0
  127. package/dist/fetch/errors.js +18 -0
  128. package/dist/fetch/errors.js.map +1 -0
  129. package/dist/fetch/index.d.ts +11 -0
  130. package/dist/fetch/index.d.ts.map +1 -0
  131. package/dist/fetch/index.js +14 -0
  132. package/dist/fetch/index.js.map +1 -0
  133. package/dist/fetch/masterKey.d.ts +11 -0
  134. package/dist/fetch/masterKey.d.ts.map +1 -0
  135. package/dist/fetch/masterKey.js +46 -0
  136. package/dist/fetch/masterKey.js.map +1 -0
  137. package/dist/fetch/paths.d.ts +55 -0
  138. package/dist/fetch/paths.d.ts.map +1 -0
  139. package/dist/fetch/paths.js +100 -0
  140. package/dist/fetch/paths.js.map +1 -0
  141. package/dist/health.d.ts +50 -0
  142. package/dist/health.d.ts.map +1 -0
  143. package/dist/health.js +524 -0
  144. package/dist/health.js.map +1 -0
  145. package/dist/help/helpAssets.d.ts +52 -0
  146. package/dist/help/helpAssets.d.ts.map +1 -0
  147. package/dist/help/helpAssets.js +2323 -0
  148. package/dist/help/helpAssets.js.map +1 -0
  149. package/dist/help/helpFile.d.ts +62 -0
  150. package/dist/help/helpFile.d.ts.map +1 -0
  151. package/dist/help/helpFile.js +219 -0
  152. package/dist/help/helpFile.js.map +1 -0
  153. package/dist/help/index.d.ts +6 -0
  154. package/dist/help/index.d.ts.map +1 -0
  155. package/dist/help/index.js +8 -0
  156. package/dist/help/index.js.map +1 -0
  157. package/dist/help/lookup.d.ts +11 -0
  158. package/dist/help/lookup.d.ts.map +1 -0
  159. package/dist/help/lookup.js +52 -0
  160. package/dist/help/lookup.js.map +1 -0
  161. package/dist/help/manifest.d.ts +17 -0
  162. package/dist/help/manifest.d.ts.map +1 -0
  163. package/dist/help/manifest.js +44 -0
  164. package/dist/help/manifest.js.map +1 -0
  165. package/dist/help/output.d.ts +12 -0
  166. package/dist/help/output.d.ts.map +1 -0
  167. package/dist/help/output.js +65 -0
  168. package/dist/help/output.js.map +1 -0
  169. package/dist/index.d.ts +5 -0
  170. package/dist/index.d.ts.map +1 -0
  171. package/dist/index.js +6 -0
  172. package/dist/index.js.map +1 -0
  173. package/dist/items/add.d.ts +3 -0
  174. package/dist/items/add.d.ts.map +1 -0
  175. package/dist/items/add.js +34 -0
  176. package/dist/items/add.js.map +1 -0
  177. package/dist/items/commands.d.ts +3 -0
  178. package/dist/items/commands.d.ts.map +1 -0
  179. package/dist/items/commands.js +22 -0
  180. package/dist/items/commands.js.map +1 -0
  181. package/dist/items/detail.d.ts +3 -0
  182. package/dist/items/detail.d.ts.map +1 -0
  183. package/dist/items/detail.js +31 -0
  184. package/dist/items/detail.js.map +1 -0
  185. package/dist/items/index.d.ts +3 -0
  186. package/dist/items/index.d.ts.map +1 -0
  187. package/dist/items/index.js +4 -0
  188. package/dist/items/index.js.map +1 -0
  189. package/dist/items/inventory.d.ts +4 -0
  190. package/dist/items/inventory.d.ts.map +1 -0
  191. package/dist/items/inventory.js +63 -0
  192. package/dist/items/inventory.js.map +1 -0
  193. package/dist/items/pages/add_form.d.ts +24 -0
  194. package/dist/items/pages/add_form.d.ts.map +1 -0
  195. package/dist/items/pages/add_form.js +174 -0
  196. package/dist/items/pages/add_form.js.map +1 -0
  197. package/dist/items/pages/browse.d.ts +24 -0
  198. package/dist/items/pages/browse.d.ts.map +1 -0
  199. package/dist/items/pages/browse.js +143 -0
  200. package/dist/items/pages/browse.js.map +1 -0
  201. package/dist/items/pages/category_manage.d.ts +24 -0
  202. package/dist/items/pages/category_manage.d.ts.map +1 -0
  203. package/dist/items/pages/category_manage.js +153 -0
  204. package/dist/items/pages/category_manage.js.map +1 -0
  205. package/dist/items/pages/confirm.d.ts +24 -0
  206. package/dist/items/pages/confirm.d.ts.map +1 -0
  207. package/dist/items/pages/confirm.js +149 -0
  208. package/dist/items/pages/confirm.js.map +1 -0
  209. package/dist/items/pages/detail.d.ts +24 -0
  210. package/dist/items/pages/detail.d.ts.map +1 -0
  211. package/dist/items/pages/detail.js +160 -0
  212. package/dist/items/pages/detail.js.map +1 -0
  213. package/dist/items/pages/duplicates.d.ts +24 -0
  214. package/dist/items/pages/duplicates.d.ts.map +1 -0
  215. package/dist/items/pages/duplicates.js +138 -0
  216. package/dist/items/pages/duplicates.js.map +1 -0
  217. package/dist/items/pages/history.d.ts +24 -0
  218. package/dist/items/pages/history.d.ts.map +1 -0
  219. package/dist/items/pages/history.js +213 -0
  220. package/dist/items/pages/history.js.map +1 -0
  221. package/dist/items/pages/inventory_diff.d.ts +24 -0
  222. package/dist/items/pages/inventory_diff.d.ts.map +1 -0
  223. package/dist/items/pages/inventory_diff.js +126 -0
  224. package/dist/items/pages/inventory_diff.js.map +1 -0
  225. package/dist/items/pages/inventory_records.d.ts +24 -0
  226. package/dist/items/pages/inventory_records.d.ts.map +1 -0
  227. package/dist/items/pages/inventory_records.js +147 -0
  228. package/dist/items/pages/inventory_records.js.map +1 -0
  229. package/dist/items/pages/inventory_round.d.ts +24 -0
  230. package/dist/items/pages/inventory_round.d.ts.map +1 -0
  231. package/dist/items/pages/inventory_round.js +145 -0
  232. package/dist/items/pages/inventory_round.js.map +1 -0
  233. package/dist/items/pages/locate.d.ts +24 -0
  234. package/dist/items/pages/locate.d.ts.map +1 -0
  235. package/dist/items/pages/locate.js +129 -0
  236. package/dist/items/pages/locate.js.map +1 -0
  237. package/dist/items/pages/move_checklist.d.ts +24 -0
  238. package/dist/items/pages/move_checklist.d.ts.map +1 -0
  239. package/dist/items/pages/move_checklist.js +112 -0
  240. package/dist/items/pages/move_checklist.js.map +1 -0
  241. package/dist/items/pages/photo_wall.d.ts +24 -0
  242. package/dist/items/pages/photo_wall.d.ts.map +1 -0
  243. package/dist/items/pages/photo_wall.js +145 -0
  244. package/dist/items/pages/photo_wall.js.map +1 -0
  245. package/dist/items/pages/photos.d.ts +24 -0
  246. package/dist/items/pages/photos.d.ts.map +1 -0
  247. package/dist/items/pages/photos.js +182 -0
  248. package/dist/items/pages/photos.js.map +1 -0
  249. package/dist/items/pages/receipt.d.ts +24 -0
  250. package/dist/items/pages/receipt.d.ts.map +1 -0
  251. package/dist/items/pages/receipt.js +252 -0
  252. package/dist/items/pages/receipt.js.map +1 -0
  253. package/dist/items/pages/relations.d.ts +24 -0
  254. package/dist/items/pages/relations.d.ts.map +1 -0
  255. package/dist/items/pages/relations.js +144 -0
  256. package/dist/items/pages/relations.js.map +1 -0
  257. package/dist/items/pages/search_list.d.ts +24 -0
  258. package/dist/items/pages/search_list.d.ts.map +1 -0
  259. package/dist/items/pages/search_list.js +133 -0
  260. package/dist/items/pages/search_list.js.map +1 -0
  261. package/dist/items/pages/tag_manage.d.ts +24 -0
  262. package/dist/items/pages/tag_manage.d.ts.map +1 -0
  263. package/dist/items/pages/tag_manage.js +238 -0
  264. package/dist/items/pages/tag_manage.js.map +1 -0
  265. package/dist/items/pages/undo_select.d.ts +24 -0
  266. package/dist/items/pages/undo_select.d.ts.map +1 -0
  267. package/dist/items/pages/undo_select.js +143 -0
  268. package/dist/items/pages/undo_select.js.map +1 -0
  269. package/dist/items/routes.d.ts +3 -0
  270. package/dist/items/routes.d.ts.map +1 -0
  271. package/dist/items/routes.js +62 -0
  272. package/dist/items/routes.js.map +1 -0
  273. package/dist/items/search.d.ts +3 -0
  274. package/dist/items/search.d.ts.map +1 -0
  275. package/dist/items/search.js +47 -0
  276. package/dist/items/search.js.map +1 -0
  277. package/dist/items/tag.d.ts +25 -0
  278. package/dist/items/tag.d.ts.map +1 -0
  279. package/dist/items/tag.js +147 -0
  280. package/dist/items/tag.js.map +1 -0
  281. package/dist/items/update.d.ts +20 -0
  282. package/dist/items/update.d.ts.map +1 -0
  283. package/dist/items/update.js +211 -0
  284. package/dist/items/update.js.map +1 -0
  285. package/dist/outfit/commands.d.ts +3 -0
  286. package/dist/outfit/commands.d.ts.map +1 -0
  287. package/dist/outfit/commands.js +7 -0
  288. package/dist/outfit/commands.js.map +1 -0
  289. package/dist/outfit/index.d.ts +3 -0
  290. package/dist/outfit/index.d.ts.map +1 -0
  291. package/dist/outfit/index.js +4 -0
  292. package/dist/outfit/index.js.map +1 -0
  293. package/dist/outfit/outfit.d.ts +3 -0
  294. package/dist/outfit/outfit.d.ts.map +1 -0
  295. package/dist/outfit/outfit.js +187 -0
  296. package/dist/outfit/outfit.js.map +1 -0
  297. package/dist/outfit/pages/outfit_picker.d.ts +24 -0
  298. package/dist/outfit/pages/outfit_picker.d.ts.map +1 -0
  299. package/dist/outfit/pages/outfit_picker.js +185 -0
  300. package/dist/outfit/pages/outfit_picker.js.map +1 -0
  301. package/dist/outfit/pages/travel_trip.d.ts +24 -0
  302. package/dist/outfit/pages/travel_trip.d.ts.map +1 -0
  303. package/dist/outfit/pages/travel_trip.js +185 -0
  304. package/dist/outfit/pages/travel_trip.js.map +1 -0
  305. package/dist/outfit/pages/trip_outfit_plan.d.ts +24 -0
  306. package/dist/outfit/pages/trip_outfit_plan.d.ts.map +1 -0
  307. package/dist/outfit/pages/trip_outfit_plan.js +173 -0
  308. package/dist/outfit/pages/trip_outfit_plan.js.map +1 -0
  309. package/dist/outfit/pages/wardrobe_analyze.d.ts +24 -0
  310. package/dist/outfit/pages/wardrobe_analyze.d.ts.map +1 -0
  311. package/dist/outfit/pages/wardrobe_analyze.js +171 -0
  312. package/dist/outfit/pages/wardrobe_analyze.js.map +1 -0
  313. package/dist/outfit/pages/wardrobe_season.d.ts +24 -0
  314. package/dist/outfit/pages/wardrobe_season.d.ts.map +1 -0
  315. package/dist/outfit/pages/wardrobe_season.js +167 -0
  316. package/dist/outfit/pages/wardrobe_season.js.map +1 -0
  317. package/dist/outfit/routes.d.ts +3 -0
  318. package/dist/outfit/routes.d.ts.map +1 -0
  319. package/dist/outfit/routes.js +9 -0
  320. package/dist/outfit/routes.js.map +1 -0
  321. package/dist/outfit/trip.d.ts +3 -0
  322. package/dist/outfit/trip.d.ts.map +1 -0
  323. package/dist/outfit/trip.js +59 -0
  324. package/dist/outfit/trip.js.map +1 -0
  325. package/dist/output.d.ts +13 -0
  326. package/dist/output.d.ts.map +1 -0
  327. package/dist/output.js +57 -0
  328. package/dist/output.js.map +1 -0
  329. package/dist/policy/care.d.ts +4 -0
  330. package/dist/policy/care.d.ts.map +1 -0
  331. package/dist/policy/care.js +12 -0
  332. package/dist/policy/care.js.map +1 -0
  333. package/dist/policy/category.d.ts +8 -0
  334. package/dist/policy/category.d.ts.map +1 -0
  335. package/dist/policy/category.js +44 -0
  336. package/dist/policy/category.js.map +1 -0
  337. package/dist/policy/index.d.ts +9 -0
  338. package/dist/policy/index.d.ts.map +1 -0
  339. package/dist/policy/index.js +6 -0
  340. package/dist/policy/index.js.map +1 -0
  341. package/dist/policy/item.d.ts +18 -0
  342. package/dist/policy/item.d.ts.map +1 -0
  343. package/dist/policy/item.js +81 -0
  344. package/dist/policy/item.js.map +1 -0
  345. package/dist/policy/routes.generated.d.ts +3 -0
  346. package/dist/policy/routes.generated.d.ts.map +1 -0
  347. package/dist/policy/routes.generated.js +128 -0
  348. package/dist/policy/routes.generated.js.map +1 -0
  349. package/dist/policy/ticket.d.ts +6 -0
  350. package/dist/policy/ticket.d.ts.map +1 -0
  351. package/dist/policy/ticket.js +25 -0
  352. package/dist/policy/ticket.js.map +1 -0
  353. package/dist/policy/wakewords.d.ts +16 -0
  354. package/dist/policy/wakewords.d.ts.map +1 -0
  355. package/dist/policy/wakewords.js +38 -0
  356. package/dist/policy/wakewords.js.map +1 -0
  357. package/dist/receipt/commands.d.ts +3 -0
  358. package/dist/receipt/commands.d.ts.map +1 -0
  359. package/dist/receipt/commands.js +6 -0
  360. package/dist/receipt/commands.js.map +1 -0
  361. package/dist/receipt/index.d.ts +3 -0
  362. package/dist/receipt/index.d.ts.map +1 -0
  363. package/dist/receipt/index.js +4 -0
  364. package/dist/receipt/index.js.map +1 -0
  365. package/dist/receipt/pages/accounts.d.ts +24 -0
  366. package/dist/receipt/pages/accounts.d.ts.map +1 -0
  367. package/dist/receipt/pages/accounts.js +217 -0
  368. package/dist/receipt/pages/accounts.js.map +1 -0
  369. package/dist/receipt/pages/certificates.d.ts +24 -0
  370. package/dist/receipt/pages/certificates.d.ts.map +1 -0
  371. package/dist/receipt/pages/certificates.js +231 -0
  372. package/dist/receipt/pages/certificates.js.map +1 -0
  373. package/dist/receipt/pages/purchase_records.d.ts +24 -0
  374. package/dist/receipt/pages/purchase_records.d.ts.map +1 -0
  375. package/dist/receipt/pages/purchase_records.js +267 -0
  376. package/dist/receipt/pages/purchase_records.js.map +1 -0
  377. package/dist/receipt/pages/warranty.d.ts +24 -0
  378. package/dist/receipt/pages/warranty.d.ts.map +1 -0
  379. package/dist/receipt/pages/warranty.js +142 -0
  380. package/dist/receipt/pages/warranty.js.map +1 -0
  381. package/dist/receipt/routes.d.ts +3 -0
  382. package/dist/receipt/routes.d.ts.map +1 -0
  383. package/dist/receipt/routes.js +21 -0
  384. package/dist/receipt/routes.js.map +1 -0
  385. package/dist/receipt/ticket.d.ts +4 -0
  386. package/dist/receipt/ticket.d.ts.map +1 -0
  387. package/dist/receipt/ticket.js +282 -0
  388. package/dist/receipt/ticket.js.map +1 -0
  389. package/dist/render/copyArea.d.ts +64 -0
  390. package/dist/render/copyArea.d.ts.map +1 -0
  391. package/dist/render/copyArea.js +196 -0
  392. package/dist/render/copyArea.js.map +1 -0
  393. package/dist/render/envelope.d.ts +6 -0
  394. package/dist/render/envelope.d.ts.map +1 -0
  395. package/dist/render/envelope.js +42 -0
  396. package/dist/render/envelope.js.map +1 -0
  397. package/dist/render/errors.d.ts +5 -0
  398. package/dist/render/errors.d.ts.map +1 -0
  399. package/dist/render/errors.js +10 -0
  400. package/dist/render/errors.js.map +1 -0
  401. package/dist/render/familyPage.d.ts +20 -0
  402. package/dist/render/familyPage.d.ts.map +1 -0
  403. package/dist/render/familyPage.js +106 -0
  404. package/dist/render/familyPage.js.map +1 -0
  405. package/dist/render/html.d.ts +16 -0
  406. package/dist/render/html.d.ts.map +1 -0
  407. package/dist/render/html.js +135 -0
  408. package/dist/render/html.js.map +1 -0
  409. package/dist/render/index.d.ts +14 -0
  410. package/dist/render/index.d.ts.map +1 -0
  411. package/dist/render/index.js +13 -0
  412. package/dist/render/index.js.map +1 -0
  413. package/dist/render/pageFamilies.d.ts +8 -0
  414. package/dist/render/pageFamilies.d.ts.map +1 -0
  415. package/dist/render/pageFamilies.js +169 -0
  416. package/dist/render/pageFamilies.js.map +1 -0
  417. package/dist/render/sceneNaming.d.ts +14 -0
  418. package/dist/render/sceneNaming.d.ts.map +1 -0
  419. package/dist/render/sceneNaming.js +173 -0
  420. package/dist/render/sceneNaming.js.map +1 -0
  421. package/dist/render/templates.d.ts +5 -0
  422. package/dist/render/templates.d.ts.map +1 -0
  423. package/dist/render/templates.js +68 -0
  424. package/dist/render/templates.js.map +1 -0
  425. package/dist/render/views.d.ts +115 -0
  426. package/dist/render/views.d.ts.map +1 -0
  427. package/dist/render/views.js +81 -0
  428. package/dist/render/views.js.map +1 -0
  429. package/dist/setup/commands.d.ts +3 -0
  430. package/dist/setup/commands.d.ts.map +1 -0
  431. package/dist/setup/commands.js +9 -0
  432. package/dist/setup/commands.js.map +1 -0
  433. package/dist/setup/index.d.ts +3 -0
  434. package/dist/setup/index.d.ts.map +1 -0
  435. package/dist/setup/index.js +4 -0
  436. package/dist/setup/index.js.map +1 -0
  437. package/dist/setup/pages/backup_receipt.d.ts +24 -0
  438. package/dist/setup/pages/backup_receipt.d.ts.map +1 -0
  439. package/dist/setup/pages/backup_receipt.js +198 -0
  440. package/dist/setup/pages/backup_receipt.js.map +1 -0
  441. package/dist/setup/pages/first_use_wizard.d.ts +24 -0
  442. package/dist/setup/pages/first_use_wizard.d.ts.map +1 -0
  443. package/dist/setup/pages/first_use_wizard.js +169 -0
  444. package/dist/setup/pages/first_use_wizard.js.map +1 -0
  445. package/dist/setup/pages/health_report.d.ts +24 -0
  446. package/dist/setup/pages/health_report.d.ts.map +1 -0
  447. package/dist/setup/pages/health_report.js +152 -0
  448. package/dist/setup/pages/health_report.js.map +1 -0
  449. package/dist/setup/pages/import_restore.d.ts +24 -0
  450. package/dist/setup/pages/import_restore.d.ts.map +1 -0
  451. package/dist/setup/pages/import_restore.js +179 -0
  452. package/dist/setup/pages/import_restore.js.map +1 -0
  453. package/dist/setup/routes.d.ts +3 -0
  454. package/dist/setup/routes.d.ts.map +1 -0
  455. package/dist/setup/routes.js +2 -0
  456. package/dist/setup/routes.js.map +1 -0
  457. package/dist/shared/commandSpec.d.ts +34 -0
  458. package/dist/shared/commandSpec.d.ts.map +1 -0
  459. package/dist/shared/commandSpec.js +8 -0
  460. package/dist/shared/commandSpec.js.map +1 -0
  461. package/dist/shared/fail.d.ts +4 -0
  462. package/dist/shared/fail.d.ts.map +1 -0
  463. package/dist/shared/fail.js +16 -0
  464. package/dist/shared/fail.js.map +1 -0
  465. package/dist/shared/params.d.ts +4 -0
  466. package/dist/shared/params.d.ts.map +1 -0
  467. package/dist/shared/params.js +31 -0
  468. package/dist/shared/params.js.map +1 -0
  469. package/dist/space/commands.d.ts +3 -0
  470. package/dist/space/commands.d.ts.map +1 -0
  471. package/dist/space/commands.js +6 -0
  472. package/dist/space/commands.js.map +1 -0
  473. package/dist/space/index.d.ts +3 -0
  474. package/dist/space/index.d.ts.map +1 -0
  475. package/dist/space/index.js +4 -0
  476. package/dist/space/index.js.map +1 -0
  477. package/dist/space/location.d.ts +82 -0
  478. package/dist/space/location.d.ts.map +1 -0
  479. package/dist/space/location.js +324 -0
  480. package/dist/space/location.js.map +1 -0
  481. package/dist/space/pages/fixed_spot.d.ts +24 -0
  482. package/dist/space/pages/fixed_spot.d.ts.map +1 -0
  483. package/dist/space/pages/fixed_spot.js +122 -0
  484. package/dist/space/pages/fixed_spot.js.map +1 -0
  485. package/dist/space/pages/location_manage.d.ts +24 -0
  486. package/dist/space/pages/location_manage.d.ts.map +1 -0
  487. package/dist/space/pages/location_manage.js +182 -0
  488. package/dist/space/pages/location_manage.js.map +1 -0
  489. package/dist/space/pages/space_view.d.ts +24 -0
  490. package/dist/space/pages/space_view.d.ts.map +1 -0
  491. package/dist/space/pages/space_view.js +185 -0
  492. package/dist/space/pages/space_view.js.map +1 -0
  493. package/dist/space/pages/suggest_storage.d.ts +24 -0
  494. package/dist/space/pages/suggest_storage.d.ts.map +1 -0
  495. package/dist/space/pages/suggest_storage.js +179 -0
  496. package/dist/space/pages/suggest_storage.js.map +1 -0
  497. package/dist/space/routes.d.ts +3 -0
  498. package/dist/space/routes.d.ts.map +1 -0
  499. package/dist/space/routes.js +24 -0
  500. package/dist/space/routes.js.map +1 -0
  501. package/dist/stats/commands.d.ts +3 -0
  502. package/dist/stats/commands.d.ts.map +1 -0
  503. package/dist/stats/commands.js +6 -0
  504. package/dist/stats/commands.js.map +1 -0
  505. package/dist/stats/index.d.ts +3 -0
  506. package/dist/stats/index.d.ts.map +1 -0
  507. package/dist/stats/index.js +4 -0
  508. package/dist/stats/index.js.map +1 -0
  509. package/dist/stats/pages/expiring.d.ts +24 -0
  510. package/dist/stats/pages/expiring.d.ts.map +1 -0
  511. package/dist/stats/pages/expiring.js +220 -0
  512. package/dist/stats/pages/expiring.js.map +1 -0
  513. package/dist/stats/pages/idle.d.ts +24 -0
  514. package/dist/stats/pages/idle.d.ts.map +1 -0
  515. package/dist/stats/pages/idle.js +181 -0
  516. package/dist/stats/pages/idle.js.map +1 -0
  517. package/dist/stats/pages/inventory_stat.d.ts +24 -0
  518. package/dist/stats/pages/inventory_stat.d.ts.map +1 -0
  519. package/dist/stats/pages/inventory_stat.js +165 -0
  520. package/dist/stats/pages/inventory_stat.js.map +1 -0
  521. package/dist/stats/pages/overview.d.ts +24 -0
  522. package/dist/stats/pages/overview.d.ts.map +1 -0
  523. package/dist/stats/pages/overview.js +238 -0
  524. package/dist/stats/pages/overview.js.map +1 -0
  525. package/dist/stats/routes.d.ts +3 -0
  526. package/dist/stats/routes.d.ts.map +1 -0
  527. package/dist/stats/routes.js +16 -0
  528. package/dist/stats/routes.js.map +1 -0
  529. package/dist/stats/stats.d.ts +4 -0
  530. package/dist/stats/stats.d.ts.map +1 -0
  531. package/dist/stats/stats.js +92 -0
  532. package/dist/stats/stats.js.map +1 -0
  533. package/package.json +3 -3
@@ -0,0 +1,2323 @@
1
+ // 本文件由 packages/skill-home/scripts/gen-help-assets.mjs 生成 —— 禁止手工修改。
2
+ // 改动一律走生成器(手改会被 --check 判漂移、被 test/help-assets.test.mjs 的摘要锁打红)。
3
+ //
4
+ // 事实源(仓内唯一):src/help/scenarios.yaml · 62527 字节 · sha256 c84d9cfc93e7d76c2bbcbda797b1cd9daee9d4b78398ff858a8acdaa476df088
5
+ // 重算摘要:node -e "const f=require('fs'),c=require('crypto');console.log(c.createHash('sha256').update(f.readFileSync('packages/skill-home/src/help/helpAssets.ts')).digest('hex'))"
6
+ // icon/label/id:逐字取事实源 domains[].icon/name/key(老骨架自带 9 个域图标,不另立图标表)。
7
+ // types 词表:共享 help 模板的配色表 packages/base-render/assets/help-template.html:1698-1709(TYPE_DEFAULT 10 词)。
8
+ // link 域=登记位(deprecated: true):prompt 不迁、HELP 不列、不建目录;渲染侧按 HELP_GROUPS 过滤。
9
+ export const HELP_GROUPS = [
10
+ {
11
+ "id": "items",
12
+ "icon": "🏠",
13
+ "label": "物品管理",
14
+ "subgroups": [
15
+ {
16
+ "id": "items_1",
17
+ "label": "录入",
18
+ "scenes": [
19
+ {
20
+ "id": "add_text",
21
+ "title": "录入一件新物品",
22
+ "wake_word": "录物品",
23
+ "status": "",
24
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「录物品」。\n\n走录入流程,生成预览供确认,确认后写入并回执。\n\n名称:{{item_name}}\n分类:{{category}}\n数量(选填):{{quantity}}\n位置(选填):{{location}}\n价格(选填):{{price}}\n标签(选填):{{tags}}",
25
+ "types": [
26
+ "采集",
27
+ "回执"
28
+ ],
29
+ "editable_fields": [
30
+ {
31
+ "name": "item_name",
32
+ "label": "名称",
33
+ "value": "",
34
+ "hint": "如 钥匙",
35
+ "required": true,
36
+ "kind": "text"
37
+ },
38
+ {
39
+ "name": "category",
40
+ "label": "分类",
41
+ "value": "",
42
+ "hint": "如 数码/衣物",
43
+ "required": true,
44
+ "kind": "text"
45
+ },
46
+ {
47
+ "name": "quantity",
48
+ "label": "数量(选填)",
49
+ "value": "",
50
+ "hint": "空=1;纯数字,只收整数≥1",
51
+ "required": false,
52
+ "kind": "number"
53
+ },
54
+ {
55
+ "name": "location",
56
+ "label": "位置(选填)",
57
+ "value": "",
58
+ "hint": "如 客厅/电视柜",
59
+ "required": false,
60
+ "kind": "text"
61
+ },
62
+ {
63
+ "name": "price",
64
+ "label": "价格(选填)",
65
+ "value": "",
66
+ "hint": "纯数字,单位 元",
67
+ "required": false,
68
+ "kind": "number"
69
+ },
70
+ {
71
+ "name": "tags",
72
+ "label": "标签(选填)",
73
+ "value": "",
74
+ "hint": "",
75
+ "required": false,
76
+ "kind": "text"
77
+ }
78
+ ]
79
+ },
80
+ {
81
+ "id": "add_photo",
82
+ "title": "拍照识别录入物品",
83
+ "wake_word": "拍物品",
84
+ "status": "",
85
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「拍物品」。\n\n识别照片字段 → 走录入流程 → 预览确认 → 写入回执。\n\n【照片即将发送:】\n\n补充说明(选填):{{note}}",
86
+ "types": [
87
+ "采集",
88
+ "回执"
89
+ ],
90
+ "editable_fields": [
91
+ {
92
+ "name": "note",
93
+ "label": "补充说明(选填)",
94
+ "value": "",
95
+ "hint": "",
96
+ "required": false,
97
+ "kind": "text"
98
+ }
99
+ ]
100
+ },
101
+ {
102
+ "id": "add_batch",
103
+ "title": "批量录入多件物品",
104
+ "wake_word": "批量录入",
105
+ "status": "",
106
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「批量录入」。\n\n批量清单总览 + 逐条解析预览,勾选确认后批量写入回执。\n\n清单:{{items_text}}\n\n【资源即将发送:】 (如用照片)",
107
+ "types": [
108
+ "采集",
109
+ "回执"
110
+ ],
111
+ "editable_fields": [
112
+ {
113
+ "name": "items_text",
114
+ "label": "清单",
115
+ "value": "",
116
+ "hint": "如 文字逐行描述,或用照片/文件",
117
+ "required": true,
118
+ "kind": "text"
119
+ }
120
+ ]
121
+ },
122
+ {
123
+ "id": "add_backfill",
124
+ "title": "补录历史物品(指定日期)",
125
+ "wake_word": "补录",
126
+ "status": "",
127
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「补录」。\n\n按指定日期补录历史物品,带日期回显与到期提醒预埋。\n\n名称:{{item_name}}\n分类:{{category}}\n录入日期:{{record_date}}\n购买日期(选填):{{purchase_date}}\n其余字段(选填):{{extra}}",
128
+ "types": [
129
+ "采集",
130
+ "回执"
131
+ ],
132
+ "editable_fields": [
133
+ {
134
+ "name": "item_name",
135
+ "label": "名称",
136
+ "value": "",
137
+ "hint": "如 钥匙",
138
+ "required": true,
139
+ "kind": "text"
140
+ },
141
+ {
142
+ "name": "category",
143
+ "label": "分类",
144
+ "value": "",
145
+ "hint": "如 数码/衣物",
146
+ "required": true,
147
+ "kind": "text"
148
+ },
149
+ {
150
+ "name": "record_date",
151
+ "label": "录入日期",
152
+ "value": "",
153
+ "hint": "格式 YYYY-MM-DD,如 2026-09-20",
154
+ "required": true,
155
+ "kind": "date"
156
+ },
157
+ {
158
+ "name": "purchase_date",
159
+ "label": "购买日期(选填)",
160
+ "value": "",
161
+ "hint": "格式 YYYY-MM-DD",
162
+ "required": false,
163
+ "kind": "date"
164
+ },
165
+ {
166
+ "name": "extra",
167
+ "label": "其余字段(选填)",
168
+ "value": "",
169
+ "hint": "如 同录物品,",
170
+ "required": false,
171
+ "kind": "text"
172
+ }
173
+ ]
174
+ }
175
+ ]
176
+ },
177
+ {
178
+ "id": "items_2",
179
+ "label": "查找",
180
+ "scenes": [
181
+ {
182
+ "id": "search_default",
183
+ "title": "搜索查找物品",
184
+ "wake_word": "查物品",
185
+ "status": "",
186
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「查物品」。\n\n命中列表卡片(照片/名称/位置/状态),未命中引导录入。\n\n描述:{{query_text}}",
187
+ "types": [
188
+ "查看"
189
+ ],
190
+ "editable_fields": [
191
+ {
192
+ "name": "query_text",
193
+ "label": "描述",
194
+ "value": "",
195
+ "hint": "如 名字/颜色/特征/位置/时间,记得什么说什么",
196
+ "required": true,
197
+ "kind": "text"
198
+ }
199
+ ]
200
+ },
201
+ {
202
+ "id": "detail_by_id",
203
+ "title": "查看物品详情",
204
+ "wake_word": "看物品",
205
+ "status": "",
206
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「看物品」。\n\n完整详情(全字段/照片/位置/标签/备注)+ 相关物品 + 快捷操作入口。\n\n物品:{{item}}",
207
+ "types": [
208
+ "查看"
209
+ ],
210
+ "editable_fields": [
211
+ {
212
+ "name": "item",
213
+ "label": "物品",
214
+ "value": "",
215
+ "hint": "如 名称或描述",
216
+ "required": true,
217
+ "kind": "text"
218
+ }
219
+ ]
220
+ },
221
+ {
222
+ "id": "locate_urgent",
223
+ "title": "紧急查找物品位置",
224
+ "wake_word": "紧急定位",
225
+ "status": "",
226
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「紧急定位」。\n\n重要物品置顶卡片(大照片+位置+固定位),一屏直达只要位置。\n\n物品:{{item}}",
227
+ "types": [
228
+ "查看"
229
+ ],
230
+ "editable_fields": [
231
+ {
232
+ "name": "item",
233
+ "label": "物品",
234
+ "value": "",
235
+ "hint": "如 名称/描述,如:钥匙",
236
+ "required": true,
237
+ "kind": "text"
238
+ }
239
+ ]
240
+ },
241
+ {
242
+ "id": "browse_filter",
243
+ "title": "按条件筛选浏览物品",
244
+ "wake_word": "筛选浏览",
245
+ "status": "",
246
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「筛选浏览」。\n\n分组列表(分类/位置/标签/时间/价格),多条件组合 + 排序 + 计数。\n\n分类(选填):{{category}}\n位置(选填):{{location}}\n标签(选填):{{tags}}\n价格区间(选填):{{price_range}}\n含已废弃(选填):{{include_deprecated}}",
247
+ "types": [
248
+ "查看"
249
+ ],
250
+ "editable_fields": [
251
+ {
252
+ "name": "category",
253
+ "label": "分类(选填)",
254
+ "value": "",
255
+ "hint": "",
256
+ "required": false,
257
+ "kind": "text"
258
+ },
259
+ {
260
+ "name": "location",
261
+ "label": "位置(选填)",
262
+ "value": "",
263
+ "hint": "",
264
+ "required": false,
265
+ "kind": "text"
266
+ },
267
+ {
268
+ "name": "tags",
269
+ "label": "标签(选填)",
270
+ "value": "",
271
+ "hint": "",
272
+ "required": false,
273
+ "kind": "text"
274
+ },
275
+ {
276
+ "name": "price_range",
277
+ "label": "价格区间(选填)",
278
+ "value": "",
279
+ "hint": "",
280
+ "required": false,
281
+ "kind": "text"
282
+ },
283
+ {
284
+ "name": "include_deprecated",
285
+ "label": "含已废弃(选填)",
286
+ "value": "",
287
+ "hint": "空=否",
288
+ "required": false,
289
+ "kind": "select",
290
+ "options": [
291
+ "是",
292
+ "否"
293
+ ]
294
+ }
295
+ ]
296
+ },
297
+ {
298
+ "id": "search_photo",
299
+ "title": "拍照反向查找物品",
300
+ "wake_word": "拍照找物品",
301
+ "status": "",
302
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「拍照找物品」。\n\n相似物品匹配列表(匹配度标注),未匹配转录入闭环。\n\n【照片即将发送:】",
303
+ "types": [
304
+ "查看"
305
+ ]
306
+ },
307
+ {
308
+ "id": "find_dupes",
309
+ "title": "检查重复物品",
310
+ "wake_word": "查重复",
311
+ "status": "",
312
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「查重复」。\n\n重复物品组列表(名称/分类/数量/位置对比),可转合并建议。",
313
+ "types": [
314
+ "查看"
315
+ ]
316
+ }
317
+ ]
318
+ },
319
+ {
320
+ "id": "items_3",
321
+ "label": "更新",
322
+ "scenes": [
323
+ {
324
+ "id": "update_generic",
325
+ "title": "修改物品信息",
326
+ "wake_word": "改物品",
327
+ "status": "",
328
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「改物品」。\n\n字段级 前后对比 对比,预览确认后写入回执。\n\n物品:{{item}}\n修改项:{{changes}}",
329
+ "types": [
330
+ "采集",
331
+ "回执"
332
+ ],
333
+ "editable_fields": [
334
+ {
335
+ "name": "item",
336
+ "label": "物品",
337
+ "value": "",
338
+ "hint": "如 钥匙",
339
+ "required": true,
340
+ "kind": "text"
341
+ },
342
+ {
343
+ "name": "changes",
344
+ "label": "修改项",
345
+ "value": "",
346
+ "hint": "如 一行一条:名称/分类/备注/价格/标签…",
347
+ "required": true,
348
+ "kind": "text"
349
+ }
350
+ ]
351
+ },
352
+ {
353
+ "id": "move_variant",
354
+ "title": "移动物品位置",
355
+ "wake_word": "移物品",
356
+ "status": "",
357
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「移物品」。\n\n原位置→新位置路径 + 邻居列表,确认移动后写入回执。\n\n物品:{{item}}\n新位置:{{location}}",
358
+ "types": [
359
+ "采集",
360
+ "回执"
361
+ ],
362
+ "editable_fields": [
363
+ {
364
+ "name": "item",
365
+ "label": "物品",
366
+ "value": "",
367
+ "hint": "如 可多件",
368
+ "required": true,
369
+ "kind": "text"
370
+ },
371
+ {
372
+ "name": "location",
373
+ "label": "新位置",
374
+ "value": "",
375
+ "hint": "如 卧室/衣柜",
376
+ "required": true,
377
+ "kind": "text"
378
+ }
379
+ ]
380
+ },
381
+ {
382
+ "id": "quantity_change",
383
+ "title": "变更物品数量",
384
+ "wake_word": "数量变更",
385
+ "status": "",
386
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「数量变更」。\n\n变更前后数量对比,减到 0 提示已用完 + 补货建议。\n\n物品:{{item}}\n数量:{{quantity}}",
387
+ "types": [
388
+ "采集",
389
+ "回执"
390
+ ],
391
+ "editable_fields": [
392
+ {
393
+ "name": "item",
394
+ "label": "物品",
395
+ "value": "",
396
+ "hint": "如 钥匙",
397
+ "required": true,
398
+ "kind": "text"
399
+ },
400
+ {
401
+ "name": "quantity",
402
+ "label": "数量",
403
+ "value": "",
404
+ "hint": "如 绝对数量或 +N/-N",
405
+ "required": true,
406
+ "kind": "text"
407
+ }
408
+ ]
409
+ },
410
+ {
411
+ "id": "status_change",
412
+ "title": "变更物品状态",
413
+ "wake_word": "状态变更",
414
+ "status": "",
415
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「状态变更」。\n\n状态机流转(废弃=软删除/恢复/非法流转拦截),确认后写入回执。\n\n物品:{{item}}\n状态:{{status}}",
416
+ "types": [
417
+ "选择",
418
+ "回执"
419
+ ],
420
+ "editable_fields": [
421
+ {
422
+ "name": "item",
423
+ "label": "物品",
424
+ "value": "",
425
+ "hint": "如 钥匙",
426
+ "required": true,
427
+ "kind": "text"
428
+ },
429
+ {
430
+ "name": "status",
431
+ "label": "状态",
432
+ "value": "",
433
+ "hint": "如 在家/备用/借用中/维修中/已用完/快递中/找不到/已废弃,废弃=软删除可恢复",
434
+ "required": true,
435
+ "kind": "text"
436
+ }
437
+ ]
438
+ },
439
+ {
440
+ "id": "merge_items",
441
+ "title": "合并重复物品",
442
+ "wake_word": "合并物品",
443
+ "status": "",
444
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「合并物品」。\n\n合并预览(字段合并规则/数量相加),确认合并后回执。\n\n保留:{{keep_item}}\n并入:{{merge_items}}",
445
+ "types": [
446
+ "选择",
447
+ "回执"
448
+ ],
449
+ "editable_fields": [
450
+ {
451
+ "name": "keep_item",
452
+ "label": "保留",
453
+ "value": "",
454
+ "hint": "如 主条物品",
455
+ "required": true,
456
+ "kind": "text"
457
+ },
458
+ {
459
+ "name": "merge_items",
460
+ "label": "并入",
461
+ "value": "",
462
+ "hint": "如 一条或多条",
463
+ "required": true,
464
+ "kind": "text"
465
+ }
466
+ ]
467
+ },
468
+ {
469
+ "id": "undo_operation",
470
+ "title": "撤销最近操作",
471
+ "wake_word": "撤销操作",
472
+ "status": "",
473
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「撤销操作」。\n\n可撤销操作列表(勾选),撤销影响范围提示,回滚后回执。\n\n撤销:{{target_op}}",
474
+ "types": [
475
+ "选择",
476
+ "回执"
477
+ ],
478
+ "editable_fields": [
479
+ {
480
+ "name": "target_op",
481
+ "label": "撤销",
482
+ "value": "",
483
+ "hint": "如 指定某次操作,如:刚才的录入",
484
+ "required": true,
485
+ "kind": "text"
486
+ }
487
+ ]
488
+ },
489
+ {
490
+ "id": "link_items",
491
+ "title": "设置物品关联",
492
+ "wake_word": "物品关联",
493
+ "status": "",
494
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「物品关联」。\n\n关联预览(主物品+关联物品+关系类型),确认后写入回执。\n\n主物品:{{item}}\n关联物品:{{item_2}}\n关系:{{relation}}",
495
+ "types": [
496
+ "采集",
497
+ "回执"
498
+ ],
499
+ "editable_fields": [
500
+ {
501
+ "name": "item",
502
+ "label": "主物品",
503
+ "value": "",
504
+ "hint": "如 钥匙",
505
+ "required": true,
506
+ "kind": "text"
507
+ },
508
+ {
509
+ "name": "item_2",
510
+ "label": "关联物品",
511
+ "value": "",
512
+ "hint": "",
513
+ "required": true,
514
+ "kind": "text"
515
+ },
516
+ {
517
+ "name": "relation",
518
+ "label": "关系",
519
+ "value": "",
520
+ "hint": "",
521
+ "required": true,
522
+ "kind": "select",
523
+ "options": [
524
+ "配件",
525
+ "配套",
526
+ "替代",
527
+ "同捆",
528
+ "常用搭配"
529
+ ]
530
+ }
531
+ ]
532
+ },
533
+ {
534
+ "id": "tags_variant",
535
+ "title": "修改物品标签",
536
+ "wake_word": "标物品",
537
+ "status": "",
538
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「标物品」。\n\n已有标签展示,加/去标签预览,确认后写入回执。\n\n物品:{{item}}\n加标签(选填):{{tags_add}}\n去标签(选填):{{tags_remove}}",
539
+ "types": [
540
+ "采集",
541
+ "回执"
542
+ ],
543
+ "editable_fields": [
544
+ {
545
+ "name": "item",
546
+ "label": "物品",
547
+ "value": "",
548
+ "hint": "如 可多件",
549
+ "required": true,
550
+ "kind": "text"
551
+ },
552
+ {
553
+ "name": "tags_add",
554
+ "label": "加标签(选填)",
555
+ "value": "",
556
+ "hint": "如 可多个",
557
+ "required": false,
558
+ "kind": "text"
559
+ },
560
+ {
561
+ "name": "tags_remove",
562
+ "label": "去标签(选填)",
563
+ "value": "",
564
+ "hint": "如 可多个",
565
+ "required": false,
566
+ "kind": "text"
567
+ }
568
+ ]
569
+ }
570
+ ]
571
+ },
572
+ {
573
+ "id": "items_4",
574
+ "label": "标签与分类",
575
+ "scenes": [
576
+ {
577
+ "id": "tag_manage",
578
+ "title": "管理标签(查看/重命名/合并/清理)",
579
+ "wake_word": "管标签",
580
+ "status": "",
581
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「管标签」。\n\n标签总览列表 + 合并/重命名/删除影响预览,确认后回执。\n\n操作:{{op}}\n详情:{{detail}}",
582
+ "types": [
583
+ "查看",
584
+ "选择",
585
+ "回执"
586
+ ],
587
+ "editable_fields": [
588
+ {
589
+ "name": "op",
590
+ "label": "操作",
591
+ "value": "",
592
+ "hint": "",
593
+ "required": true,
594
+ "kind": "select",
595
+ "options": [
596
+ "查看",
597
+ "合并",
598
+ "重命名",
599
+ "清理"
600
+ ]
601
+ },
602
+ {
603
+ "name": "detail",
604
+ "label": "详情",
605
+ "value": "",
606
+ "hint": "如 把「擦手巾」合并进「毛巾」",
607
+ "required": true,
608
+ "kind": "text"
609
+ }
610
+ ]
611
+ },
612
+ {
613
+ "id": "category_manage",
614
+ "title": "管理分类(查看/新建/改名/合并/移动)",
615
+ "wake_word": "管分类",
616
+ "status": "",
617
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「管分类」。\n\n分类树总览 + 新建/改名/合并影响预览,确认后回执。\n\n操作:{{op}}\n详情:{{detail}}",
618
+ "types": [
619
+ "查看",
620
+ "选择",
621
+ "回执"
622
+ ],
623
+ "editable_fields": [
624
+ {
625
+ "name": "op",
626
+ "label": "操作",
627
+ "value": "",
628
+ "hint": "",
629
+ "required": true,
630
+ "kind": "select",
631
+ "options": [
632
+ "新建",
633
+ "改名",
634
+ "合并",
635
+ "移动"
636
+ ]
637
+ },
638
+ {
639
+ "name": "detail",
640
+ "label": "详情",
641
+ "value": "",
642
+ "hint": "如 新建二级分类「露营装备」",
643
+ "required": true,
644
+ "kind": "text"
645
+ }
646
+ ]
647
+ },
648
+ {
649
+ "id": "tag_tidy_suggest",
650
+ "title": "标签分类整理建议(AI 检测)",
651
+ "wake_word": "整理建议",
652
+ "status": "",
653
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「整理建议」。\n\n相近标签/分类检测结果,逐条确认合并,一键批量执行。",
654
+ "types": [
655
+ "选择",
656
+ "回执"
657
+ ]
658
+ }
659
+ ]
660
+ },
661
+ {
662
+ "id": "items_5",
663
+ "label": "照片档案",
664
+ "scenes": [
665
+ {
666
+ "id": "photo_view",
667
+ "title": "查看物品照片(含类型筛选)",
668
+ "wake_word": "查看照片",
669
+ "status": "",
670
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「查看照片」。\n\n主图大图 + 多图缩略图,类型标记(普通/说明书-使用/安装/保养)。\n\n物品:{{item}}\n只看说明书(选填):{{manual_only}}",
671
+ "types": [
672
+ "查看"
673
+ ],
674
+ "editable_fields": [
675
+ {
676
+ "name": "item",
677
+ "label": "物品",
678
+ "value": "",
679
+ "hint": "如 钥匙",
680
+ "required": true,
681
+ "kind": "text"
682
+ },
683
+ {
684
+ "name": "manual_only",
685
+ "label": "只看说明书(选填)",
686
+ "value": "",
687
+ "hint": "空=全部",
688
+ "required": false,
689
+ "kind": "select",
690
+ "options": [
691
+ "是",
692
+ "否"
693
+ ]
694
+ }
695
+ ]
696
+ },
697
+ {
698
+ "id": "photo_manage",
699
+ "title": "管理物品照片(排序/换主图/加图/标记类型)",
700
+ "wake_word": "管照片",
701
+ "status": "",
702
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「管照片」。\n\n照片列表 + 本地排序 + 加图/删图/类型标记,确认变更后回执。\n\n物品:{{item}}\n操作:{{op}}\n\n【照片即将发送:】 (如补拍/加图)",
703
+ "types": [
704
+ "采集",
705
+ "回执"
706
+ ],
707
+ "editable_fields": [
708
+ {
709
+ "name": "item",
710
+ "label": "物品",
711
+ "value": "",
712
+ "hint": "如 钥匙",
713
+ "required": true,
714
+ "kind": "text"
715
+ },
716
+ {
717
+ "name": "op",
718
+ "label": "操作",
719
+ "value": "",
720
+ "hint": "如 新顺序 图3→图2→图1,主图变更为图3 / 加图 / 删图 / 标记类型",
721
+ "required": true,
722
+ "kind": "text"
723
+ }
724
+ ]
725
+ },
726
+ {
727
+ "id": "photo_wall",
728
+ "title": "浏览物品照片墙(分类/位置/类型)",
729
+ "wake_word": "照片墙",
730
+ "status": "",
731
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「照片墙」。\n\n照片网格墙 + 分组 + 类型筛选 + 空态补拍引导。\n\n分组(选填):{{group_by}}\n只看说明书(选填):{{manual_only}}",
732
+ "types": [
733
+ "查看"
734
+ ],
735
+ "editable_fields": [
736
+ {
737
+ "name": "group_by",
738
+ "label": "分组(选填)",
739
+ "value": "",
740
+ "hint": "空=不分组",
741
+ "required": false,
742
+ "kind": "select",
743
+ "options": [
744
+ "分类",
745
+ "位置"
746
+ ]
747
+ },
748
+ {
749
+ "name": "manual_only",
750
+ "label": "只看说明书(选填)",
751
+ "value": "",
752
+ "hint": "空=全部",
753
+ "required": false,
754
+ "kind": "select",
755
+ "options": [
756
+ "是",
757
+ "否"
758
+ ]
759
+ }
760
+ ]
761
+ }
762
+ ]
763
+ },
764
+ {
765
+ "id": "items_6",
766
+ "label": "盘点",
767
+ "scenes": [
768
+ {
769
+ "id": "inventory_spot",
770
+ "title": "盘点核对(按位置/分类/全屋)",
771
+ "wake_word": "盘点",
772
+ "status": "",
773
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「盘点」。\n\n核对清单(在/不在/不确定三态 + 数量修正),确认完成产出差异集。\n\n范围:{{scope}}",
774
+ "types": [
775
+ "采集",
776
+ "回执"
777
+ ],
778
+ "editable_fields": [
779
+ {
780
+ "name": "scope",
781
+ "label": "范围",
782
+ "value": "",
783
+ "hint": "如 全屋 / 某个位置 / 某个分类",
784
+ "required": true,
785
+ "kind": "text"
786
+ }
787
+ ]
788
+ },
789
+ {
790
+ "id": "inventory_diff",
791
+ "title": "处理盘点差异(缺/多/异/待确认)",
792
+ "wake_word": "差异处理",
793
+ "status": "",
794
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「差异处理」。\n\n差异分组(缺/多/异/待确认),逐项指定处理,批量确认回执。\n\n记录(选填):{{round_record}}",
795
+ "types": [
796
+ "选择",
797
+ "回执"
798
+ ],
799
+ "editable_fields": [
800
+ {
801
+ "name": "round_record",
802
+ "label": "记录(选填)",
803
+ "value": "",
804
+ "hint": "空=最近一次;指定某次盘点,",
805
+ "required": false,
806
+ "kind": "text"
807
+ }
808
+ ]
809
+ },
810
+ {
811
+ "id": "inventory_records",
812
+ "title": "查看盘点记录(含复查)",
813
+ "wake_word": "盘点记录",
814
+ "status": "",
815
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「盘点记录」。\n\n盘点记录列表 + 单次详情 + 复查入口(上次缺的置顶)。",
816
+ "types": [
817
+ "查看"
818
+ ]
819
+ },
820
+ {
821
+ "id": "inventory_move_house",
822
+ "title": "搬家打包盘点(带走/不带走)",
823
+ "wake_word": "搬家盘点",
824
+ "status": "",
825
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「搬家盘点」。\n\n全屋清单二态标记(带走/不带走),统一确认生成搬家清单。",
826
+ "types": [
827
+ "向导",
828
+ "采集",
829
+ "回执"
830
+ ]
831
+ }
832
+ ]
833
+ },
834
+ {
835
+ "id": "items_7",
836
+ "label": "物品历史",
837
+ "scenes": [
838
+ {
839
+ "id": "item_history",
840
+ "title": "查看物品历史(时间线/轨迹)",
841
+ "wake_word": "历史",
842
+ "status": "",
843
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「历史」。\n\n事件时间线(倒序)+ 类型筛选 + 差异 展开 + 位置轨迹。\n\n物品:{{item}}",
844
+ "types": [
845
+ "查看"
846
+ ],
847
+ "editable_fields": [
848
+ {
849
+ "name": "item",
850
+ "label": "物品",
851
+ "value": "",
852
+ "hint": "如 钥匙",
853
+ "required": true,
854
+ "kind": "text"
855
+ }
856
+ ]
857
+ }
858
+ ]
859
+ }
860
+ ]
861
+ },
862
+ {
863
+ "id": "space",
864
+ "icon": "🗺️",
865
+ "label": "空间与位置",
866
+ "subgroups": [
867
+ {
868
+ "id": "space_1",
869
+ "label": "位置管理",
870
+ "scenes": [
871
+ {
872
+ "id": "location_manage",
873
+ "title": "管理位置体系(查看/新建/改名/合并/规范化)",
874
+ "wake_word": "管位置",
875
+ "status": "",
876
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「管位置」。\n\n位置树总览 + 相似位置检测 + 合并/重命名影响预览,确认后回执。\n\n操作:{{op}}\n详情:{{detail}}",
877
+ "types": [
878
+ "查看",
879
+ "选择",
880
+ "回执"
881
+ ],
882
+ "editable_fields": [
883
+ {
884
+ "name": "op",
885
+ "label": "操作",
886
+ "value": "",
887
+ "hint": "",
888
+ "required": true,
889
+ "kind": "select",
890
+ "options": [
891
+ "查看",
892
+ "新建",
893
+ "改名",
894
+ "合并",
895
+ "删除",
896
+ "规范化"
897
+ ]
898
+ },
899
+ {
900
+ "name": "detail",
901
+ "label": "详情",
902
+ "value": "",
903
+ "hint": "如 合并「卧室/东南角」和「卧室东南角」",
904
+ "required": true,
905
+ "kind": "text"
906
+ }
907
+ ]
908
+ }
909
+ ]
910
+ },
911
+ {
912
+ "id": "space_2",
913
+ "label": "固定位",
914
+ "scenes": [
915
+ {
916
+ "id": "fixed_spot",
917
+ "title": "设置固定位(常用件锚定)",
918
+ "wake_word": "固定位",
919
+ "status": "",
920
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「固定位」。\n\n固定位选择 + 现有固定位清单(含位置对比警告),确认后回执。\n\n物品:{{item}}\n固定位:{{fixed_spot}}\n操作:{{op}}",
921
+ "types": [
922
+ "采集",
923
+ "回执"
924
+ ],
925
+ "editable_fields": [
926
+ {
927
+ "name": "item",
928
+ "label": "物品",
929
+ "value": "",
930
+ "hint": "如 钥匙",
931
+ "required": true,
932
+ "kind": "text"
933
+ },
934
+ {
935
+ "name": "fixed_spot",
936
+ "label": "固定位",
937
+ "value": "",
938
+ "hint": "如 玄关抽屉",
939
+ "required": true,
940
+ "kind": "text"
941
+ },
942
+ {
943
+ "name": "op",
944
+ "label": "操作",
945
+ "value": "",
946
+ "hint": "",
947
+ "required": true,
948
+ "kind": "select",
949
+ "options": [
950
+ "设置",
951
+ "解除"
952
+ ]
953
+ }
954
+ ]
955
+ }
956
+ ]
957
+ },
958
+ {
959
+ "id": "space_3",
960
+ "label": "收纳建议",
961
+ "scenes": [
962
+ {
963
+ "id": "suggest_storage",
964
+ "title": "收纳位置建议(AI 推荐)",
965
+ "wake_word": "收纳建议",
966
+ "status": "",
967
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「收纳建议」。\n\n推荐位置 + 理由 + 备选,采纳后跳移物品流程。\n\n物品(选填):{{item}}",
968
+ "types": [
969
+ "查看",
970
+ "选择"
971
+ ],
972
+ "editable_fields": [
973
+ {
974
+ "name": "item",
975
+ "label": "物品(选填)",
976
+ "value": "",
977
+ "hint": "如 可多件,;不填则找没有固定位的常用件",
978
+ "required": false,
979
+ "kind": "text"
980
+ }
981
+ ]
982
+ }
983
+ ]
984
+ },
985
+ {
986
+ "id": "space_4",
987
+ "label": "空间视图",
988
+ "scenes": [
989
+ {
990
+ "id": "space_view",
991
+ "title": "空间视图浏览(位置树下钻)",
992
+ "wake_word": "空间视图",
993
+ "status": "",
994
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「空间视图」。\n\n位置树逐层下钻 + 面包屑 + 当前层物品卡片。\n\n位置(选填):{{location}}",
995
+ "types": [
996
+ "查看"
997
+ ],
998
+ "editable_fields": [
999
+ {
1000
+ "name": "location",
1001
+ "label": "位置(选填)",
1002
+ "value": "",
1003
+ "hint": "如 从哪层开始,;不填则从顶层",
1004
+ "required": false,
1005
+ "kind": "text"
1006
+ }
1007
+ ]
1008
+ }
1009
+ ]
1010
+ }
1011
+ ]
1012
+ },
1013
+ {
1014
+ "id": "outfit",
1015
+ "icon": "👕",
1016
+ "label": "穿搭出行",
1017
+ "subgroups": [
1018
+ {
1019
+ "id": "outfit_1",
1020
+ "label": "穿搭推荐",
1021
+ "scenes": [
1022
+ {
1023
+ "id": "outfit_pick",
1024
+ "title": "今日穿搭推荐(拼贴效果)",
1025
+ "wake_word": "穿什么",
1026
+ "status": "",
1027
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「穿什么」。\n\n穿搭拼贴卡(多部位槽位 + 风格标签 + 理由),备选组合横滑。\n\n场合(选填):{{occasion}}\n天气(选填):{{weather}}",
1028
+ "types": [
1029
+ "查看",
1030
+ "选择"
1031
+ ],
1032
+ "editable_fields": [
1033
+ {
1034
+ "name": "occasion",
1035
+ "label": "场合(选填)",
1036
+ "value": "",
1037
+ "hint": "如 上班,也可写其他场合",
1038
+ "required": false,
1039
+ "kind": "text"
1040
+ },
1041
+ {
1042
+ "name": "weather",
1043
+ "label": "天气(选填)",
1044
+ "value": "",
1045
+ "hint": "如 或让 AI 自己获取",
1046
+ "required": false,
1047
+ "kind": "text"
1048
+ }
1049
+ ]
1050
+ }
1051
+ ]
1052
+ },
1053
+ {
1054
+ "id": "outfit_2",
1055
+ "label": "衣橱管理",
1056
+ "scenes": [
1057
+ {
1058
+ "id": "wardrobe_analyze",
1059
+ "title": "衣橱闲置分析(结构诊断/断舍离建议)",
1060
+ "wake_word": "衣橱分析",
1061
+ "status": "",
1062
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「衣橱分析」。\n\n衣橱构成分布 + 闲置清单(诚实标注估算) + AI 建议一句 + 处理闭环。",
1063
+ "types": [
1064
+ "查看",
1065
+ "选择",
1066
+ "回执"
1067
+ ]
1068
+ },
1069
+ {
1070
+ "id": "wardrobe_season",
1071
+ "title": "换季收纳(季节衣物批量收纳)",
1072
+ "wake_word": "换季",
1073
+ "status": "",
1074
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「换季」。\n\n季节衣物清单 + 收纳目标选择 + 批量勾选,确认后回执。\n\n季节:{{season}}\n操作:{{op}}",
1075
+ "types": [
1076
+ "采集",
1077
+ "回执"
1078
+ ],
1079
+ "editable_fields": [
1080
+ {
1081
+ "name": "season",
1082
+ "label": "季节",
1083
+ "value": "",
1084
+ "hint": "",
1085
+ "required": true,
1086
+ "kind": "select",
1087
+ "options": [
1088
+ "夏季",
1089
+ "冬季"
1090
+ ]
1091
+ },
1092
+ {
1093
+ "name": "op",
1094
+ "label": "操作",
1095
+ "value": "",
1096
+ "hint": "",
1097
+ "required": true,
1098
+ "kind": "select",
1099
+ "options": [
1100
+ "收纳",
1101
+ "拿出"
1102
+ ]
1103
+ }
1104
+ ]
1105
+ }
1106
+ ]
1107
+ },
1108
+ {
1109
+ "id": "outfit_3",
1110
+ "label": "出行清单",
1111
+ "scenes": [
1112
+ {
1113
+ "id": "trip_pack",
1114
+ "title": "出行带物清单(带/归,联动健身计划,出发核对)",
1115
+ "wake_word": "带物品/归物品",
1116
+ "status": "",
1117
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「带物品/归物品」。\n\n行程设置 → 清单生成(物品卡片+理由) → 带出标记旅游中 / 回家归位。\n\n行程类型:{{trip_type}}\n天数:{{days}}\n操作:{{op}}",
1118
+ "types": [
1119
+ "查看",
1120
+ "选择",
1121
+ "回执"
1122
+ ],
1123
+ "editable_fields": [
1124
+ {
1125
+ "name": "trip_type",
1126
+ "label": "行程类型",
1127
+ "value": "",
1128
+ "hint": "如 出差,也可写其他",
1129
+ "required": true,
1130
+ "kind": "text"
1131
+ },
1132
+ {
1133
+ "name": "days",
1134
+ "label": "天数",
1135
+ "value": "",
1136
+ "hint": "纯数字,单位 天",
1137
+ "required": true,
1138
+ "kind": "number"
1139
+ },
1140
+ {
1141
+ "name": "op",
1142
+ "label": "操作",
1143
+ "value": "",
1144
+ "hint": "",
1145
+ "required": true,
1146
+ "kind": "select",
1147
+ "options": [
1148
+ "带出",
1149
+ "归位"
1150
+ ]
1151
+ }
1152
+ ]
1153
+ }
1154
+ ]
1155
+ },
1156
+ {
1157
+ "id": "outfit_4",
1158
+ "label": "旅行穿搭计划",
1159
+ "scenes": [
1160
+ {
1161
+ "id": "trip_outfit_plan",
1162
+ "title": "旅行穿搭计划(天数+天气)",
1163
+ "wake_word": "旅行穿搭",
1164
+ "status": "",
1165
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「旅行穿搭」。\n\n每日穿搭计划(日期+天气+组合)+ 行李汇总 + 冲突提示。\n\n目的地:{{destination}}\n天数:{{days}}",
1166
+ "types": [
1167
+ "查看",
1168
+ "选择"
1169
+ ],
1170
+ "editable_fields": [
1171
+ {
1172
+ "name": "destination",
1173
+ "label": "目的地",
1174
+ "value": "",
1175
+ "hint": "",
1176
+ "required": true,
1177
+ "kind": "text"
1178
+ },
1179
+ {
1180
+ "name": "days",
1181
+ "label": "天数",
1182
+ "value": "",
1183
+ "hint": "纯数字,单位 天",
1184
+ "required": true,
1185
+ "kind": "number"
1186
+ }
1187
+ ]
1188
+ }
1189
+ ]
1190
+ }
1191
+ ]
1192
+ },
1193
+ {
1194
+ "id": "stats",
1195
+ "icon": "📊",
1196
+ "label": "统计总览",
1197
+ "subgroups": [
1198
+ {
1199
+ "id": "stats_1",
1200
+ "label": "统计总览",
1201
+ "scenes": [
1202
+ {
1203
+ "id": "stats_summary",
1204
+ "title": "物品总览",
1205
+ "wake_word": "统物品",
1206
+ "status": "",
1207
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「统物品」。\n\n件数 + 总价/价格覆盖率 + 分类/位置分布 + 价值 TOP + 近 30 天变动。",
1208
+ "types": [
1209
+ "查看"
1210
+ ]
1211
+ },
1212
+ {
1213
+ "id": "stats_idle",
1214
+ "title": "闲置物品检测(AI 断舍离建议)",
1215
+ "wake_word": "查闲置",
1216
+ "status": "",
1217
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「查闲置」。\n\n闲置清单(时长排序,诚实标注估算)+ AI 断舍离建议 + 处理闭环。\n\n闲置标准(选填):{{idle_days}}",
1218
+ "types": [
1219
+ "查看",
1220
+ "选择",
1221
+ "回执"
1222
+ ],
1223
+ "editable_fields": [
1224
+ {
1225
+ "name": "idle_days",
1226
+ "label": "闲置标准(选填)",
1227
+ "value": "",
1228
+ "hint": "纯数字,单位 天",
1229
+ "required": false,
1230
+ "kind": "number"
1231
+ }
1232
+ ]
1233
+ },
1234
+ {
1235
+ "id": "stats_expiring",
1236
+ "title": "过期检查与预告",
1237
+ "wake_word": "查过期",
1238
+ "status": "",
1239
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「查过期」。\n\n已过期 + 未来 N 天预告(默认 30,可调),勾选处理闭环。\n\n预告参数(选填):{{lead_days}}",
1240
+ "types": [
1241
+ "查看",
1242
+ "选择",
1243
+ "回执"
1244
+ ],
1245
+ "editable_fields": [
1246
+ {
1247
+ "name": "lead_days",
1248
+ "label": "预告参数(选填)",
1249
+ "value": "",
1250
+ "hint": "纯数字,单位 天",
1251
+ "required": false,
1252
+ "kind": "number"
1253
+ }
1254
+ ]
1255
+ },
1256
+ {
1257
+ "id": "stats_inventory",
1258
+ "title": "盘点统计与建议",
1259
+ "wake_word": "盘点统计",
1260
+ "status": "",
1261
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「盘点统计」。\n\n盘点完成率 + 历史趋势 + 差异遗留 + AI 建议优先盘点 X。",
1262
+ "types": [
1263
+ "查看"
1264
+ ]
1265
+ }
1266
+ ]
1267
+ }
1268
+ ]
1269
+ },
1270
+ {
1271
+ "id": "express",
1272
+ "icon": "📦",
1273
+ "label": "快递购物",
1274
+ "subgroups": [
1275
+ {
1276
+ "id": "express_1",
1277
+ "label": "购物清单",
1278
+ "scenes": [
1279
+ {
1280
+ "id": "shopping_list",
1281
+ "title": "购物清单(组织/例行/采购闭环)",
1282
+ "wake_word": "购物清单",
1283
+ "status": "",
1284
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「购物清单」。\n\n清单条目(含来源标注)+ 清单内查重 + 采购闭环(销项/录入/补数量)。\n\n条目:{{entries}}",
1285
+ "types": [
1286
+ "查看",
1287
+ "选择",
1288
+ "回执"
1289
+ ],
1290
+ "editable_fields": [
1291
+ {
1292
+ "name": "entries",
1293
+ "label": "条目",
1294
+ "value": "",
1295
+ "hint": "如 物品名+数量,一行一条;可留空查看现有清单",
1296
+ "required": true,
1297
+ "kind": "text"
1298
+ }
1299
+ ]
1300
+ }
1301
+ ]
1302
+ },
1303
+ {
1304
+ "id": "express_2",
1305
+ "label": "缺货检测",
1306
+ "scenes": [
1307
+ {
1308
+ "id": "shopping_missing",
1309
+ "title": "缺货检测(自动进清单)",
1310
+ "wake_word": "缺货检测",
1311
+ "status": "",
1312
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「缺货检测」。\n\n检测结果(物品+当前数量+阈值+建议量),一键进购物清单。\n\n范围(选填):{{scope}}",
1313
+ "types": [
1314
+ "查看",
1315
+ "选择"
1316
+ ],
1317
+ "editable_fields": [
1318
+ {
1319
+ "name": "scope",
1320
+ "label": "范围(选填)",
1321
+ "value": "",
1322
+ "hint": "如 全屋/某个分类,",
1323
+ "required": false,
1324
+ "kind": "text"
1325
+ }
1326
+ ]
1327
+ }
1328
+ ]
1329
+ },
1330
+ {
1331
+ "id": "express_3",
1332
+ "label": "快递跟踪",
1333
+ "scenes": [
1334
+ {
1335
+ "id": "search_express",
1336
+ "title": "快递跟踪(查/超时/收货确认)",
1337
+ "wake_word": "查快递",
1338
+ "status": "",
1339
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「查快递」。\n\n快递中物品清单(已等 N 天)+ 超时提醒 + 收货确认闭环。",
1340
+ "types": [
1341
+ "查看",
1342
+ "选择",
1343
+ "回执"
1344
+ ]
1345
+ }
1346
+ ]
1347
+ },
1348
+ {
1349
+ "id": "express_4",
1350
+ "label": "囤货盘点",
1351
+ "scenes": [
1352
+ {
1353
+ "id": "stock_check",
1354
+ "title": "囤货盘点(库存/阈值/不足检测)",
1355
+ "wake_word": "囤货盘点",
1356
+ "status": "",
1357
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「囤货盘点」。\n\n囤货清单(数量/阈值/库存状态)+ 阈值设置 + 数量修正。",
1358
+ "types": [
1359
+ "查看",
1360
+ "选择",
1361
+ "回执"
1362
+ ]
1363
+ }
1364
+ ]
1365
+ }
1366
+ ]
1367
+ },
1368
+ {
1369
+ "id": "receipt",
1370
+ "icon": "🧾",
1371
+ "label": "票据凭证",
1372
+ "subgroups": [
1373
+ {
1374
+ "id": "receipt_1",
1375
+ "label": "购买记录",
1376
+ "scenes": [
1377
+ {
1378
+ "id": "purchase_list_all",
1379
+ "title": "查购买记录(全量/按物品/按时间)",
1380
+ "wake_word": "查购买记录",
1381
+ "status": "",
1382
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「查购买记录」。\n\n购买记录清单(日期/价格/渠道/退货窗口),可按物品或时间筛选。\n\n物品(选填):{{item}}\n时间(选填):{{time_text}}",
1383
+ "types": [
1384
+ "查看",
1385
+ "回执"
1386
+ ],
1387
+ "editable_fields": [
1388
+ {
1389
+ "name": "item",
1390
+ "label": "物品(选填)",
1391
+ "value": "",
1392
+ "hint": "如 不填按时间浏览",
1393
+ "required": false,
1394
+ "kind": "text"
1395
+ },
1396
+ {
1397
+ "name": "time_text",
1398
+ "label": "时间(选填)",
1399
+ "value": "",
1400
+ "hint": "如 上个月",
1401
+ "required": false,
1402
+ "kind": "text"
1403
+ }
1404
+ ]
1405
+ },
1406
+ {
1407
+ "id": "purchase_last_month",
1408
+ "title": "查上月购买(时间预填)",
1409
+ "wake_word": "查上月购买",
1410
+ "status": "",
1411
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「查上月购买」。\n\n上月购买清单,月份不填就是上个月。\n\n月份(选填):{{month_ym}}",
1412
+ "types": [
1413
+ "查看",
1414
+ "回执"
1415
+ ],
1416
+ "editable_fields": [
1417
+ {
1418
+ "name": "month_ym",
1419
+ "label": "月份(选填)",
1420
+ "value": "",
1421
+ "hint": "空=上个月;格式 YYYY-MM,如 2026-07",
1422
+ "required": false,
1423
+ "kind": "month"
1424
+ }
1425
+ ]
1426
+ },
1427
+ {
1428
+ "id": "purchase_year_stats",
1429
+ "title": "查今年花费(年度统计)",
1430
+ "wake_word": "查今年花费",
1431
+ "status": "",
1432
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「查今年花费」。\n\n今年消费按分类汇总,年份不填就是今年。\n\n年份(选填):{{year_y}}",
1433
+ "types": [
1434
+ "查看",
1435
+ "回执"
1436
+ ],
1437
+ "editable_fields": [
1438
+ {
1439
+ "name": "year_y",
1440
+ "label": "年份(选填)",
1441
+ "value": "",
1442
+ "hint": "空=今年;格式 YYYY,如 2026",
1443
+ "required": false,
1444
+ "kind": "year"
1445
+ }
1446
+ ]
1447
+ },
1448
+ {
1449
+ "id": "purchase_return_window",
1450
+ "title": "查退货窗口(物品必填)",
1451
+ "wake_word": "查退货窗口",
1452
+ "status": "",
1453
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「查退货窗口」。\n\n指定物品的购买信息 + 退货截止日(购买日 + 退货窗口天数)。\n\n物品:{{item}}",
1454
+ "types": [
1455
+ "查看",
1456
+ "回执"
1457
+ ],
1458
+ "editable_fields": [
1459
+ {
1460
+ "name": "item",
1461
+ "label": "物品",
1462
+ "value": "",
1463
+ "hint": "如 钥匙",
1464
+ "required": true,
1465
+ "kind": "text"
1466
+ }
1467
+ ]
1468
+ },
1469
+ {
1470
+ "id": "purchase_add",
1471
+ "title": "登记购买记录(录入)",
1472
+ "wake_word": "登记购买记录",
1473
+ "status": "",
1474
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「登记购买记录」。\n\n购买记录已登记(日期/价格/渠道/退货窗口)。\n\n物品:{{item}}\n购买日期:{{purchase_date}}\n价格(选填):{{price}}\n渠道(选填):{{channel}}\n商家客服(选填):{{support_contact}}\n退货窗口(选填):{{return_days}}",
1475
+ "types": [
1476
+ "采集",
1477
+ "回执"
1478
+ ],
1479
+ "editable_fields": [
1480
+ {
1481
+ "name": "item",
1482
+ "label": "物品",
1483
+ "value": "",
1484
+ "hint": "如 钥匙",
1485
+ "required": true,
1486
+ "kind": "text"
1487
+ },
1488
+ {
1489
+ "name": "purchase_date",
1490
+ "label": "购买日期",
1491
+ "value": "",
1492
+ "hint": "格式 YYYY-MM-DD,如 2026-09-20",
1493
+ "required": true,
1494
+ "kind": "date"
1495
+ },
1496
+ {
1497
+ "name": "price",
1498
+ "label": "价格(选填)",
1499
+ "value": "",
1500
+ "hint": "纯数字,单位 元",
1501
+ "required": false,
1502
+ "kind": "number"
1503
+ },
1504
+ {
1505
+ "name": "channel",
1506
+ "label": "渠道(选填)",
1507
+ "value": "",
1508
+ "hint": "",
1509
+ "required": false,
1510
+ "kind": "text"
1511
+ },
1512
+ {
1513
+ "name": "support_contact",
1514
+ "label": "商家客服(选填)",
1515
+ "value": "",
1516
+ "hint": "",
1517
+ "required": false,
1518
+ "kind": "text"
1519
+ },
1520
+ {
1521
+ "name": "return_days",
1522
+ "label": "退货窗口(选填)",
1523
+ "value": "",
1524
+ "hint": "空=7;纯数字,单位 天",
1525
+ "required": false,
1526
+ "kind": "number"
1527
+ }
1528
+ ]
1529
+ }
1530
+ ]
1531
+ },
1532
+ {
1533
+ "id": "receipt_2",
1534
+ "label": "保修与保养",
1535
+ "scenes": [
1536
+ {
1537
+ "id": "warranty_list",
1538
+ "title": "查保修状态(在保/将到期/已过)",
1539
+ "wake_word": "查保修状态",
1540
+ "status": "",
1541
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「查保修状态」。\n\n保修清单(在保/即将到期/已过状态徽章)。\n\n状态(选填):{{status}}",
1542
+ "types": [
1543
+ "查看",
1544
+ "回执"
1545
+ ],
1546
+ "editable_fields": [
1547
+ {
1548
+ "name": "status",
1549
+ "label": "状态(选填)",
1550
+ "value": "",
1551
+ "hint": "空=全部",
1552
+ "required": false,
1553
+ "kind": "select",
1554
+ "options": [
1555
+ "全部",
1556
+ "在保",
1557
+ "即将到期",
1558
+ "已过"
1559
+ ]
1560
+ }
1561
+ ]
1562
+ },
1563
+ {
1564
+ "id": "warranty_register",
1565
+ "title": "登记保修(录入保修期)",
1566
+ "wake_word": "登记保修",
1567
+ "status": "",
1568
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「登记保修」。\n\n保修已登记(起始日/时长/到期日自动计算)。\n\n物品:{{item}}\n保修起始日:{{warranty_start}}\n保修时长:{{warranty_months}}\n保修卡照片(选填):{{warranty_photo_note}}",
1569
+ "types": [
1570
+ "采集",
1571
+ "回执"
1572
+ ],
1573
+ "editable_fields": [
1574
+ {
1575
+ "name": "item",
1576
+ "label": "物品",
1577
+ "value": "",
1578
+ "hint": "如 钥匙",
1579
+ "required": true,
1580
+ "kind": "text"
1581
+ },
1582
+ {
1583
+ "name": "warranty_start",
1584
+ "label": "保修起始日",
1585
+ "value": "",
1586
+ "hint": "格式 YYYY-MM-DD,如 2026-09-20",
1587
+ "required": true,
1588
+ "kind": "date"
1589
+ },
1590
+ {
1591
+ "name": "warranty_months",
1592
+ "label": "保修时长",
1593
+ "value": "",
1594
+ "hint": "纯数字,单位 天",
1595
+ "required": true,
1596
+ "kind": "number"
1597
+ },
1598
+ {
1599
+ "name": "warranty_photo_note",
1600
+ "label": "保修卡照片(选填)",
1601
+ "value": "",
1602
+ "hint": "",
1603
+ "required": false,
1604
+ "kind": "text"
1605
+ }
1606
+ ]
1607
+ },
1608
+ {
1609
+ "id": "warranty_repair",
1610
+ "title": "记录维修(维修历史)",
1611
+ "wake_word": "记录维修",
1612
+ "status": "",
1613
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「记录维修」。\n\n维修记录已登记(费用/备注入服务事件)。\n\n保修记录ID:{{warranty_id}}\n维修日期:{{repair_date}}\n花费(选填):{{cost}}\n备注(选填):{{note}}",
1614
+ "types": [
1615
+ "采集",
1616
+ "回执"
1617
+ ],
1618
+ "editable_fields": [
1619
+ {
1620
+ "name": "warranty_id",
1621
+ "label": "保修记录ID",
1622
+ "value": "",
1623
+ "hint": "",
1624
+ "required": true,
1625
+ "kind": "text"
1626
+ },
1627
+ {
1628
+ "name": "repair_date",
1629
+ "label": "维修日期",
1630
+ "value": "",
1631
+ "hint": "格式 YYYY-MM-DD,如 2026-09-20",
1632
+ "required": true,
1633
+ "kind": "date"
1634
+ },
1635
+ {
1636
+ "name": "cost",
1637
+ "label": "花费(选填)",
1638
+ "value": "",
1639
+ "hint": "纯数字,单位 元",
1640
+ "required": false,
1641
+ "kind": "number"
1642
+ },
1643
+ {
1644
+ "name": "note",
1645
+ "label": "备注(选填)",
1646
+ "value": "",
1647
+ "hint": "",
1648
+ "required": false,
1649
+ "kind": "text"
1650
+ }
1651
+ ]
1652
+ },
1653
+ {
1654
+ "id": "warranty_maintain_cycle",
1655
+ "title": "设置保养周期(定期保养)",
1656
+ "wake_word": "设置保养周期",
1657
+ "status": "",
1658
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「设置保养周期」。\n\n保养周期已设置(下次保养日自动推算)。\n\n物品:{{item}}\n周期:{{cycle_months}}\n上次保养日(选填):{{last_maintain}}",
1659
+ "types": [
1660
+ "采集",
1661
+ "回执"
1662
+ ],
1663
+ "editable_fields": [
1664
+ {
1665
+ "name": "item",
1666
+ "label": "物品",
1667
+ "value": "",
1668
+ "hint": "如 钥匙",
1669
+ "required": true,
1670
+ "kind": "text"
1671
+ },
1672
+ {
1673
+ "name": "cycle_months",
1674
+ "label": "周期",
1675
+ "value": "",
1676
+ "hint": "纯数字,单位 天",
1677
+ "required": true,
1678
+ "kind": "number"
1679
+ },
1680
+ {
1681
+ "name": "last_maintain",
1682
+ "label": "上次保养日(选填)",
1683
+ "value": "",
1684
+ "hint": "格式 YYYY-MM-DD",
1685
+ "required": false,
1686
+ "kind": "date"
1687
+ }
1688
+ ]
1689
+ },
1690
+ {
1691
+ "id": "warranty_maintain_exec",
1692
+ "title": "执行保养(刷新下次日)",
1693
+ "wake_word": "执行保养",
1694
+ "status": "",
1695
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「执行保养」。\n\n保养已执行(上次保养日刷新,下次日自动推算)。\n\n保养记录ID:{{maintain_id}}\n执行日期:{{exec_date}}\n备注(选填):{{note}}",
1696
+ "types": [
1697
+ "采集",
1698
+ "回执"
1699
+ ],
1700
+ "editable_fields": [
1701
+ {
1702
+ "name": "maintain_id",
1703
+ "label": "保养记录ID",
1704
+ "value": "",
1705
+ "hint": "",
1706
+ "required": true,
1707
+ "kind": "text"
1708
+ },
1709
+ {
1710
+ "name": "exec_date",
1711
+ "label": "执行日期",
1712
+ "value": "",
1713
+ "hint": "格式 YYYY-MM-DD,如 2026-09-20",
1714
+ "required": true,
1715
+ "kind": "date"
1716
+ },
1717
+ {
1718
+ "name": "note",
1719
+ "label": "备注(选填)",
1720
+ "value": "",
1721
+ "hint": "",
1722
+ "required": false,
1723
+ "kind": "text"
1724
+ }
1725
+ ]
1726
+ }
1727
+ ]
1728
+ },
1729
+ {
1730
+ "id": "receipt_3",
1731
+ "label": "证件管理",
1732
+ "scenes": [
1733
+ {
1734
+ "id": "cert_list",
1735
+ "title": "查证件到期(按到期排序)",
1736
+ "wake_word": "查证件到期",
1737
+ "status": "",
1738
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「查证件到期」。\n\n证件清单按到期日排序(号码脱敏 ****后4位),过期/即将到期高亮。",
1739
+ "types": [
1740
+ "查看",
1741
+ "回执"
1742
+ ]
1743
+ },
1744
+ {
1745
+ "id": "cert_add",
1746
+ "title": "登记证件(录入)",
1747
+ "wake_word": "登记证件",
1748
+ "status": "",
1749
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「登记证件」。\n\n证件已登记(号码脱敏存储,按到期排序)。\n\n类型:{{type}}\n持有人(选填):{{holder}}\n号码(选填):{{number}}\n签发日(选填):{{issue_date}}\n到期日:{{expiry_date}}",
1750
+ "types": [
1751
+ "采集",
1752
+ "回执"
1753
+ ],
1754
+ "editable_fields": [
1755
+ {
1756
+ "name": "type",
1757
+ "label": "类型",
1758
+ "value": "",
1759
+ "hint": "",
1760
+ "required": true,
1761
+ "kind": "select",
1762
+ "options": [
1763
+ "护照",
1764
+ "身份证",
1765
+ "驾照",
1766
+ "签证",
1767
+ "保险单",
1768
+ "其他"
1769
+ ]
1770
+ },
1771
+ {
1772
+ "name": "holder",
1773
+ "label": "持有人(选填)",
1774
+ "value": "",
1775
+ "hint": "",
1776
+ "required": false,
1777
+ "kind": "text"
1778
+ },
1779
+ {
1780
+ "name": "number",
1781
+ "label": "号码(选填)",
1782
+ "value": "",
1783
+ "hint": "",
1784
+ "required": false,
1785
+ "kind": "text"
1786
+ },
1787
+ {
1788
+ "name": "issue_date",
1789
+ "label": "签发日(选填)",
1790
+ "value": "",
1791
+ "hint": "格式 YYYY-MM-DD",
1792
+ "required": false,
1793
+ "kind": "date"
1794
+ },
1795
+ {
1796
+ "name": "expiry_date",
1797
+ "label": "到期日",
1798
+ "value": "",
1799
+ "hint": "格式 YYYY-MM-DD,如 2026-09-20",
1800
+ "required": true,
1801
+ "kind": "date"
1802
+ }
1803
+ ]
1804
+ },
1805
+ {
1806
+ "id": "cert_archive",
1807
+ "title": "证件归档(照片)",
1808
+ "wake_word": "证件归档",
1809
+ "status": "",
1810
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「证件归档」。\n\n证件照片归档(与证件记录关联)。\n\n证件(选填):{{cert_query}}\n\n【证件照片即将发送:】",
1811
+ "types": [
1812
+ "采集",
1813
+ "回执"
1814
+ ],
1815
+ "editable_fields": [
1816
+ {
1817
+ "name": "cert_query",
1818
+ "label": "证件(选填)",
1819
+ "value": "",
1820
+ "hint": "",
1821
+ "required": false,
1822
+ "kind": "text"
1823
+ }
1824
+ ]
1825
+ },
1826
+ {
1827
+ "id": "cert_update",
1828
+ "title": "更新证件(改到期/持有人/号码)",
1829
+ "wake_word": "更新证件",
1830
+ "status": "",
1831
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「更新证件」。\n\n证件已更新(重登记语义,只改填写的字段)。\n\n证件ID:{{cert_id}}\n到期日(选填):{{expiry_date}}\n持有人(选填):{{holder}}\n号码(选填):{{number}}\n备注(选填):{{note}}",
1832
+ "types": [
1833
+ "采集",
1834
+ "回执"
1835
+ ],
1836
+ "editable_fields": [
1837
+ {
1838
+ "name": "cert_id",
1839
+ "label": "证件ID",
1840
+ "value": "",
1841
+ "hint": "",
1842
+ "required": true,
1843
+ "kind": "text"
1844
+ },
1845
+ {
1846
+ "name": "expiry_date",
1847
+ "label": "到期日(选填)",
1848
+ "value": "",
1849
+ "hint": "格式 YYYY-MM-DD",
1850
+ "required": false,
1851
+ "kind": "date"
1852
+ },
1853
+ {
1854
+ "name": "holder",
1855
+ "label": "持有人(选填)",
1856
+ "value": "",
1857
+ "hint": "",
1858
+ "required": false,
1859
+ "kind": "text"
1860
+ },
1861
+ {
1862
+ "name": "number",
1863
+ "label": "号码(选填)",
1864
+ "value": "",
1865
+ "hint": "",
1866
+ "required": false,
1867
+ "kind": "text"
1868
+ },
1869
+ {
1870
+ "name": "note",
1871
+ "label": "备注(选填)",
1872
+ "value": "",
1873
+ "hint": "",
1874
+ "required": false,
1875
+ "kind": "text"
1876
+ }
1877
+ ]
1878
+ }
1879
+ ]
1880
+ },
1881
+ {
1882
+ "id": "receipt_4",
1883
+ "label": "账号密码",
1884
+ "scenes": [
1885
+ {
1886
+ "id": "account_list",
1887
+ "title": "查账号(密码脱敏)",
1888
+ "wake_word": "查账号",
1889
+ "status": "",
1890
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「查账号」。\n\n账号清单(平台/用户名/类型,密码 ****** 脱敏)。",
1891
+ "types": [
1892
+ "查看",
1893
+ "回执"
1894
+ ]
1895
+ },
1896
+ {
1897
+ "id": "account_add",
1898
+ "title": "存账号(加密存储)",
1899
+ "wake_word": "存账号",
1900
+ "status": "",
1901
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「存账号」。\n\n账号已加密存储(密码永不明文入库/展示)。\n\n平台:{{platform}}\n用户名:{{username}}\n密码:{{password}}\n类型(选填):{{type}}",
1902
+ "types": [
1903
+ "采集",
1904
+ "回执"
1905
+ ],
1906
+ "editable_fields": [
1907
+ {
1908
+ "name": "platform",
1909
+ "label": "平台",
1910
+ "value": "",
1911
+ "hint": "",
1912
+ "required": true,
1913
+ "kind": "text"
1914
+ },
1915
+ {
1916
+ "name": "username",
1917
+ "label": "用户名",
1918
+ "value": "",
1919
+ "hint": "",
1920
+ "required": true,
1921
+ "kind": "text"
1922
+ },
1923
+ {
1924
+ "name": "password",
1925
+ "label": "密码",
1926
+ "value": "",
1927
+ "hint": "",
1928
+ "required": true,
1929
+ "kind": "text"
1930
+ },
1931
+ {
1932
+ "name": "type",
1933
+ "label": "类型(选填)",
1934
+ "value": "",
1935
+ "hint": "空=跳过",
1936
+ "required": false,
1937
+ "kind": "select",
1938
+ "options": [
1939
+ "购物",
1940
+ "银行",
1941
+ "社交",
1942
+ "其他"
1943
+ ]
1944
+ }
1945
+ ]
1946
+ },
1947
+ {
1948
+ "id": "account_update",
1949
+ "title": "改账号(更新录入)",
1950
+ "wake_word": "改账号",
1951
+ "status": "",
1952
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「改账号」。\n\n账号已更新(重新录入语义)。\n\n平台:{{platform}}\n用户名(选填):{{username}}\n密码(选填):{{password}}\n类型(选填):{{type}}",
1953
+ "types": [
1954
+ "采集",
1955
+ "回执"
1956
+ ],
1957
+ "editable_fields": [
1958
+ {
1959
+ "name": "platform",
1960
+ "label": "平台",
1961
+ "value": "",
1962
+ "hint": "",
1963
+ "required": true,
1964
+ "kind": "text"
1965
+ },
1966
+ {
1967
+ "name": "username",
1968
+ "label": "用户名(选填)",
1969
+ "value": "",
1970
+ "hint": "",
1971
+ "required": false,
1972
+ "kind": "text"
1973
+ },
1974
+ {
1975
+ "name": "password",
1976
+ "label": "密码(选填)",
1977
+ "value": "",
1978
+ "hint": "",
1979
+ "required": false,
1980
+ "kind": "text"
1981
+ },
1982
+ {
1983
+ "name": "type",
1984
+ "label": "类型(选填)",
1985
+ "value": "",
1986
+ "hint": "",
1987
+ "required": false,
1988
+ "kind": "text"
1989
+ }
1990
+ ]
1991
+ },
1992
+ {
1993
+ "id": "account_show",
1994
+ "title": "看密码(敏感回显)",
1995
+ "wake_word": "看密码",
1996
+ "status": "",
1997
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「看密码」。\n\n密码仅在本会话回显(敏感操作,永不进 /复制数据)。\n\n平台:{{platform}}",
1998
+ "types": [
1999
+ "查看",
2000
+ "回执"
2001
+ ],
2002
+ "editable_fields": [
2003
+ {
2004
+ "name": "platform",
2005
+ "label": "平台",
2006
+ "value": "",
2007
+ "hint": "",
2008
+ "required": true,
2009
+ "kind": "text"
2010
+ }
2011
+ ]
2012
+ }
2013
+ ]
2014
+ }
2015
+ ]
2016
+ },
2017
+ {
2018
+ "id": "family",
2019
+ "icon": "👨‍👩‍👧",
2020
+ "label": "家庭协作",
2021
+ "subgroups": [
2022
+ {
2023
+ "id": "family_1",
2024
+ "label": "借用管理",
2025
+ "scenes": [
2026
+ {
2027
+ "id": "borrow_manage",
2028
+ "title": "借用管理(借出/借入/归还/催还)",
2029
+ "wake_word": "借用",
2030
+ "status": "",
2031
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「借用」。\n\n借出/借入分区 + 超期标记 + 催还文案复制,归还确认回执。\n\n操作:{{op}}\n物品:{{item}}\n对象:{{person}}",
2032
+ "types": [
2033
+ "查看",
2034
+ "选择",
2035
+ "回执"
2036
+ ],
2037
+ "editable_fields": [
2038
+ {
2039
+ "name": "op",
2040
+ "label": "操作",
2041
+ "value": "",
2042
+ "hint": "",
2043
+ "required": true,
2044
+ "kind": "select",
2045
+ "options": [
2046
+ "借出",
2047
+ "借入",
2048
+ "归还",
2049
+ "催还"
2050
+ ]
2051
+ },
2052
+ {
2053
+ "name": "item",
2054
+ "label": "物品",
2055
+ "value": "",
2056
+ "hint": "如 钥匙",
2057
+ "required": true,
2058
+ "kind": "text"
2059
+ },
2060
+ {
2061
+ "name": "person",
2062
+ "label": "对象",
2063
+ "value": "",
2064
+ "hint": "",
2065
+ "required": true,
2066
+ "kind": "text"
2067
+ }
2068
+ ]
2069
+ }
2070
+ ]
2071
+ },
2072
+ {
2073
+ "id": "family_2",
2074
+ "label": "家人档案",
2075
+ "scenes": [
2076
+ {
2077
+ "id": "family_members",
2078
+ "title": "家人档案(成员/物品归属标记)",
2079
+ "wake_word": "家人档案",
2080
+ "status": "",
2081
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「家人档案」。\n\n成员列表 + 增删 + 物品归属批量标记,确认后回执。\n\n操作:{{op}}\n详情:{{detail}}",
2082
+ "types": [
2083
+ "查看",
2084
+ "选择",
2085
+ "回执"
2086
+ ],
2087
+ "editable_fields": [
2088
+ {
2089
+ "name": "op",
2090
+ "label": "操作",
2091
+ "value": "",
2092
+ "hint": "",
2093
+ "required": true,
2094
+ "kind": "select",
2095
+ "options": [
2096
+ "查看",
2097
+ "添加成员",
2098
+ "移除成员",
2099
+ "标记归属"
2100
+ ]
2101
+ },
2102
+ {
2103
+ "name": "detail",
2104
+ "label": "详情",
2105
+ "value": "",
2106
+ "hint": "",
2107
+ "required": true,
2108
+ "kind": "text"
2109
+ }
2110
+ ]
2111
+ }
2112
+ ]
2113
+ }
2114
+ ]
2115
+ },
2116
+ {
2117
+ "id": "setup",
2118
+ "icon": "🚀",
2119
+ "label": "开始使用",
2120
+ "subgroups": [
2121
+ {
2122
+ "id": "setup_1",
2123
+ "label": "开始使用",
2124
+ "scenes": [
2125
+ {
2126
+ "id": "first_use",
2127
+ "title": "首次使用(初始化工作流)",
2128
+ "wake_word": "首次使用",
2129
+ "status": "",
2130
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「首次使用」。\n\n6 步向导(环境检测→配置→建库→建分类→引导→回执),幂等可重试。",
2131
+ "types": [
2132
+ "向导",
2133
+ "回执"
2134
+ ]
2135
+ },
2136
+ {
2137
+ "id": "lint_health",
2138
+ "title": "数据检查(健康报告)",
2139
+ "wake_word": "查异常",
2140
+ "status": "",
2141
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「查异常」。\n\n环境信息 + 8 检查项(标签/位置/状态/照片/价格/日期/相似位置),勾选复制修复引导,只建议不自动改。",
2142
+ "types": [
2143
+ "查看",
2144
+ "选择"
2145
+ ]
2146
+ },
2147
+ {
2148
+ "id": "backup_export",
2149
+ "title": "备份与导出(数据资产)",
2150
+ "wake_word": "备份导出",
2151
+ "status": "",
2152
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「备份导出」。\n\n备份(数据库+照片打包,保留 N 份)+ 导出(JSON/CSV),完成回执 + 备份历史 + 距上次备份天数。\n\n操作:{{op}}\n格式(选填):{{export_format}}",
2153
+ "types": [
2154
+ "采集",
2155
+ "回执"
2156
+ ],
2157
+ "editable_fields": [
2158
+ {
2159
+ "name": "op",
2160
+ "label": "操作",
2161
+ "value": "",
2162
+ "hint": "",
2163
+ "required": true,
2164
+ "kind": "select",
2165
+ "options": [
2166
+ "备份",
2167
+ "导出"
2168
+ ]
2169
+ },
2170
+ {
2171
+ "name": "export_format",
2172
+ "label": "格式(选填)",
2173
+ "value": "",
2174
+ "hint": "空=JSON",
2175
+ "required": false,
2176
+ "kind": "select",
2177
+ "options": [
2178
+ "JSON",
2179
+ "CSV"
2180
+ ]
2181
+ }
2182
+ ]
2183
+ },
2184
+ {
2185
+ "id": "import_restore",
2186
+ "title": "导入与恢复(迁移)",
2187
+ "wake_word": "导入恢复",
2188
+ "status": "",
2189
+ "prompt_template": "请你加载技能 居家管家,执行唤醒词「导入恢复」。\n\n文件选择(预告式)→ 校验 → 冲突预览 → 确认导入(导入前自动备份),失败回滚数据不变。",
2190
+ "types": [
2191
+ "向导",
2192
+ "回执"
2193
+ ]
2194
+ }
2195
+ ]
2196
+ }
2197
+ ]
2198
+ },
2199
+ {
2200
+ "id": "link",
2201
+ "icon": "🔗",
2202
+ "label": "联动功能",
2203
+ "subgroups": [
2204
+ {
2205
+ "id": "link_1",
2206
+ "label": "联动总览",
2207
+ "scenes": [
2208
+ {
2209
+ "id": "link_overview",
2210
+ "title": "联动功能总览(能力索引)",
2211
+ "wake_word": "联动总览",
2212
+ "status": "",
2213
+ "prompt_template": "",
2214
+ "types": [
2215
+ "查看",
2216
+ "选择"
2217
+ ]
2218
+ }
2219
+ ]
2220
+ },
2221
+ {
2222
+ "id": "link_2",
2223
+ "label": "食品联动",
2224
+ "scenes": [
2225
+ {
2226
+ "id": "link_calorie",
2227
+ "title": "食品联动(记到卡路里/查热量)",
2228
+ "wake_word": "记到卡路里",
2229
+ "status": "",
2230
+ "prompt_template": "",
2231
+ "types": [
2232
+ "查看",
2233
+ "选择",
2234
+ "回执"
2235
+ ]
2236
+ }
2237
+ ]
2238
+ },
2239
+ {
2240
+ "id": "link_3",
2241
+ "label": "价格联动",
2242
+ "scenes": [
2243
+ {
2244
+ "id": "link_accounting",
2245
+ "title": "价格联动(记到记账)",
2246
+ "wake_word": "记到记账",
2247
+ "status": "",
2248
+ "prompt_template": "",
2249
+ "types": [
2250
+ "查看",
2251
+ "选择",
2252
+ "回执"
2253
+ ]
2254
+ }
2255
+ ]
2256
+ }
2257
+ ],
2258
+ "deprecated": true
2259
+ }
2260
+ ];
2261
+ /** 全部场景(含登记位 3 条:渲染侧按组过滤,见 HELP_GROUPS)。 */
2262
+ export const HELP_ASSETS = HELP_GROUPS.flatMap((g) => g.subgroups.flatMap((s) => s.scenes));
2263
+ /** 场景 id → 场景(模板把 id 当字典键,重名即后写覆盖前者)。 */
2264
+ export const HELP_SCENE_BY_ID = Object.fromEntries(HELP_ASSETS.map((s) => [s.id, s]));
2265
+ export const HELP_ASSET_TOTAL = HELP_ASSETS.length;
2266
+ export const HELP_GROUP_COMMAND_PREFIXES = [
2267
+ {
2268
+ "group": "items",
2269
+ "prefixes": [
2270
+ "home.item",
2271
+ "home.tag",
2272
+ "home.inventory"
2273
+ ]
2274
+ },
2275
+ {
2276
+ "group": "space",
2277
+ "prefixes": [
2278
+ "home.location"
2279
+ ]
2280
+ },
2281
+ {
2282
+ "group": "outfit",
2283
+ "prefixes": [
2284
+ "home.outfit",
2285
+ "home.trip"
2286
+ ]
2287
+ },
2288
+ {
2289
+ "group": "stats",
2290
+ "prefixes": [
2291
+ "home.stats"
2292
+ ]
2293
+ },
2294
+ {
2295
+ "group": "express",
2296
+ "prefixes": [
2297
+ "home.shopping"
2298
+ ]
2299
+ },
2300
+ {
2301
+ "group": "receipt",
2302
+ "prefixes": [
2303
+ "home.ticket"
2304
+ ]
2305
+ },
2306
+ {
2307
+ "group": "family",
2308
+ "prefixes": [
2309
+ "home.care"
2310
+ ]
2311
+ },
2312
+ {
2313
+ "group": "setup",
2314
+ "prefixes": [
2315
+ "home.care"
2316
+ ]
2317
+ },
2318
+ {
2319
+ "group": "link",
2320
+ "prefixes": []
2321
+ }
2322
+ ];
2323
+ //# sourceMappingURL=helpAssets.js.map