skill-memo-ilife 0.3.2 → 0.3.13

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 (320) hide show
  1. package/SKILL.md +33 -34
  2. package/dist/checkin/index.d.ts +8 -0
  3. package/dist/checkin/index.d.ts.map +1 -0
  4. package/dist/checkin/index.js +8 -0
  5. package/dist/checkin/index.js.map +1 -0
  6. package/dist/checkin/receipt.d.ts +17 -0
  7. package/dist/checkin/receipt.d.ts.map +1 -0
  8. package/dist/checkin/receipt.js +63 -0
  9. package/dist/checkin/receipt.js.map +1 -0
  10. package/dist/checkin/routes.d.ts +4 -0
  11. package/dist/checkin/routes.d.ts.map +1 -1
  12. package/dist/checkin/routes.js +2 -2
  13. package/dist/checkin/routes.js.map +1 -1
  14. package/dist/cli/cmd_read.js +19 -53
  15. package/dist/cli/cmd_read.js.map +1 -1
  16. package/dist/cli/config.d.ts +4 -4
  17. package/dist/cli/config.d.ts.map +1 -1
  18. package/dist/cli/config.js +25 -4
  19. package/dist/cli/config.js.map +1 -1
  20. package/dist/cli/health/items.js +2 -2
  21. package/dist/cli/health/items.js.map +1 -1
  22. package/dist/cli/health.d.ts.map +1 -1
  23. package/dist/cli/health.js +3 -2
  24. package/dist/cli/health.js.map +1 -1
  25. package/dist/cli/keys.d.ts +6 -3
  26. package/dist/cli/keys.d.ts.map +1 -1
  27. package/dist/cli/keys.js +2 -5
  28. package/dist/cli/keys.js.map +1 -1
  29. package/dist/cli/registry.d.ts +1 -1
  30. package/dist/{fetch/db.d.ts → db/readonly.d.ts} +1 -1
  31. package/dist/db/readonly.d.ts.map +1 -0
  32. package/dist/{fetch/db.js → db/readonly.js} +5 -5
  33. package/dist/db/readonly.js.map +1 -0
  34. package/dist/help/lookup.d.ts +18 -1
  35. package/dist/help/lookup.d.ts.map +1 -1
  36. package/dist/help/lookup.js +53 -37
  37. package/dist/help/lookup.js.map +1 -1
  38. package/dist/help/sceneData.js +1 -1
  39. package/dist/help/scenes/checkin.d.ts +1 -1
  40. package/dist/help/scenes/checkin.js +1 -1
  41. package/dist/help/scenes/init.d.ts +1 -1
  42. package/dist/help/scenes/init.js +1 -1
  43. package/dist/help/scenes/memo.d.ts +1 -1
  44. package/dist/help/scenes/memo.js +1 -1
  45. package/dist/help/scenes/mood.d.ts +1 -1
  46. package/dist/help/scenes/mood.js +1 -1
  47. package/dist/help/scenes/remind.d.ts +1 -1
  48. package/dist/help/scenes/remind.js +2 -2
  49. package/dist/help/scenes/remind.js.map +1 -1
  50. package/dist/help/scenes/search.d.ts +1 -1
  51. package/dist/help/scenes/search.js +1 -1
  52. package/dist/help/scenes/sync.d.ts +1 -1
  53. package/dist/help/scenes/sync.js +1 -1
  54. package/dist/help/scenes/wish.d.ts +1 -1
  55. package/dist/help/scenes/wish.js +1 -1
  56. package/dist/index.d.ts +11 -4
  57. package/dist/index.d.ts.map +1 -1
  58. package/dist/index.js +11 -5
  59. package/dist/index.js.map +1 -1
  60. package/dist/init/diagnosis.d.ts +2 -1
  61. package/dist/init/diagnosis.d.ts.map +1 -1
  62. package/dist/init/diagnosis.js.map +1 -1
  63. package/dist/init/page.d.ts +3 -2
  64. package/dist/init/page.d.ts.map +1 -1
  65. package/dist/init/page.js +20 -10
  66. package/dist/init/page.js.map +1 -1
  67. package/dist/init/routes.d.ts +4 -1
  68. package/dist/init/routes.d.ts.map +1 -1
  69. package/dist/init/routes.js +14 -0
  70. package/dist/init/routes.js.map +1 -1
  71. package/dist/init/run.d.ts.map +1 -1
  72. package/dist/init/run.js +7 -1
  73. package/dist/init/run.js.map +1 -1
  74. package/dist/{fetch → memo}/batch.d.ts +6 -2
  75. package/dist/memo/batch.d.ts.map +1 -0
  76. package/dist/{fetch → memo}/batch.js +8 -4
  77. package/dist/memo/batch.js.map +1 -0
  78. package/dist/memo/category.d.ts.map +1 -0
  79. package/dist/{policy → memo}/category.js +1 -1
  80. package/dist/memo/category.js.map +1 -0
  81. package/dist/memo/commands.d.ts +3 -12
  82. package/dist/memo/commands.d.ts.map +1 -1
  83. package/dist/memo/commands.js +1 -9
  84. package/dist/memo/commands.js.map +1 -1
  85. package/dist/{policy → memo}/crud.d.ts +1 -1
  86. package/dist/memo/crud.d.ts.map +1 -0
  87. package/dist/{policy → memo}/crud.js +22 -7
  88. package/dist/memo/crud.js.map +1 -0
  89. package/dist/memo/index.d.ts +4 -2
  90. package/dist/memo/index.d.ts.map +1 -1
  91. package/dist/memo/index.js +4 -2
  92. package/dist/memo/index.js.map +1 -1
  93. package/dist/memo/media.d.ts.map +1 -0
  94. package/dist/{policy → memo}/media.js +2 -2
  95. package/dist/memo/media.js.map +1 -0
  96. package/dist/memo/receipt.d.ts +35 -0
  97. package/dist/memo/receipt.d.ts.map +1 -0
  98. package/dist/memo/receipt.js +62 -0
  99. package/dist/memo/receipt.js.map +1 -0
  100. package/dist/memo/receiptPage.d.ts +44 -0
  101. package/dist/memo/receiptPage.d.ts.map +1 -0
  102. package/dist/memo/receiptPage.js +50 -0
  103. package/dist/memo/receiptPage.js.map +1 -0
  104. package/dist/memo/routes.d.ts.map +1 -1
  105. package/dist/memo/routes.js +32 -0
  106. package/dist/memo/routes.js.map +1 -1
  107. package/dist/memo/run.d.ts +9 -8
  108. package/dist/memo/run.d.ts.map +1 -1
  109. package/dist/memo/run.js +140 -97
  110. package/dist/memo/run.js.map +1 -1
  111. package/dist/mood/routes.d.ts.map +1 -1
  112. package/dist/mood/routes.js +36 -0
  113. package/dist/mood/routes.js.map +1 -1
  114. package/dist/remind/index.d.ts +5 -2
  115. package/dist/remind/index.d.ts.map +1 -1
  116. package/dist/remind/index.js +5 -2
  117. package/dist/remind/index.js.map +1 -1
  118. package/dist/{policy/reminder.d.ts → remind/policy.d.ts} +1 -1
  119. package/dist/remind/policy.d.ts.map +1 -0
  120. package/dist/{policy/reminder.js → remind/policy.js} +2 -2
  121. package/dist/remind/policy.js.map +1 -0
  122. package/dist/remind/routes.d.ts +1 -2
  123. package/dist/remind/routes.d.ts.map +1 -1
  124. package/dist/remind/routes.js +32 -2
  125. package/dist/remind/routes.js.map +1 -1
  126. package/dist/remind/run.d.ts +1 -1
  127. package/dist/remind/run.d.ts.map +1 -1
  128. package/dist/remind/run.js +112 -7
  129. package/dist/remind/run.js.map +1 -1
  130. package/dist/{fetch/reminders.d.ts → remind/store.d.ts} +2 -2
  131. package/dist/remind/store.d.ts.map +1 -0
  132. package/dist/{fetch/reminders.js → remind/store.js} +3 -3
  133. package/dist/remind/store.js.map +1 -0
  134. package/dist/render/envelope.d.ts.map +1 -1
  135. package/dist/render/envelope.js +3 -2
  136. package/dist/render/envelope.js.map +1 -1
  137. package/dist/render/html.js +1 -1
  138. package/dist/render/html.js.map +1 -1
  139. package/dist/render/index.d.ts +4 -1
  140. package/dist/render/index.d.ts.map +1 -1
  141. package/dist/render/index.js +5 -3
  142. package/dist/render/index.js.map +1 -1
  143. package/dist/render/listPage.d.ts +34 -0
  144. package/dist/render/listPage.d.ts.map +1 -0
  145. package/dist/render/listPage.js +39 -0
  146. package/dist/render/listPage.js.map +1 -0
  147. package/dist/render/memoPageAssets.d.ts +32 -0
  148. package/dist/render/memoPageAssets.d.ts.map +1 -0
  149. package/dist/render/memoPageAssets.js +320 -0
  150. package/dist/render/memoPageAssets.js.map +1 -0
  151. package/dist/render/pageAssets.js +3 -3
  152. package/dist/render/pageAssets.js.map +1 -1
  153. package/dist/render/pages.d.ts +9 -2
  154. package/dist/render/pages.d.ts.map +1 -1
  155. package/dist/render/pages.js +8 -16
  156. package/dist/render/pages.js.map +1 -1
  157. package/dist/render/receipt.d.ts +12 -3
  158. package/dist/render/receipt.d.ts.map +1 -1
  159. package/dist/render/receipt.js +55 -10
  160. package/dist/render/receipt.js.map +1 -1
  161. package/dist/search/routes.d.ts.map +1 -1
  162. package/dist/search/routes.js +1 -0
  163. package/dist/search/routes.js.map +1 -1
  164. package/dist/search/run.d.ts +11 -3
  165. package/dist/search/run.d.ts.map +1 -1
  166. package/dist/search/run.js +130 -11
  167. package/dist/search/run.js.map +1 -1
  168. package/dist/shared/commandSpec.d.ts +4 -5
  169. package/dist/shared/commandSpec.d.ts.map +1 -1
  170. package/dist/shared/errors.d.ts.map +1 -0
  171. package/dist/shared/errors.js.map +1 -0
  172. package/dist/{fetch → shared}/paths.d.ts +1 -1
  173. package/dist/shared/paths.d.ts.map +1 -0
  174. package/dist/{fetch → shared}/paths.js +3 -3
  175. package/dist/shared/paths.js.map +1 -0
  176. package/dist/shared/validators.d.ts +3 -0
  177. package/dist/shared/validators.d.ts.map +1 -0
  178. package/dist/shared/validators.js +15 -0
  179. package/dist/shared/validators.js.map +1 -0
  180. package/dist/sync/auth.d.ts.map +1 -0
  181. package/dist/{fetch → sync}/auth.js +3 -3
  182. package/dist/sync/auth.js.map +1 -0
  183. package/dist/sync/commands.d.ts.map +1 -1
  184. package/dist/sync/commands.js.map +1 -1
  185. package/dist/sync/feishu.d.ts.map +1 -0
  186. package/dist/{fetch → sync}/feishu.js +9 -9
  187. package/dist/sync/feishu.js.map +1 -0
  188. package/dist/sync/index.d.ts +5 -2
  189. package/dist/sync/index.d.ts.map +1 -1
  190. package/dist/sync/index.js +4 -2
  191. package/dist/sync/index.js.map +1 -1
  192. package/dist/sync/run.d.ts +1 -1
  193. package/dist/sync/run.d.ts.map +1 -1
  194. package/dist/sync/run.js +2 -1
  195. package/dist/sync/run.js.map +1 -1
  196. package/dist/{fetch → sync}/sentinel.d.ts +1 -1
  197. package/dist/sync/sentinel.d.ts.map +1 -0
  198. package/dist/{fetch → sync}/sentinel.js +1 -2
  199. package/dist/sync/sentinel.js.map +1 -0
  200. package/dist/triggers/routes.generated.d.ts +1 -1
  201. package/dist/triggers/routes.generated.d.ts.map +1 -1
  202. package/dist/triggers/routes.generated.js +19 -6
  203. package/dist/triggers/routes.generated.js.map +1 -1
  204. package/dist/triggers/routing.d.ts +7 -0
  205. package/dist/triggers/routing.d.ts.map +1 -0
  206. package/dist/triggers/routing.js +35 -0
  207. package/dist/triggers/routing.js.map +1 -0
  208. package/dist/wish/complete.d.ts +1 -1
  209. package/dist/wish/complete.d.ts.map +1 -1
  210. package/dist/wish/complete.js +1 -1
  211. package/dist/wish/complete.js.map +1 -1
  212. package/dist/wish/due.d.ts +1 -1
  213. package/dist/wish/due.d.ts.map +1 -1
  214. package/dist/wish/due.js +1 -1
  215. package/dist/wish/due.js.map +1 -1
  216. package/dist/wish/ensure.d.ts +2 -2
  217. package/dist/wish/ensure.d.ts.map +1 -1
  218. package/dist/wish/ensure.js +2 -2
  219. package/dist/wish/ensure.js.map +1 -1
  220. package/dist/wish/gate.d.ts +1 -1
  221. package/dist/wish/gate.d.ts.map +1 -1
  222. package/dist/wish/gate.js +1 -1
  223. package/dist/wish/gate.js.map +1 -1
  224. package/dist/wish/index.d.ts +4 -0
  225. package/dist/wish/index.d.ts.map +1 -1
  226. package/dist/wish/index.js +7 -0
  227. package/dist/wish/index.js.map +1 -1
  228. package/dist/{policy/wish.d.ts → wish/policy.d.ts} +1 -1
  229. package/dist/wish/policy.d.ts.map +1 -0
  230. package/dist/{policy/wish.js → wish/policy.js} +3 -3
  231. package/dist/wish/policy.js.map +1 -0
  232. package/dist/wish/receipt.d.ts +45 -0
  233. package/dist/wish/receipt.d.ts.map +1 -0
  234. package/dist/wish/receipt.js +68 -0
  235. package/dist/wish/receipt.js.map +1 -0
  236. package/dist/wish/reconcile.d.ts +1 -1
  237. package/dist/wish/reconcile.d.ts.map +1 -1
  238. package/dist/wish/reconcile.js +2 -2
  239. package/dist/wish/reconcile.js.map +1 -1
  240. package/dist/wish/routes.d.ts.map +1 -1
  241. package/dist/wish/routes.js +11 -1
  242. package/dist/wish/routes.js.map +1 -1
  243. package/dist/wish/run.d.ts +11 -3
  244. package/dist/wish/run.d.ts.map +1 -1
  245. package/dist/wish/run.js +75 -7
  246. package/dist/wish/run.js.map +1 -1
  247. package/dist/wish/taskRemove.js +2 -2
  248. package/dist/wish/taskRemove.js.map +1 -1
  249. package/dist/wish/taskSync.d.ts +1 -1
  250. package/dist/wish/taskSync.d.ts.map +1 -1
  251. package/dist/wish/taskSync.js +3 -3
  252. package/dist/wish/taskSync.js.map +1 -1
  253. package/dist/wish/taskWrite.d.ts.map +1 -0
  254. package/dist/{fetch → wish}/taskWrite.js +2 -2
  255. package/dist/wish/taskWrite.js.map +1 -0
  256. package/dist/wish/tasks.d.ts.map +1 -0
  257. package/dist/{fetch → wish}/tasks.js +2 -2
  258. package/dist/wish/tasks.js.map +1 -0
  259. package/dist/wish/wizards.d.ts +1 -1
  260. package/dist/wish/wizards.d.ts.map +1 -1
  261. package/dist/wish/wizards.js +1 -1
  262. package/dist/wish/wizards.js.map +1 -1
  263. package/package.json +4 -7
  264. package/templates/change_category.html +52 -28
  265. package/templates/init_report.html +15 -14
  266. package/templates/memo_query.html +59 -24
  267. package/templates/receipt.html +97 -27
  268. package/templates/sync_report.html +106 -98
  269. package/templates/wish_complete.html +48 -30
  270. package/templates/wish_plan.html +35 -20
  271. package/dist/fetch/auth.d.ts.map +0 -1
  272. package/dist/fetch/auth.js.map +0 -1
  273. package/dist/fetch/batch.d.ts.map +0 -1
  274. package/dist/fetch/batch.js.map +0 -1
  275. package/dist/fetch/db.d.ts.map +0 -1
  276. package/dist/fetch/db.js.map +0 -1
  277. package/dist/fetch/errors.d.ts.map +0 -1
  278. package/dist/fetch/errors.js.map +0 -1
  279. package/dist/fetch/feishu.d.ts.map +0 -1
  280. package/dist/fetch/feishu.js.map +0 -1
  281. package/dist/fetch/index.d.ts +0 -19
  282. package/dist/fetch/index.d.ts.map +0 -1
  283. package/dist/fetch/index.js +0 -13
  284. package/dist/fetch/index.js.map +0 -1
  285. package/dist/fetch/paths.d.ts.map +0 -1
  286. package/dist/fetch/paths.js.map +0 -1
  287. package/dist/fetch/reminders.d.ts.map +0 -1
  288. package/dist/fetch/reminders.js.map +0 -1
  289. package/dist/fetch/sentinel.d.ts.map +0 -1
  290. package/dist/fetch/sentinel.js.map +0 -1
  291. package/dist/fetch/taskWrite.d.ts.map +0 -1
  292. package/dist/fetch/taskWrite.js.map +0 -1
  293. package/dist/fetch/tasks.d.ts.map +0 -1
  294. package/dist/fetch/tasks.js.map +0 -1
  295. package/dist/policy/category.d.ts.map +0 -1
  296. package/dist/policy/category.js.map +0 -1
  297. package/dist/policy/crud.d.ts.map +0 -1
  298. package/dist/policy/crud.js.map +0 -1
  299. package/dist/policy/index.d.ts +0 -11
  300. package/dist/policy/index.d.ts.map +0 -1
  301. package/dist/policy/index.js +0 -8
  302. package/dist/policy/index.js.map +0 -1
  303. package/dist/policy/media.d.ts.map +0 -1
  304. package/dist/policy/media.js.map +0 -1
  305. package/dist/policy/reminder.d.ts.map +0 -1
  306. package/dist/policy/reminder.js.map +0 -1
  307. package/dist/policy/wakewords.d.ts +0 -14
  308. package/dist/policy/wakewords.d.ts.map +0 -1
  309. package/dist/policy/wakewords.js +0 -68
  310. package/dist/policy/wakewords.js.map +0 -1
  311. package/dist/policy/wish.d.ts.map +0 -1
  312. package/dist/policy/wish.js.map +0 -1
  313. /package/dist/{policy → memo}/category.d.ts +0 -0
  314. /package/dist/{policy → memo}/media.d.ts +0 -0
  315. /package/dist/{fetch → shared}/errors.d.ts +0 -0
  316. /package/dist/{fetch → shared}/errors.js +0 -0
  317. /package/dist/{fetch → sync}/auth.d.ts +0 -0
  318. /package/dist/{fetch → sync}/feishu.d.ts +0 -0
  319. /package/dist/{fetch → wish}/taskWrite.d.ts +0 -0
  320. /package/dist/{fetch → wish}/tasks.d.ts +0 -0
package/SKILL.md CHANGED
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: skill-memo-ilife
3
- description: "「备忘录HELP」→memo.help.lookup 出备忘录自己的 HELP 文件(老骨架 8 域/13 二级组/30 场景,走仓内通用 help 模板);唯一出口 memo-cmd-read。触发词:备忘录 HELP(不分大小写)。文件 DB 笔记:按关键词/时间/分类/子分类搜与看、记一条、改一条、删一条(真删须 confirm)、批量改分类、提醒(设/查/废弃/完成)、心愿排期、统计、飞书同步。"
3
+ description: "「备忘录HELP」→memo.help.lookup 出备忘录自己的 HELP 文件(老骨架 8 域/13 二级组/30 场景,走仓内通用 help 模板);唯一出口 memo-cmd-read。触发词:备忘录 HELP(不分大小写)。文件 DB 笔记:按关键词/时间/分类/子分类搜与看、记一条、改一条、删一条(真删须 confirm)、批量改分类、提醒(设/查/废弃/完成)、心愿排期、飞书同步。"
4
4
  ---
5
5
  # 备忘录(memo)SKILL
6
6
 
@@ -41,39 +41,38 @@ memo-cmd-read memo.help.lookup # 说「备忘录 HELP」(
41
41
  <!-- HELP-AUTO-START -->
42
42
  | 唤醒词 | key | shape | 例 |
43
43
  |---|---|---|---|
44
- | 首次使用 | memo.init | receipt | `memo-cmd-read memo.init` |
45
- | 删备忘 | memo.remove | receipt | `memo-cmd-read memo.remove --params '{"id":"<id>"}'` |
46
- | 按时间搜备忘 | memo.search | list | `memo-cmd-read memo.search --params '{"start":"2026-07-01","end":"2026-07-07"}'` |
47
- | 查已提醒备忘 | memo.remind | list | `memo-cmd-read memo.remind --params '{"done":false}'` |
48
- | 批量改分类 | memo.batch | receipt | `memo-cmd-read memo.batch` |
49
- | 改子分类 | memo.update | receipt | `memo-cmd-read memo.update --params '{"id":"<id>"}'` |
50
- | 搜备忘 | memo.search | list | `memo-cmd-read memo.search` |
44
+ | 心愿排期 | memo.wish | list | `memo-cmd-read memo.wish` |
45
+ | 搜备忘 | memo.search | list | `memo-cmd-read memo.search --params '{"q":"牛奶"}'` |
51
46
  | 查备忘 | memo.search | list | `memo-cmd-read memo.search` |
52
- | 看备忘 | memo.detail | detail | `memo-cmd-read memo.detail --params '{"id":"<id>"}'` |
47
+ | 看备忘 | memo.detail | detail | `memo-cmd-read memo.detail --params '{"id":1}'` |
48
+ | 按时间搜备忘 | memo.search | list | `memo-cmd-read memo.search --params '{"start":"YYYY-MM-DD","end":"YYYY-MM-DD"}'` |
49
+ | 查打卡 | memo.search | list | `memo-cmd-read memo.search --params '{"category":"打卡"}'` |
50
+ | 查情绪 | memo.search | list | `memo-cmd-read memo.search --params '{"category":"情绪日记"}'` |
51
+ | 查心愿 | memo.wish | list | `memo-cmd-read memo.wish` |
53
52
  | 看提醒 | memo.remind | list | `memo-cmd-read memo.remind` |
54
- | 查提醒 | memo.remind | list | `memo-cmd-read memo.remind` |
55
- | 设提醒 | memo.reminder | receipt | `memo-cmd-read memo.reminder --params '{"remind_at":"2026-10-01 09:00"}'` |
56
- | 记提醒 | memo.create | receipt | `memo-cmd-read memo.create --params '{"remindAt":"2026-10-01 09:00"}'` |
57
- | 废弃提醒 | memo.remove | receipt | `memo-cmd-read memo.remove --params '{"mode":"abandon"}'` |
58
- | 完成心愿 | memo.update | receipt | `memo-cmd-read memo.update --params '{"done":true}'` |
59
- | 心愿排期 | memo.wish | list | `memo-cmd-read memo.wish` |
60
- | 记一条 | memo.create | receipt | `memo-cmd-read memo.create` |
61
- | 添加笔记 | memo.create | receipt | `memo-cmd-read memo.create` |
53
+ | 查已提醒备忘 | memo.remind | list | `memo-cmd-read memo.remind --params '{"mode":"done"}'` |
54
+ | 设提醒 | memo.reminder | receipt | `memo-cmd-read memo.reminder --params '{"note_id":15,"content":"该做保养了","remind_at":"2026-10-01 09:00"}'` |
55
+ | 记备忘 | memo.create | receipt | `memo-cmd-read memo.create --params '{"title":"买牛奶","category":"备忘"}'` |
56
+ | 改备忘 | memo.update | receipt | `memo-cmd-read memo.update --params '{"id":1,"body":"买牛奶两盒"}'` |
57
+ | 删备忘 | memo.remove | receipt | `memo-cmd-read memo.remove --params '{"id":1,"confirm":true}'` |
58
+ | 备忘改分类 | memo.update | receipt | `memo-cmd-read memo.update --params '{"id":1,"category":"打卡"}'` |
59
+ | 备忘改子分类 | memo.update | receipt | `memo-cmd-read memo.update --params '{"id":1,"sub":"早起"}'` |
60
+ | 备忘改分类 | memo.batch | receipt | `memo-cmd-read memo.batch --params '{"fromCategory":"备忘"}'` |
61
+ | 完成心愿 | memo.update | receipt | `memo-cmd-read memo.update --params '{"id":1,"done":true}'` |
62
+ | 记心愿 | memo.create | receipt | `memo-cmd-read memo.create --params '{"title":"学游泳","category":"心愿"}'` |
63
+ | 删心愿 | memo.remove | receipt | `memo-cmd-read memo.remove --params '{"id":1,"confirm":true}'` |
64
+ | 改心愿 | memo.update | receipt | `memo-cmd-read memo.update --params '{"id":1,"body":"学游泳"}'` |
65
+ | 记打卡 | memo.create | receipt | `memo-cmd-read memo.create --params '{"content":"跑步5公里","category":"打卡","sub_category":"跑步"}'` |
66
+ | 删打卡 | memo.remove | receipt | `memo-cmd-read memo.remove --params '{"id":1,"confirm":true}'` |
67
+ | 改打卡 | memo.update | receipt | `memo-cmd-read memo.update --params '{"id":1,"content":"跑步6公里"}'` |
68
+ | 记情绪 | memo.create | receipt | `memo-cmd-read memo.create --params '{"title":"今天很开心","category":"情绪日记"}'` |
69
+ | 删情绪 | memo.remove | receipt | `memo-cmd-read memo.remove --params '{"id":1,"confirm":true}'` |
70
+ | 改情绪 | memo.update | receipt | `memo-cmd-read memo.update --params '{"id":1,"body":"今天很开心"}'` |
62
71
  | 备忘录同步 | memo.sync | receipt | `memo-cmd-read memo.sync` |
63
- | 记心愿 | memo.create | receipt | `memo-cmd-read memo.create --params '{"category":"心愿"}'` |
64
- | 记打卡 | memo.create | receipt | `memo-cmd-read memo.create --params '{"category":"打卡"}'` |
65
- | 记情绪日记 | memo.create | receipt | `memo-cmd-read memo.create --params '{"category":"情绪日记"}'` |
66
- | 查心愿 | memo.wish | list | `memo-cmd-read memo.wish --params '{"category":"心愿"}'` |
67
- | 查打卡 | memo.search | list | `memo-cmd-read memo.search --params '{"category":"打卡"}'` |
68
- | 查情绪日记 | memo.search | list | `memo-cmd-read memo.search --params '{"category":"情绪日记"}'` |
69
- | 改心愿 | memo.update | receipt | `memo-cmd-read memo.update --params '{"category":"心愿","id":"<id>"}'` |
70
- | 改打卡 | memo.update | receipt | `memo-cmd-read memo.update --params '{"category":"打卡","id":"<id>"}'` |
71
- | 改情绪日记 | memo.update | receipt | `memo-cmd-read memo.update --params '{"category":"情绪日记","id":"<id>"}'` |
72
- | 删心愿 | memo.remove | receipt | `memo-cmd-read memo.remove --params '{"category":"心愿","id":"<id>"}'` |
73
- | 删打卡 | memo.remove | receipt | `memo-cmd-read memo.remove --params '{"category":"打卡","id":"<id>"}'` |
74
- | 删情绪日记 | memo.remove | receipt | `memo-cmd-read memo.remove --params '{"category":"情绪日记","id":"<id>"}'` |
75
-
76
- 相关场景:memo.auth、memo.batch、memo.create、memo.detail、memo.help.lookup、memo.init、memo.remind、memo.reminder、memo.remove、memo.search、memo.stats、memo.sync、memo.update、memo.wish(14 联动,key 字符串 P8 落表时冻结)。
72
+ | 首次使用 | memo.init | receipt | `memo-cmd-read memo.init --params '{"data":{"items":[{"name":"数据目录","status":"ok"}],"todos":[],"verify":[]}}'` |
73
+ | 记提醒 | memo.create | receipt | `memo-cmd-read memo.create --params '{"title":"取牛奶","category":"备忘","remindAt":"2026-10-01 09:00"}'` |
74
+
75
+ 相关场景:memo.auth、memo.batch、memo.create、memo.detail、memo.help.lookup、memo.init、memo.remind、memo.reminder、memo.remove、memo.search、memo.sync、memo.update、memo.wish(13 联动,key 字符串 P8 落表时冻结)。
77
76
  <!-- HELP-AUTO-END -->
78
77
 
79
78
  ## HELP 交付(说「备忘录 HELP」走这里,不分大小写)
@@ -81,12 +80,12 @@ memo-cmd-read memo.help.lookup # 说「备忘录 HELP」(
81
80
  - **缺省就是交付物**:`memo-cmd-read memo.help.lookup` **原样调用**即落一份能打开的 HELP 文件——`<库目录>/<产物目录>/备忘录_HELP_<YYYYMMDD_HHMMSS>.html`(`<库目录>`=配置文件 `~/.ilife/memo.yaml` 的 `db.dir`,空串=数据目录 `~/.ilife/data/`;`<产物目录>`=同文件的 `html.dir`,默认 `memo_html`,**扁平一段、不加 `help/` 一层**;8 域/13 二级组/30 场景,走仓内通用 help 模板)。stdout 的 `delivery.path` 是**绝对路径**、`delivery.bytes` 是文件字节数;回话就把这个路径给用户(回执即真相)。
82
81
  **完成标准**:`delivery.path` 指的那个文件真的存在、大小=`delivery.bytes`、退出码 0——三条都核过才算交付,核不过就照实说失败。
83
82
  - **反复读不再涨目录(#245)**:同一主体**一天内只留一份**——24 小时内再读就**复用已有那份**(不新建、不改写;回执给的就是它)。要别的窗口给 `--params '{"reuseHours":3}'`(小时);要**每次都要一份最新的**给 `{"reuseHours":0}`。窗口内若已有一份、而你刚改过 HELP 内容,那份旧产物**不会被自动刷新**(窗口语义如此)——真要新的就带 `reuseHours:0`。
84
- - **要速查表才加参数**:`--params '{"mode":"lookup"}'` 落同目录 `备忘录_速查表_<YYYYMMDD_HHMMSS>.html`(28 条唤醒词一行一条:唤醒词/命令/形状/调用形/一句话)。与 HELP 文件**分名**,两份产物不撞车;这一支同样吃上面的复用窗口。
83
+ - **要速查表才加参数**:`--params '{"mode":"lookup"}'` 落同目录 `备忘录_速查表_<YYYYMMDD_HHMMSS>.html`(29 条**场景主名**一行一条:唤醒词/命令/形状/调用形/一句话;别名不列)。与 HELP 文件**分名**,两份产物不撞车;这一支同样吃上面的复用窗口。
85
84
  - **要现找才加参数**:`--params '{"q":"帮我搜备忘"}'` 只回命中条目(JSON),**不落盘**;要落盘再给 `--html`。`q` 与 `mode` 互斥,`mode` 只认 `lookup`,违反即退出码 2。
86
85
  - **`--html <路径>`=显式落点**:逐字用你给的路径、缺父目录自动建、**覆盖写**(不参与同一秒 `_N` 递补)。给 `--html` 时缺省那支落整页 HELP,`q`/`mode:"lookup"` 那两支落该次的分节页。
87
86
  - **边界**:看 HELP **不开库、不建库**——跑完数据目录里仍没有 `memo.db`;这条命令只交页面与索引,不读也不写笔记内容。
88
- - **与上一节的关系**:正文「联动速查」块是**构建期注入的索引**(`scripts/build-help.mjs` 从唤醒词表注入 SKILL.md,勿手改),给 AI 按唤醒词找命令;**HELP 文件是缺省交付物**,给用户打开看。两者同源(同一张唤醒词表)、不是一份东西;显式 `mode:"lookup"` 落的那份是索引的页面版(`备忘录_速查表`),也不是 HELP 文件。
89
- - **入口只认一条**:「备忘录 HELP」(不分大小写,用户 2026-09-12 裁定);其余唤醒词是场景别名,住上一节索引块,不另立 HELP 入口。
87
+ - **与上一节的关系**:正文「联动速查」块是**构建期注入的索引**(`scripts/build-help.mjs` 从各域路由声明 `src/<域>/routes.ts` 的生成物注入 SKILL.md,勿手改),给 AI 按唤醒词找命令;**HELP 文件是缺省交付物**,给用户打开看。两者同源(同一张路由表=同一处场景词面)、不是一份东西;显式 `mode:"lookup"` 落的那份是索引的页面版(`备忘录_速查表`),也不是 HELP 文件。
88
+ - **入口只认一条**:「备忘录 HELP」(不分大小写,用户 2026-09-12 裁定);其余唤醒词是场景**别名**,只住 HELP 资产的 `aliases`(**不列进上一节的速查块**,但按词说仍能路由到同一场景),不另立 HELP 入口。
90
89
 
91
90
  ## 环境与出 scope
92
91
 
@@ -0,0 +1,8 @@
1
+ /** 打卡域 · **能力门**(票 #855 的形状,票 #830 补上跨域真要用到的三个名字)。
2
+ *
3
+ * 本域**没有自己的命令键**:记/删/改打卡三条走备忘域的 `memo.create`/`memo.remove`/`memo.update`
4
+ * (键的事实住 `src/memo/commands.ts`,词面住本域 `./routes.ts`)。故门里只出「本域 3 格的页装配」
5
+ * 这一类名字;路由声明由生成器直接扫 `src/<域>/routes.ts`(不经门)。
6
+ * 域外只许经此门取(`test/cmd-registry-855.test.mjs` 的「域间零直引」守着)。 */
7
+ export { checkinCreatePage, checkinRemovePage, checkinUpdatePage } from './receipt.js';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/checkin/index.ts"],"names":[],"mappings":"AAAA;;;;;6DAK6D;AAC7D,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,8 @@
1
+ /** 打卡域 · **能力门**(票 #855 的形状,票 #830 补上跨域真要用到的三个名字)。
2
+ *
3
+ * 本域**没有自己的命令键**:记/删/改打卡三条走备忘域的 `memo.create`/`memo.remove`/`memo.update`
4
+ * (键的事实住 `src/memo/commands.ts`,词面住本域 `./routes.ts`)。故门里只出「本域 3 格的页装配」
5
+ * 这一类名字;路由声明由生成器直接扫 `src/<域>/routes.ts`(不经门)。
6
+ * 域外只许经此门取(`test/cmd-registry-855.test.mjs` 的「域间零直引」守着)。 */
7
+ export { checkinCreatePage, checkinRemovePage, checkinUpdatePage } from './receipt.js';
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/checkin/index.ts"],"names":[],"mappings":"AAAA;;;;;6DAK6D;AAC7D,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,17 @@
1
+ import type { ReceiptScene } from '../render/receipt.js';
2
+ import type { MemoNote } from '../db/readonly.js';
3
+ import type { WishReceipt } from '../wish/index.js';
4
+ /** 本域 3 格的场景 id(`src/help/booklet.ts` seq 23/24/25 逐字;3 格全在通用回执族)。 */
5
+ export type CheckinReceiptScene = Extract<ReceiptScene, 'memo_add_checkin' | 'memo_delete_checkin' | 'memo_update_checkin'>;
6
+ interface CheckinPage {
7
+ readonly html: string;
8
+ readonly stem: string;
9
+ }
10
+ /** 记打卡:只认 `notes` 表那一行的分类=打卡;其他分类归各自域,本件回 `undefined`。 */
11
+ export declare function checkinCreatePage(r: WishReceipt, created: MemoNote | null): CheckinPage | undefined;
12
+ /** 改打卡:改完那一行的分类=打卡才出页(改前那一行由调用方先判,见 `runUpdate` 的分岔顺序)。 */
13
+ export declare function checkinUpdatePage(r: WishReceipt, after: MemoNote): CheckinPage | undefined;
14
+ /** 删打卡:删前那一行的分类=打卡才出页(删完就取不到了,调用方必须先取)。 */
15
+ export declare function checkinRemovePage(r: WishReceipt, before: MemoNote): CheckinPage | undefined;
16
+ export {};
17
+ //# sourceMappingURL=receipt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"receipt.d.ts","sourceRoot":"","sources":["../../src/checkin/receipt.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,sEAAsE;AACtE,MAAM,MAAM,mBAAmB,GAAG,OAAO,CACvC,YAAY,EACZ,kBAAkB,GAAG,qBAAqB,GAAG,qBAAqB,CACnE,CAAC;AAKF,UAAU,WAAW;IACnB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAsCD,0DAA0D;AAC1D,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,GAAG,IAAI,GAAG,WAAW,GAAG,SAAS,CAGnG;AAED,2DAA2D;AAC3D,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,GAAG,WAAW,GAAG,SAAS,CAG1F;AAED,2CAA2C;AAC3C,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,GAAG,WAAW,GAAG,SAAS,CAG3F"}
@@ -0,0 +1,63 @@
1
+ /** 打卡域 · **通用回执页的装配件**(票 #830):本域 3 张结果页(记/删/改打卡,册子
2
+ * `BOOKLET_ROWS` seq 23/24/25)只填槽位,页壳与版式一律交给族定义地 `src/render/receipt.ts`
3
+ * 的 `buildReceiptPage`——本件**不写第二份布局**(`t822-册子冻结.md` §四:本族只参数化标题与字段)。
4
+ *
5
+ * 为什么住本域:这 3 格是**打卡类**场景的交付物,文件主体由族定义地经 `bookletFileStem(sceneId)` 取,
6
+ * 本件不自己拼名字(同 `t822` §二「只在一处算」)。
7
+ *
8
+ * 与 `memo/run.ts` 的分工:那边是**分派**(三条共用写命令按 `notes` 表那一行的顶层分类分岔),
9
+ * 本件是**本域的页装配**。分派只挑场景 id 并把那一行交给这里,摘要措辞住本件一处。
10
+ *
11
+ * 铁律二:回执三格(`local`/`remote`/`remoteId`)取自写侧 `WishReceipt`,分类与子分类取自
12
+ * `notes` 表那一行,本件不重算任何口径。 */
13
+ import { buildReceiptPage } from '../render/receipt.js';
14
+ /** 本域顶层分类(老库口径:`notes.category` 的中文取值,与路由 `preset` 同一个词)。 */
15
+ const CHECKIN_TOP = '打卡';
16
+ /** 打卡那一行的事实条:编号 / 正文 / 分类 / 子分类 —— 一只一格「标签:值」(#820 收尾:
17
+ * 标签与备忘族统一用「正文」(原先本域写「内容」,同一件事两个名字);两级分类各占一格,不再拼「/」)。 */
18
+ function summaryOf(note) {
19
+ return [
20
+ '打卡编号:' + note.id,
21
+ '正文:' + note.content,
22
+ '分类:' + note.category,
23
+ ...(note.sub_category === null ? [] : ['子分类:' + note.sub_category]),
24
+ ];
25
+ }
26
+ /** 整页装配:槽位 → 族定义地。返回 `{html, stem}`,`stem` 即册子主体(落盘由出口的 `deliver` 钩子做)。 */
27
+ function buildCheckinReceipt(scene, title, r, note) {
28
+ return buildReceiptPage({
29
+ scene,
30
+ title,
31
+ message: r.message,
32
+ badges: { category: note.category, sub: note.sub_category },
33
+ summary: summaryOf(note),
34
+ sections: [],
35
+ receipt: { entityLabel: '打卡', entityId: note.id, local: r.local, remote: r.remote, remoteId: r.remoteId },
36
+ copyLog: {
37
+ thinking: title + ' 写命令回执渲染为通用回执页(页族定义处 src/render/receipt.ts)',
38
+ data_structure: 'notes 表(id/content/category/sub_category);回执三格 local/remote/remoteId 取自写侧',
39
+ call_chain: 'cmd_read 分派 → ' + scene + ' → buildCheckinReceipt → buildReceiptPage → fillMemoPage(receipt) → deliver 落盘',
40
+ exception: '无',
41
+ },
42
+ retryPrompt: '若这一页的内容不对,请把要改的那一条(打卡编号与要改成的样子)发我,我重跑一次:' + title,
43
+ });
44
+ }
45
+ /** 记打卡:只认 `notes` 表那一行的分类=打卡;其他分类归各自域,本件回 `undefined`。 */
46
+ export function checkinCreatePage(r, created) {
47
+ if (created === null || created.category !== CHECKIN_TOP)
48
+ return undefined;
49
+ return buildCheckinReceipt('memo_add_checkin', '记打卡', r, created);
50
+ }
51
+ /** 改打卡:改完那一行的分类=打卡才出页(改前那一行由调用方先判,见 `runUpdate` 的分岔顺序)。 */
52
+ export function checkinUpdatePage(r, after) {
53
+ if (after.category !== CHECKIN_TOP)
54
+ return undefined;
55
+ return buildCheckinReceipt('memo_update_checkin', '改打卡', r, after);
56
+ }
57
+ /** 删打卡:删前那一行的分类=打卡才出页(删完就取不到了,调用方必须先取)。 */
58
+ export function checkinRemovePage(r, before) {
59
+ if (before.category !== CHECKIN_TOP)
60
+ return undefined;
61
+ return buildCheckinReceipt('memo_delete_checkin', '删打卡', r, before);
62
+ }
63
+ //# sourceMappingURL=receipt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"receipt.js","sourceRoot":"","sources":["../../src/checkin/receipt.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;8BAW8B;AAC9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAWxD,6DAA6D;AAC7D,MAAM,WAAW,GAAG,IAAI,CAAC;AAOzB;0DAC0D;AAC1D,SAAS,SAAS,CAAC,IAAc;IAC/B,OAAO;QACL,OAAO,GAAG,IAAI,CAAC,EAAE;QACjB,KAAK,GAAG,IAAI,CAAC,OAAO;QACpB,KAAK,GAAG,IAAI,CAAC,QAAQ;QACrB,GAAG,CAAC,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;KACpE,CAAC;AACJ,CAAC;AAED,2EAA2E;AAC3E,SAAS,mBAAmB,CAC1B,KAA0B,EAC1B,KAAa,EACb,CAAc,EACd,IAAc;IAEd,OAAO,gBAAgB,CAAC;QACtB,KAAK;QACL,KAAK;QACL,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,CAAC,YAAY,EAAE;QAC3D,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC;QACxB,QAAQ,EAAE,EAAE;QACZ,OAAO,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE;QACzG,OAAO,EAAE;YACP,QAAQ,EAAE,KAAK,GAAG,6CAA6C;YAC/D,cAAc,EAAE,2EAA2E;YAC3F,UAAU,EAAE,gBAAgB,GAAG,KAAK,GAAG,gFAAgF;YACvH,SAAS,EAAE,GAAG;SACf;QACD,WAAW,EAAE,0CAA0C,GAAG,KAAK;KAChE,CAAC,CAAC;AACL,CAAC;AAED,0DAA0D;AAC1D,MAAM,UAAU,iBAAiB,CAAC,CAAc,EAAE,OAAwB;IACxE,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,QAAQ,KAAK,WAAW;QAAE,OAAO,SAAS,CAAC;IAC3E,OAAO,mBAAmB,CAAC,kBAAkB,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;AACpE,CAAC;AAED,2DAA2D;AAC3D,MAAM,UAAU,iBAAiB,CAAC,CAAc,EAAE,KAAe;IAC/D,IAAI,KAAK,CAAC,QAAQ,KAAK,WAAW;QAAE,OAAO,SAAS,CAAC;IACrD,OAAO,mBAAmB,CAAC,qBAAqB,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;AACrE,CAAC;AAED,2CAA2C;AAC3C,MAAM,UAAU,iBAAiB,CAAC,CAAc,EAAE,MAAgB;IAChE,IAAI,MAAM,CAAC,QAAQ,KAAK,WAAW;QAAE,OAAO,SAAS,CAAC;IACtD,OAAO,mBAAmB,CAAC,qBAAqB,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;AACtE,CAAC"}
@@ -3,6 +3,10 @@
3
3
  * 本域**没有自己的命令键**:记/删/改打卡三条走备忘域的 `memo.create`/`memo.remove`/`memo.update`
4
4
  *(键的事实住 `src/memo/commands.ts`)。词随它服务的 HELP 场景住本件——这就是本域在 #855 里的全部交付;
5
5
  * 命令实现与页面的活归各属主域与 #830(本件不重复那份事实)。
6
+ *
7
+ * #830(端到端那趟)对本件只动了两件事:① 示例的参数名改认 **HELP 的字段名**(`content`/`sub_category`,
8
+ * 出处 `t837-命令面口径.md` §实施约束「字段名以 HELP 为准,不自造第二个说法」——等价关系由备忘域的
9
+ * 字段政策一处实现,见 `src/memo/crud.ts`);② 三条路由的键、槽位与预设逐字未改(诊断实测三条全通)。
6
10
  */
7
11
  import type { RouteDecl } from '../triggers/routeSpec.js';
8
12
  export declare const CHECKIN_ROUTES: readonly RouteDecl[];
@@ -1 +1 @@
1
- {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/checkin/routes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAE1D,eAAO,MAAM,cAAc,EAAE,SAAS,SAAS,EA2B9C,CAAC"}
1
+ {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/checkin/routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAE1D,eAAO,MAAM,cAAc,EAAE,SAAS,SAAS,EA2B9C,CAAC"}
@@ -4,7 +4,7 @@ export const CHECKIN_ROUTES = [
4
4
  wakeWord: '记打卡',
5
5
  scene: 'memo_add_checkin',
6
6
  key: 'memo.create',
7
- cli: 'memo-cmd-read memo.create --params \'{"title":"跑步5公里","category":"打卡"}\'',
7
+ cli: 'memo-cmd-read memo.create --params \'{"content":"跑步5公里","category":"打卡","sub_category":"跑步"}\'',
8
8
  preset: { category: '打卡' },
9
9
  },
10
10
  {
@@ -21,7 +21,7 @@ export const CHECKIN_ROUTES = [
21
21
  wakeWord: '改打卡',
22
22
  scene: 'memo_update_checkin',
23
23
  key: 'memo.update',
24
- cli: 'memo-cmd-read memo.update --params \'{"id":1,"body":"跑步5公里"}\'',
24
+ cli: 'memo-cmd-read memo.update --params \'{"id":1,"content":"跑步6公里"}\'',
25
25
  needs: ['id'],
26
26
  preset: { category: '打卡' },
27
27
  },
@@ -1 +1 @@
1
- {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/checkin/routes.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,MAAM,cAAc,GAAyB;IAClD;QACE,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE,KAAK;QACf,KAAK,EAAE,kBAAkB;QACzB,GAAG,EAAE,aAAa;QAClB,GAAG,EAAE,0EAA0E;QAC/E,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;KAC3B;IACD;QACE,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE,KAAK;QACf,KAAK,EAAE,qBAAqB;QAC5B,GAAG,EAAE,aAAa;QAClB,GAAG,EAAE,gEAAgE;QACrE,KAAK,EAAE,CAAC,IAAI,CAAC;QACb,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;KAC3B;IACD;QACE,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE,KAAK;QACf,KAAK,EAAE,qBAAqB;QAC5B,GAAG,EAAE,aAAa;QAClB,GAAG,EAAE,gEAAgE;QACrE,KAAK,EAAE,CAAC,IAAI,CAAC;QACb,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;KAC3B;CACF,CAAC"}
1
+ {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/checkin/routes.ts"],"names":[],"mappings":"AAYA,MAAM,CAAC,MAAM,cAAc,GAAyB;IAClD;QACE,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE,KAAK;QACf,KAAK,EAAE,kBAAkB;QACzB,GAAG,EAAE,aAAa;QAClB,GAAG,EAAE,gGAAgG;QACrG,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;KAC3B;IACD;QACE,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE,KAAK;QACf,KAAK,EAAE,qBAAqB;QAC5B,GAAG,EAAE,aAAa;QAClB,GAAG,EAAE,gEAAgE;QACrE,KAAK,EAAE,CAAC,IAAI,CAAC;QACb,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;KAC3B;IACD;QACE,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE,KAAK;QACf,KAAK,EAAE,qBAAqB;QAC5B,GAAG,EAAE,aAAa;QAClB,GAAG,EAAE,mEAAmE;QACxE,KAAK,EAAE,CAAC,IAAI,CAAC;QACb,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;KAC3B;CACF,CAAC"}
@@ -7,8 +7,8 @@ import { basename, dirname, join, resolve } from 'node:path';
7
7
  import { saveHtmlFile, helpReuseWindowOf } from 'base-paint/save-html';
8
8
  // #855:复制区载荷的装配与信封取形(`buildDataText`/`buildLogText`/`MemoCopyEnvelope` 位)随 `memo.init`
9
9
  // 一起搬进 `src/init/run.ts`——只有那条命令在用,不留第二份。
10
- import { openMemoDb, closeMemoDb, MemoFetchError, } from '../fetch/index.js';
11
- import { LARK_WEBSITE_LINE } from '../fetch/feishu.js';
10
+ import { openMemoDb, closeMemoDb } from '../db/readonly.js';
11
+ import { LARK_WEBSITE_LINE } from '../sync/index.js';
12
12
  // #855:参数校验口径(`crud*`/`normalize*`/`needId`)随备忘域命令一起搬进 `src/memo/run.ts`;
13
13
  // 本件只剩开库前分派与交付装配,不再直接做域校验。
14
14
  // #855:跨域的写侧合成(`reconcileWishes`)随 `memo.sync` 一起搬进 `src/sync/run.ts`;
@@ -25,11 +25,11 @@ import { helpHtmlDirName, helpFileStem, lookupFileStem } from '../help/manifest.
25
25
  // #855:产物名主体(`bookletFileStem`)与诊断读取/两页装配(`INIT_SCENE_ID`/`readInitDiagnosis`/
26
26
  // `InitInputError`/`renderInitPage`/`InitPageMode`)随 `memo.sync`/`memo.init` 搬进各自的域——
27
27
  // 本件只剩开库前分派与交付装配。
28
- import { resolveDbDir, dbFilename } from '../fetch/paths.js';
28
+ import { resolveDbDir, dbFilename } from '../shared/paths.js';
29
29
  import { isConfigKey, runConfigKey } from './config.js';
30
30
  // #706 · 配置体检:设置页专用的一条只读命令,同走「进分派层之前拦下」这条口(判据住 src/health.ts)。
31
31
  import { isHealthCheckKey, runHealthCheckKey } from './health.js';
32
- import { MemoPolicyError } from '../fetch/errors.js';
32
+ import { MemoFetchError, MemoPolicyError } from '../shared/errors.js';
33
33
  const DEFAULT_TIMEOUT_MS = 30000;
34
34
  // #855:失败约定(`fail`)提到共用位 `src/shared/exit.ts`——出口与各域运行件同一档退出码。
35
35
  function toast(msg) { console.error('TOAST: ' + msg); }
@@ -108,7 +108,7 @@ function helpInitialized(dbPath) {
108
108
  return false;
109
109
  }
110
110
  }
111
- /** 速查支的 `list` 载荷:一行一唤醒词(短语/key/形状/调用形/一句话),全从 `WAKE_TABLE` 派生。 */
111
+ /** 速查支的 `list` 载荷:一行一场景主名(短语/key/形状/调用形/一句话),从各域路由声明的生成物派生。 */
112
112
  function buildLookupItems() {
113
113
  return buildHelpLookup().map((h) => ({
114
114
  id: h.phrase,
@@ -154,59 +154,25 @@ function dispatchHelp(params, dbPath) {
154
154
  };
155
155
  }
156
156
  function ok(data) { return { data, exit: 0 }; }
157
- // #855:`asIds` 随 `memo.update`/`memo.batch` 一起搬进 `src/memo/run.ts`——只有备忘域在用,不留第二份。
158
- // #855:`noteIdOfMessage`/`receiptOptsOf`/`buildReceipt` 随 `memo.create`/`memo.update`/`memo.remove`
159
- // 一起搬进 `src/memo/run.ts`——只有备忘域在用,不留第二份。
160
- // #855:行适配(`toRows`/`PageRow`)已提到共用位 `src/shared/rows.ts`——出口与各域运行件共用一份。
161
- // #855:区间参数的三件校验(`needRangeDate`/`rangeLimitOf`/`categoryFilterOf`)随 `memo.search`
162
- // 一起搬进 `src/search/run.ts`——只有那一条命令在用,不留第二份。
163
- // #855:提醒写参数的四件解析(`reminderNoteIdOf`/`reminderContentOf`/`reminderAtOf`/
164
- // `reminderTypeRuleOf`)随 `memo.reminder` 一起搬进 `src/remind/run.ts`——只有那一条命令在用,不留第二份。
165
- // #855:删分层三件解析(`deleteIdsOf`/`deleteConfirmOf`/`deleteWithRemindersOf`)随 `memo.remove`
166
- // 一起搬进 `src/memo/run.ts`——只有那一条命令在用,不留第二份。
167
- // #833:初始化渲染的入参读取(老 `init-report --data` 契约)已搬到本域能力目录
168
- // —— `readInitDiagnosis`(`src/init/diagnosis.ts`,坏输入抛 `InitInputError`,`dispatchInit` 认它归 exit 2)。
169
- // 放在本件的旧实现(`initDiagOf`)连同 `init_report` 那套自持页一起退役:一条命令的事实只住它自己的能力目录。
170
157
  function dispatch(key, params, db) {
171
- // #855:**先查登记表**——已搬迁的域把自己的命令声明在 `src/<域>/commands.ts`,生成物 `registry.ts`
172
- // 汇成一张表,命中即调该域的运行件;没搬的键落下面的 switch(搬迁每落一域,switch 就少一段)。
158
+ // #855:**分派只认登记表**——一条命令的声明住它自己的能力目录(`src/<域>/commands.ts`),
159
+ // 生成物 `registry.ts` 把各域声明汇成这张查表,命中即调该域的运行件。
160
+ // 加/改命令改的是自己域里的声明;**本件不再认键**(不留 `case`——`test/cmd-registry-855.test.mjs` 守着这点)。
173
161
  const spec = REGISTRY[key];
174
162
  if (spec !== undefined)
175
163
  return spec.kind === 'pre-open' ? spec.run(params) : spec.run(params, db);
176
- switch (key) {
177
- // #855:`memo.search`/`memo.detail` 已搬回 `src/search/`(声明住 `search/commands.ts`,运行件住 `search/run.ts`),
178
- // 上面那张登记查表先命中它们——这两条 case 已删。**别再长回来**:加命令改的是自己域里的声明。
179
- // #855:`memo.create` 已搬回 `src/memo/`(声明住 `memo/commands.ts`,运行件住 `memo/run.ts`),
180
- // 上面那张登记查表先命中它——本条 case 已删。**别再长回来**。
181
- // #855:`memo.update` 已搬回 `src/memo/`(声明住 `memo/commands.ts`,运行件住 `memo/run.ts`),
182
- // 上面那张登记查表先命中它——本条 case 已删。**别再长回来**。
183
- // #855:`memo.remove` 已搬回 `src/memo/`(声明住 `memo/commands.ts`,运行件住 `memo/run.ts`),
184
- // 上面那张登记查表先命中它——本条 case 已删。**别再长回来**。
185
- // #855:`memo.remind`/`memo.reminder` 已搬回 `src/remind/`(声明住 `remind/commands.ts`,
186
- // 运行件住 `remind/run.ts`),上面那张登记查表先命中它们——这两条 case 已删。
187
- // #855:`memo.wish` 已搬回 `src/wish/`(声明住 `wish/commands.ts`,运行件住 `wish/run.ts`)——
188
- // 上面那张登记查表先命中它,本 case 已删。**别再长回来**:加命令改的是自己域里的声明。
189
- // #855:`memo.sync` 已搬回 `src/sync/`(声明住 `sync/commands.ts`,运行件住 `sync/run.ts`),
190
- // 上面那张登记查表先命中它——本条 case 已删。**别再长回来**。
191
- // #855:`memo.batch` 已搬回 `src/memo/`(声明住 `memo/commands.ts`,运行件住 `memo/run.ts`),
192
- // 上面那张登记查表先命中它——本条 case 已删。**别再长回来**。
193
- // #855:`memo.auth` 已搬回 `src/sync/`(声明住 `sync/commands.ts`,运行件住 `sync/run.ts`),
194
- // 上面那张登记查表先命中它——本条 case 已删。**别再长回来**。
195
- // #855:`memo.stats` 已搬回 `src/memo/`(声明住 `memo/commands.ts`,运行件住 `memo/run.ts`),
196
- // 上面那张登记查表先命中它——本条 case 已删。**别再长回来**。
197
- // #229:本键由 `dispatchHelp` 在**开库之前**处理(只读页不建库);走到这里说明 main 的路由被改坏了。
198
- // 照 skill-bill/src/cli/cmd_read.ts:449-451 的同一道内部断言——防的是「改回无条件开库」这个静默回退。
199
- case 'memo.help.lookup':
200
- fail(1, '内部错误:memo.help.lookup 须走 dispatchHelp(开库之前)');
201
- return ok(null);
202
- // #850:本键由 `dispatchInit` 在**开库之前**处理(只渲染不建库;库不存在时也能跑);走到这里同上。
203
- case 'memo.init':
204
- fail(1, '内部错误:memo.init 须走 dispatchInit(开库之前)');
205
- return ok(null);
206
- default:
207
- fail(3, '未知 memo key:' + key);
208
- return ok(null);
164
+ // 下面两条是**内部断言**(不是功能):走到这里说明 `main` 的开库前分派被改坏了。
165
+ // 照 skill-bill/src/cli/cmd_read.ts:449-451 的同一道断言——防的是「改回无条件开库」这个静默回退。
166
+ if (key === 'memo.help.lookup') {
167
+ fail(1, '内部错误:memo.help.lookup 须走 dispatchHelp(开库之前)');
168
+ return ok(null);
209
169
  }
170
+ if (key === 'memo.init') {
171
+ fail(1, '内部错误:memo.init 须走开库前分派(库不存在时也要能跑)');
172
+ return ok(null);
173
+ }
174
+ fail(3, '未知 memo key:' + key);
175
+ return ok(null);
210
176
  }
211
177
  function parseArgs(a) {
212
178
  const o = { key: a[0], params: undefined, html: undefined, timeout: DEFAULT_TIMEOUT_MS };
@@ -1 +1 @@
1
- {"version":3,"file":"cmd_read.js","sourceRoot":"","sources":["../../src/cli/cmd_read.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cmd_read.js","sourceRoot":"","sources":["../../src/cli/cmd_read.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { LarkTier } from '../fetch/feishu.js';
1
+ import type { LarkTier } from '../sync/index.js';
2
2
  /** 三个 key 的唯一定义地(插件侧镜像同值,见 `packages/plugin-memo-ilife/src/bridge.ts`)。 */
3
3
  export declare const CONFIG_KEYS: {
4
4
  readonly read: "memo.config.read";
@@ -10,13 +10,13 @@ export declare function isConfigKey(key: string): boolean;
10
10
  /**
11
11
  * 跑一个配置 key,返回整行 envelope JSON。
12
12
  *
13
- * 三个 key 的载荷:读 → `{path, dataDir, created, values, resolved, lark}`;写 → 入参 `{values}`,
13
+ * 三个 key 的载荷:读 → `{path, dataDir, created, values, resolved, lark[, alerts]}`;写 → 入参 `{values}`,
14
14
  * 回执 `{path, values}`;重置 → `{path, backupPath}`(`backupPath` 为 null 表示本来就没有配置文件)。
15
15
  *
16
16
  * `resolved`(#760,照 #749 样板)=一组**解析后的绝对路径**,给设置页的只读行显示用
17
- * (算式唯一定义地=`src/fetch/paths.ts`,面板不自己拼路径)。
17
+ * (算式唯一定义地=`src/shared/paths.ts`,面板不自己拼路径)。
18
18
  * `lark`(#760,定稿 #759)=飞书 CLI 三档读数 + 复制安装指引全文 + 官网行
19
- * (判据唯一定义地=`src/fetch/feishu.ts` 的 `larkTierInfo`,面板只显示)。
19
+ * (判据唯一定义地=`src/sync/feishu.ts` 的 `larkTierInfo`,面板只显示)。
20
20
  */
21
21
  export interface MemoConfigReadLark {
22
22
  readonly tier: LarkTier;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/cli/config.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAEnD,2EAA2E;AAC3E,eAAO,MAAM,WAAW;;;;CAId,CAAC;AAEX,yBAAyB;AACzB,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEhD;AAyCD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAsBjF"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/cli/config.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEjD,2EAA2E;AAC3E,eAAO,MAAM,WAAW;;;;CAId,CAAC;AAEX,yBAAyB;AACzB,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEhD;AAyCD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAiBD,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAyBjF"}
@@ -1,6 +1,7 @@
1
1
  /** 设置页专用的三个配置 key:读/写/重置。**它们不是唤醒词命令**。
2
2
  *
3
- * 为什么事实住这儿、不进 `src/policy/wakewords.ts` 那张唤醒词表:那张表管的是**唤醒词命令**
3
+ * 为什么事实住这儿、不进唤醒词路由表(各域 `src/<域>/routes.ts`,记录面 `src/triggers/routes.generated.ts`):
4
+ * 那张表管的是**唤醒词命令**
4
5
  * (短语→key→形状→示例),要进 HELP 与唤醒词计数;这三个 key 只由设置页(插件)经既有
5
6
  * 「RPC → spawn 技能 CLI」通道调用,没有唤醒词、不进 HELP、也不该出现在用户的命令面上。
6
7
  * 按「一条命令的事实只住一处」的同一取向,它们的唯一定义地是这里,并由 `cmd_read.ts` 在
@@ -11,8 +12,9 @@
11
12
  */
12
13
  import { ENVELOPE_VERSION } from 'base-link-core';
13
14
  import { loadMemoConfig, resetMemoConfig, saveMemoConfig } from '../config.js';
14
- import { resolvedMemoPaths } from '../fetch/paths.js';
15
- import { larkTierInfo, larkSetupInfo, LARK_WEBSITE_URL } from '../fetch/feishu.js';
15
+ import { resolvedMemoPaths } from '../shared/paths.js';
16
+ import { buildMemoHealthReport } from './health/index.js';
17
+ import { larkTierInfo, larkSetupInfo, LARK_WEBSITE_URL } from '../sync/index.js';
16
18
  /** 三个 key 的唯一定义地(插件侧镜像同值,见 `packages/plugin-memo-ilife/src/bridge.ts`)。 */
17
19
  export const CONFIG_KEYS = {
18
20
  read: 'memo.config.read',
@@ -60,17 +62,36 @@ function withHumanError(run) {
60
62
  fail(1, e instanceof Error ? e.message : String(e));
61
63
  }
62
64
  }
65
+ /**
66
+ * #915 第二步:只给 `db.dir` 的行告警(本家唯一体检判红的格)。
67
+ *
68
+ * 结论复用体检 `db.dir` 那一项(`src/cli/health/` 的 `dirVerdict`:不在/在但写不进去/
69
+ * 在且能写),红才给,`message` 原样取体检那句故障本身,不合成新句子;绿=缺席(面板不亮)。
70
+ * `media.dir`(附件目录)与 `html.dir` 的体检最高只到黄(提醒、非"用不了"),一律不给——
71
+ * 它们照旧只在体检视图里可见。故障码只按体检报文首字区分,供判据与回执用,面板只画 `message`。
72
+ */
73
+ function memoAlerts() {
74
+ const item = buildMemoHealthReport().items.find((entry) => entry.id === 'db.dir');
75
+ if (item === undefined || item.status !== 'red')
76
+ return undefined;
77
+ const code = item.message.startsWith('不在') || item.message.startsWith('同名') ? 'DIR_MISSING' : 'DIR_UNWRITABLE';
78
+ return { 'db.dir': { code, message: item.message } };
79
+ }
63
80
  export function runConfigKey(key, params) {
64
81
  if (key === CONFIG_KEYS.read) {
65
82
  const c = withHumanError(() => loadMemoConfig());
66
83
  const resolved = withHumanError(() => resolvedMemoPaths());
67
84
  const tier = withHumanError(() => larkTierInfo());
68
85
  const setup = larkSetupInfo();
86
+ const alerts = withHumanError(() => memoAlerts());
69
87
  const lark = {
70
88
  tier: tier.tier, cliPath: tier.cliPath, version: tier.version,
71
89
  prompt: setup.prompt, websiteLine: setup.websiteLine, websiteUrl: LARK_WEBSITE_URL,
72
90
  };
73
- return envelope(key, 'detail', { path: c.path, dataDir: c.dataDir, created: c.created, values: c.values, resolved, lark });
91
+ const data = { path: c.path, dataDir: c.dataDir, created: c.created, values: c.values, resolved, lark };
92
+ if (alerts !== undefined)
93
+ data['alerts'] = alerts;
94
+ return envelope(key, 'detail', data);
74
95
  }
75
96
  if (key === CONFIG_KEYS.write) {
76
97
  const raw = params['values'];
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/cli/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/cli/config.ts"],"names":[],"mappings":"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"}
@@ -18,7 +18,7 @@ import { homedir } from 'node:os';
18
18
  import { join } from 'node:path';
19
19
  import { configPaths } from 'base-link-core';
20
20
  import { MEMO_CONFIG_DEFAULTS, MEMO_CONFIG_STEM } from '../../config.js';
21
- import { mediaDirOf } from '../../fetch/paths.js';
21
+ import { mediaDirOf } from '../../shared/paths.js';
22
22
  import { projectOnDefaults, readMemoConfigReadOnly, readValue, sourceOf, textOf } from './configRead.js';
23
23
  import { DB_TABLE_THRESHOLD, dirVerdict, findLarkCli, larkTier, p, packageRoot, splitDirSegments, tableCount, templateFileCount, } from './probe.js';
24
24
  const SKILL = 'memo';
@@ -84,7 +84,7 @@ export function buildMemoHealthReport() {
84
84
  items.push({
85
85
  id: 'db.file', title: '库文件', status: 'red',
86
86
  message: '不在:' + p(dbFile) + '。',
87
- action: '确认「数据目录」与「库文件名」对不对(库文件名只读,要改请编辑配置文件);本技能直连老库、**不建空库**,所以要由老技能或初始化建出它。',
87
+ action: '确认「数据目录」与「库文件名」对不对;本技能直连老库、**不建空库**,所以要由老技能或初始化建出它。',
88
88
  source: dbSource,
89
89
  });
90
90
  }